# Arte Sheets — Complete Product, Comparison & Formula Reference (llms-full.txt) > Complete machine-readable documentation for Arte Sheets (https://sheets.arte-soft.com), including verified product capabilities, pricing, homepage tables, the `/compare/` directory, all 30 multi-table `/compare//` comparison pages (92 core/comparison GFM Markdown tables), guided courses, and every HTML `` across indexed `/learn/` articles rendered as GitHub Flavored Markdown (GFM) tables. ## 1. Product Overview, Architecture & Homepage Reference - **Canonical Origin**: https://sheets.arte-soft.com/ - **Web Spreadsheet Editor**: https://sheets.arte-soft.com/app/ - **Operator**: Arte Soft EOOD (Bulgaria, EU · Registration `202787570` · Support: `office@arte-soft.com`). Independent software; not affiliated with or endorsed by Microsoft Corporation. - **Delivery Model**: Browser spreadsheet editor (ES modules + Web Workers) with Service Worker offline application shell (`offline-worker.js`) and local browser `IndexedDB` persistence. Works on macOS, Windows, Linux, ChromeOS, iPadOS, and iOS browsers without installation or sign-up. - **Cloud Residency**: Optional signed-in cloud storage (`My files`) is hosted privately in the European Union (Hetzner Storage Box & PostgreSQL, Germany) with live CRDT collaboration, participant avatars, `@` comments, and accept/reject cell suggestions. - **Built-in Formula Catalog (184 Excel-compatible functions)**: `ABS`, `ACOS`, `ADDRESS`, `AND`, `ASIN`, `ATAN`, `ATAN2`, `AVERAGE`, `AVERAGEA`, `AVERAGEIF`, `AVERAGEIFS`, `CEILING`, `CEILING.MATH`, `CHAR`, `CHOOSE`, `CHOOSECOLS`, `CHOOSEROWS`, `CLEAN`, `CODE`, `COLUMN`, `COLUMNS`, `CONCAT`, `CONCATENATE`, `CORREL`, `COS`, `COUNT`, `COUNTA`, `COUNTBLANK`, `COUNTIF`, `COUNTIFS`, `DATE`, `DATEDIF`, `DATEVALUE`, `DAY`, `DAYS`, `DEGREES`, `DROP`, `EDATE`, `EFFECT`, `EOMONTH`, `EVEN`, `EXACT`, `EXP`, `FACT`, `FALSE`, `FILTER`, `FIND`, `FLOOR`, `FLOOR.MATH`, `FORECAST`, `FV`, `GCD`, `HLOOKUP`, `HOUR`, `HSTACK`, `IF`, `IFERROR`, `IFNA`, `IFS`, `INDEX`, `INDIRECT`, `INT`, `INTERCEPT`, `IPMT`, `IRR`, `ISBLANK`, `ISERR`, `ISERROR`, `ISEVEN`, `ISFORMULA`, `ISLOGICAL`, `ISNA`, `ISNUMBER`, `ISODD`, `ISTEXT`, `LARGE`, `LCM`, `LEFT`, `LEN`, `LN`, `LOG`, `LOG10`, `LOWER`, `MATCH`, `MAX`, `MAXIFS`, `MEDIAN`, `MID`, `MIN`, `MINIFS`, `MINUTE`, `MOD`, `MODE`, `MODE.SNGL`, `MONTH`, `N`, `NA`, `NETWORKDAYS`, `NOMINAL`, `NOT`, `NOW`, `NPER`, `NPV`, `ODD`, `OFFSET`, `OR`, `PERCENTILE`, `PERCENTILE.INC`, `PI`, `PMT`, `POWER`, `PPMT`, `PRODUCT`, `PROPER`, `PV`, `QUARTILE`, `QUARTILE.INC`, `QUOTIENT`, `RADIANS`, `RAND`, `RANDBETWEEN`, `RANK`, `RANK.EQ`, `REPLACE`, `REPT`, `RIGHT`, `ROUND`, `ROUNDDOWN`, `ROUNDUP`, `ROW`, `ROWS`, `SEARCH`, `SECOND`, `SEQUENCE`, `SIGN`, `SIN`, `SLN`, `SLOPE`, `SMALL`, `SORT`, `SORTBY`, `SQRT`, `STDEV`, `STDEV.P`, `STDEV.S`, `STDEVP`, `SUBSTITUTE`, `SUBTOTAL`, `SUM`, `SUMIF`, `SUMIFS`, `SUMPRODUCT`, `SWITCH`, `TAKE`, `TAN`, `TEXT`, `TEXTAFTER`, `TEXTBEFORE`, `TEXTJOIN`, `TEXTSPLIT`, `TIME`, `TOCOL`, `TODAY`, `TOROW`, `TRANSPOSE`, `TRIM`, `TRUE`, `TRUNC`, `TYPE`, `UNIQUE`, `UPPER`, `VALUE`, `VAR`, `VAR.P`, `VAR.S`, `VARP`, `VLOOKUP`, `VSTACK`, `WEEKDAY`, `WORKDAY`, `XLOOKUP`, `XMATCH`, `XOR`, `YEAR`. ### Homepage Illustrative Budget Table (`/`) | Category | Budget | Actual | | --- | --- | --- | | Design | 2,400 | 2,200 | | Development | 5,000 (Alex) | 4,800 | | Marketing | 1,600 | 1,400 | | Total | 9,000 | 8,400 | --- ## 2. Spreadsheet Comparisons Hub (https://sheets.arte-soft.com/compare/) **Title**: Spreadsheet App Comparisons (2026) | Arte Sheets **Summary**: Arte Sheets is a free-to-start browser spreadsheet at sheets.arte-soft.com/app/ with 184 Excel-compatible functions, zero-signup local IndexedDB privacy, .xlsx/.csv/.tsv import-export, real-time EU cloud collaboration, and 2,950+ interactive formula guides. Use the 30 side-by-side comparisons below to see where Arte Sheets saves time and recurring subscription fees—and where native desktop suites or relational databases remain the stronger fit. ### Table: Directory of All 30 Arte Sheets Comparison Guides | Comparison Guide | Category | Primary Focus | Free Option | Best Fit | | --- | --- | --- | --- | --- | | [Microsoft Excel (iPad & iPhone)](https://sheets.arte-soft.com/compare/sheets-vs-microsoft-excel-ipad-iphone/) | Office & Mobile Suites | Zero-install mobile browser spreadsheet vs App Store Microsoft 365 app | Arte Sheets Free (no login); Excel free edit only under 10.1" | Instant Safari .xlsx/CSV editing on iPad without Microsoft sign-in | | [Microsoft Excel for Mac](https://sheets.arte-soft.com/compare/sheets-vs-microsoft-excel-mac/) | Office & Mobile Suites | Zero-install browser .xlsx workflows on macOS vs heavy desktop Office suite | Arte Sheets Free ($0 in Safari/Chrome); Excel Mac requires M365 or Office 2024 | Lightweight macOS .xlsx/CSV work, formula learning & EU cloud privacy | | [Google Sheets](https://sheets.arte-soft.com/compare/sheets-vs-google-sheets/) | Cloud & Collaborative Apps | Local-first no-account privacy & EU cloud vs Google Account cloud workspace | Arte Sheets Free (no account needed); Google Sheets Free (Google Account required) | Private local .xlsx/CSV work, EU data residency & hint-first Excel learning | | [Apple Numbers](https://sheets.arte-soft.com/compare/sheets-vs-apple-numbers/) | Office & Mobile Suites | True Excel-style A1 grid & .xlsx formulas vs Apple multi-table canvas | Both free ($0) — Arte Sheets in any browser; Numbers on Apple devices | Cross-platform Excel formula workflows without .numbers export friction | | [LibreOffice Calc](https://sheets.arte-soft.com/compare/sheets-vs-libreoffice-calc/) | Office & Mobile Suites | Instant browser UI, real-time collaboration & AI learning vs open-source desktop Calc | Both free ($0) — Arte Sheets in browser; LibreOffice Calc on desktop | Zero-install browser access on Mac/iPad/Chromebook + real-time sharing | | [WPS Office Spreadsheets](https://sheets.arte-soft.com/compare/sheets-vs-wps-office-spreadsheets/) | Office & Mobile Suites | Ad-free local & EU GDPR spreadsheet vs ad-supported WPS suite upsells | Arte Sheets Free (zero ads, no sign-up); WPS Free (ad/upsell prompts) | Distraction-free .xlsx/CSV work with clear EU privacy boundaries | | [ONLYOFFICE Spreadsheet Editor](https://sheets.arte-soft.com/compare/sheets-vs-onlyoffice-spreadsheets/) | Office & Mobile Suites | Instant hosted/local browser spreadsheet vs self-hosted Docker or desktop suite | Arte Sheets Free (instant web); ONLYOFFICE Desktop / DocSpace Startup free tiers | Immediate individual & small-team spreadsheets without server maintenance | | [Zoho Sheet](https://sheets.arte-soft.com/compare/sheets-vs-zoho-sheet/) | Cloud & Collaborative Apps | No-login local-first browser spreadsheet vs Zoho account cloud ecosystem | Arte Sheets Free (no login); Zoho Sheet Free (Zoho account required) | Standalone local/EU spreadsheets without CRM suite sign-up | | [Polaris Office Sheet](https://sheets.arte-soft.com/compare/sheets-vs-polaris-office/) | Office & Mobile Suites | Ad-free zero-signup browser .xlsx/CSV editor vs ad-supported freemium suite | Arte Sheets Free (zero ads, unlimited local edits); Polaris Free (ad-supported, usage caps) | Clean browser spreadsheets on mobile & desktop without banner ads or sync limits | | [Collabora Office (iOS & iPadOS)](https://sheets.arte-soft.com/compare/sheets-vs-collabora-office-ios/) | Office & Mobile Suites | Responsive modern web grid vs ported LibreOffice engine wrapper on iPad/iPhone | Both free ($0) — Arte Sheets in Safari; Collabora Office via App Store | Fast touch/keyboard web UI, instant sharing & interactive formula practice | | [MobiSystems OfficeSuite (MobiSheets)](https://sheets.arte-soft.com/compare/sheets-vs-mobisystems-officesuite/) | Office & Mobile Suites | Unconditional free core spreadsheet & .xlsx export vs suite subscription gates | Arte Sheets Free (no login, full .xlsx/.csv export); OfficeSuite Free (limited) | Transparent browser spreadsheet work without multi-app bundle paywalls | | [Hancom Office (Hancell)](https://sheets.arte-soft.com/compare/sheets-vs-hancom-office/) | Office & Mobile Suites | Global 31-language browser UX & Excel formulas vs regional Hancom suite | Arte Sheets Free ($0 in any browser); Hancom Docs/Web tiers require login/subscription | International teams wanting standard English Excel formulas in 31 UI languages | | [Smartsheet](https://sheets.arte-soft.com/compare/sheets-vs-smartsheet/) | Databases & Work Management | Free-form Excel formulas & $0 local .xlsx modeling vs enterprise PM per-seat SaaS | Arte Sheets Free ($0 forever, no login); Smartsheet has no permanent free editing plan | Financial calculations, ad-hoc .xlsx/CSV analysis & zero per-seat spreadsheet work | | [Airtable](https://sheets.arte-soft.com/compare/sheets-vs-airtable/) | Databases & Work Management | Free-form A1 formulas, financial modeling & no row caps vs cloud relational bases | Arte Sheets Free (no 1,000-row cap, no login); Airtable Free (1,000 records/base limit) | Financial sheets, 10K–100K row CSVs, XLOOKUP/SUMIFS & offline privacy | | [Notion Databases](https://sheets.arte-soft.com/compare/sheets-vs-notion-databases/) | Databases & Work Management | Real A1 spreadsheet math, PivotTables & fast CSV/XLSX vs Notion page properties | Both offer free tiers — Arte Sheets needs no login; Notion requires account | Calculations, budgets, lookups & multi-thousand-row CSVs that lag in Notion | | [Rows (Rows.com)](https://sheets.arte-soft.com/compare/sheets-vs-rows-com/) | Cloud & Collaborative Apps | No-login local/offline .xlsx spreadsheet & guided AI learning vs API-connected cloud SaaS | Arte Sheets Free (no login, local IndexedDB); Rows Free (account & integration limits) | Private local spreadsheets, standard A1 .xlsx files & step-by-step formula mastery | | [Grist](https://sheets.arte-soft.com/compare/sheets-vs-grist/) | Databases & Work Management | Standard A1 Excel formulas & free-form .xlsx layouts vs Python relational tables | Both offer generous free tiers — Arte Sheets needs no login & uses Excel syntax | Users wanting XLOOKUP/SUMIFS & free-form financial grids instead of Python schemas | | [Coda Tables](https://sheets.arte-soft.com/compare/sheets-vs-coda-tables/) | Databases & Work Management | Fast local/EU spreadsheet grid & .xlsx compatibility vs doc-table cloud workspaces | Arte Sheets Free (no doc-size limit, no login); Coda Free (doc-size limits on unshared/shared) | Numerical speed, portable .xlsx formulas & predictable non-Doc-Maker pricing | | [CSV in Text & Code Editors (VS Code, Sublime, Notepad++)](https://sheets.arte-soft.com/compare/sheets-vs-csv-text-editors/) | CSV & Specialized Utilities | Filtering, aggregating & cleaning CSV/TSV columns safely vs raw text editing | Both free ($0) — Arte Sheets runs in browser with zero setup | Summarizing, deduplicating, charting & reconciling CSV/TSV files with formulas | | [TableTool & Easy CSV Editor (macOS)](https://sheets.arte-soft.com/compare/sheets-vs-tabletool-easy-csv-editor/) | CSV & Specialized Utilities | Full 184-formula engine, charts & multi-sheet .xlsx + .csv vs Mac CSV-only grid apps | Arte Sheets Free ($0, formulas + .xlsx/.csv); TableTool free CSV-only; Easy CSV paid Mac app | Going beyond static CSV cell edits into formulas, PivotTables, charts & .xlsx | | [Quickoffice / QuickSheet & Legacy iOS Spreadsheet Apps](https://sheets.arte-soft.com/compare/sheets-vs-quicksheet-legacy-ios-apps/) | CSV & Specialized Utilities | Modern Web Worker & dynamic-array spreadsheet vs abandoned/legacy iOS apps | Arte Sheets Free ($0 in mobile Safari, modern .xlsx & XLOOKUP) | Replacing outdated mobile .xls/.xlsx apps with modern dynamic arrays & EU cloud | | [Mandatory Cloud-Only Spreadsheets](https://sheets.arte-soft.com/compare/offline-spreadsheet-app-vs-cloud-spreadsheets/) | Workflows, Privacy & Cost Guides | Local IndexedDB + offline shell & opt-in EU cloud vs mandatory cloud upload | Arte Sheets Free works locally offline/online without an account ($0) | Financial privacy, travel/field connectivity & explicit local-vs-cloud control | | [Microsoft 365 Recurring Suite Subscriptions](https://sheets.arte-soft.com/compare/one-time-or-fair-spreadsheet-app-vs-microsoft-365-cost/) | Workflows, Privacy & Cost Guides | 3-year & 5-year spreadsheet TCO: $0 Free tier, one-time desktop SKUs & Pro AI plans | Arte Sheets Free ($0 forever for core spreadsheet, 184 formulas & .xlsx export) | Eliminating recurring suite fees when you only need a clean spreadsheet | | [Apple Numbers .xlsx Export Conversions](https://sheets.arte-soft.com/compare/xlsx-compatibility-apple-numbers-vs-excel-compatible-apps/) | Workflows, Privacy & Cost Guides | Preventing multi-table tab splits & formula translation surprises on Mac/iPad | Arte Sheets Free ($0 A1 .xlsx import/export in Safari) | Exchanging clean A1 .xlsx workbooks with clients, accountants & Windows teams | | [Excel for iPad, Google Sheets iPad & Apple Numbers iPad](https://sheets.arte-soft.com/compare/ipad-spreadsheet-workflow-touch-keyboard-comparison/) | Workflows, Privacy & Cost Guides | Editing spreadsheets on iPad with Magic Keyboard, trackpad & touch | Arte Sheets Free ($0 in iPad Safari, no 10.1" screen lock) | iPad Air & iPad Pro users wanting desktop-class browser formulas without M365 | | [XLOOKUP vs VLOOKUP vs INDEX + MATCH](https://sheets.arte-soft.com/compare/xlookup-vs-vlookup-vs-index-match-spreadsheet-guide/) | Formulas & Analysis Guides | Lookup syntax, column-insert safety, left-lookup & cross-app compatibility | All 4 functions (XLOOKUP, XMATCH, VLOOKUP, INDEX, MATCH) run free in Arte Sheets | Choosing the safest lookup formula for modern & legacy .xlsx workbooks | | [PivotTables vs SUMIFS & Dynamic Array Summaries](https://sheets.arte-soft.com/compare/pivot-tables-vs-sumifs-group-analysis/) | Formulas & Analysis Guides | Exploratory PivotTable summaries vs live auto-recalculating SUMIFS / UNIQUE tables | SUM PivotTables + SUMIFS/COUNTIFS/AVERAGEIFS/UNIQUE all free in Arte Sheets | Choosing between fast ad-hoc grouping and live formula-driven financial reports | | [Paid Bank-Sync Budgeting Apps (YNAB, Monarch Money, Copilot)](https://sheets.arte-soft.com/compare/personal-budget-spreadsheet-vs-paid-budgeting-apps/) | Workflows, Privacy & Cost Guides | $0 private local budget & loan spreadsheets vs $100+/yr Plaid bank-sync SaaS | Arte Sheets Free ($0 local browser .xlsx/.csv budgets & Loan PMT template) | Privacy-conscious households avoiding bank credential linking & $100/yr fees | | [Recurring Invoicing, Payroll & Inventory SaaS Tools](https://sheets.arte-soft.com/compare/small-business-invoicing-inventory-spreadsheet-vs-saas/) | Workflows, Privacy & Cost Guides | Built-in Invoice, Payroll & KPI spreadsheet templates vs multi-tool SaaS sprawl | Arte Sheets Free ($0 Invoice, Payroll & KPI templates + PDF print & .xlsx) | Consultants, agencies & micro-businesses under ~500 monthly SKUs/invoices | | [Telemetry-Heavy US Cloud Office Suites](https://sheets.arte-soft.com/compare/privacy-first-financial-spreadsheets-vs-telemetry-office-suites/) | Workflows, Privacy & Cost Guides | No-login local IndexedDB + private German EU GDPR storage vs cloud suite telemetry | Arte Sheets Free ($0 anonymous browser mode + 10 EU cloud workbooks) | Confidential payroll, M&A, net-worth & EU GDPR client spreadsheets | ### Table: Arte Sheets verified architecture and tier reference (2026) | Capability | Arte Sheets Free ($0) | Arte Sheets Pro ($19.99/mo or $179.99/yr) | | --- | --- | --- | | Platform & account rule | Browser web app (desktop, iPad, iPhone); no login needed locally | Same web app + verified account with EU B2B VAT checkout support | | Local & offline storage | Local browser IndexedDB + Service Worker offline shell cache | Local browser IndexedDB + Service Worker offline shell cache | | Private EU cloud storage | Up to 10 workbooks in Germany (10 MiB each, 100 MiB total) | Up to 1,000 workbooks in Germany (20 MiB each, 1 GiB total) | | File imports & exports | Import .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv; export .xlsx, .csv, .tsv, .ods, PDF | Same full worker-based import & export pipeline | | Formula engine & charts | 184 Excel functions (XLOOKUP, FILTER, UNIQUE, SUMIFS, PMT) + 7 chart types | 184 Excel functions + custom UDF functions via Macro Studio | | PivotTables & what-if tools | Single-dimension SUM PivotTables | Multi-dimensional PivotTables (AVERAGE, COUNT, MIN, MAX, col groups) + Goal Seek | | AI & interactive Academy | 10 free Academy lessons + 2,950+ public runnable guides | 2,000 AI credits/mo (text, voice & file excerpts) + all 62 lessons & certificates | ### Hub FAQs - **Is Arte Sheets a native desktop or App Store binary?** No. Arte Sheets is a pure browser spreadsheet application at https://sheets.arte-soft.com/app/ that runs in Safari, Chrome, Edge, and Firefox across Mac, Windows, Linux, iPad, and iPhone, with a Service Worker shell for offline reopening. - **How much does Arte Sheets cost, and is there a lifetime plan?** Core browser editing, 184 Excel formulas, charts, SUM PivotTables, .xlsx/.csv/.tsv export, and up to 10 EU cloud workbooks are $0 forever. Arte Sheets Pro costs $19.99 USD/month or $179.99 USD/year before applicable tax and includes 2,000 monthly AI credits, 62 Academy lessons, Goal Seek, Macros, and 1,000 EU cloud workbooks; there is no lifetime plan. - **What does Arte Sheets preserve when importing and exporting Excel .xlsx files?** Arte Sheets imports .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, and .txt files, and exports .xlsx files with formulas and cell formatting preserved. Canvas charts and browser macros are not embedded into exported .xlsx files (use PDF / Print for visual chart sheets). - **Where are Arte Sheets workbooks stored?** Without signing in, workbooks stay locally in your browser IndexedDB on your own device. When signed in using My files, cloud workbooks are stored privately in European Union infrastructure (Hetzner Storage Box and PostgreSQL in Germany) operated by Arte Soft EOOD. - **Is Arte Sheets affiliated with Microsoft Excel?** No. Arte Sheets is an independent product of Arte Soft EOOD and is not affiliated with or endorsed by Microsoft Corporation. --- ## 3. All 30 Multi-Table Comparison Guides (`/compare//`) ### 3.1 Arte Sheets vs Microsoft Excel on iPad and iPhone - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-microsoft-excel-ipad-iphone/ - **SEO Title**: Arte Sheets vs Excel on iPad & iPhone | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: Arte Sheets runs directly in Safari or Chrome on iPad and iPhone with zero App Store download, no Microsoft account, local browser storage, and 184 Excel-compatible formulas for $0. Microsoft Excel for iPad and iPhone is a native iOS/iPadOS application with deep Apple Files integration, but requires a paid Microsoft 365 subscription to edit workbooks on iPads larger than 10.1 inches. Choose Arte Sheets for instant browser-local .xlsx and .csv editing or interactive formula practice; choose native Excel when you need native OS file providers or embedded .xlsx chart round-tripping. **When Arte Sheets fits best:** - Opens immediately at sheets.arte-soft.com/app/ on 11-inch and 13-inch iPads with full free editing and no 10.1-inch screen paywall. - Requires no account to edit local workbooks in browser IndexedDB, with Service Worker shell caching for offline reopening. - Includes 184 Excel-compatible functions (XLOOKUP, FILTER, UNIQUE, SUMIFS, PMT) plus free interactive formula guides. **When Microsoft Excel (iPad & iPhone) fits best:** - Native iPadOS/iOS app with direct Apple Files, iCloud Drive, and OneDrive file-picker integration. - Preserves embedded Excel charts, comments, and complex desktop Print Area layouts inside .xlsx files. - Included at no extra cost if you already pay for Microsoft 365 Personal ($99.99/yr) or Family ($129.99/yr). #### Architecture, iPad Screen Paywalls, and Account Rules Microsoft enforces a longstanding 10.1-inch screen threshold on mobile devices: iPhones and iPad mini models can perform basic edits after signing in with a Microsoft account, whereas 10.9-inch iPad, 11-inch iPad Air/Pro, and 13-inch iPad Air/Pro models drop into read-only mode unless linked to an active Microsoft 365 subscription. Arte Sheets is an independent web spreadsheet application rather than an App Store binary. Because it runs in mobile Safari or Chrome, there is no screen-size restriction, no multi-hundred-megabyte app download, and no mandatory login wall before entering formulas or importing an .xlsx or .csv file. *Table: Platform access, sign-in, and storage comparison on iPad and iPhone* | Capability | Arte Sheets (Mobile Web) | Microsoft Excel (iOS / iPadOS App) | | --- | --- | --- | | Delivery model | Browser web app (Safari / Chrome) with Service Worker shell | Native App Store binary (~350+ MB install) | | Editing on 11" & 13" iPads | Free without sign-up ($0) | Requires paid Microsoft 365 subscription | | Mandatory account to start | None (anonymous local IndexedDB workbooks) | Microsoft account sign-in required | | Supported file imports | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt (up to 32 MB) | .xlsx, .xlsm, .xlsb, .csv, .txt (native iOS Files / OneDrive) | | Supported file exports | .xlsx (formulas & styles), .csv, .tsv, .ods, .xls, .xlsb, PDF print | .xlsx (full workbook objects), .csv, PDF | | Cloud storage location | Optional EU cloud (Hetzner Germany); 10 files free / 1,000 Pro | Microsoft OneDrive / SharePoint (US & global regions) | #### Formulas, PivotTables, and Touch-plus-Keyboard Workflows For day-to-day financial and operational modeling on an iPad with a Magic Keyboard or touch screen, Arte Sheets ships 184 Excel-compatible functions in its calculation worker, including dynamic arrays (XLOOKUP, XMATCH, FILTER, SORT, UNIQUE, SEQUENCE) alongside SUMIFS, INDEX/MATCH, and PMT. Important compatibility boundaries apply when moving files back and forth: Arte Sheets exports formulas and cell formatting cleanly to .xlsx, whereas canvas charts and page macros stay inside Arte Sheets rather than embedding into exported .xlsx binaries. Native Excel on iPad preserves existing desktop Excel charts and PivotTable caches, though neither platform runs full desktop COM add-ins or Power Query editors on iPadOS. *Table: Formula engine and modeling workflow comparison on mobile devices* | Workflow Area | Arte Sheets | Microsoft Excel for iPad | | --- | --- | --- | | Built-in formula count | 184 Excel-compatible functions + dynamic arrays | 450+ Excel worksheet functions (including LET & LAMBDA) | | Modern lookup & spill functions | XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, VSTACK, HSTACK | XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, LET, LAMBDA | | PivotTables | SUM PivotTables free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | View & edit PivotTables (with Microsoft 365 on >10.1" iPads) | | Charts | 7 canvas chart types (Column, Bar, Line, Area, Pie, Doughnut, Scatter) | Full native Office chart engine preserved inside .xlsx | | Macros & automation | Pro JS/VBA-style Macro Studio & Goal Seek in browser | Views .xlsm files; cannot record or execute desktop VBA on iPadOS | | In-app guided learning & AI | Free public practice guides; Pro AI assistant (2,000 credits/mo) | Microsoft Copilot requires separate add-on or eligible M365 tier | #### Pricing and Multi-Year Cost Comparison If you only need to open, inspect, calculate, and export .xlsx or .csv spreadsheets on an iPad without subscribing to an entire office bundle, Arte Sheets Free costs $0 forever. Upgrading to Arte Sheets Pro ($19.99/month or $179.99/year before tax; no lifetime plan) is optional and unlocks 2,000 monthly AI credits, multi-dimensional PivotTables, Goal Seek, Macro Studio, all 62 interactive Academy lessons, and 1,000 private EU cloud workbooks. Microsoft 365 Personal ($99.99/year) is cost-effective when you actively use Word, PowerPoint, desktop Excel, and 1 TB of OneDrive storage across devices, but unnecessary overhead when you only want an uncluttered spreadsheet grid in Safari. *Table: Pricing and 3-year cost comparison (USD before applicable taxes)* | Plan / Tier | Monthly Cost | Annual Cost | 3-Year Total | Best For | | --- | --- | --- | --- | --- | | Arte Sheets Free | $0 | $0 | $0 | Zero-signup iPad/iPhone browser editing, 184 formulas, .xlsx/.csv export, 10 EU cloud files | | Arte Sheets Pro | $19.99/mo | $179.99/yr | $539.97 | In-app AI assistant (2,000 credits/mo), 62 Academy lessons, Goal Seek, 1,000 EU cloud files | | Microsoft Excel Free (iPhone / <10.1") | $0 | $0 | $0 | Quick viewing or small-screen iPhone edits with a Microsoft login | | Microsoft 365 Personal | $9.99/mo | $99.99/yr | $299.97 | Full native Excel on 11"/13" iPads plus Word, PowerPoint & 1 TB OneDrive | | Microsoft 365 Family (up to 6 users) | $12.99/mo | $129.99/yr | $389.97 | Households sharing full Office apps and cloud storage across multiple Apple devices | #### Frequently Asked Questions - **Is Arte Sheets a native iOS App Store download?** No. Arte Sheets is a browser-based spreadsheet application at sheets.arte-soft.com/app/ with an offline Service Worker shell and local IndexedDB storage. It runs in Safari or Chrome on iPad and iPhone without an App Store install. - **Can I edit .xlsx spreadsheets on an 11-inch or 13-inch iPad for free in Arte Sheets?** Yes. Unlike Microsoft Excel for iPad, which requires a Microsoft 365 subscription for editing on screens larger than 10.1 inches, Arte Sheets allows full core editing, 184 formulas, and .xlsx/.csv export at no cost on any screen size. - **Do my spreadsheets stay private on my iPad if I do not sign up?** Yes. Without an account, workbooks stay locally in your iPad browser storage (IndexedDB) and are not uploaded to cloud servers unless you sign in and save them to My files. - **What features require native Microsoft Excel instead of Arte Sheets?** Choose Microsoft Excel if you need embedded .xlsx chart round-tripping, LET/LAMBDA formulas, worksheets with hundreds of thousands of complex linked cells, or direct OneDrive/SharePoint co-authoring. ### 3.2 Arte Sheets vs Microsoft Excel for Mac - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-microsoft-excel-mac/ - **SEO Title**: Arte Sheets vs Microsoft Excel for Mac | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: Arte Sheets opens instantaneously in Safari, Chrome, or Firefox on macOS with zero disk installation, no Microsoft AutoUpdate background daemons, and 184 Excel-compatible formulas free without registration. Desktop Microsoft Excel for Mac remains the gold standard for massive workbooks (up to 1,048,576 rows), Power Query refreshes, VBA workbooks, and full .xlsx chart fidelity, but requires a paid Microsoft 365 subscription or Office Home 2024 license and several gigabytes of local storage. Use Arte Sheets for fast daily spreadsheets, CSV cleanup, and guided formula mastery; keep desktop Excel for heavy corporate financial models. **When Arte Sheets fits best:** - Zero macOS installation footprint—launches directly in Safari or Chrome with no background updater processes or license activation. - Free core editor supports .xlsx, .csv, .tsv, and .ods import/export, 184 functions (including XLOOKUP and FILTER), charts, and SUM PivotTables. - Built-in interactive spreadsheet Academy and optional Pro AI assistant that can give hints before modifying cells. **When Microsoft Excel for Mac fits best:** - Native macOS Apple Silicon binary engineered for multi-hundred-thousand-row financial models and complex array recalculations. - Full .xlsx round-trip fidelity for embedded charts, PivotTable caches, Print Titles, page breaks, and desktop VBA macros. - Supports Power Query data connections, 450+ functions (including LET and LAMBDA), and enterprise SharePoint governance. #### macOS Footprint, Startup Speed, and Privacy Architecture Installing Microsoft Excel on a Mac typically brings multi-gigabyte application bundles plus background licensing and Microsoft AutoUpdate helpers. For analysts who live inside complex workbooks eight hours a day, that native footprint pays off. For Mac users who want to inspect client .xlsx attachments, build clean budgets, or audit formulas without cluttering macOS, a browser-native tool removes friction. Arte Sheets stores anonymous workbooks directly inside your browser IndexedDB and caches the static application shell via a Service Worker. When cloud sync is needed, signed-in accounts store workbooks in private European Union storage (Hetzner Storage Box, Germany) under GDPR rather than defaulting to OneDrive. *Table: macOS system footprint, file handling, and privacy comparison* | Dimension | Arte Sheets (macOS Browser) | Microsoft Excel for Mac (Desktop) | | --- | --- | --- | | Local disk installation | 0 MB app install (runs in Safari, Chrome, Edge, Firefox) | ~2.5 GB+ application bundle + updater daemons | | Account requirement | None for local editing, import, formulas & .xlsx/.csv export | Microsoft account / license activation required | | Offline capability | Service Worker shell cache + local browser IndexedDB persistence | Full native offline desktop execution | | Import formats | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt (worker-based) | .xlsx, .xlsm, .xlsb, .xls, .csv, .txt, .xml, Power Query sources | | .xlsx export scope | Preserves formulas & cell formatting (charts/macros not embedded) | Full native OpenXML fidelity (charts, PivotTables, print setup) | | Default data residency | Local browser by default; optional private EU cloud (Germany) | Local Mac disk or Microsoft OneDrive cloud | #### Formula Compatibility, PivotTables, and Automation Depth Arte Sheets implements 184 core and modern Excel functions—covering XLOOKUP, XMATCH, VLOOKUP, INDEX, MATCH, SUMIFS, COUNTIFS, FILTER, UNIQUE, SORT, SEQUENCE, TEXTSPLIT, and financial functions like PMT, NPV, and IRR—all using standard English function names and comma syntax. Where desktop Excel for Mac pulls ahead is enterprise breadth: Excel supports over 450 functions (such as LET, LAMBDA, XIRR, and CUBE functions), native VBA user forms, and Power Query transformations. Conversely, Arte Sheets includes built-in interactive formula checks on 2,950+ public learning pages so Mac users can verify why a formula works before trusting its output. *Table: Modeling, PivotTable, and automation comparison on Mac* | Feature | Arte Sheets | Microsoft Excel for Mac | | --- | --- | --- | | Formula library | 184 functions including dynamic arrays (XLOOKUP, FILTER, UNIQUE) | 450+ functions including LET, LAMBDA, XIRR & dynamic arrays | | Formula auditing | Trace Precedents & Trace Dependents arrows + interactive checks | Trace Precedents, Trace Dependents & Show Formulas | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups on Pro | Full native PivotTables, Slicers & calculated fields | | What-if & automation | Pro Goal Seek + browser JS/VBA-style Macro Studio & UDFs | Goal Seek, Solver add-in, Data Tables & native VBA | | Real-time collaboration | Shared EU cloud workbooks with live cursors, @comments & suggestions | Real-time co-authoring via OneDrive / SharePoint | | UI localization | 31 interface languages + localized templates (Invoice, KPI, Loan, Payroll) | macOS system language packs via Office | #### Cost Breakdown: Free Browser Editor vs Office Licensing Mac users have three realistic pricing paths: Arte Sheets Free ($0 forever) for standard browser spreadsheets, Microsoft Office Home 2024 ($149.99 one-time desktop license for 1 Mac without cloud/AI upgrades), or recurring subscriptions—Microsoft 365 Personal ($99.99/yr) versus Arte Sheets Pro ($19.99/mo or $179.99/yr with 2,000 monthly AI credits and all 62 interactive Academy lessons; Arte Sheets does not offer a lifetime license). *Table: Mac spreadsheet pricing comparison over 1 and 3 years (USD)* | Option | Upfront / Monthly | Annual Cost | 3-Year Cost | Included Extras | | --- | --- | --- | --- | --- | | Arte Sheets Free | $0 | $0 | $0 | 184 formulas, .xlsx/.csv export, charts, SUM PivotTables, 10 EU cloud files | | Arte Sheets Pro | $19.99/mo | $179.99/yr | $539.97 | 2,000 AI credits/mo (text/voice/files), 62 lessons, Goal Seek, Macros, 1,000 EU cloud files | | Microsoft 365 Personal | $9.99/mo | $99.99/yr | $299.97 | Desktop Excel, Word, PowerPoint, Outlook & 1 TB OneDrive | | Office Home 2024 (1 Mac) | $149.99 once | $0 renewal | $149.99 | Perpetual desktop Excel, Word & PowerPoint for 1 Mac (no cloud upgrades) | #### Frequently Asked Questions - **Can Arte Sheets open and save Mac Excel .xlsx files?** Yes. Arte Sheets imports .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, and .tsv files directly in your Mac browser and exports .xlsx files with formulas and cell formatting preserved. - **Does Arte Sheets lose charts when exporting back to .xlsx for Excel?** Charts created on the Arte Sheets canvas can be printed or saved to PDF inside Arte Sheets, but are not embedded inside exported .xlsx files. Keep desktop Excel when round-tripping embedded Office chart objects is mandatory. - **Does Arte Sheets offer a one-time lifetime purchase on Mac?** No. The core Arte Sheets spreadsheet editor is permanently free ($0), and Arte Sheets Pro is an optional subscription ($19.99/month or $179.99/year before tax) funding monthly AI credits, cloud storage, and Pro Academy courses. - **Does Arte Sheets work offline on a MacBook?** Yes. Once opened in your browser, Arte Sheets caches its public application shell via a Service Worker and persists local workbooks in IndexedDB so you can keep editing without Wi-Fi. ### 3.3 Arte Sheets vs Google Sheets - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-google-sheets/ - **SEO Title**: Arte Sheets vs Google Sheets (2026) | Arte Sheets - **Category**: Cloud & Collaborative Apps - **Quick Answer (TL;DR)**: Arte Sheets and Google Sheets both run directly in modern web browsers, but they take opposite stances on accounts and file residency. Google Sheets requires a Google Account and stores every spreadsheet in Google Drive cloud servers by default, excelling at massive organizational sharing and Google Workspace integrations. Arte Sheets opens immediately without registration, keeps anonymous spreadsheets locally in your browser IndexedDB, stores optional cloud workbooks in private EU servers (Germany), and pairs 184 Excel-compatible formulas with interactive worked examples. **When Arte Sheets fits best:** - Zero sign-up required: open sheets.arte-soft.com/app/, drop in a sensitive .xlsx or .csv file, calculate locally in IndexedDB, and export. - Optional cloud storage is hosted in the European Union (Hetzner, Germany) with strict per-user isolation rather than US ad-tech ecosystems. - Uses standard Excel formula conventions (no ARRAYFORMULA wrapper needed for dynamic spills like FILTER, UNIQUE, and XLOOKUP). **When Google Sheets fits best:** - Completely free cloud collaboration for anyone with a personal Google Account, supporting hundreds of simultaneous editors. - Unique cloud-connected functions such as GOOGLEFINANCE, IMPORTRANGE, QUERY, and Apps Script triggers. - Native mobile apps on iOS and Android plus seamless integration with Gmail, Google Forms, Looker Studio, and BigQuery. #### Local-First Browser Privacy vs Mandatory Google Drive Cloud In Google Sheets, creating or opening a CSV or Excel workbook immediately uploads that data into Google Drive tied to a Google identity. Offline editing in Google Sheets requires Chrome or Edge extensions and explicit Google Drive sync configuration. Arte Sheets treats cloud storage as strictly opt-in. Anonymous sessions run locally in any modern browser using IndexedDB and Web Workers—ideal for payroll drafts, client CSV exports, or quick financial checks on a shared or locked-down machine. If you create an account to collaborate or access files across devices, cloud workbooks reside in Germany under EU GDPR. *Table: Privacy, storage residency, and account comparison* | Criteria | Arte Sheets | Google Sheets | | --- | --- | --- | | Sign-up required to edit | No — immediate local browser editor | Yes — Google Account mandatory | | Default file location | Local browser storage (IndexedDB) on your device | Google Drive cloud servers | | Offline browser support | Built-in Service Worker shell + local IndexedDB cache | Requires Chrome/Edge Google Docs Offline setup | | Cloud storage jurisdiction | European Union (Hetzner Online GmbH, Germany) | Global Google Cloud regions (Workspace Enterprise for EU region locks) | | Collaboration controls | Live avatars, cell selections, @comments & accept/reject suggestions | Live cursors, comments, version history & granular Drive sharing | | Self-service data export | One-click .xlsx download + full account JSON export & deletion | Google Takeout / Drive export | #### Excel Formula Syntax, File Formats, and Learning Workflow Google Sheets supports over 500 functions—including web-native powerhouses like QUERY and IMPORTRANGE—but differs from Excel in subtle ways, such as requiring ARRAYFORMULA() around many vector expressions. Arte Sheets focuses on 184 Excel-compatible functions where dynamic array formulas (FILTER, SORT, UNIQUE, XLOOKUP, CHOOSECOLS, VSTACK) spill naturally just like modern Excel. Arte Sheets also integrates spreadsheet education directly into the product: 2,950+ free public guides let you mutate cell inputs on the page, and Pro unlocks an in-app AI assistant that can give one hint at a time instead of overwriting your workbook blindly. *Table: Formulas, file formats, and AI workflow comparison* | Capability | Arte Sheets | Google Sheets | | --- | --- | --- | | Formula style | 184 Excel-style functions with native dynamic array spills | 500+ functions (mix of Excel functions + ARRAYFORMULA / QUERY) | | Import file types | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .xlsx, .xls, .ods, .csv, .tsv, .txt (imported into Drive) | | Export file types | .xlsx, .csv, .tsv, .ods, .xls, .xlsb, PDF print | .xlsx, .ods, .csv, .tsv, PDF, HTML | | PivotTables & Goal Seek | SUM PivotTables free; multi-agg PivotTables & Goal Seek in Pro | Full PivotTables free; Goal Seek requires Workspace add-on | | Scripting & macros | Pro JS/VBA-style Macro Studio & custom functions (page-scoped) | Google Apps Script (cloud JavaScript with web triggers) | | Built-in learning | 2,950+ free runnable guides + 62 interactive Academy lessons | Help Center documentation only | #### Free Limits vs Paid Subscription Plans For personal cloud collaboration, Google Sheets with a consumer Gmail account is hard to beat on price ($0 with 15 GB shared Drive storage). Teams wanting custom domains, Gemini AI in Sheets, or administrative controls pay per user for Google Workspace. Arte Sheets keeps its core local editor $0 forever, while Arte Sheets Pro ($19.99/mo or $179.99/yr) bundles in-app AI (2,000 monthly credits), Pro Academy courses, advanced PivotTables, Goal Seek, and 1,000 private EU cloud workbooks. *Table: Pricing and quota comparison (USD before applicable taxes)* | Tier | Price | Cloud Storage / Quotas | AI & Advanced Tools | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Unlimited local browser files + 10 EU cloud workbooks (100 MiB) | 184 formulas, charts, SUM PivotTables, 10 free Academy lessons | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Up to 1,000 private EU cloud workbooks (1 GiB total) | 2,000 AI credits/mo (text/voice/files), 62 lessons, Goal Seek, Macros | | Google Sheets (Personal) | $0 | Shared 15 GB Google Drive quota (Google Account required) | Full Sheets grid, PivotTables & Apps Script | | Google Workspace Business Standard | $14–$16.80/user/mo | 2 TB pooled Google Drive per user | Workspace collaboration, admin controls & Gemini Business features | #### Frequently Asked Questions - **Can I use Arte Sheets without a Google or Microsoft account?** Yes. Arte Sheets opens directly in your browser with no sign-up or login required. Your local workbooks stay in your browser IndexedDB until you choose to export them or create an optional account. - **Does Arte Sheets support GOOGLEFINANCE or IMPORTRANGE?** No. Those are Google-proprietary cloud functions. Arte Sheets focuses on 184 portable Excel-compatible worksheet functions such as XLOOKUP, FILTER, SUMIFS, INDEX/MATCH, and PMT. - **Where are cloud spreadsheets stored if I sign in to Arte Sheets?** Signed-in cloud workbooks are stored privately in European Union infrastructure (Hetzner Storage Box and PostgreSQL in Germany) rather than Google Drive. - **Can Arte Sheets and Google Sheets exchange files cleanly?** Yes. Both applications import and export standard .xlsx, .csv, .tsv, and .ods files, making it easy to clean or model data locally in Arte Sheets and share values or Excel formulas downstream. ### 3.4 Arte Sheets vs Apple Numbers - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-apple-numbers/ - **SEO Title**: Arte Sheets vs Apple Numbers (2026) | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: Apple Numbers comes free on Mac, iPad, and iPhone and shines at presentation-ready pages with multiple small tables on a freeform canvas. However, that canvas model often splits exported .xlsx files into extra worksheets and frustrates users accustomed to standard Excel A1 ranges and shortcuts. Arte Sheets provides a familiar continuous Excel-style grid in any browser—macOS, iPadOS, Windows, or Linux—with 184 Excel-compatible formulas, clean .xlsx/.csv import-export, and interactive formula training. **When Arte Sheets fits best:** - Traditional continuous row-and-column grid where A1 references, AutoFilter, and XLOOKUP behave the way Excel users expect. - Works identically in Safari on Mac/iPad and Chrome/Firefox on Windows or Linux—no Apple ID required to collaborate or edit. - Built-in interactive lessons and optional Pro AI assistant (text, voice, and file excerpts) accelerate formula troubleshooting. **When Apple Numbers fits best:** - 100% free native Apple app across macOS, iPadOS, and iOS with polished typography, media layout, and Apple Pencil annotations. - Great for visual one-page reports combining several independent mini-tables, checklists, and styled charts on one canvas. - Seamless offline sync across personal Apple devices via iCloud Drive. #### Continuous Excel Grid vs Multi-Table Freeform Canvas Apple Numbers intentionally breaks away from traditional spreadsheets: each sheet is a blank page onto which you place discrete named tables, text boxes, and shapes. While visually attractive for personal trackers or school projects, accountants and engineers exchanging .xlsx files with clients frequently run into translated table-name references and multi-tab .xlsx export splits. Arte Sheets uses a classic worksheet coordinate grid with multiple tabs, frozen/scrollable headers, Trace Precedents/Dependents formula auditing, and direct .xlsx formula preservation—so models built in Arte Sheets translate cleanly to Excel conventions. *Table: Grid paradigm, cross-platform reach, and .xlsx behavior* | Aspect | Arte Sheets | Apple Numbers | | --- | --- | --- | | Worksheet model | Continuous Excel-style A1 cell grid with multiple sheet tabs | Freeform layout canvas holding multiple small discrete tables | | Supported operating systems | Any modern browser (Mac, iPad, iPhone, Windows, Linux, Android) | Native macOS, iPadOS, iOS + iCloud.com web client | | Native file format | .xlsx / local IndexedDB workbook model | Proprietary .numbers bundle (requires export for .xlsx) | | .xlsx export behavior | Preserves worksheet structure, formulas & cell formatting | Converts each canvas table into separate sheets or stacked blocks | | Account requirement | None for local browser work; email sign-in for EU cloud sharing | None locally on Apple hardware; Apple ID required for iCloud sharing | | UI languages | 31 languages with localized built-in business templates | 30+ system languages via Apple OS | #### Formulas, Lookups, and Data Cleaning Capabilities Recent versions of Apple Numbers added XLOOKUP and REGEX functions, yet its formula bar, token pills, and named-table syntax feel distinctly non-Excel. Arte Sheets gives learners and practitioners a conventional formula bar, cell-pointing references, Flash Fill, Remove Duplicates, Text to Columns, and 184 Excel-named functions. When auditing unfamiliar formulas, Arte Sheets lets you trace precedent and dependent cells visually or open worked examples from its 2,950+ public guide library to test edge cases before changing production numbers. *Table: Formula, data tool, and PivotTable comparison* | Feature | Arte Sheets | Apple Numbers | | --- | --- | --- | | Formula entry UX | Standard Excel text/pointing formula bar (=SUMIFS, =XLOOKUP) | Tokenized pill editor with Table::Column references | | Dynamic arrays | FILTER, UNIQUE, SORT, SORTBY, SEQUENCE, VSTACK, HSTACK, TEXTSPLIT | Limited spill parity compared with Excel-style dynamic arrays | | Data cleanup tools | AutoFilter, Flash Fill, Remove Duplicates, Text to Columns, TRIM/CLEAN | Smart Categories, Quick Filters, Merge/Unmerge & REGEX functions | | PivotTables | SUM PivotTables free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Native Pivot Tables included free | | Goal Seek & Macros | Pro Goal Seek solver + browser Macro Studio & custom functions | AppleScript / Shortcuts automation on Mac; no built-in Goal Seek | | Charts & PDF export | 7 chart types + active-sheet PDF print (charts stay in web app) | Rich native 2D/3D/interactive charts exported to PDF & .numbers | #### Pricing and Team Collaboration Across Mixed Devices If every collaborator owns a Mac or iPad and stays inside .numbers files, Apple Numbers costs $0. As soon as Windows colleagues, external accountants, or EU GDPR cloud requirements enter the picture, Arte Sheets eliminates Apple ID friction while keeping core browser editing free. *Table: Cost and collaboration comparison* | Plan | Price (USD) | Cross-Platform Sharing | Key Advantages | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Any browser; 10 private EU cloud workbooks with free account | True Excel grid, 184 formulas, zero OS lock-in | | Arte Sheets Pro | $19.99/mo or $179.99/yr | 1,000 EU cloud workbooks + live co-editing & @comments | 2,000 AI credits/mo, 62 Academy lessons, Goal Seek & Macros | | Apple Numbers | $0 (with Apple device) | iCloud sharing (best when collaborators have Apple IDs) | Best visual page layout & free native Pivot Tables on Mac/iPad | #### Frequently Asked Questions - **Can Arte Sheets open .numbers files directly?** No. Export your Apple Numbers document to Excel (.xlsx), CSV (.csv), or TSV (.tsv) inside Numbers first, then import that file directly into Arte Sheets. - **Why do spreadsheets exported from Apple Numbers look different in Excel or Arte Sheets?** Because Numbers places multiple independent tables on one canvas, exporting to .xlsx must flatten or split those tables into worksheet tabs. Building directly in an A1 grid like Arte Sheets avoids layout shifts. - **Is Arte Sheets free to use on Mac and iPad like Apple Numbers?** Yes. The core Arte Sheets browser editor, 184 formulas, charts, SUM PivotTables, and .xlsx/.csv export are free without creating an account. - **When should I choose Apple Numbers over Arte Sheets?** Choose Apple Numbers when designing multi-table visual reports, brochures, or checklists exclusively for Apple devices and PDF printing. ### 3.5 Arte Sheets vs LibreOffice Calc - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-libreoffice-calc/ - **SEO Title**: Arte Sheets vs LibreOffice Calc | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: LibreOffice Calc is a powerhouse free, open-source desktop spreadsheet for Linux, Windows, and macOS that handles huge local .ods and .xlsx files completely offline. However, Calc lacks a lightweight official browser workspace, feels dated on macOS Retina displays, and has no built-in real-time cloud co-editing or interactive learning loop. Arte Sheets runs instantly in any desktop or tablet browser with zero installation, 184 modern Excel formulas, optional EU cloud collaboration, and step-by-step Academy practice. **When Arte Sheets fits best:** - Runs immediately in any browser across Mac, Windows, Linux, Chromebook, and iPad without downloading a 700+ MB desktop suite. - Modern clean UI with light/dark themes, live multi-user collaboration (@comments, suggestions), and 31 interface languages. - Includes modern Excel dynamic array functions (XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, VSTACK, TEXTSPLIT) out of the box. **When LibreOffice Calc fits best:** - 100% free and open-source (MPL 2.0) native desktop software with zero cloud dependencies, quotas, or subscriptions. - Handles very large local workbooks, full multi-field PivotTables, Solver, Detective auditing, and native OpenDocument (.ods) fidelity. - Supports Basic/Python desktop scripting and embedded chart preservation across .ods and .xlsx files. #### Browser Portability and Modern UX vs Traditional Desktop Suite LibreOffice Calc is built on a cross-platform C++/VCL desktop toolkit designed for full offline office installations on Windows, Linux, and macOS. While unbeatable for air-gapped workstations, it cannot be opened via a quick URL on a Chromebook, borrowed laptop, or iPad without deploying self-hosted Collabora servers. Arte Sheets loads in seconds at sheets.arte-soft.com/app/, stores local workbooks privately in browser IndexedDB, and supports both .xlsx and .ods import/export—making it an ideal companion or lightweight alternative to Calc. *Table: Deployment, platform reach, and file format comparison* | Attribute | Arte Sheets | LibreOffice Calc | | --- | --- | --- | | Installation | Zero install — instant web app + offline Service Worker shell | Desktop installer (~300–750 MB unpacked) | | Tablet & Chromebook use | Works directly in iPad Safari and ChromeOS browsers | Desktop OS only (mobile requires third-party Collabora port) | | Primary file formats | Imports .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv; exports .xlsx, .ods, .csv, .tsv | Native .ods; imports & exports .xlsx, .xls, .csv, .tsv, PDF | | Real-time collaboration | Built-in shared EU cloud workbooks with live cursors & suggestions | Local single-user desktop files (unless paired with Nextcloud/Collabora) | | Interface & themes | Modern ribbon/toolbar with light & dark mode in 31 languages | Classic toolbar or Tabbed UI across desktop OSes | | Privacy posture | No-account local IndexedDB or GDPR-compliant German EU cloud | 100% local disk storage with zero account system | #### Excel Dynamic Arrays, PivotTables, and Interactive Learning LibreOffice 24.8+ recently added modern functions like XLOOKUP, FILTER, and SORT, alongside decades of deep statistical and engineering functions (500+ total). Arte Sheets concentrates on the 184 high-frequency Excel formulas used in finance, operations, and reporting, backed by background Web Worker evaluation and 2,950+ runnable web lessons. Be mindful of export trade-offs: LibreOffice Calc saves charts and complex PivotTables directly inside .ods and .xlsx files, whereas Arte Sheets preserves formulas and cell styles in .xlsx exports while keeping charts on the web sheet/PDF print view. *Table: Formulas, analysis tools, and learning resources* | Feature | Arte Sheets | LibreOffice Calc | | --- | --- | --- | | Worksheet functions | 184 Excel-compatible functions + dynamic arrays | 500+ Calc & Excel-compatible functions | | PivotTables | SUM PivotTables free; multi-agg & column groups in Pro | Full multi-dimension PivotTables & DataPilot free | | What-if & optimization | Goal Seek in Pro | Goal Seek, Linear/Non-Linear Solver & Multiple Operations free | | Macros & custom functions | Browser JS/VBA-style Macro Studio & UDFs in Pro | LibreOffice Basic, Python, BeanShell & JavaScript macros free | | AI assistance | In-app Pro AI assistant (text, voice & file excerpts; 2,000 credits/mo) | None built in (relies on third-party extensions) | | Guided skill building | 2,950+ free runnable guides + 62 interactive Academy lessons | Community PDF manuals & wiki documentation | #### Cost Comparison: Open Source Desktop vs Freemium Web Workspace Many users pair both tools at $0: LibreOffice Calc on a home Linux or Windows machine for massive archival .ods/.xlsx files, and Arte Sheets in the browser for quick cross-device work, clean shared reviews, or structured Excel skill building. *Table: Pricing and capability summary* | Solution | Cost | Cloud Collaboration | Ideal Use Case | | --- | --- | --- | --- | | LibreOffice Calc | $0 (Open Source) | Not included (self-host required) | Heavy offline desktop spreadsheets, .ods archives & open-source desktops | | Arte Sheets Free | $0 | Up to 10 private EU cloud workbooks (free login) | Instant browser spreadsheets on Mac/iPad/Windows & free formula practice | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Up to 1,000 private EU cloud workbooks (1 GiB) | Teams & learners wanting AI hints, 62 courses, Goal Seek & browser macros | #### Frequently Asked Questions - **Can Arte Sheets import and export LibreOffice .ods spreadsheets?** Yes. Arte Sheets imports .ods files up to 32 MB via a browser conversion worker and offers .ods compatibility export alongside .xlsx, .csv, and .tsv. - **Which is better for preserving formulas between Calc and Arte Sheets?** Use .xlsx when moving formula-heavy workbooks between LibreOffice Calc and Arte Sheets; Arte Sheets explicitly notes that .xlsx preserves formulas and cell styles with the highest fidelity. - **Does Arte Sheets charge to export .xlsx or .csv files?** No. Importing and exporting .xlsx, .csv, .tsv, and .ods files is completely free in Arte Sheets without creating an account. - **When should I stick with LibreOffice Calc?** Choose LibreOffice Calc for multi-hundred-thousand-row local datasets, free desktop Solver models, embedded .ods/.xlsx charts, or strictly offline Linux workstations. ### 3.6 Arte Sheets vs WPS Office Spreadsheets - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-wps-office-spreadsheets/ - **SEO Title**: Arte Sheets vs WPS Spreadsheets | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: WPS Office Spreadsheets offers a familiar ribbon interface across Windows, Mac, Linux, iOS, and Android, but its free tier is notorious for promotional pop-ups, PDF/AI upsell banners, and account nudges. Arte Sheets runs cleanly in your browser with zero advertisements, zero sign-up required for local editing, 184 Excel-compatible formulas, and EU-hosted cloud storage (Germany) when you choose to sign in. **When Arte Sheets fits best:** - 100% ad-free interface on both Free and Pro tiers—no pop-up banners, bundled PDF toolbars, or default file-association hijacking. - Anonymous local workbooks stay in your browser IndexedDB; optional cloud storage is operated by an EU company (Arte Soft EOOD) in Germany. - Transparent separation between free core spreadsheet tools and optional Pro AI / Academy / automation features. **When WPS Office Spreadsheets fits best:** - Native desktop and mobile binaries bundling Writer, Presentation, Spreadsheets, and PDF tools in one download. - High visual similarity to desktop Microsoft Excel, including embedded .xlsx chart editing and desktop print preview. - Lower annual cost on basic non-AI WPS Pro tiers (~$35.99/yr) when you want a full multi-app desktop suite. #### Workspace Cleanliness, Ads, and Data Governance Many users install WPS Office looking for a lightweight Excel clone, only to encounter upgrade dialogs on export/PDF tools, background tray processes, and cloud sync prompts. When handling confidential budgets, payroll, or client exports, predictable data residency matters just as much as formula support. Arte Sheets has no desktop background services and zero third-party ad networks. You open the editor in any browser, work locally without logging in, and—if you opt into cloud storage—keep workbooks in private German storage with self-service .xlsx export and full account deletion. *Table: Privacy, interface clutter, and platform comparison* | Factor | Arte Sheets | WPS Office Spreadsheets | | --- | --- | --- | | Advertisements in free tier | Zero ads or promotional pop-ups | Promotional banners & feature upsell prompts in free tier | | Sign-up to edit & export .xlsx | Not required | Frequently prompted for cloud/template/export actions | | Installation footprint | Zero install — runs in browser with offline shell cache | Desktop/mobile suite installer + background update services | | Data controller & cloud region | Arte Soft EOOD (Bulgaria / EU); Hetzner storage in Germany | Kingsoft / WPS global cloud infrastructure | | Supported imports | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .xlsx, .xls, .et, .csv, .txt, .ods | | Interface languages | 31 languages with localized business templates | Multiple desktop & mobile UI languages | #### Formulas, Templates, and Spreadsheet Capabilities Arte Sheets includes built-in localized templates (Financial Report & KPIs, Staff & Payroll, Invoice, Loan & Mortgage Calculator, and a 100K-row stress test) that open immediately without template-store paywalls. Its 184-function engine covers modern lookups (XLOOKUP, XMATCH) and dynamic arrays (FILTER, UNIQUE, SORT, SEQUENCE). WPS Spreadsheets offers stronger native .xlsx embedded chart round-tripping and desktop print pagination, making it more suitable when editing heavily formatted corporate slide-ready Excel workbooks offline on Windows. *Table: Feature comparison across formulas, templates, and AI* | Feature | Arte Sheets | WPS Spreadsheets | | --- | --- | --- | | Core formulas | 184 Excel-compatible functions + dynamic arrays | 400+ Excel-compatible worksheet functions | | Built-in templates | Free localized Finance, Payroll, Invoice & Loan templates | Large template gallery (mix of free & VIP/paid templates) | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Native PivotTables included | | Charts | 7 browser canvas chart types + PDF print | Native embedded Office charts saved in .xlsx | | AI capabilities | Pro in-app AI (2,000 credits/mo; text, voice & file excerpts) | WPS AI subscription tier / add-on | | Interactive learning | 2,950+ free public guides + 62 in-app Academy lessons | Blog tutorials only | #### Pricing Transparency WPS splits features across Free, WPS Pro, and higher WPS AI plans. Arte Sheets uses a simple two-tier structure: Free ($0 forever) for core browser spreadsheets and Arte Sheets Pro ($19.99/mo or $179.99/yr before tax) bundling AI credits, Pro Academy, Goal Seek, Macros, and 1,000 EU cloud files in one plan. *Table: Plan and pricing comparison (USD)* | Tier | Price | Ads / Upsells | What You Get | | --- | --- | --- | --- | | Arte Sheets Free | $0 | None | 184 formulas, .xlsx/.csv export, charts, SUM PivotTables, 10 EU cloud files | | Arte Sheets Pro | $19.99/mo or $179.99/yr | None | 2,000 AI credits/mo, 62 lessons & certificates, Goal Seek, Macros, 1,000 cloud files | | WPS Office Free | $0 | Ad/VIP prompts | Basic desktop/mobile documents, sheets & viewer | | WPS Pro / WPS AI | ~$35.99–$119+/yr | Reduced | Ad removal, PDF editing, cloud storage & AI tiers (varies by bundle) | #### Frequently Asked Questions - **Does Arte Sheets show ads or lock .xlsx export behind a VIP paywall?** No. Arte Sheets contains zero advertisements, and .xlsx, .csv, and .tsv import/export are completely free without creating an account. - **Are built-in templates free in Arte Sheets?** Yes. The built-in Financial Report, Payroll, Invoice, and Loan Calculator templates are included free and localize cleanly across 31 UI languages. - **Where is Arte Sheets hosted and operated?** Arte Sheets is operated by Arte Soft EOOD in Bulgaria (European Union), with private account databases and cloud workbook storage hosted at Hetzner in Germany. - **When is WPS Office Spreadsheets a better fit?** Choose WPS when you want an all-in-one installed desktop suite (word processor, slides, spreadsheets, and PDF editor) with embedded .xlsx chart round-tripping. ### 3.7 Arte Sheets vs ONLYOFFICE Spreadsheet Editor - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-onlyoffice-spreadsheets/ - **SEO Title**: Arte Sheets vs ONLYOFFICE Sheets | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: ONLYOFFICE Spreadsheet Editor is renowned for high OpenXML (.xlsx) layout fidelity and self-hosted Nextcloud/Docker deployments, as well as a free desktop app. However, collaborative ONLYOFFICE Docs typically requires managing Linux servers or configuring DocSpace rooms. Arte Sheets launches immediately at sheets.arte-soft.com/app/ with zero server administration, anonymous browser-local storage, optional EU cloud collaboration, and built-in interactive formula courses. **When Arte Sheets fits best:** - Zero DevOps or desktop installs: open a browser tab and start calculating immediately, or share a cloud workbook in seconds. - Combines a fast spreadsheet grid with 2,950+ runnable formula guides, 62 interactive Academy lessons, and hint-capable Pro AI. - Lightweight browser footprint with dedicated Web Workers for calculation, .xlsx import/export, and offline shell caching. **When ONLYOFFICE Spreadsheet Editor fits best:** - High-fidelity canvas rendering that preserves embedded .xlsx charts, shapes, and complex page layouts. - Can be self-hosted on your own Linux/Docker infrastructure alongside Nextcloud, OwnCloud, or Mattermost. - Free open-source Desktop Editors for Windows, macOS, and Linux with JavaScript plugin/macro architecture. #### Zero-Setup Browser Workflow vs Self-Hosted or Desktop Deployment Organizations with dedicated sysadmins love ONLYOFFICE because they can deploy Document Server inside their own VPC. Individual analysts, freelancers, educators, and small teams rarely want to maintain Docker containers, SSL certificates, and JWT secrets just to review a spreadsheet together. Arte Sheets gives you both extremes cleanly: completely serverless local editing in your browser IndexedDB when working solo without an account, and turnkey EU-hosted shared workbooks (Hetzner, Germany) when inviting teammates to comment or suggest cell changes. *Table: Deployment, collaboration, and storage architecture* | Dimension | Arte Sheets | ONLYOFFICE Spreadsheet Editor | | --- | --- | --- | | Instant anonymous web editor | Yes — sheets.arte-soft.com/app/ (zero sign-up) | Requires Desktop install, DocSpace registration, or self-hosted server | | Self-hosted Docker option | No (managed EU cloud + local browser IndexedDB) | Yes (ONLYOFFICE Docs Community & Enterprise editions) | | Managed cloud region | European Union (Germany) | Configurable in DocSpace (EU / US AWS regions) | | Collaboration UX | Live avatars, colored selections, @mentions & cell suggestions | Fast/Strict co-editing modes, comments, chat & version history | | File format imports | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .xlsx, .xls, .ods, .csv, .ots, .xltx | | .xlsx chart round-trip | Charts stay on web sheet / PDF print (formulas & styles export) | Preserves embedded charts and shapes inside .xlsx | #### Formulas, JavaScript Macros, and AI Integration Both editors embrace modern web engineering: ONLYOFFICE uses JavaScript macros on its document API, while Arte Sheets Pro includes a browser Macro Studio supporting recorded macros, custom worksheet functions (such as =WITH_TAX()), and sheet action buttons. Where Arte Sheets stands apart is integrated AI and verified learning: Pro subscribers receive 2,000 monthly AI credits directly inside the editor (supporting text, microphone voice, and .xlsx/.csv file excerpts) without needing to bring and bill separate third-party OpenAI API keys. *Table: Formulas, macros, AI, and Academy comparison* | Capability | Arte Sheets | ONLYOFFICE | | --- | --- | --- | | Worksheet functions | 184 Excel-compatible functions including XLOOKUP & FILTER | 450+ Excel-compatible functions | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Native PivotTables with slicers & layout styles | | Macros & custom functions | Pro Macro Studio & UDFs (page-scoped with trust prompt) | JavaScript API macros & plugins included in editor | | Goal Seek | Included in Arte Sheets Pro | Included via Goal Seek tool | | AI assistant model | Built-in Pro assistant (2,000 credits/mo included) | AI plugin requires bringing your own external LLM API key | | Structured curriculum | 62 interactive graded lessons + verifiable certificates | Documentation & help center | #### Cost Comparison for Individuals and Small Teams ONLYOFFICE Desktop Editors are free locally, while ONLYOFFICE DocSpace Business charges per admin/power user ($20/admin/month) or four-figure enterprise server licenses. Arte Sheets Free is $0 for local and up to 10 EU cloud workbooks, and Arte Sheets Pro is a flat $19.99/mo or $179.99/yr per individual subscriber. *Table: Pricing comparison (USD)* | Tier | Cost | Hosting Included | Best Fit | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Local browser + 10 EU cloud workbooks | Zero-setup browser spreadsheets & formula guides | | Arte Sheets Pro | $19.99/mo or $179.99/yr | 1,000 EU cloud workbooks + 2,000 AI credits/mo | Power users & learners wanting turnkey AI, Goal Seek & courses | | ONLYOFFICE Desktop Editors | $0 | Local desktop only | Offline Windows/Mac/Linux desktop editing with full .xlsx charts | | ONLYOFFICE DocSpace Business | From $20/admin/mo | Managed cloud rooms | Multi-room document portals needing word, slide, PDF & sheet suites | #### Frequently Asked Questions - **Do I need to configure an API key to use AI in Arte Sheets Pro?** No. Arte Sheets Pro includes 2,000 monthly AI credits out of the box for text, voice, and file-attachment prompts—no separate OpenAI or Anthropic key setup required. - **Can I use Arte Sheets without creating a cloud workspace or room?** Yes. Opening sheets.arte-soft.com/app/ gives you a full local workbook in your browser immediately with zero account or workspace setup. - **When does ONLYOFFICE beat Arte Sheets?** Choose ONLYOFFICE if you need self-hosted Docker collaboration behind a corporate firewall or full round-trip editing of embedded .xlsx charts and Word/PowerPoint documents. - **Does Arte Sheets warn before running macros from an imported file?** Yes. Imported workbooks containing macros require explicit user confirmation before their first run in the browser. ### 3.8 Arte Sheets vs Zoho Sheet - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-zoho-sheet/ - **SEO Title**: Arte Sheets vs Zoho Sheet (2026) | Arte Sheets - **Category**: Cloud & Collaborative Apps - **Quick Answer (TL;DR)**: Zoho Sheet is a capable cloud spreadsheet tightly woven into Zoho WorkDrive, Zoho CRM, and Zoho Creator, making it attractive for businesses already standardized on Zoho. However, Zoho Sheet requires creating a Zoho account and storing spreadsheets inside Zoho cloud servers. Arte Sheets works immediately in your browser without registration, keeps local spreadsheets on-device in IndexedDB, offers private German EU cloud storage when needed, and pairs 184 Excel formulas with interactive skill courses. **When Arte Sheets fits best:** - Instant zero-login browser access—ideal when you want to analyze a CSV or .xlsx file right now without registering for a SaaS ecosystem. - Local-first IndexedDB persistence plus Service Worker offline shell; optional cloud storage stays in Germany (EU). - Includes 2,950+ interactive public guides and a Pro AI assistant built around step-by-step hints and formula verification. **When Zoho Sheet fits best:** - Deep native integrations with Zoho CRM, Zoho Books, Zoho Forms, and automated cloud data feeds. - Generous free cloud collaboration for Zoho account holders, plus native iOS and Android companion apps. - Supports Deluge cloud scripting, cell-level locking, and automated data cleaning suggestions (Zia). #### Standalone Local-First Design vs Cloud Suite Lock-In Zoho Sheet is designed as the tabular layer of the broader Zoho Workplace and Zoho One cloud stack. Every workbook lives inside Zoho WorkDrive under a registered Zoho account. If your company runs Zoho CRM and Zoho Books, that tight coupling saves integration effort. If you are an independent professional, student, engineer, or EU team that prefers standalone tools without suite sprawl, Arte Sheets stays out of your way: zero marketing emails, zero account gate to use the core grid, and clean .xlsx/.csv portability. *Table: Account, offline, and cloud residency comparison* | Aspect | Arte Sheets | Zoho Sheet | | --- | --- | --- | | Anonymous zero-login editing | Yes — full core editor & .xlsx/.csv export without sign-up | No — requires Zoho account registration | | Local on-device browser mode | Yes (IndexedDB + Service Worker shell cache) | Cloud-first (requires WorkDrive sync / mobile app for offline) | | Cloud storage location | Hetzner Storage Box & PostgreSQL in Germany (EU) | Zoho regional data centers (US, EU, IN, AU, JP, CA) | | Transactional email policy | Strictly user-initiated auth/recovery via AWS SES EU (zero marketing) | Account tied to Zoho product ecosystem | | Supported imports | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .xlsx, .xls, .ods, .csv, .tsv | | UI localization | 31 languages with localized finance/payroll/invoice templates | 20+ interface languages | #### Formulas, Automation, and AI Workflows Zoho Sheet includes 350+ worksheet functions, Deluge custom functions, and Zia automated chart/insight panels. Arte Sheets focuses on 184 standard Excel functions (including XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, SUMIFS, and PMT) plus interactive verification so you can inspect and explain every calculation. In Arte Sheets Pro, the AI assistant accepts text, voice, and file attachments (.xlsx/.csv/.tsv/.txt excerpts) and can either coach you with hints or execute sheet edits within your document permissions. *Table: Formula, automation, and AI feature comparison* | Feature | Arte Sheets | Zoho Sheet | | --- | --- | --- | | Worksheet functions | 184 Excel-compatible functions + dynamic arrays | 350+ functions including XLOOKUP & custom Deluge functions | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Cloud PivotTables & Pivot Charts included | | Automation / scripting | Pro Goal Seek + browser JS/VBA-style Macro Studio | VBA macro support + Zoho Deluge cloud scripts | | AI assistant | Pro assistant (2,000 credits/mo; text, voice & file attachments) | Zia insights & formula/chart suggestions | | Peer review workflow | Cell @comments + accept/reject Suggestion mode | Comments, cell/range locking & audit version history | | Spreadsheet Academy | 62 interactive graded lessons + verifiable certificates | Webinars & help documentation | #### Pricing Comparison Zoho Sheet is free for individuals and small teams willing to create Zoho accounts (up to 5 GB WorkDrive starter storage), with paid Zoho WorkDrive/Workplace per-user tiers for larger storage and admin governance. Arte Sheets Free requires no account at all, while Arte Sheets Pro ($19.99/mo or $179.99/yr) bundles AI credits, courses, Goal Seek, Macros, and 1,000 EU cloud workbooks. *Table: Plan comparison (USD)* | Plan | Price | Account Needed | Highlights | | --- | --- | --- | --- | | Arte Sheets Free | $0 | No (optional for 10 EU cloud files) | Instant browser editor, 184 formulas, .xlsx/.csv export, 2,950+ guides | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Yes (verified email) | 2,000 AI credits/mo, 62 Academy lessons, Goal Seek, Macros, 1,000 cloud files | | Zoho Sheet Free | $0 | Yes (Zoho account) | Cloud co-editing, PivotTables, Zia insights & Zoho ecosystem links | | Zoho WorkDrive / Workplace | From ~$2.50–$6+/user/mo | Yes (org domain) | Team cloud folders, admin controls & Zoho mail/office bundle | #### Frequently Asked Questions - **Can I try Arte Sheets without handing over my email address?** Yes. Unlike Zoho Sheet, Arte Sheets opens immediately at sheets.arte-soft.com/app/ with zero registration required for local editing, formulas, charts, and .xlsx/.csv export. - **Does Arte Sheets send marketing emails if I create a free cloud account?** No. Per the Arte Sheets Privacy Policy, Amazon SES (EU region) is used strictly for user-initiated verification and password recovery—never unsolicited marketing. - **When is Zoho Sheet the better choice?** Choose Zoho Sheet when your team already uses Zoho CRM, Zoho Books, or Zoho Creator and wants automated Deluge data flows inside Zoho WorkDrive. - **Can I move spreadsheets between Zoho Sheet and Arte Sheets?** Yes. Export .xlsx or .csv from Zoho Sheet and open it directly in Arte Sheets, or export .xlsx from Arte Sheets to upload into WorkDrive. ### 3.9 Arte Sheets vs Polaris Office Sheet - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-polaris-office/ - **SEO Title**: Arte Sheets vs Polaris Office Sheets | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: Polaris Office bundles word processing, slides, PDFs, and spreadsheets across mobile and desktop, but its free tier displays advertisements and restricts cloud sync/usage quotas across devices. Arte Sheets is a focused, 100% ad-free browser spreadsheet editor that works on unlimited browsers without logging in, supports 184 Excel-compatible formulas, and exports clean .xlsx, .csv, and .tsv files for free. **When Arte Sheets fits best:** - Zero banner ads, zero interstitial video ads on mobile, and no device-count cap when opening the browser editor. - Free .xlsx, .csv, .tsv, and .ods import/export without registration; local workbooks remain privately in browser IndexedDB. - Includes 2,950+ interactive spreadsheet guides and optional Pro AI (2,000 monthly credits) with voice and file-excerpt support. **When Polaris Office Sheet fits best:** - All-in-one native mobile and desktop viewer/editor for Word (.docx), PowerPoint (.pptx), HWP, PDF, and Excel (.xlsx) files. - Preserves embedded Excel charts inside .xlsx files and offers native iOS/Android file-association handlers. - Offers lower-cost ad-removal tiers (Polaris Smart/Pro ~$39.99–$59.99/yr) when you need multi-format office editing. #### Ad-Free Focus and Unlimited Browser Access vs Freemium Device Caps Freemium multi-document suites like Polaris Office monetize casual spreadsheet users through ad placements, monthly cloud-traffic limits, and connected-device caps unless you upgrade. On a phone or tablet screen, ad banners shrink the visible grid right when you are trying to inspect columns. Arte Sheets is dedicated exclusively to spreadsheets and spreadsheet mastery. Every pixel of the editor goes to your cells, formula bar, and charts—with zero ads on any tier and no artificial limit on how many computers or tablets you open the browser app from. *Table: User experience, ads, and device-limit comparison* | Criteria | Arte Sheets | Polaris Office Sheet | | --- | --- | --- | | In-app advertisements | Zero ads on Free and Pro | Ads shown on Free tier | | Account & device limits | No account needed locally; access cloud from any browser | Account login & connected-device limits on Free/Smart tiers | | App scope | Dedicated spreadsheet editor, collaboration & Academy | Bundled Word, Slide, Sheet, PDF & HWP suite | | Offline local work | Service Worker shell cache + local browser IndexedDB | Native app offline editing (subject to tier rules) | | Cloud data hosting | Private EU cloud in Germany (10 files free / 1,000 Pro) | Polaris Drive cloud storage (monthly usage quotas on Free) | | Supported languages | 31 UI languages + localized business templates | Multiple desktop & mobile languages | #### Spreadsheet Engine, Dynamic Arrays, and Export Fidelity Arte Sheets runs its calculation and import/export pipelines inside browser Web Workers so CSV, TSV, and .xlsx files load smoothly without freezing the page. Its 184-function catalog includes modern Excel dynamic arrays (XLOOKUP, FILTER, UNIQUE, SORT, VSTACK, TEXTSPLIT) plus formula-auditing arrows. Polaris Sheet supports 300+ traditional spreadsheet functions and keeps embedded .xlsx charts intact when resaving Office files, making it handy if you routinely annotate mixed .docx, .pptx, and chart-heavy .xlsx bundles in one mobile app. *Table: Spreadsheet feature comparison* | Feature | Arte Sheets | Polaris Office Sheet | | --- | --- | --- | | Formula catalog | 184 Excel-compatible functions + dynamic array spills | 300+ spreadsheet functions | | Import formats | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .xlsx, .xls, .csv, .ods (plus .docx/.pptx/.pdf/.hwp in suite) | | Export formats | .xlsx (formulas & styles), .csv, .tsv, .ods, .xls, .xlsb, PDF | .xlsx, .xls, .csv, PDF | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | PivotTables supported (full creation varies by platform/tier) | | AI tools | Pro AI assistant (2,000 credits/mo; text, voice & file attachments) | Polaris AI Plus separate credit/subscription plans | | Learning library | 2,950+ free public guides + 62 interactive Academy lessons | None | #### Pricing Comparison If your goal is ad-free spreadsheet calculation and .xlsx/.csv export, Arte Sheets Free ($0) eliminates the main reason people pay for Polaris Smart. Upgrade to Arte Sheets Pro ($19.99/mo or $179.99/yr) only when you want in-app AI, Goal Seek, Macros, Pro PivotTables, 1,000 EU cloud files, and all 62 Academy lessons. *Table: Plan comparison (USD)* | Plan | Price | Ad-Free | Primary Value | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Yes | Clean browser spreadsheet, 184 formulas, free .xlsx/.csv export & 10 EU cloud files | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Yes | 2,000 AI credits/mo, 62 lessons, Goal Seek, Macros & 1,000 EU cloud files | | Polaris Office Free | $0 | No | Multi-format document/sheet viewing & basic ad-supported editing | | Polaris Smart / Pro / AI | ~$39.99–$149+/yr | Yes | Ad removal, multi-device sync, PDF tools & AI add-on credits | #### Frequently Asked Questions - **Is Arte Sheets completely free of ads on phones and tablets?** Yes. Arte Sheets never displays banner or pop-up advertisements on mobile or desktop browsers, even on the free tier without an account. - **Does Arte Sheets limit how many devices I can open it on?** No. Because Arte Sheets runs in standard web browsers, there is no per-device installation limit. - **Can Arte Sheets edit Word or PowerPoint files like Polaris Office?** No. Arte Sheets is purpose-built for spreadsheets (.xlsx, .xls, .xlsb, .ods, .csv, .tsv) rather than word processing or slide decks. - **Does Arte Sheets offer a lifetime plan like historical Polaris promotions?** No. Core spreadsheet editing in Arte Sheets is $0 forever, and Arte Sheets Pro is a recurring monthly ($19.99/mo) or annual ($179.99/yr) subscription. ### 3.10 Arte Sheets vs Collabora Office on iPad and iPhone - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-collabora-office-ios/ - **SEO Title**: Arte Sheets vs Collabora Office iOS | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: Collabora Office brings the open-source LibreOffice Calc C++ engine to iPad and iPhone inside a free App Store wrapper, giving offline access to .ods and .xlsx files without ads. However, its ported desktop-core canvas and multi-hundred-megabyte bundle can feel heavy on touch screens. Arte Sheets runs directly in mobile Safari as a purpose-built web spreadsheet with instant startup, zero install size, 184 modern Excel formulas, turnkey EU cloud sharing, and interactive formula exercises. **When Arte Sheets fits best:** - Loads in Safari in seconds with zero App Store download, clean responsive controls, light/dark themes, and 31 UI languages. - Built-in optional cloud collaboration (live selections, @comments, suggestions) without needing to self-host Nextcloud + Collabora Online. - Pairs spreadsheet editing with 2,950+ runnable web formula lessons and an optional Pro AI assistant. **When Collabora Office (iOS & iPadOS) fits best:** - Runs the full LibreOffice Calc engine completely offline inside a native iOS/iPadOS sandbox with Apple Files integration. - 100% free open-source app supporting 500+ Calc functions, full PivotTables, and native OpenDocument (.ods) editing. - Preserves embedded charts and complex document formatting across Calc, Writer, and Impress files. #### Web-Native Browser Grid vs Ported Desktop Engine Wrapper Collabora Office on iOS embeds LibreOfficeKit alongside a webview tile renderer so iPad users can edit .ods, .xlsx, .docx, and .pptx files locally. While technically impressive and privacy-friendly, tile-rendered desktop dialogs and menus can feel cramped compared with a lightweight web interface. Arte Sheets is engineered specifically as a pure browser ES-module spreadsheet: DOM/canvas rendering, dedicated calculation and .xlsx workers, local IndexedDB persistence, and a Service Worker shell cache—delivering crisp typography and immediate formula-bar interaction on iPad with Magic Keyboard or touch. *Table: Architecture, storage, and UX comparison on iPad and iPhone* | Attribute | Arte Sheets | Collabora Office (iOS / iPadOS) | | --- | --- | --- | | App delivery | Instant mobile web app (sheets.arte-soft.com/app/) | App Store binary (~250–350 MB install) | | Underlying engine | Pure JS/Web Worker formula & workbook engine | LibreOfficeKit C++ core + mobile webview UI | | Offline capability | Service Worker shell cache + local browser IndexedDB | Full native offline sandbox via Apple Files | | Turnkey cloud sharing | Built-in EU cloud workbooks (10 free / 1,000 Pro) | Requires external Nextcloud / OwnCloud / iCloud setup | | Supported spreadsheet files | Imports .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv; exports .xlsx, .ods, .csv, .tsv | .ods, .xlsx, .xls, .csv (plus Writer/Impress docs) | | Account requirement | None for local browser work | None for local iOS Files work | #### Formulas, PivotTables, and Educational Depth Collabora inherits LibreOffice Calc’s massive catalog of statistical and engineering functions plus full free PivotTables. Arte Sheets covers the 184 core and modern Excel functions (including XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, SEQUENCE, and SUMIFS) while adding guided learning and Pro AI assistance that Collabora does not offer. *Table: Spreadsheet modeling and learning comparison* | Feature | Arte Sheets | Collabora Office iOS | | --- | --- | --- | | Formula catalog | 184 Excel-compatible functions + dynamic array spills | 500+ LibreOffice Calc & Excel functions | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Multi-field Calc PivotTables free | | Charts & exports | 7 canvas charts + PDF print (.xlsx exports formulas & cell styles) | Native embedded Calc/Excel charts saved in .ods & .xlsx | | Goal Seek & Macros | Pro Goal Seek + browser Macro Studio & custom functions | Limited macro UI on iOS compared with desktop LibreOffice | | AI assistant | Pro assistant (2,000 credits/mo; text, voice & file excerpts) | None built into mobile app | | Interactive lessons | 2,950+ free public guides + 62 graded Academy lessons | None | #### Cost and Best-Fit Summary Both tools respect user privacy and let you work free without ads. Use Collabora Office when you live inside native iPad .ods files or offline multi-format OpenDocument bundles; use Arte Sheets when you want a snappier browser grid, instant shared workbooks without running a server, or guided Excel formula mastery. *Table: Pricing and scenario comparison* | Option | Price | Best Scenario | Key Trade-Off | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Fast iPad Safari spreadsheets, 184 Excel formulas & 10 EU cloud files | Charts not embedded in exported .xlsx | | Arte Sheets Pro | $19.99/mo or $179.99/yr | AI formula coaching, 62 courses, Goal Seek & 1,000 shared EU workbooks | Recurring subscription (no lifetime plan) | | Collabora Office iOS | $0 (Open Source) | Offline native Apple Files editing of .ods, .xlsx, .docx & .pptx | Heavier tile-rendered UI; no turnkey cloud collaboration | #### Frequently Asked Questions - **Can I use both Collabora Office and Arte Sheets on the same iPad?** Yes. Because Arte Sheets runs in Safari with zero install footprint and exports standard .xlsx, .ods, and .csv files, both tools interoperate cleanly via the iPad Downloads/Files workflow. - **Does Arte Sheets require hosting a Nextcloud server to collaborate?** No. Signing in with a verified email gives you 10 free private EU cloud workbooks (or 1,000 on Pro) with instant link sharing, @comments, and suggestions. - **Are XLOOKUP and FILTER supported in Arte Sheets on iPad?** Yes. Both XLOOKUP and FILTER—along with XMATCH, UNIQUE, SORT, SEQUENCE, and VSTACK—are built into the free Arte Sheets formula engine. - **Is Arte Sheets open source like Collabora?** No. Arte Sheets is proprietary independent spreadsheet software operated by Arte Soft EOOD in the European Union, with a permanently free core web tier. ### 3.11 Arte Sheets vs MobiSystems OfficeSuite (MobiSheets) - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-mobisystems-officesuite/ - **SEO Title**: Arte Sheets vs MobiSystems OfficeSuite | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: MobiSystems OfficeSuite (recently rebranded around MobiOffice / MobiSheets) packages documents, slides, PDFs, mail, and spreadsheets across Windows, Mac, iOS, and Android, gating many formatting, export, and ad-free features behind recurring suite plans. Arte Sheets focuses strictly on spreadsheets in your browser—delivering 184 Excel-compatible formulas, ad-free editing, charts, SUM PivotTables, and .xlsx/.csv export for $0 without sign-up. **When Arte Sheets fits best:** - Core spreadsheet editing, 184 formulas, conditional formatting, and .xlsx/.csv/.tsv export are unconditionally free without registration. - Zero ads, zero bundled PDF/mail bloat, and immediate startup in any desktop or tablet browser. - Optional Pro tier ($19.99/mo or $179.99/yr) adds 2,000 monthly AI credits, 62 interactive Academy lessons, Goal Seek, and 1,000 EU cloud files. **When MobiSystems OfficeSuite (MobiSheets) fits best:** - Installed native apps across Windows, macOS, iOS, and Android covering Documents, Sheets, Slides, and PDF Extra tools. - Preserves embedded Office chart objects inside .xlsx files and integrates with MobiDrive cloud storage. - Offers Personal/Family multi-app suite subscriptions (~$39.99–$59.99/yr) and one-time desktop Home & Business licenses. #### Focused Free Web Grid vs Bundled Suite Paywalls Bundled office suites frequently hook users with a free file viewer, then prompt for a subscription when exporting clean formats, removing ads, or using advanced formatting across devices. When you only need a fast, trustworthy spreadsheet, paying for an unused word processor and PDF converter adds clutter. Arte Sheets draws a clean, honest line: core spreadsheet work—including .xlsx, .csv, .tsv, and .ods import/export—never requires a credit card or account. Paid entitlements apply strictly to server-backed cloud expansion, Pro AI inference credits, advanced PivotTables/automation, and graded Pro Academy courses. *Table: Access, export rules, and platform comparison* | Criteria | Arte Sheets | MobiSystems OfficeSuite / MobiSheets | | --- | --- | --- | | App delivery | Instant browser app (sheets.arte-soft.com/app/) + offline shell | Installed Windows, Mac, iOS & Android suite | | Sign-up to edit & export .xlsx | Not required ($0 anonymous local mode) | Account & trial/paid prompts for full cross-device features | | Advertisements | Zero ads on all tiers | Upgrade prompts / ads in free mobile tiers | | Supported imports | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .xlsx, .xls, .csv, .ods (plus .docx/.pptx/.pdf in suite) | | Cloud storage jurisdiction | European Union (Hetzner Storage Box, Germany) | MobiDrive cloud + third-party Drive/Dropbox links | | Interface languages | 31 languages + localized business templates | Multiple desktop & mobile languages | #### Formulas, PivotTables, and Interactive Skill Building Arte Sheets ships 184 worksheet functions—including XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, VSTACK, SUMIFS, and PMT—evaluated via Web Workers, plus Trace Precedents/Dependents arrows and 2,950+ runnable web tutorials. MobiSheets supports ~300 traditional Excel functions and native .xlsx embedded charts, making its desktop edition practical if you want an offline installed Office replacement with perpetual licensing options. *Table: Spreadsheet feature and automation comparison* | Feature | Arte Sheets | MobiSheets / OfficeSuite | | --- | --- | --- | | Worksheet functions | 184 Excel-compatible functions + dynamic arrays | ~300 spreadsheet functions | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | PivotTables available (advanced options gated by tier) | | Charts & PDF | 7 canvas chart types + sheet PDF print | Native embedded Office charts + PDF export | | Automation | Pro Goal Seek + browser Macro Studio & custom functions | Limited macro execution compared with desktop Excel | | Built-in AI assistant | Pro assistant (2,000 credits/mo; text, voice & file attachments) | Separate AI writing/suite features vary by plan | | Interactive Academy | 10 free + 52 Pro graded lessons & verifiable certificates | Help center articles only | #### Pricing Comparison Compare whether you need a multi-app desktop bundle or a browser spreadsheet with AI and interactive training: Arte Sheets Free is $0 forever, while Arte Sheets Pro is $19.99/mo or $179.99/yr before applicable VAT/sales tax. *Table: Plan comparison (USD)* | Plan | Price | Lifetime Option | Included Value | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Free forever | 184 formulas, .xlsx/.csv export, charts, SUM PivotTables, 10 EU cloud files | | Arte Sheets Pro | $19.99/mo or $179.99/yr | No | 2,000 AI credits/mo, 62 lessons, Goal Seek, Macros & 1,000 EU cloud files | | MobiOffice Personal / Family | ~$39.99–$59.99/yr | Separate desktop-only SKU | Docs, Sheets, Slides, PDF reader & MobiDrive storage across devices | #### Frequently Asked Questions - **Does Arte Sheets restrict saving or exporting .xlsx files on the free plan?** No. Exporting workbooks to .xlsx, .csv, .tsv, and .ods is 100% free in Arte Sheets, even without signing in. - **Who operates Arte Sheets vs MobiSystems?** Arte Sheets is an independent product of Arte Soft EOOD (Bulgaria, EU) with private cloud storage hosted in Germany. It is unrelated to MobiSystems. - **Can I collaborate in real time in Arte Sheets?** Yes. Free accounts can save and share up to 10 private EU cloud workbooks (1,000 on Pro) with live cell selections, @comments, and accept/reject suggestions. - **When is MobiSystems OfficeSuite a better choice?** Choose OfficeSuite if you want one native mobile/desktop bundle that edits Word documents, slide decks, PDFs, and embedded .xlsx charts offline. ### 3.12 Arte Sheets vs Hancom Office (Hancell) - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-hancom-office/ - **SEO Title**: Arte Sheets vs Hancom Office Cell | Arte Sheets - **Category**: Office & Mobile Suites - **Quick Answer (TL;DR)**: Hancom Office (featuring Hancell for spreadsheets alongside Hword/HWP) is widely used in South Korean government and enterprise workflows where HWP document compatibility is essential, and also powers Samsung DeX/mobile partnerships. For global spreadsheet users, Arte Sheets offers an immediate, zero-signup browser workspace in 31 UI languages with standard Excel formula names, clean .xlsx/.csv import-export, and 2,950+ English/multilingual learning guides. **When Arte Sheets fits best:** - Instant browser startup with zero sign-up, 31 localized UI languages (including Korean, Japanese, English, German, French, and Bulgarian), and standard Excel syntax. - Localized built-in Financial, Payroll, Invoice, and Loan templates that adapt labels cleanly without breaking formulas. - Private EU cloud storage (Germany) plus optional Pro AI coaching and 62 interactive Academy lessons. **When Hancom Office (Hancell) fits best:** - Deep compatibility with Korean public-sector and corporate HWP/Hancell document ecosystems. - Full desktop suite on Windows/macOS plus mobile apps optimized for Samsung Galaxy and DeX environments. - Preserves embedded Office charts and complex desktop print formatting inside .xlsx and .cell files. #### Global Browser Accessibility vs Regional Desktop Suite Hancom Hancell excels inside organizations standardized on Hancom Docs or HWP archives, but outside Korea its licensing, account flows, and proprietary .cell defaults add unnecessary friction when exchanging .xlsx or .csv data internationally. Arte Sheets runs in any desktop or mobile browser worldwide without installation. Its UI translates across 31 languages while keeping portable English Excel function names (=XLOOKUP, =SUMIFS, =FILTER, =PMT) so formulas work universally across borders. *Table: Localization, file format, and access comparison* | Attribute | Arte Sheets | Hancom Office (Hancell) | | --- | --- | --- | | Primary delivery | Zero-install web app + Service Worker offline shell | Windows/macOS desktop suite, mobile apps & Hancom Docs cloud | | Account to start editing | None required ($0 local browser mode) | Hancom account / license required for Hancom Docs & desktop | | Interface languages | 31 languages (including ko, ja, zh-Hans, zh-Hant, en, de, fr, es) | Primarily Korean & English editions | | Spreadsheet file imports | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt | .cell, .xlsx, .xls, .csv, .txt | | Spreadsheet file exports | .xlsx, .csv, .tsv, .ods, .xls, .xlsb, PDF print | .cell, .xlsx, .xls, .csv, PDF | | Cloud hosting location | European Union (Hetzner, Germany) | Hancom cloud infrastructure (Korea / AWS) | #### Formula Engine, Templates, and Collaborative Review Arte Sheets includes smart template localization: built-in Financial KPI, Payroll, Invoice, and Loan sheets can switch template labels across supported languages while preserving user-edited numbers and formulas. Combined with live co-editing, @comments, and cell suggestions, distributed teams can audit models cleanly. *Table: Formulas, templates, and AI comparison* | Feature | Arte Sheets | Hancom Hancell | | --- | --- | --- | | Formula catalog | 184 Excel-compatible functions + dynamic arrays | 350+ Excel-compatible functions | | Dynamic array spills | XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, SEQUENCE, VSTACK | Varies between desktop Hancell & web editions | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Native PivotTables in desktop Hancell | | Template localization | Automatic structural label translation across 31 languages | Static language-specific templates | | AI capabilities | Pro in-app AI (2,000 credits/mo; text, voice & file excerpts) | Hancom Assistant AI (enterprise/Korean cloud rollout) | | Learning resources | 2,950+ free runnable guides + 62 Academy lessons | Korean/English product manuals | #### Pricing Summary Hancom Docs subscriptions (~$49–$69/yr equivalent) bundle HWP, Hshow, and Hancell. If you do not need HWP word-processing compatibility, Arte Sheets Free gives you a fast multi-language spreadsheet editor for $0, with optional Pro tools at $19.99/mo or $179.99/yr. *Table: Pricing and best-fit comparison* | Plan | Cost (USD) | Best Fit | Notes | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Global browser .xlsx/.csv editing in 31 UI languages | No account required; 10 free EU cloud files with login | | Arte Sheets Pro | $19.99/mo or $179.99/yr | AI coaching, Goal Seek, Macros, 62 lessons & 1,000 EU cloud files | 2,000 monthly AI credits included | | Hancom Docs / Office | ~$49–$99+/yr (varies by edition) | Organizations requiring HWP + Hancell Korean suite workflows | Includes word processor & presentation apps | #### Frequently Asked Questions - **Does Arte Sheets support Korean, Japanese, and Chinese user interfaces?** Yes. Arte Sheets includes full UI translations for Korean (ko), Japanese (ja), Simplified Chinese (zh-Hans), Traditional Chinese (zh-Hant), and 27 additional languages. - **Can Arte Sheets open proprietary Hancom .cell files?** No. Save or export your Hancell workbook as standard Excel (.xlsx) or CSV (.csv) first, then import it into Arte Sheets. - **Do formula names change when I switch UI languages in Arte Sheets?** Arte Sheets uses portable English Excel function names (such as SUMIFS, XLOOKUP, and FILTER) across UI languages so formulas remain consistent when shared. - **When should I use Hancom Office instead of Arte Sheets?** Use Hancom Office when collaborating with Korean agencies or enterprises that mandate native .hwp/.hwpx documents alongside .cell spreadsheets. ### 3.13 Arte Sheets vs Smartsheet - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-smartsheet/ - **SEO Title**: Arte Sheets vs Smartsheet: Formulas & Cost | Arte Sheets - **Category**: Databases & Work Management - **Quick Answer (TL;DR)**: Smartsheet looks like a spreadsheet on the surface, but it is an enterprise work-management platform built around typed columns, Gantt timelines, intake forms, and per-member commercial licensing (with no free plan beyond a trial). Arte Sheets is a true Excel-compatible calculation grid—supporting free-form A1 cell coordinates, 184 Excel functions, PivotTables, and instant .xlsx/.csv import-export for $0 without sign-up. **When Arte Sheets fits best:** - True free-form cell math: place assumptions, KPI blocks, financial schedules (PMT, NPV, IRR), and XLOOKUP tables anywhere on any worksheet. - $0 permanent Free tier with zero registration, plus optional shared EU cloud workbooks without enterprise seat minimums. - Direct .xlsx, .csv, .tsv, and .ods portability in and out of the browser. **When Smartsheet fits best:** - Purpose-built for portfolio & project management: Gantt charts, dependencies, critical path, Kanban cards, and automated approval workflows. - Row-level attachments, intake forms, and cross-project Control Center dashboards for large PMO teams. - Enterprise SSO, audit logs, and Jira/Salesforce/ServiceNow connectors. #### True Spreadsheet Calculation Grid vs Project-Tracking Grid Teams often buy Smartsheet expecting Excel in the browser, then discover that Smartsheet enforces typed project columns, uses bespoke bracket syntax ([Budget]@row) instead of familiar Excel ranges, and limits ad-hoc financial modeling. Arte Sheets gives analysts and operators genuine Excel semantics: multi-sheet workbooks, arbitrary cell references ($C$2:$C$50), dynamic array spills (FILTER, UNIQUE, SORT, SEQUENCE), Trace Precedents/Dependents arrows, and instant .xlsx round-tripping of formulas and cell styles. *Table: Grid model, formula syntax, and file portability comparison* | Capability | Arte Sheets | Smartsheet | | --- | --- | --- | | Primary purpose | Excel-compatible spreadsheet modeling, analysis & learning | Enterprise project, portfolio & workflow management | | Formula syntax | Standard Excel A1 syntax (=SUMIFS(C2:C50,A2:A50,"North")) | Proprietary column-@row syntax (=SUMIF(Region:Region,"North",Amt:Amt)) | | Built-in worksheet functions | 184 Excel functions (XLOOKUP, FILTER, PMT, NPV, IRR, INDEX/MATCH) | ~90 project, date, hierarchy & summary functions | | Local / offline mode | Anonymous browser IndexedDB + Service Worker offline shell | 100% cloud SaaS (Smartsheet account required) | | .xlsx import & export | Free worker-based .xlsx import & formula-preserving .xlsx export | Imports/exports .xlsx, but converts project formulas/columns | | Gantt & approval workflows | Not a Gantt tool (grid, charts, PivotTables & comments) | Native Gantt dependencies, baselines, forms & approval automations | #### PivotTables, What-If Modeling, and AI Assistance In Smartsheet, building pivot summaries typically requires the enterprise Pivot App add-on on Business/Enterprise contracts. In Arte Sheets, basic SUM PivotTables are included in the free browser editor, while Arte Sheets Pro ($19.99/mo or $179.99/yr) unlocks multi-dimensional PivotTables (AVERAGE, COUNT, MIN, MAX, column groups), Goal Seek, Macro Studio, and 2,000 monthly AI credits. *Table: Analysis and automation tool availability* | Feature | Arte Sheets | Smartsheet | | --- | --- | --- | | PivotTables | SUM free; multi-agg & column groups in Pro ($15/mo annual) | Smartsheet Pivot App (premium/Enterprise add-on) | | Goal Seek & financial math | Pro Goal Seek + free PMT, IPMT, PPMT, PV, FV, NPV, IRR | No Goal Seek; limited financial modeling functions | | Charts | 7 built-in canvas chart types on any sheet (free) | Dashboard chart widgets (paid Pro/Business plans) | | Macros & custom functions | Pro JS/VBA-style Macro Studio & custom functions | Automated workflow rules & Bridge API integrations | | AI tools | Pro AI assistant (2,000 credits/mo; text, voice & file attachments) | Smartsheet AI restricted to Enterprise plans | #### 3-Year Cost Comparison for Individuals and 5-Person Teams Smartsheet retired its legacy free tier in favor of paid Pro ($9/member/mo billed annually) and Business ($19/member/mo billed annually, 3-member minimum = $684/yr). For spreadsheet calculation rather than Gantt workflow routing, Arte Sheets cuts recurring seat overhead dramatically. *Table: Pricing comparison (USD before applicable taxes)* | Plan | Annual Cost (1 User) | 3-Year Cost (1 User) | Best Fit | | --- | --- | --- | --- | | Arte Sheets Free | $0 | $0 | Individual & small-group spreadsheets (10 shared EU cloud files free) | | Arte Sheets Pro | $179.99/yr ($19.99/mo) | $539.97 | Power analyst wanting AI credits, Goal Seek, Macros, Pro PivotTables & 62 courses | | Smartsheet Pro | $108/yr ($9/member/mo) | $324.00 | Small project timelines & Gantt tracking (up to 10 members, no Pivot App) | | Smartsheet Business (min 3 seats) | $684/yr ($19/seat × 3) | $2,052.00 | Multi-project PMO automations, forms & unlimited free viewers | #### Frequently Asked Questions - **Is Smartsheet a replacement for Excel or Arte Sheets?** Only for task lists and Gantt schedules. For financial models, XLOOKUP/FILTER arrays, loan schedules, or ad-hoc CSV math, free-form spreadsheets like Arte Sheets are far faster and use standard Excel syntax. - **Can external teammates view or review an Arte Sheets workbook without paying per seat?** Yes. You can share cloud workbooks from a free or Pro Arte Sheets account and assign viewer, suggester, or editor permissions without enterprise seat minimums. - **Does Arte Sheets include Gantt chart dependencies?** No. Arte Sheets is a calculation spreadsheet with 7 data chart types, PivotTables, and WORKDAY/NETWORKDAYS date math, not a Gantt PMO tool. - **Can I export Smartsheet grids into Arte Sheets to run PivotTables or XLOOKUP?** Yes. Export your Smartsheet sheet to .xlsx or .csv and open it directly in Arte Sheets to run SUM PivotTables, XLOOKUP, or dynamic FILTER summaries for free. ### 3.14 Arte Sheets vs Airtable: Free-Form Spreadsheet vs Cloud Database - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-airtable/ - **SEO Title**: Arte Sheets vs Airtable: Grid vs Database | Arte Sheets - **Category**: Databases & Work Management - **Quick Answer (TL;DR)**: Airtable is a cloud relational database disguised as a colorful grid: every row is a strict record, formulas apply to entire fields rather than individual cells, and the free plan caps each base at 1,000 records. Arte Sheets is a genuine spreadsheet where any cell can hold a number, label, or 184 Excel-compatible formulas—handling 100K-row stress-test workbooks, .xlsx/.csv files, and financial models locally in your browser for $0 without sign-up. **When Arte Sheets fits best:** - No 1,000-row database cap: import multi-thousand-row .csv, .tsv, or .xlsx files and analyze them immediately in browser Web Workers. - Free-form cell coordinates let you mix assumption blocks, income statements, PivotTables, and ad-hoc checks on the same sheet. - Works locally in IndexedDB without an account, or in private German EU cloud storage. **When Airtable fits best:** - True relational foreign-key links between tables, Kanban/Gallery/Calendar views, and custom no-code Interface Designer apps. - Rich attachment fields, webhooks, and multi-step automations connected to Slack, Stripe, and Jira. - Prevents accidental single-cell formula overwrites when non-technical staff enter structured operational records. #### Cell-Level Spreadsheet Modeling vs Strict Relational Records Try building a 3-year cash-flow forecast, loan amortization schedule, or side-by-side variance table in Airtable and you immediately hit database constraints: you cannot reference cell B4 from C5, place a total row mid-sheet, or paste an Excel formula cleanly. Arte Sheets preserves full two-dimensional spreadsheet freedom. You can load built-in Financial KPI, Payroll, Invoice, Loan, or 100K-row stress templates, write =XLOOKUP, =SUMIFS, =FILTER, or =PMT in any cell, and export a standard .xlsx workbook. *Table: Data model, row limits, and file compatibility comparison* | Dimension | Arte Sheets | Airtable | | --- | --- | --- | | Core architecture | 2D cell-addressable spreadsheet workbook (A1 notation) | Cloud relational database (tables, typed fields & linked records) | | Free-tier row / record cap | No 1,000-row paywall (includes 100K-row template stress test) | 1,000 records per base on Airtable Free (50,000 on Team) | | Formula scope | Per-cell or dynamic-array spill across 184 Excel functions | Whole-column formula fields only (no arbitrary cell coordinates) | | Offline / anonymous access | Yes — local IndexedDB + Service Worker shell, zero login | No — cloud-only SaaS requiring an Airtable account | | File import & export | .xlsx (preserves formulas & styles), .csv, .tsv, .ods | CSV import/export (no native .xlsx formula workbook round-trip) | | Cloud storage location | Optional EU cloud in Germany (GDPR) | US AWS default (EU residency restricted to Enterprise Scale) | #### Lookups, Aggregations, PivotTables, and AI In Airtable, cross-table lookups require creating explicit Linked Record and Rollup fields for every relationship. In Arte Sheets, a single =XLOOKUP(), =INDEX/MATCH, or =SUMIFS() links any two sheets on the fly without schema migrations—and PivotTables summarize raw CSV exports in seconds. *Table: Analytical workflow comparison* | Task | Arte Sheets | Airtable | | --- | --- | --- | | Ad-hoc cross-sheet lookup | =XLOOKUP() or =VLOOKUP() directly on any shared code/ID | Requires Linked Record field + Lookup/Rollup schema setup | | Grouping & summarization | SUM PivotTables free; multi-agg PivotTables in Pro + SUMIFS/UNIQUE | Grouped grid views & paid Pivot extension | | Financial & statistical math | PMT, IPMT, NPV, IRR, STDEV.S, PERCENTILE.INC, CORREL, FORECAST | Basic arithmetic, string & date field formulas | | What-if solver | Goal Seek + browser Macro Studio in Pro | Airtable Scripting extension (JavaScript on paid tiers) | | AI pricing | 2,000 monthly AI credits included inside Arte Sheets Pro | Airtable AI billed per user / credit tier on paid plans | #### Pricing Comparison Airtable Team costs $20/seat/month billed annually ($240/seat/yr) once a table crosses 1,000 rows—and charges for every collaborator who edits records. Arte Sheets Free handles multi-thousand-row CSV and .xlsx workbooks for $0, while Arte Sheets Pro is $179.99/yr ($19.99/mo) including AI credits and 62 interactive Excel courses. *Table: Cost comparison (USD before applicable taxes)* | Tier | Price | Row / File Capacity | Best Use Case | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Large browser workbooks + 10 EU cloud files (10 MiB each) | Financial models, CSV/XLSX analysis & Excel formulas without row caps | | Arte Sheets Pro | $19.99/mo or $179.99/yr | 1,000 EU cloud files (20 MiB each, 1 GiB) + 2,000 AI credits/mo | Advanced PivotTables, Goal Seek, Macros, AI coaching & Academy | | Airtable Free | $0 | 1,000 records per base, 1 GB attachments | Small content calendars, lightweight CRM & form intake | | Airtable Team | $20/seat/mo annual ($24 mo) | 50,000 records per base | Multi-view relational operations apps & webhook automations | #### Frequently Asked Questions - **Does Arte Sheets cap free spreadsheets at 1,000 rows like Airtable?** No. Arte Sheets has no 1,000-row cap; it even ships a built-in 100K-row stress-test template powered by lazy cell storage and Web Workers. - **Can I paste Airtable CSV exports directly into Arte Sheets?** Yes. Export any Airtable grid view as CSV and open it in Arte Sheets to run XLOOKUP, SUMIFS, PivotTables, and charts without upgrading Airtable. - **When should I choose Airtable over Arte Sheets?** Choose Airtable when building relational operational tools—such as editorial pipelines, applicant tracking, or asset checkouts—that need forms, photo galleries, and strict field types. - **Does Arte Sheets keep data in the EU?** Local workbooks stay in your browser on-device, and signed-in cloud workbooks are stored in Germany (EU) on both Free and Pro plans—no Enterprise contract required. ### 3.15 Arte Sheets vs Notion Databases - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-notion-databases/ - **SEO Title**: Arte Sheets vs Notion Databases | Arte Sheets - **Category**: Databases & Work Management - **Quick Answer (TL;DR)**: Notion Databases are terrific for wikis, meeting notes, and task trackers where every row opens into a rich document page. They are painful as spreadsheets: you cannot reference an arbitrary cell, write XLOOKUP or SUMIFS across ranges, export formulas to .xlsx, or filter 20,000 CSV rows smoothly. Arte Sheets gives you a fast, zero-signup Excel-compatible grid with 184 functions, PivotTables, charts, and local browser privacy. **When Arte Sheets fits best:** - Instant cell-level math (=SUMIFS, =XLOOKUP, =FILTER, =PMT, =IRR) without creating database Relation and Rollup properties. - Imports and exports real .xlsx (preserving formulas and styles), .csv, and .tsv files locally in Web Workers with zero login. - Fast keyboard navigation, Fill Handle / Flash Fill, Conditional Formatting, and PivotTables built for numerical work. **When Notion Databases fits best:** - Every table row is a full Markdown document page supporting nested subpages, toggles, callouts, and embeds. - Unifies company wikis, product roadmaps, Kanban boards, and docs in one workspace. - Rich Notion AI Q&A across workspace documents (with paid Notion AI add-on / Business plan). #### Why Notion Databases Struggle with Real Spreadsheet Math In Notion, every row is stored as an individual block-tree document, and formulas only compute across properties of that single row (or explicitly wired Relation rollups). Simple tasks—dividing every row by a grand total cell, running a 36-month loan amortization, or comparing Q1 vs Q2 columns—become convoluted workarounds. Arte Sheets is a dedicated numerical workbook. Put assumptions in B1:B4, reference $B$2 across 5,000 rows, audit dependencies with Trace Precedents/Dependents, and export a portable .xlsx file any accountant can open. *Table: Architecture, speed, and file format comparison* | Capability | Arte Sheets | Notion Databases | | --- | --- | --- | | Row representation | Lightweight numeric/text/formula cells in a 2D sheet grid | Heavy document page objects with typed property columns | | Performance on 10K+ CSV rows | Fast Web Worker import & lazy cell storage | Noticeable pagination/view lag on multi-thousand-row tables | | Cell-to-cell references (A1) | Full relative, absolute ($A$1) & cross-sheet references | Not supported (row-scoped Formula 2.0 properties only) | | Sign-up & offline behavior | Zero sign-up; local browser IndexedDB + offline shell cache | Account required; cloud-first workspace | | .xlsx import & export | Full .xlsx import & formula-preserving .xlsx export | CSV/Markdown export only (no .xlsx formula export) | | Cloud storage location | Optional German EU cloud on Free & Pro | US AWS default (EU residency limited to Notion Enterprise) | #### Formulas, PivotTables, Charts, and Learning Notion restricts free users to a single chart across a workspace before requiring Notion Plus, and offers no native multi-field PivotTable or Goal Seek solver. Arte Sheets includes 7 chart types and SUM PivotTables free in the browser, with multi-aggregation PivotTables, Goal Seek, Macros, and 2,000 monthly AI credits in Pro. *Table: Quantitative feature comparison* | Feature | Arte Sheets | Notion Databases | | --- | --- | --- | | Formula catalog | 184 Excel functions (XLOOKUP, FILTER, UNIQUE, SUMIFS, PMT, NPV) | Property expressions (map, filter, ifs, dateBetween) | | Charts on free plan | Unlimited sheets & 7 canvas chart types free | 1 chart limit on Notion Free workspace | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | No native multi-dimension PivotTable grid | | Financial modeling | Built-in Finance KPI, Payroll, Invoice & Loan templates | Manual custom property formulas | | Spreadsheet skill courses | 2,950+ free runnable guides + 62 graded Academy lessons | Template gallery & docs guides | #### Pricing Comparison Keep Notion Free for notes and docs, and pair it with Arte Sheets Free ($0) whenever numbers, CSVs, budgets, or client .xlsx files are involved—rather than paying per-user Notion Plus + AI fees just to unlock charts and table rollups. *Table: Plan comparison (USD)* | Plan | Price | Charts & PivotTables | Ideal Role | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Unlimited charts + SUM PivotTables free | All numerical models, budgets, CSVs & .xlsx files | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Multi-agg PivotTables + Goal Seek + 2,000 AI credits/mo | Power spreadsheet modeling, AI coaching & 62 courses | | Notion Free | $0 | 1 workspace chart limit; no PivotTables | Personal wikis, meeting notes & lightweight task boards | | Notion Plus / Business | $10–$20/seat/mo annual | Unlimited Notion charts; AI on Business/add-on | Team knowledge bases & project documentation | #### Frequently Asked Questions - **Can I link an Arte Sheets cloud workbook inside a Notion page?** Yes. Save your workbook to My files in Arte Sheets, copy its shared link, and paste it into any Notion project doc so teammates open a real calculation grid when needed. - **Why do numbers pasted into Notion lose Excel formulas?** Notion tables store typed property values rather than Excel cell coordinates, so pasted .xlsx ranges turn into static text or numbers. Arte Sheets preserves .xlsx formulas. - **Does Arte Sheets cap how many charts I can create on the free tier?** No. Unlike Notion Free (which caps workspaces at one chart), Arte Sheets lets you add Column, Bar, Line, Area, Pie, Doughnut, and Scatter charts freely. - **When is Notion better than Arte Sheets?** Use Notion for SOPs, engineering specs, meeting notes, and editorial calendars where rich prose inside each row matters more than arithmetic. ### 3.16 Arte Sheets vs Rows.com - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-rows-com/ - **SEO Title**: Arte Sheets vs Rows.com Spreadsheets | Arte Sheets - **Category**: Cloud & Collaborative Apps - **Quick Answer (TL;DR)**: Rows.com reimagines spreadsheets as cloud-hosted blocks connected to live SaaS APIs (Google Analytics, Stripe, HubSpot, HTTP requests). However, Rows requires an account, runs strictly in the cloud without local offline editing, and arranges tables on stacked document pages rather than a classic full-bleed worksheet. Arte Sheets opens instantly without sign-up, works locally in your browser IndexedDB (including offline), preserves standard .xlsx worksheet layouts, and teaches Excel skills interactively. **When Arte Sheets fits best:** - Immediate zero-signup editor with local browser persistence and offline Service Worker shell caching—no cloud upload required. - Classic full-screen Excel grid where .xlsx imports/exports keep standard sheet coordinates instead of stacked card tables. - Combines 184 Excel formulas with 2,950+ interactive guides, 62 Academy lessons, and hint-first Pro AI (text, voice & file attachments). **When Rows (Rows.com) fits best:** - 50+ built-in cloud data connectors (Google Search Console, BigQuery, Postgres, LinkedIn, OpenAI, REST APIs) directly inside cells. - Polished embeddable live charts and calculators for Notion pages and public web dashboards. - AI Analyst chat interface designed for summarizing live SaaS marketing and revenue tables. #### Local-First Classic Grid vs Cloud-Only Stacked Tables Rows organizes each page into vertical stacks of smaller tables and embeds—similar to a web dashboard builder—and stores every workbook on Rows cloud servers under a registered workspace. If your Wi-Fi drops on a train or a client forbids uploading raw financial .xlsx files to external SaaS connectors, cloud-only tools stop cold. Arte Sheets starts locally in your browser with a full-viewport traditional grid. Your anonymous workbooks never leave your device unless you sign in to save or collaborate in private German EU storage. *Table: Architecture, privacy, and grid layout comparison* | Attribute | Arte Sheets | Rows.com | | --- | --- | --- | | Sign-up required | No — full local browser editor opens immediately | Yes — Rows account & workspace required | | Offline capability | Yes — Service Worker shell + local IndexedDB persistence | No — cloud-connected web app | | Worksheet layout | Traditional full-grid Excel tabs (A1 coordinates) | Stacked table blocks & embeds on a page | | File format support | Imports .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv; exports .xlsx, .csv, .tsv, .ods | .xlsx and .csv import/export (adapts multi-table layout) | | Live HTTP / SaaS API pulls | Not an API ETL tool (focuses on local/shared workbook files) | 50+ native SaaS connectors + GET/POST HTTP functions | | Data residency | Local browser or private EU cloud (Hetzner Germany) | Cloud SaaS (AWS EU/global infrastructure) | #### Formulas, PivotTables, Macros, and AI Coaching Both platforms support modern Excel lookups and dynamic arrays like XLOOKUP, FILTER, SORT, and UNIQUE. Arte Sheets adds browser-based Goal Seek, a JS/VBA-style Macro Studio with custom worksheet functions, voice-enabled AI prompts, and verifiable Academy exercises so you understand every formula rather than treating AI output as a black box. *Table: Spreadsheet feature and AI comparison* | Feature | Arte Sheets | Rows.com | | --- | --- | --- | | Standard Excel functions | 184 functions including XLOOKUP, FILTER, UNIQUE, SUMIFS, PMT | Excel-compatible functions + proprietary API/JSON functions | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Pivot Tables supported via table actions / AI Analyst | | Goal Seek & Macros | Pro Goal Seek + Macro Studio & custom functions | Scheduled cloud refreshes & API automations; no VBA-style recorder | | AI interaction modes | Text, microphone voice & .xlsx/.csv file excerpts (2,000 Pro credits/mo) | AI Analyst chat & cell-level AI functions | | Interactive curriculum | 2,950+ free public guides + 62 graded Academy lessons | Templates & blog documentation | #### Pricing Comparison Choose Rows when your primary need is pulling automated daily marketing metrics from Stripe or Google Analytics into a live dashboard; choose Arte Sheets when you want a zero-cost private spreadsheet or an $15/mo-equivalent Pro workspace with AI coaching, Goal Seek, and full Excel courses. *Table: Plan comparison (USD)* | Tier | Price | Primary Strength | Quotas | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Zero-login local & EU cloud spreadsheets + 184 formulas | Unlimited local files; 10 EU cloud workbooks | | Arte Sheets Pro | $19.99/mo or $179.99/yr | In-app AI (text/voice/files), 62 courses, Goal Seek & Macros | 2,000 AI credits/mo; 1,000 EU cloud workbooks | | Rows Free | $0 | Trying cloud tables & limited data integrations | Account required; capped integration tasks | | Rows Plus / Pro | From ~$15–$59+/mo | Scheduled SaaS data connectors & team workspaces | Tiered integration & member quotas | #### Frequently Asked Questions - **Can I use Arte Sheets offline unlike Rows.com?** Yes. Once loaded, Arte Sheets caches its public shell via a Service Worker and stores local workbooks in your browser IndexedDB so you can calculate offline. - **Does Arte Sheets connect directly to live REST APIs or HubSpot?** No. Arte Sheets intentionally avoids background third-party API connectors inside formulas, focusing instead on fast local/EU-cloud .xlsx, .csv, and .tsv workbooks. - **How does AI differ between Arte Sheets Pro and Rows?** Arte Sheets Pro emphasizes verifiable spreadsheet work—supporting hint-only coaching, voice requests, and safe file-attachment excerpts alongside direct sheet edits (2,000 credits/month). - **Are .xlsx files exported from Arte Sheets compatible with desktop Excel?** Yes. Exported .xlsx files preserve standard worksheet tabs, formulas, and cell formatting cleanly. ### 3.17 Arte Sheets vs Grist - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-grist/ - **SEO Title**: Arte Sheets vs Grist: Formulas & Grid | Arte Sheets - **Category**: Databases & Work Management - **Quick Answer (TL;DR)**: Grist is a brilliant open-core relational spreadsheet for developers who prefer structured database tables, granular row-level ACLs, and full Python column formulas ($Price * $Qty). However, Grist enforces strict table columns rather than free-form cells, so standard Excel financial models and .xlsx cell layouts do not map 1:1. Arte Sheets provides a true A1 Excel-compatible spreadsheet in any browser with zero sign-up, 184 Excel functions, and portable .xlsx import-export. **When Arte Sheets fits best:** - Uses universal Excel A1 cell syntax (=XLOOKUP, =SUMIFS, =FILTER, =PMT)—zero Python or relational schema setup required. - Free-form 2D sheets let you build invoices, KPI dashboards, loan schedules, and ad-hoc checks exactly like Excel. - Opens instantly in desktop and mobile browsers without registration, storing local files privately in IndexedDB. **When Grist fits best:** - Full Python 3 syntax inside column formulas, summary tables, linked master-detail widgets, and row-level access rules. - Open-source core (Apache 2.0) that technical teams can self-host via Docker alongside Grist SaaS. - 5,000 rows/document free in Grist Cloud with clean relational integrity for multi-table apps. #### Excel A1 Cell Freedom vs Structured Python Database Columns Grist sits halfway between PostgreSQL and Excel: every column has one formula applied to every record, written in Python or Excel-like uppercase wrappers. That structure eliminates copy-down bugs in database apps, but makes unstructured .xlsx client sheets, side-by-side scenario blocks, or quick scratchpad calculations awkward. Arte Sheets preserves standard spreadsheet ergonomics. Colleagues who already know Excel can open an .xlsx workbook, inspect =SUMIFS($C$2:$C$100,$A$2:$A$100,E2), trace precedents, and export .xlsx back out with formulas intact. *Table: Data model, formula language, and deployment comparison* | Attribute | Arte Sheets | Grist | | --- | --- | --- | | Grid model | Free-form 2D worksheet cells (A1 notation) | Structured relational database tables & linked widgets | | Formula language | 184 Excel worksheet functions + dynamic array spills | Python expressions ($Col) + uppercase Excel-like helpers | | Anonymous zero-login web app | Yes — local IndexedDB + Service Worker offline shell | Grist allows scratch docs, account/self-host needed for persistent spaces | | .xlsx formula round-trip | Preserves A1 worksheet formulas & cell styles | Imports/exports .xlsx data, but Python/relational formulas do not export to Excel | | Mobile & tablet browser UX | Responsive grid in iPad/iPhone Safari & desktop browsers | Primarily optimized for multi-panel desktop screens | | Cloud hosting region | Private EU cloud in Germany (Hetzner) | Grist Labs US cloud (or French DINUM / self-hosted Docker) | #### Pivot Summaries, Automation, and Learning In Grist, aggregations are built via Summary Tables linked to source tables. In Arte Sheets, you can use classic PivotTables (SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro), dynamic array formulas (UNIQUE + SUMIFS + FILTER), Goal Seek, and an interactive 62-lesson Academy. *Table: Analysis, scripting, and AI comparison* | Feature | Arte Sheets | Grist | | --- | --- | --- | | Summarization | PivotTables + SUMIFS / COUNTIFS / FILTER / UNIQUE | Relational Summary Tables & Python group calculations | | Custom functions / scripts | Pro JS/VBA-style Macro Studio & custom functions (=WITH_TAX) | Native Python standard library inside column formulas | | Goal Seek & financial math | Pro Goal Seek + built-in PMT, IPMT, NPV, IRR, EFFECT | Manual Python math; no point-and-click Goal Seek dialog | | AI assistant | Pro assistant (2,000 credits/mo; text, voice & file attachments) | Grist AI Formula Assistant (generates Python formulas) | | Guided Excel curriculum | 2,950+ free runnable Excel guides + 62 Academy lessons | Grist documentation & webinar templates | #### Pricing Comparison Both tools offer genuinely useful $0 tiers. Pick Grist when building structured internal database tools in Python; pick Arte Sheets when exchanging Excel .xlsx files, modeling finances, or upskilling on universal spreadsheet formulas. *Table: Plan comparison (USD)* | Plan | Price | Limits | Best Fit | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Unlimited local browser files + 10 EU cloud workbooks | Standard Excel formulas, .xlsx/.csv files & zero-setup analysis | | Arte Sheets Pro | $19.99/mo or $179.99/yr | 1,000 EU cloud files + 2,000 AI credits/mo | Individual analysts wanting AI coaching, Goal Seek, Macros & courses | | Grist Free | $0 | Up to 5,000 rows/doc in hosted cloud (unlimited self-hosted) | Developers building relational Python-formula apps | | Grist Pro Team | $8/user/mo annual | 100,000 rows/doc in hosted cloud + snapshots & ACLs | Teams replacing internal CRUD apps with relational sheets | #### Frequently Asked Questions - **Do Python formulas from Grist work inside Microsoft Excel or Arte Sheets?** No. Grist Python formulas only evaluate inside Grist; exporting a Grist document to .xlsx exports calculated values rather than portable Excel A1 formulas. Formulas written in Arte Sheets export as standard .xlsx formulas. - **Can I write custom functions in Arte Sheets without Python?** Yes. Arte Sheets Pro includes a browser Macro Studio where you can define custom worksheet functions in JavaScript/VBA-style syntax alongside 184 built-in Excel functions. - **Does Arte Sheets limit hosted spreadsheets to 5,000 rows?** No. Arte Sheets enforces file byte quotas on cloud storage (10 MiB/file on Free, 20 MiB/file on Pro) and has no 5,000-row database cap. - **When is Grist clearly superior to Arte Sheets?** Choose Grist when you want relational master-detail views, granular per-row permissions, self-hosted Apache 2.0 Docker deployment, and Python data logic. ### 3.18 Arte Sheets vs Coda Tables - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-coda-tables/ - **SEO Title**: Arte Sheets vs Coda Tables: Speed & XLSX | Arte Sheets - **Category**: Databases & Work Management - **Quick Answer (TL;DR)**: Coda blends prose documents, interactive buttons, and relational tables powered by its functional Coda Formula Language, making it popular for product rituals and connected team hubs. However, large Coda docs slow down under heavy row counts, Coda formulas cannot export to .xlsx, and shared docs hit object-count limits unless Doc Makers upgrade. Arte Sheets delivers a fast, dedicated browser spreadsheet with 184 Excel formulas, local IndexedDB privacy, and true .xlsx portability. **When Arte Sheets fits best:** - Dedicated Web Worker calculation and lazy-cell storage stay responsive on multi-thousand-row .csv and .xlsx datasets. - Uses portable Excel A1 formulas (=XLOOKUP, =SUMIFS, =FILTER, =PMT) that export directly inside .xlsx files. - Zero sign-up required for local browser editing—no shared-doc row or button limits on free core calculations. **When Coda Tables fits best:** - Combines rich collaborative documents, interactive row buttons, Slack/Jira Packs, and filtered table views on one canvas. - Powerful dot-chained Coda Formula Language (Orders.Filter(Status="Paid").Amount.Sum()) for app-like docs. - Doc Maker billing allows free Editors/Viewers inside paid team workspaces. #### Spreadsheet Grid Speed and .xlsx Portability vs All-in-One Docs Coda loads an entire collaborative document graph into browser memory, which works wonderfully for 500-row OKR trackers or sprint boards, but boggs down when finance or operations drops a 25,000-row transaction CSV into a doc—and there is no way to export Coda formulas back to an external auditor in .xlsx. Arte Sheets separates lightweight worksheet storage from prose bloat. You open an .xlsx, .csv, or .tsv file in milliseconds, audit formulas with Trace Precedents/Dependents, and export standard .xlsx or .csv files whenever needed. *Table: Architecture, file compatibility, and offline comparison* | Criteria | Arte Sheets | Coda Tables | | --- | --- | --- | | Primary medium | Multi-sheet A1 calculation workbook | Document canvas with embedded relational tables & Packs | | Formula portability | Standard Excel formulas preserved in .xlsx exports | Proprietary Coda Formula Language (values-only CSV export) | | Large-table responsiveness | Web Worker import/export + 100K-row stress-tested grid | Doc memory grows rapidly past a few thousand complex rows | | Anonymous / offline mode | Zero sign-up local IndexedDB + Service Worker shell | Cloud account required; online-first workspace | | Free-tier size caps | No row-count cap locally; 10 MiB/workbook on 10 free EU cloud files | Shared Free docs capped by table rows/objects unless upgraded | | Data residency | Local browser or German EU cloud (Hetzner) | US AWS cloud hosting | #### Formulas, PivotTables, Financial Modeling, and AI In Coda, financial modeling across time periods (Jan–Dec columns with subtotal rows, IRR, PMT, and Goal Seek) fights against its row-record table schema. Arte Sheets handles horizontal time-series models, PivotTables, Conditional Formatting, and Goal Seek naturally. *Table: Analytical and modeling feature comparison* | Feature | Arte Sheets | Coda | | --- | --- | --- | | Time-series financial models | Native horizontal/vertical A1 formulas + PMT, NPV, IRR | Awkward in typed record tables | | Lookups & arrays | XLOOKUP, VLOOKUP, INDEX/MATCH, FILTER, UNIQUE, SORT | Filter(), Lookup() & Relation columns | | PivotTables | SUM free; AVERAGE, COUNT, MIN, MAX & column groups in Pro | Grouped table views (left/top grouping) | | Automation & buttons | Pro Macro Studio, custom functions & sheet macro buttons | Native canvas/column Buttons + Pack automations | | AI & learning | 2,000 Pro AI credits/mo + 2,950+ free runnable Excel guides | Coda Brain / Coda AI credits per Doc Maker | #### Pricing Comparison Coda Pro ($10/Doc Maker/mo annual) and Team ($30/Doc Maker/mo annual) charge per creator who builds docs. Arte Sheets Free costs $0 for unlimited local spreadsheets and 10 shared EU cloud workbooks, while Arte Sheets Pro ($19.99/mo or $179.99/yr) unlocks AI, Goal Seek, Macros, Pro PivotTables, and 62 interactive courses. *Table: Plan comparison (USD)* | Plan | Annualized Cost | Best Fit | Key Inclusion | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Fast .xlsx/.csv spreadsheets & Excel formulas without doc caps | 184 formulas, charts, SUM PivotTables, 10 EU cloud files | | Arte Sheets Pro | $179.99/yr ($15/mo eq.) | Spreadsheet power users wanting AI, Goal Seek & courses | 2,000 AI credits/mo, 62 lessons, Macros, 1,000 EU cloud files | | Coda Pro | $120/yr per Doc Maker | Solo builders creating doc-plus-table ritual hubs | Unlimited doc size for 1 Doc Maker + Packs | | Coda Team | $360/yr per Doc Maker | Cross-functional product/ops hubs with automations | Folder locking, cross-doc sync & higher automation quotas | #### Frequently Asked Questions - **Can Coda import and export Excel .xlsx formulas cleanly?** No. Coda imports tabular values and exports tables to CSV/PDF, whereas Coda formulas only run inside Coda. Arte Sheets imports and exports .xlsx files with Excel formulas preserved. - **Which tool is faster for cleaning a 30,000-row CSV file?** Arte Sheets. Its dedicated tabular workers, AutoFilter, Remove Duplicates, Text to Columns, and lazy cell storage are built for raw tabular grids rather than rich document blocks. - **Does Arte Sheets have clickable automation buttons like Coda?** Arte Sheets Pro lets you record or write macros in Macro Studio and place clickable macro buttons directly on worksheets. - **When should I pick Coda instead of Arte Sheets?** Pick Coda when writing narrative product specs, RFCs, and team playbooks that trigger Slack or Jira actions from inline buttons. ### 3.19 Arte Sheets vs CSV and Plain-Text Editors - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-csv-text-editors/ - **SEO Title**: Arte Sheets vs CSV & Text Editors | Arte Sheets - **Category**: CSV & Specialized Utilities - **Quick Answer (TL;DR)**: Developers often open .csv and .tsv files in VS Code, Sublime Text, or Notepad++ to inspect raw delimiters without triggering unwanted desktop Excel auto-conversions. However, plain-text editors cannot filter multi-column criteria, run SUMIFS or XLOOKUP reconciliations, build PivotTables, or handle embedded newlines inside quoted fields cleanly without plugins. Arte Sheets parses .csv and .tsv files locally in your browser with zero upload, full grid alignment, 184 formulas, and clean UTF-8 BOM export. **When Arte Sheets fits best:** - Proper RFC-compliant quoted-field handling: commas and line breaks inside quotes stay in their true column instead of breaking regex searches. - Instant AutoFilter, Sort, Remove Duplicates, Text to Columns, TRIM/CLEAN/TEXTSPLIT, SUM PivotTables, and 7 chart types for $0. - Runs 100% locally in browser IndexedDB without an account—sensitive log or bank CSVs never upload to a server. **When CSV in Text & Code Editors (VS Code, Sublime, Notepad++) fits best:** - Zero type coercion: raw bytes, leading zeros ("00412"), long credit/SKU strings, and ISO timestamps appear verbatim as plain text. - Handles multi-hundred-megabyte or multi-gigabyte log files via streaming disk readers (e.g., Notepad++, EmEditor, CLI awk). - Multi-cursor regex search-and-replace and Git diff integration right inside your code repository. #### Quoted Delimiters, UTF-8 Encoding, and Local Browser Safety Splitting a CSV file by commas in a text editor or quick script fails the moment a customer address or description contains "Smith, Jr." or a multi-line comment. Conversely, double-clicking a CSV in legacy desktop suites can silently mangle UTF-8 accents or strip leading zeros when resaved. Arte Sheets imports .csv, .tsv, and .txt files locally inside your browser without sending bytes over the network, and its delimited export worker writes chunked UTF-8 with BOM () while properly escaping embedded quotes, commas, tabs, and CRLF line breaks. *Table: CSV/TSV parsing, encoding, and privacy comparison* | Behavior | Arte Sheets | Plain-Text / Code Editors | | --- | --- | --- | | Quoted commas & multi-line cells | Parsed cleanly into aligned grid rows and columns | Raw text lines wrap/misalign unless Rainbow CSV plugins parse them | | Network privacy | 100% local in browser IndexedDB (no sign-up or upload) | 100% local on desktop disk | | UTF-8 export handling | Chunked UTF-8 with BOM (.csv & .tsv) for clean cross-app opening | Full manual encoding control (UTF-8, UTF-16, Latin-1) | | Practical file-size sweet spot | Up to tens of thousands of rows / ~32 MB browser workbooks | Hundreds of MBs to multi-GB raw log files (editor-dependent) | | Upgrade to multi-sheet .xlsx | One-click export to .xlsx preserving added formulas & formatting | Cannot save multi-sheet formatted .xlsx workbooks | #### Analyzing, Deduplicating, and Reconciling CSV Exports Once a Stripe payout CSV, bank statement, or inventory dump is open, inspection quickly turns into math: Which invoices are missing between two exports? What is the net total per tax code? In a text editor, you end up writing throwaway Python scripts; in Arte Sheets, you drop the second CSV onto Sheet2 and write =XLOOKUP() or generate a SUM PivotTable in 10 seconds. *Table: Data cleanup and reconciliation capabilities* | Task | Arte Sheets | Text / Code Editors | | --- | --- | --- | | Multi-column filtering & sorting | Point-and-click AutoFilter + dynamic =FILTER() & =SORTBY() | Regex grep / external CLI sort | | Deduplication | Built-in Remove Duplicates tool + non-destructive =UNIQUE() | Sort lines + unique lines (breaks on header/multiline rows) | | String splitting & cleanup | Text to Columns, Flash Fill, =TEXTSPLIT(), =TRIM(), =CLEAN() | Regex capture groups | | Cross-file reconciliation | Multi-sheet =XLOOKUP(), =COUNTIF(), =SUMIFS() | Requires external script or SQL/DuckDB | | Visual & summary reporting | SUM PivotTables + 7 chart types + PDF print | None | #### Workflow Recommendation & Cost Keep your favorite code editor for raw Git diffs, encoding inspection, and 500 MB server logs; open Arte Sheets Free ($0) whenever you need to filter, clean, reconcile, chart, or convert a .csv/.tsv into a structured .xlsx report. *Table: Cost and best-tool matrix* | Tool | Cost | Best For | Limitation | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Filtering, reconciling, charting & converting CSV/TSV to .xlsx | Browser memory bounds vs multi-GB logs | | Arte Sheets Pro | $19.99/mo or $179.99/yr | AI CSV reconciliation excerpts, multi-agg PivotTables & Macros | Optional paid subscription | | VS Code / Notepad++ / Sublime | $0–$99 | Inspecting raw bytes, leading-zero text diffs & huge log files | No cell formulas, PivotTables, charts or .xlsx export | #### Frequently Asked Questions - **Does opening a confidential CSV in Arte Sheets upload it to the cloud?** No. When you open a CSV or TSV in Arte Sheets without signing in and saving to My files, parsing and calculation run entirely inside your local browser. - **How can I keep leading zeros on ZIP codes or SKUs in Arte Sheets?** Prefix text codes with an apostrophe or format/clean them with TEXT() formulas (such as =TEXT(A2,"00000")) before exporting, and inspect raw strings before resaving CSVs. - **Does Arte Sheets support both comma (.csv) and tab (.tsv) exports?** Yes. The Export dialog exports single sheets to either CSV (.csv) or TSV (.tsv) encoded in UTF-8 with BOM, as well as full workbooks to .xlsx. - **Can the Pro AI assistant help reconcile two messy CSV imports?** Yes. Arte Sheets Pro supports safe .xlsx, .csv, .tsv, and .txt file-attachment excerpts and can suggest XLOOKUP/SUMIFS reconciliation formulas. ### 3.20 Arte Sheets vs TableTool and Easy CSV Editor - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-tabletool-easy-csv-editor/ - **SEO Title**: Arte Sheets vs TableTool & Easy CSV | Arte Sheets - **Category**: CSV & Specialized Utilities - **Quick Answer (TL;DR)**: macOS utilities like TableTool (free/open-source) and Easy CSV Editor (paid Mac App Store app) are fast, single-sheet grid editors for tweaking .csv and .tsv rows without launching Excel or Numbers. However, neither utility evaluates Excel formulas, links multiple sheets, builds PivotTables, renders charts, or saves formatted .xlsx workbooks. Arte Sheets opens just as quickly in macOS Safari with zero install while giving you 184 formulas, charts, SUM PivotTables, and both .csv/.tsv and .xlsx support for $0. **When Arte Sheets fits best:** - Combines quick browser .csv/.tsv editing with 184 live Excel formulas (XLOOKUP, SUMIFS, FILTER, TEXTSPLIT, TRIM), charts, and PivotTables. - Supports multi-sheet .xlsx, .xls, .xlsb, and .ods workbooks alongside .csv and .tsv—across Mac, iPad, Windows, and Linux. - Free core editor with zero registration and local browser IndexedDB privacy. **When TableTool & Easy CSV Editor (macOS) fits best:** - Tiny native macOS Cocoa apps (~5–20 MB) dedicated strictly to literal string editing of .csv and .tsv files without formula evaluation. - Guaranteed zero formula evaluation (cells starting with "=" or "+" stay literal text unless edited) and custom delimiter/encoding toggles. - Direct Finder "Open With" native macOS document window workflow. #### Static CSV Grid Utilities vs Full Formula-Capable Browser Workbook TableTool and Easy CSV Editor solve one specific annoyance on Mac: Apple Numbers transforms CSV files into canvas documents and requires File → Export To → CSV every time you save. If all you ever do is fix two typos in a 200-row CSV and hit Cmd+S, a dedicated CSV grid viewer is neat. In practice, almost every CSV task immediately leads to analytical questions—totaling amounts by category, deduplicating emails, splitting full names, or joining two exports by SKU. Arte Sheets handles both clean .csv/.tsv editing and full multi-sheet Excel calculations in a single browser tab. *Table: File format, platform, and capability comparison* | Capability | Arte Sheets | TableTool / Easy CSV Editor | | --- | --- | --- | | Supported platforms | macOS, iPadOS, iOS, Windows, Linux (any modern browser) | macOS desktop only | | Supported file formats | .xlsx, .xlsm, .xls, .xlsb, .ods, .csv, .tsv, .txt + PDF print | Delimited text only (.csv, .tsv, semicolon/pipe text) | | Multi-sheet workbooks | Yes — unlimited sheets with cross-sheet formulas | No — single flat table per window | | Worksheet formulas | 184 Excel functions (XLOOKUP, SUMIFS, FILTER, UNIQUE, PMT) | None (static literal cells only) | | Charts & PivotTables | 7 chart types + SUM PivotTables free (multi-agg in Pro) | None | | Account requirement | None for local browser work | None (Mac App Store Apple ID for Easy CSV download) | #### Data Transformation, Filtering, and Cleanup Power Easy CSV Editor offers nice column-splitting, find/replace, and row-filtering helpers for flat files. Arte Sheets matches common cleanup operations (AutoFilter, Sort, Remove Duplicates, Text to Columns, Flash Fill) while adding non-destructive dynamic array formulas (=FILTER, =UNIQUE, =SORTBY, =CHOOSECOLS, =TEXTSPLIT) so your raw imported tab stays untouched on Sheet1 while clean output spills onto Sheet2. *Table: CSV transformation and auditing tools* | Workflow | Arte Sheets | TableTool | Easy CSV Editor | | --- | --- | --- | --- | | Column filtering & sorting | AutoFilter + =FILTER() / =SORT() | Basic sort only | Filter, sort & regex search | | Split column by delimiter | Text to Columns + =TEXTSPLIT() | No | Yes (split/merge columns) | | Remove duplicate rows | Remove Duplicates + =UNIQUE() | No | Yes | | Cross-file lookup / join | =XLOOKUP() / =VLOOKUP() across sheets | No | No | | Conditional formatting | Built-in highlight rules | No | Alternating row stripes only | #### Pricing Comparison TableTool is free (though rarely updated), Easy CSV Editor is a paid Mac App Store utility, and Arte Sheets Free gives Mac and iPad users a complete formula, chart, PivotTable, CSV/TSV, and .xlsx workspace for $0. *Table: Pricing and value comparison (USD)* | Application | Price | Formulas & .xlsx | Best Fit | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Yes (184 formulas + .xlsx/.csv/.tsv) | Analyzing, cleaning, charting & exporting CSV/TSV and Excel files | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Yes + AI, Goal Seek, Macros & 62 courses | Heavy modeling, AI reconciliation & 1,000 shared EU cloud files | | TableTool (macOS) | $0 (Open Source) | No (CSV/TSV only) | Minimalist literal viewing/editing of small local CSVs on Mac | | Easy CSV Editor (macOS) | Paid Mac App Store (~$9.99–$14.99) | No (CSV/TSV only) | Native Finder CSV cleanup when you never want formulas or .xlsx | #### Frequently Asked Questions - **Can Arte Sheets export clean CSV and TSV files without Apple Numbers canvas issues?** Yes. Arte Sheets exports the active sheet directly to standard UTF-8 .csv or .tsv with proper RFC quoting—or exports the entire multi-sheet workbook to .xlsx. - **Does Arte Sheets work on both Mac and iPad unlike TableTool?** Yes. Because Arte Sheets runs in Safari and Chrome, the exact same interface and 184 formulas work on Mac, iPad, iPhone, Windows, and Linux. - **When is a CSV-only editor safer than a spreadsheet?** When editing machine-generated config CSVs where strings starting with "=" or leading-zero IDs must remain untouched literal bytes with zero formula parsing. - **Are Remove Duplicates and Text to Columns free in Arte Sheets?** Yes. AutoFilter, Sort, Remove Duplicates, Text to Columns, Flash Fill, and all 184 worksheet functions are included in the free browser editor. ### 3.21 Arte Sheets vs QuickSheet and Legacy iOS Spreadsheet Apps - **URL**: https://sheets.arte-soft.com/compare/sheets-vs-quicksheet-legacy-ios-apps/ - **SEO Title**: Arte Sheets vs Legacy iOS Sheet Apps | Arte Sheets - **Category**: CSV & Specialized Utilities - **Quick Answer (TL;DR)**: Early iPad and iPhone spreadsheet utilities—such as Quickoffice QuickSheet, Documents To Go, and Mariner Calc—pioneered mobile .xls editing over a decade ago, but most are discontinued, stuck on legacy Excel 97–2003 function sets, or incompatible with modern iPadOS split-screen and dynamic arrays. Arte Sheets runs directly in modern iOS/iPadOS Safari with Web Worker performance, 184 current Excel functions (including XLOOKUP and FILTER), offline Service Worker caching, and standard .xlsx/.csv export for $0. **When Arte Sheets fits best:** - Supports modern Excel dynamic array formulas (XLOOKUP, XMATCH, FILTER, UNIQUE, SORT, SEQUENCE, TEXTSPLIT) missing from legacy mobile apps. - Evergreen browser delivery: never breaks after an iOS update, requires zero App Store binary maintenance, and caches its shell offline. - Imports both legacy .xls/.xlsb and modern .xlsx/.ods/.csv/.tsv files up to 32 MB cleanly via browser workers. **When Quickoffice / QuickSheet & Legacy iOS Spreadsheet Apps fits best:** - Older native apps stored files strictly inside legacy iOS app sandboxes without browser tabs. - Familiar minimal toolbars for users who never needed post-2010 Excel functions. - Historical one-time $9.99–$19.99 App Store purchases (where still installable on older OS builds). #### Modern Evergreen Web Standards vs Abandoned Binary Apps Users migrating old iPads often discover that classic standalone spreadsheet apps either vanished from the App Store after acquisitions (like Google’s sunsetting of Quickoffice) or crash on modern iPadOS 64-bit sandboxes, trapping old .xls and .xlsx workbooks. Arte Sheets uses standard ES modules, IndexedDB, and Web Workers in Safari and Chrome. You can convert old .xls and .xlsb workbooks into clean modern .xlsx or UTF-8 .csv files in seconds without creating an account. *Table: Architecture and file modernization comparison* | Dimension | Arte Sheets (2026 Web App) | Legacy iOS Sheet Apps (QuickSheet / DocsToGo) | | --- | --- | --- | | Maintenance & OS support | Active evergreen web app; works on current iPadOS, iOS & macOS | Mostly discontinued, unmaintained, or legacy maintenance-only | | Legacy binary .xls import | Yes — browser worker converts .xls & .xlsb (up to 32 MB) | Designed around older BIFF8 .xls limits (65,536 rows) | | Modern .xlsx export | Preserves modern Excel formulas & cell formatting | Often strips post-2007 XML functions into #NAME? errors | | Offline persistence | Service Worker shell cache + local IndexedDB storage | Local app container storage | | Multi-device continuity | Optional EU cloud sync (10 files free / 1,000 Pro) | Defunct proprietary desktop sync helpers or manual email | | Cost to start | $0 (no registration or App Store purchase) | Discontinued or legacy paid downloads | #### Formula Generation Gap: Dynamic Arrays vs Pre-2010 Functions Spreadsheets written in the last five years rely heavily on XLOOKUP, IFS, SUMIFS, MAXIFS, TEXTJOIN, FILTER, and UNIQUE. Opening a modern client workbook in a legacy mobile app turns those cells into #NAME? or _xlfn. prefixes. Arte Sheets evaluates all 184 modern and classic functions natively. *Table: Formula and analytical feature comparison* | Feature | Arte Sheets | Legacy Mobile Spreadsheet Apps | | --- | --- | --- | | Lookup functions | XLOOKUP, XMATCH, VLOOKUP, HLOOKUP, INDEX, MATCH | VLOOKUP, HLOOKUP, INDEX, MATCH only | | Dynamic array spills | FILTER, UNIQUE, SORT, SORTBY, SEQUENCE, VSTACK, HSTACK | Not supported | | Text manipulation | TEXTSPLIT, TEXTBEFORE, TEXTAFTER, TEXTJOIN, CONCAT, TRIM | LEFT, RIGHT, MID, CONCATENATE only | | PivotTables & charts | SUM PivotTables + 7 chart types free (multi-agg in Pro) | Basic static charts; rarely supported PivotTables | | AI & interactive lessons | 2,950+ free runnable guides + Pro AI assistant | None | #### Migration Path and Cost Export or AirDrop your historical .xls, .xlsx, or .csv files to your Mac or iPad Downloads folder, open sheets.arte-soft.com/app/, import them locally for $0, and resave as clean modern .xlsx files. *Table: Modern replacement comparison* | Option | Cost | Legacy .xls Import | Modern XLOOKUP / FILTER | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Yes (worker conversion) | Yes (184 built-in functions) | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Yes + AI file-excerpt help | Yes + Goal Seek, Macros & 1,000 EU cloud files | | Apple Numbers | $0 on iPad/Mac | Yes (converts to canvas) | Partial (XLOOKUP supported; canvas export differences) | | Microsoft Excel iPad | $0 view / M365 to edit >10.1" | Yes | Yes (requires M365 subscription on larger iPads) | #### Frequently Asked Questions - **Can Arte Sheets open old Excel 97–2003 (.xls) files from legacy apps?** Yes. Arte Sheets includes a dedicated browser tabular-import worker that converts .xls, .xlsb, and .ods files up to 32 MB so you can edit and export them as modern .xlsx or .csv. - **Can I add Arte Sheets to my iPad or iPhone Home Screen?** Yes. Open sheets.arte-soft.com/app/ in Safari and choose Share → Add to Home Screen for one-tap launch alongside offline Service Worker shell caching. - **Will XLOOKUP formulas created in Arte Sheets work in desktop Excel?** Yes. Exported .xlsx files store standard Excel formula syntax that opens in Excel 2021, Microsoft 365, and Excel for the web. - **Is there any charge to convert old .xls files to .xlsx in Arte Sheets?** No. File import and .xlsx/.csv/.tsv export are completely free without creating an account. ### 3.22 Offline and Local-First Spreadsheets vs Cloud-Only Spreadsheets - **URL**: https://sheets.arte-soft.com/compare/offline-spreadsheet-app-vs-cloud-spreadsheets/ - **SEO Title**: Local Offline vs Cloud Spreadsheets | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: Mandatory cloud spreadsheets (such as Google Sheets, Rows, and Airtable) upload every cell to remote servers under an authenticated account—streamlining large-team sharing at the cost of offline independence and local privacy. Pure desktop apps stay offline on one disk, but complicate instant browser access and live review. Arte Sheets bridges both models: anonymous workbooks stay locally in your browser IndexedDB with an offline Service Worker shell, and only become EU cloud documents when you explicitly sign in and save them. **When Arte Sheets fits best:** - Local-by-default browser architecture: open the editor with zero login, keep workbooks in local IndexedDB, and reopen the cached app shell offline. - Explicit opt-in upgrade path from browser-local workbook to private German EU cloud workbook when real-time collaboration is needed. - Full .xlsx, .csv, and .tsv import/export ensures your files are never trapped inside a proprietary cloud database. **When Mandatory Cloud-Only Spreadsheets fits best:** - Pure native desktop suites (LibreOffice Calc, desktop Excel) handle multi-hundred-megabyte files directly on local SSDs without browser memory caps. - Cloud-first platforms (Google Sheets, Microsoft 365 OneDrive) auto-sync every keystroke across mobile apps and 100+ simultaneous corporate editors. #### Three Spreadsheet Storage Architectures Compared Not all browser apps are cloud-only. Traditional SaaS spreadsheets stream cell mutations to remote databases on every edit, meaning no account equals no editor. Conversely, Arte Sheets runs its calculation engine, .xlsx parser, and IndexedDB workbook cache right inside your browser—caching only public static JS/CSS/font assets in its Service Worker while keeping private API/billing payloads out of CacheStorage. When you board a flight or inspect confidential payroll exports at a client site, local browser execution keeps formulas calculating with zero network round-trips. *Table: Comparison of local desktop, local-first browser, and cloud-only spreadsheets* | Characteristic | Arte Sheets (Local-First Web) | Native Desktop (Calc / Excel) | Cloud-Only SaaS (Google / Rows) | | --- | --- | --- | --- | | Works without creating an account | Yes ($0 anonymous browser mode) | Yes (Calc) / License required (Excel) | No — mandatory account login | | Default location of new files | Local browser IndexedDB + .xlsx download | Local OS filesystem folder | Vendor cloud servers | | Works during Wi-Fi / flight drops | Yes (cached Service Worker shell + local IndexedDB) | Yes (100% native OS binary) | Requires Chrome extension sync or fails offline | | Cross-device live co-editing | Opt-in EU cloud workbooks (live cursors & @comments) | Requires OneDrive / Nextcloud setup | Always on by default | | Portable .xlsx file backup | One-click worker .xlsx export anytime | Native local file on disk | Manual export from cloud drive | | Zero-install on borrowed computer | Yes — open URL in any browser | No — requires OS installer rights | Yes — requires account login + 2FA | #### Security, Compliance, and Offline Edge Cases to Know Understanding exact technical boundaries prevents data loss. Because browser-local workbooks in Arte Sheets live inside that specific browser profile’s IndexedDB, clearing site data or switching laptops without exporting .xlsx or saving to My files will not carry local-only workbooks across devices. Once you sign in and save a workbook to My files (up to 10 files free, 1,000 on Pro), Arte Sheets stores it privately in Hetzner Storage Box (Germany) and syncs delta updates smoothly. *Table: Practical risk and governance checklist* | Scenario | Best Mode in Arte Sheets | Why It Works | | --- | --- | --- | | Quick confidential CSV/XLSX audit | Anonymous local browser mode + .xlsx export | Zero bytes uploaded to cloud or AI servers | | Flight or field site with patchy LTE | Pre-opened /app/ shell + local IndexedDB + .xlsx backup | Service Worker serves UI shell offline; calculations run locally | | Team budget review with @comments | Signed-in EU cloud workbook (Suggestion mode) | Real-time CRDT sync, role permissions & German GDPR storage | | Multi-year archival compliance | Download .xlsx copies to encrypted disk backups | Standard OpenXML formulas readable offline for decades | | AI formula troubleshooting | Pro AI with safe excerpt or hint-only prompt | Data sent to AI only when you explicitly submit an AI request | #### Cost of Offline vs Cloud Flexibility Arte Sheets gives you local browser spreadsheets and up to 10 private EU cloud workbooks for $0—charging only if you upgrade to Pro ($19.99/mo or $179.99/yr) for 1,000 cloud workbooks, 2,000 monthly AI credits, Goal Seek, Macros, and all 62 Academy lessons. *Table: Storage and pricing comparison* | Solution | Price | Offline Support | Cloud Collaboration | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Browser shell + IndexedDB + .xlsx files | Up to 10 private EU cloud workbooks | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Browser shell + IndexedDB + .xlsx files | Up to 1,000 private EU cloud workbooks (1 GiB) | | LibreOffice Calc | $0 | Full native desktop disk | None built in | | Google Workspace | $14+/user/mo | Chrome Offline extension only | Full Google Drive cloud | #### Frequently Asked Questions - **How do I make sure Arte Sheets opens offline before a flight?** Open https://sheets.arte-soft.com/app/ once while online so the Service Worker caches the public application shell, and keep an exported .xlsx backup of critical files on your device. - **Do browser-local workbooks sync automatically to another computer?** No. Browser-only workbooks stay strictly inside the browser where they were created. Sign in and save to My files (or export .xlsx) to open a workbook on another device. - **Does saving a workbook to Arte Sheets cloud automatically send it to AI?** No. Per the Arte Sheets Privacy Policy, saving to EU cloud storage never shares your workbook with other users or AI providers; AI only processes requests you explicitly send. - **When should I use a native desktop app instead of a browser offline shell?** Use native desktop Excel or LibreOffice Calc when working with 100+ MB files, hardware-locked USB tokens, or machines where browser storage is wiped on every reboot. ### 3.23 Free, One-Time, and Fair Spreadsheet Pricing vs Microsoft 365 Cost - **URL**: https://sheets.arte-soft.com/compare/one-time-or-fair-spreadsheet-app-vs-microsoft-365-cost/ - **SEO Title**: Spreadsheet Pricing vs Microsoft 365 Cost | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: Freelancers and households paying $99.99–$129.99 every year for Microsoft 365 often use less than 10% of the bundle—opening Excel a few times a month to update budgets, invoices, or client CSVs. Over five years, that recurring suite habit costs $500–$650 (and still excludes Copilot Pro AI fees in many plans). Arte Sheets keeps its core browser spreadsheet editor $0 forever without sign-up; note transparently that Arte Sheets has no one-time lifetime plan, offering an optional Pro subscription ($19.99/mo or $179.99/yr) strictly for in-app AI credits, 62 Academy courses, Goal Seek/Macros, and 1,000 EU cloud files. **When Arte Sheets fits best:** - $0 five-year cost on Arte Sheets Free: includes 184 Excel formulas (XLOOKUP, FILTER, SUMIFS, PMT), charts, SUM PivotTables, .xlsx/.csv export, and 10 EU cloud workbooks. - Cancel-friendly Pro design: if an Arte Sheets Pro subscription ends, your existing cloud workbooks remain readable, downloadable as .xlsx, and deletable. - Arte Sheets Pro ($179.99/yr) includes 2,000 monthly AI credits directly in the price—no separate $20/mo AI add-on required. **When Microsoft 365 Recurring Suite Subscriptions fits best:** - Office Home 2024 ($149.99 one-time) gives a true perpetual single-device desktop Excel/Word/PowerPoint license with $0 annual renewal. - Microsoft 365 Personal ($99.99/yr) and Family ($129.99/yr) are strong value if you actively need 1–6 TB of OneDrive storage plus Word, PowerPoint, and desktop Excel. - LibreOffice Calc and Apple Numbers provide $0 native offline apps when cloud AI and browser courses are unnecessary. #### 1-Year, 3-Year, and 5-Year Total Cost of Ownership (TCO) Evaluating spreadsheet software honestly means separating three distinct needs: (1) core spreadsheet editing and .xlsx compatibility, (2) multi-terabyte cloud drive bundles, and (3) AI formula assistance plus structured training. Notice how total 3-year and 5-year outlays diverge depending on whether you need zero-cost core spreadsheets, a one-time single-machine desktop license, or an AI-enabled workspace. *Table: 1-year, 3-year, and 5-year spreadsheet cost math (USD before tax)* | Option | Billing Model | Year 1 | 3-Year Total | 5-Year Total | | --- | --- | --- | --- | --- | | Arte Sheets Free | Free forever ($0) | $0 | $0 | $0 | | LibreOffice Calc / Apple Numbers | Free native app ($0) | $0 | $0 | $0 | | Microsoft Office Home 2024 (1 PC/Mac) | One-time perpetual desktop SKU | $149.99 | $149.99 | $149.99 | | Microsoft 365 Personal | Annual subscription ($99.99/yr) | $99.99 | $299.97 | $499.95 | | Microsoft 365 Family (up to 6 users) | Annual subscription ($129.99/yr) | $129.99 | $389.97 | $649.95 | | Arte Sheets Pro (AI + Academy + 1K Cloud) | Annual ($179.99/yr) or $19.99/mo (no lifetime) | $179.99 | $539.97 | $899.95 | #### What Is Free Forever vs Paid in Arte Sheets? Unlike trialware that locks Save or Export after 7 days, Arte Sheets never paywalls standard file I/O or core calculations. Because server-hosted AI inference (2,000 monthly credits) and 1 GiB of private EU cloud storage carry ongoing infrastructure costs, Arte Sheets Pro is offered as a transparent monthly ($19.99) or annual ($179.99, saving 25%) subscription rather than a lifetime license. *Table: Exact feature split between Arte Sheets Free and Arte Sheets Pro* | Capability | Arte Sheets Free ($0) | Arte Sheets Pro ($19.99/mo or $179.99/yr) | | --- | --- | --- | | 184 Excel formulas & dynamic arrays | Included unconditionally | Included | | .xlsx, .csv, .tsv & .ods import/export | Included unconditionally | Included | | 7 chart types & Conditional Formatting | Included unconditionally | Included | | PivotTables | Single-dimension SUM PivotTables | Multi-dimensional (AVERAGE, COUNT, MIN, MAX & column groups) | | Automation & what-if solvers | Not included | Goal Seek solver + Macro Studio & custom functions | | Private EU cloud storage (Germany) | Up to 10 workbooks (10 MiB each, 100 MiB) | Up to 1,000 workbooks (20 MiB each, 1 GiB) | | In-app AI & Interactive Academy | 10 free lessons + 2,950+ public web guides | 2,000 AI credits/mo + all 62 lessons & verifiable certificates | #### Decision Matrix: How to Spend $0 More Than Necessary Use the matrix below to match your actual weekly spreadsheet workload to the lowest-cost ethical option—including EU B2B VAT reverse-charge support at Stripe Checkout if your business subscribes to Arte Sheets Pro. *Table: Best-fit purchasing guide by user profile* | User Profile | Recommended Choice | Annual Outlay | | --- | --- | --- | | Freelancer editing invoices, budgets & client .xlsx/CSV files | Arte Sheets Free | $0/yr | | iPad owner avoiding M365 paywall on 11"/13" screens | Arte Sheets Free in Safari | $0/yr | | Analyst needing 1M-row offline desktop Excel on 1 Mac/PC (no cloud) | Office Home 2024 (one-time) or LibreOffice Calc | $0–$149.99 once | | Learner or team wanting in-app AI coaching, Goal Seek & 62 Excel courses | Arte Sheets Pro Annual | $179.99/yr ($15/mo eq.) | | Household actively using Word, PowerPoint & 6 TB OneDrive backup | Microsoft 365 Family | $129.99/yr | #### Frequently Asked Questions - **Does Arte Sheets offer a one-time lifetime license?** No. Core spreadsheet editing in Arte Sheets is $0 forever without an account, while Arte Sheets Pro is an optional subscription ($19.99/month or $179.99/year before tax) covering ongoing AI credits and EU cloud storage. - **What happens to my cloud spreadsheets if I cancel Arte Sheets Pro?** Your Pro access continues until the end of your billing period via Stripe Customer Portal. Afterward, even if you have more than 10 cloud workbooks, all existing cloud workbooks stay readable, downloadable as .xlsx, and deletable. - **Are EU B2B VAT IDs supported at checkout for Arte Sheets Pro?** Yes. Prices ($19.99/mo and $179.99/yr) are net USD before applicable local VAT or sales tax, calculated automatically at Stripe Checkout with EU B2B VAT ID / reverse-charge support where eligible. - **Can I use Arte Sheets Pro for just one month while completing the 62 Academy lessons?** Yes. The $19.99/month plan is month-to-month and can be canceled anytime from Account → Manage subscription. ### 3.24 XLSX Compatibility Guide: Apple Numbers vs Excel-Compatible Apps - **URL**: https://sheets.arte-soft.com/compare/xlsx-compatibility-apple-numbers-vs-excel-compatible-apps/ - **SEO Title**: XLSX Compatibility: Numbers vs Excel Apps | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: Opening an .xlsx file in Apple Numbers converts worksheets into proprietary .numbers canvas layouts, and exporting back to .xlsx frequently splits multi-table pages into extra tabs or alters table-scoped formula syntax. Excel-compatible A1 grid apps like Arte Sheets keep standard row-and-column coordinates intact when importing and exporting .xlsx formulas and cell formatting—though users should still know exact boundaries around charts, macros, and unsupported functions across every app. **When Arte Sheets fits best:** - Preserves standard worksheet tabs, A1 cell coordinates, 184 Excel formulas (including XLOOKUP and FILTER), and cell styles on .xlsx export. - Runs directly in Mac and iPad Safari for $0—no .numbers intermediate file conversion required. - Includes Trace Precedents/Dependents and formula checks to verify imported calculations immediately. **When Apple Numbers .xlsx Export Conversions fits best:** - Desktop Microsoft Excel remains the only 100% lossless OpenXML reference for embedded charts, PivotTable caches, VBA, and Power Query. - Apple Numbers is great when the final deliverable is a styled PDF or Apple-only .numbers presentation rather than a round-tripped .xlsx. #### What Actually Happens During an .xlsx Round-Trip? Almost every "broken spreadsheet" complaint on Mac or iPad stems from silent format translation. Apple Numbers imports .xlsx into its own object model and requires a destructive Export To → Excel step to share changes back. Even true A1 spreadsheets have specific OpenXML boundaries that honest engineering documentation makes explicit. For example, in Arte Sheets, .xlsx export preserves formulas and cell formatting cleanly across sheets, while canvas charts and browser macros are intentionally not embedded into exported .xlsx files (use PDF print when sharing visual charts). *Table: .xlsx round-trip fidelity across Arte Sheets, Apple Numbers, and Desktop Excel* | Workbook Element | Arte Sheets (.xlsx I/O) | Apple Numbers (Import → Export .xlsx) | Desktop Microsoft Excel | | --- | --- | --- | --- | | A1 worksheet coordinates | Preserved 1:1 across tabs | Multiple canvas tables split into extra tabs or blocks | Native 1:1 reference | | Standard formulas (SUMIFS, INDEX) | Preserved as live Excel formulas | Converted between A1 & Table::Column references | Native 1:1 reference | | Dynamic arrays (XLOOKUP, FILTER) | Evaluated & exported cleanly | Partial parity; export compatibility warnings common | Native in Excel 2021 / M365 | | Cell number & visual formatting | Preserved in .xlsx export | Translated to closest Excel styles (fonts/borders shift) | Full native fidelity | | Embedded .xlsx chart objects | Not included in .xlsx export (print to PDF instead) | Exported with visual restyling shifts | Full native fidelity | | VBA / Macro binary streams | Confirmation prompt for page macros; not exported to .xlsm | Stripped on import | Full desktop .xlsm support | #### Common Formula & Locale Pitfalls When Exchanging .xlsx Files Beyond grid geometry, two formula issues trip up cross-platform teams: function-catalog coverage (such as LET or LAMBDA from M365) and regional argument separators (comma vs semicolon in European desktop locales, which OpenXML normalizes internally but CSV/pasted formulas expose). *Table: Pre-flight checklist before sending an .xlsx workbook to a client* | Check | Why It Breaks Across Apps | Safe Practice in Arte Sheets | | --- | --- | --- | | Avoid multi-table canvases | Numbers creates Table 1, Table 2 tabs on Excel export | Keep structured A1 sheets in Arte Sheets or Excel | | Stick to portable modern functions | LET, LAMBDA, or REGEXEXTRACT may fail in older Excel builds | Use XLOOKUP, INDEX/MATCH, SUMIFS, FILTER & IFERROR | | Verify single-sheet exports | Exporting 1 sheet with Sheet2!B2 references breaks external links | Export "Entire workbook" (.xlsx) when cross-sheet links exist | | Prefer .xlsx over .xls/.xlsb | Arte Sheets .xls/.xlsb export writes calculated values only | Always choose Excel (.xlsx) to preserve live formulas | | Share charts externally | Arte Sheets .xlsx export excludes canvas charts | Export workbook as .xlsx + print active dashboard sheet to PDF | #### Tool Selection & Cost Summary on Mac and iPad For Mac and iPad users who don’t want to pay $99.99/yr for Microsoft 365 just to stop Apple Numbers from rearranging client spreadsheets, Arte Sheets Free ($0) provides an instant A1 .xlsx workflow in Safari. *Table: Mac & iPad .xlsx workflow options* | Tool | Cost | Best Role in an .xlsx Workflow | | --- | --- | --- | | Arte Sheets Free | $0 | Editing formulas, budgets & multi-sheet A1 .xlsx files in Safari without M365 | | Arte Sheets Pro | $19.99/mo or $179.99/yr | Adding AI formula audits, Goal Seek, multi-agg PivotTables & 1,000 EU cloud files | | Apple Numbers | $0 | Designing PDF reports where you never send .xlsx back to Excel users | | Microsoft Excel (M365 / 2024) | $99.99/yr or $149.99 | Final sign-off on workbooks containing embedded Office charts or VBA | #### Frequently Asked Questions - **Why does Arte Sheets recommend .xlsx over .xls, .xlsb, or .ods when exporting?** In Arte Sheets, Excel (.xlsx) preserves both live formulas and cell formatting. Binary (.xls/.xlsb) exports save calculated values without formulas, and .ods is a compatibility export. - **Does Arte Sheets convert my .xlsx file into a proprietary format locally?** While editing in the browser, your workbook state persists quickly in IndexedDB, and you can export standard multi-sheet .xlsx at any time with one click. - **Can I check if a formula broke after importing a complex Excel file?** Yes. Inspect cells for standard Excel errors (#NAME?, #REF!, #VALUE!, #N/A) and use Trace Precedents / Trace Dependents in Arte Sheets to audit every input. - **Does Arte Sheets support semicolon or comma formula entry?** Arte Sheets uses standard English function names and comma separators across its guides and editor for consistent portability. ### 3.25 iPad Spreadsheet Workflow Comparison: Touch and Magic Keyboard - **URL**: https://sheets.arte-soft.com/compare/ipad-spreadsheet-workflow-touch-keyboard-comparison/ - **SEO Title**: iPad Spreadsheet Touch & Keyboard Guide | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: An iPad paired with a Magic Keyboard or trackpad feels like a laptop—until mobile spreadsheet apps serve stripped-down phone menus, block free editing on 11-inch and 13-inch displays (Excel for iPad), or redirect Safari links into limited mobile wrappers (Google Sheets). Because iPadOS Safari is a desktop-class browser, Arte Sheets delivers its full ribbon, formula bar, cell-pointing, and 184 Excel functions on iPad for $0 without sign-up. **When Arte Sheets fits best:** - Runs the complete desktop-grade web editor inside iPadOS Safari—full formula bar, keyboard navigation, AutoFilter, and overscroll protection. - Zero 10.1-inch screen paywall and zero App Store download on iPad Air, iPad Pro, and standard iPad. - Pro users can speak requests via microphone voice input or attach .xlsx/.csv files to the in-app AI assistant on iPad. **When Excel for iPad, Google Sheets iPad & Apple Numbers iPad fits best:** - Apple Numbers offers the smoothest pure-touch and Apple Pencil Scribble experience when working without a physical keyboard. - Excel for iPad (with paid Microsoft 365) provides native iPadOS Files split-view integration and embedded Office chart editing. - Google Sheets iPad app works well for quick cell comments inside shared Google Workspace folders. #### Why Desktop-Class iPadOS Safari Changes Spreadsheet Choice On iPadOS, mobile apps downloaded from the App Store often hide formula auditing,Text to Columns, or PivotTable builders behind simplified touch popovers—while Google Sheets in iPad Safari frequently nags users to install the reduced-capability iOS app. Arte Sheets treats iPadOS Safari as a first-class workspace: overscroll bounce is tamed so grid scrolling stays crisp, formula cell-pointing works cleanly with trackpad or touch, and you can switch between light and dark themes instantly. *Table: iPad spreadsheet comparison across Safari and native apps* | Workflow Factor | Arte Sheets (iPad Safari) | Excel for iPad | Google Sheets (iPad) | Apple Numbers (iPad) | | --- | --- | --- | --- | --- | | Free editing on 11" & 13" iPads | Yes ($0, no login) | No (requires paid M365) | Yes (Google login required) | Yes ($0 native app) | | Full desktop toolbar & formula bar | Yes — identical web UI | Simplified mobile ribbon | App lacks many desktop menus | Touch-centric format inspector | | Magic Keyboard & trackpad UX | Arrow nav, Enter/Tab, cell pointing | Strong native shortcut support | Good in desktop-mode Chrome/Safari; weaker in app | Good native support; canvas model | | PivotTables on iPad | SUM free; multi-agg in Pro | Editable (with M365) | Viewable; creation easier in desktop browser | Native iPad Pivot Tables free | | Offline support on iPad | Service Worker shell + IndexedDB | Native local/OneDrive files | Requires Google app offline toggle | Native local/iCloud files | | Voice + AI formula hints | Pro AI supports mic voice & text | Copilot add-on tier | Workspace Gemini tier | No spreadsheet AI tutor | #### Touch vs Hardware Keyboard Tasks on iPad Different iPad tasks favor different input methods. Reviewing shared numbers on the couch works well with touch, comments, and voice prompts; building multi-sheet SUMIFS or XLOOKUP schedules shines with a Magic Keyboard or Bluetooth keyboard. *Table: Task-by-task iPad ergonomics in Arte Sheets* | iPad Scenario | Input Method | Arte Sheets Workflow | | --- | --- | --- | | Importing an emailed .xlsx or .csv | Touch or Trackpad | Save attachment to iPad Files/Downloads → Import in Arte Sheets worker | | Writing =XLOOKUP or =SUMIFS | Magic Keyboard + Trackpad | Type "=" in formula bar, click/drag source ranges, press Enter | | Auditing a teammate’s model on the sofa | Touch + @Comments | Tap cells, Trace Precedents arrows, leave @mentions or cell suggestions | | Hands-busy formula debugging | Microphone Voice (Pro) | Tap voice input in Pro AI assistant and ask for one hint without editing cells | | Practising Excel skills on commute | Touch + On-screen / HW keys | Open interactive /en/learn/ practice tables or in-app Academy lessons | #### iPad Spreadsheet Cost Comparison Buying a 13-inch iPad shouldn’t force an automatic $99.99/yr Microsoft 365 tax just to edit a spreadsheet. Start with Arte Sheets Free ($0), keep Apple Numbers ($0) installed for Apple Pencil layouts, and add Arte Sheets Pro only if you want AI credits, Goal Seek/Macros, and 62 courses. *Table: Annual cost to edit spreadsheets on an 11-inch or 13-inch iPad* | App | Annual Cost on 11"/13" iPad | Account Required | Excel A1 Grid | | --- | --- | --- | --- | | Arte Sheets Free | $0 | No | Yes (184 functions) | | Arte Sheets Pro | $179.99/yr ($19.99/mo) | Yes | Yes + AI, Goal Seek, Macros & 62 courses | | Microsoft Excel for iPad | $99.99/yr (M365 Personal) | Yes (Microsoft) | Yes (450+ functions) | | Apple Numbers for iPad | $0 | No (Apple ID for iCloud) | No (multi-table canvas) | #### Frequently Asked Questions - **Does Arte Sheets force me into a stripped-down mobile view on iPad?** No. On iPadOS Safari, Arte Sheets renders the full ribbon, formula bar, multi-sheet tabs, charts, and PivotTable dialogs. - **Can I import and export files to the iPad Files app from Arte Sheets?** Yes. Standard browser file-picker imports read directly from iPad Files (On My iPad, iCloud Drive, USB-C drives), and exported .xlsx/.csv files save straight back to Downloads/Files. - **Does voice input work with the AI assistant on iPad?** Yes. Arte Sheets Pro supports microphone voice requests alongside text and file attachments, consuming credits from your 2,000 monthly allowance. - **When is Apple Numbers better on iPad?** When you are using an Apple Pencil without a keyboard to sketch diagrams and freeform checklists beside small tables. ### 3.26 XLOOKUP vs VLOOKUP vs INDEX + MATCH: Spreadsheet Comparison Guide - **URL**: https://sheets.arte-soft.com/compare/xlookup-vs-vlookup-vs-index-match-spreadsheet-guide/ - **SEO Title**: XLOOKUP vs VLOOKUP vs INDEX MATCH Guide | Arte Sheets - **Category**: Formulas & Analysis Guides - **Quick Answer (TL;DR)**: XLOOKUP is the cleanest default lookup for modern spreadsheets (supported natively in Arte Sheets, Excel 2021+, Microsoft 365, Google Sheets, and Apple Numbers): it defaults to exact match, looks left or right without column-index counting, and includes a built-in not-found fallback. INDEX + MATCH remains the best backwards-compatible choice when sharing .xlsx files with pre-2019 desktop Excel users. VLOOKUP should be reserved for quick throwaway checks or legacy maintenance because inserting a column inside its table_array silently breaks hardcoded col_index_num results. **When Arte Sheets fits best:** - Test XLOOKUP, XMATCH, VLOOKUP, HLOOKUP, INDEX, and MATCH side by side for $0 in Arte Sheets without signing in. - Use Trace Precedents/Dependents and runnable /en/learn/ practice tables to verify exact-match, wildcard, and reverse-search edge cases. - Export .xlsx files preserving whichever lookup pattern matches your recipient’s Excel version. **When XLOOKUP vs VLOOKUP vs INDEX + MATCH fits best:** - Use INDEX + MATCH when an external client still opens .xlsx files in Excel 2016 or Excel 2019 (where XLOOKUP displays _xlfn.XLOOKUP). - Keep VLOOKUP(..., FALSE) only when maintaining inherited corporate templates you are not permitted to refactor. #### Feature-by-Feature Comparison: XLOOKUP vs VLOOKUP vs INDEX/MATCH Most lookup bugs in business spreadsheets come from two historical VLOOKUP traps: forgetting the fourth argument (so VLOOKUP defaults to approximate sorted mode and returns plausible-looking wrong numbers) and hardcoding a column number like 4 that points to the wrong column as soon as someone inserts a column. Both XLOOKUP and INDEX + MATCH reference only the lookup vector and the return vector—making them immune to intermediate column insertions. *Table: Technical comparison of XLOOKUP, INDEX + MATCH, and VLOOKUP* | Capability | XLOOKUP | INDEX + MATCH | VLOOKUP | | --- | --- | --- | --- | | Default match behavior | Exact match (0) by default — safe | Specify 0 in MATCH(val, range, 0) | Approximate (TRUE) by default — error-prone! | | Look to the left of key column | Yes — return range can be anywhere | Yes — INDEX & MATCH ranges are independent | No — key must be leftmost column | | Safe when inserting columns | Yes — no column index integer | Yes — direct range reference | No — hardcoded col_index_num shifts | | Built-in "if not found" argument | Yes — 4th argument e.g. "Missing" | Requires wrapping in IFNA(..., "Missing") | Requires wrapping in IFNA(..., "Missing") | | Bottom-to-top (last match) search | Yes — search_mode = -1 | Requires complex array/XMATCH combo | No | | Horizontal + vertical flexibility | Replaces both VLOOKUP & HLOOKUP | Handles 1D & 2D (INDEX + MATCH + MATCH) | Vertical only (need HLOOKUP for rows) | #### Exact Syntax Equivalent Table (Copy-and-Test Patterns) Suppose Product IDs sit in C2:C100, Product Names live to the left in A2:A100, Unit Prices sit in E2:E100, and your search key is in G2. Compare the exact formulas you can paste directly into Arte Sheets or Excel: *Table: Equivalent formulas for common business lookup tasks* | Lookup Scenario | XLOOKUP Formula | INDEX + MATCH / VLOOKUP Equivalent | | --- | --- | --- | | Basic exact price lookup (C → E) | =XLOOKUP(G2, C2:C100, E2:E100) | =VLOOKUP(G2, C2:E100, 3, FALSE) | | Left lookup: ID in C → Name in A | =XLOOKUP(G2, C2:C100, A2:A100) | =INDEX(A2:A100, MATCH(G2, C2:C100, 0)) | | Custom fallback instead of #N/A | =XLOOKUP(G2, C2:C100, E2:E100, "Not listed") | =IFNA(INDEX(E2:E100, MATCH(G2, C2:C100, 0)), "Not listed") | | Last matching transaction (bottom-up) | =XLOOKUP(G2, C2:C100, E2:E100, "None", 0, -1) | =INDEX(E2:E100, XMATCH(G2, C2:C100, 0, -1)) | | Two-way matrix (row G2 & month H1) | =XLOOKUP(G2, A2:A50, XLOOKUP(H1, B1:M1, B2:M50)) | =INDEX(B2:M50, MATCH(G2, A2:A50, 0), MATCH(H1, B1:M1, 0)) | #### Cross-Application Compatibility Matrix Before choosing XLOOKUP over INDEX + MATCH for an exported .xlsx deliverable, verify which spreadsheet applications your recipients use. *Table: Lookup support across major spreadsheet platforms* | Platform | VLOOKUP & INDEX/MATCH | XLOOKUP & XMATCH | Notes | | --- | --- | --- | --- | | Arte Sheets (Free & Pro) | Supported | Supported | All 184 functions free in browser + runnable /en/learn/ examples | | Microsoft Excel 2021 / M365 / Web | Supported | Supported | Full native dynamic array engine | | Microsoft Excel 2016 / 2019 | Supported | Not supported (#NAME?) | Use INDEX + MATCH when targeting older perpetual Office desktops | | Google Sheets | Supported | Supported (added 2022) | Full XLOOKUP compatibility on .xlsx import/export | | LibreOffice Calc (24.8+) | Supported | Supported (recent versions) | Older Calc 7.x installations require INDEX + MATCH | #### Frequently Asked Questions - **Are XLOOKUP and XMATCH free in Arte Sheets?** Yes. XLOOKUP, XMATCH, VLOOKUP, HLOOKUP, INDEX, MATCH, and FILTER are all part of the 184 functions in the free Arte Sheets editor. - **Why does VLOOKUP sometimes return the wrong row without showing an error?** Omitting the 4th argument (range_lookup) makes VLOOKUP default to TRUE (approximate match), which assumes your lookup column is sorted ascending. Always pass FALSE—or switch to XLOOKUP, which defaults to exact match. - **What if multiple rows match my lookup key?** XLOOKUP, VLOOKUP, and MATCH return only the first match (or last match with search_mode -1). To return all matching rows at once, use =FILTER(return_range, key_range=G2) in Arte Sheets. - **When is INDEX + MATCH still better than XLOOKUP?** Whenever your exported .xlsx file might be opened on an older corporate PC running Excel 2016 or Excel 2019. ### 3.27 PivotTables vs SUMIFS and Dynamic Array Group Analysis - **URL**: https://sheets.arte-soft.com/compare/pivot-tables-vs-sumifs-group-analysis/ - **SEO Title**: PivotTables vs SUMIFS Group Analysis | Arte Sheets - **Category**: Formulas & Analysis Guides - **Quick Answer (TL;DR)**: PivotTables are unbeatable for rapid exploratory grouping—summarizing thousands of transaction rows by category or region in four clicks without writing a single formula. Formula-driven summary tables built with UNIQUE, SUMIFS, COUNTIFS, and AVERAGEIFS win for permanent dashboards and client .xlsx exports because they recalculate instantaneously whenever source cells change and let you customize every row’s formatting and variance math. Arte Sheets supports both approaches cleanly in your browser. **When Arte Sheets fits best:** - Free tier includes single-dimension SUM PivotTables plus all 184 worksheet formulas (UNIQUE, SORT, SUMIFS, COUNTIFS, AVERAGEIFS, MAXIFS, MINIFS). - Arte Sheets Pro ($19.99/mo or $179.99/yr) unlocks multi-dimensional PivotTables with AVERAGE, COUNT, MIN, MAX, and optional column groupings. - Formula summaries (=UNIQUE + =SUMIFS) export as 100% live recalculating formulas inside .xlsx files. **When PivotTables vs SUMIFS & Dynamic Array Summaries fits best:** - Use PivotTables first when exploring unfamiliar CSV exports where you don’t yet know every category name or outlier. - Use SUMIFS + UNIQUE when building reusable monthly P&L, budget-vs-actual, or invoice summary tabs that must update live without manual refreshes. #### Behavioral Differences: PivotTables vs Formula Summary Grids A classic mistake in spreadsheet reporting is editing three numbers in a raw data tab and emailing the workbook before realizing a PivotTable was not regenerated—or conversely, spending 25 minutes hand-typing category names for SUMIFS when a 10-second PivotTable would have revealed every category automatically. Combining =SORT(UNIQUE(A2:A500)) in column E with =SUMIFS(C2:C500, A2:A500, E2) in column F gives you the best of both worlds: self-discovering category labels that recalculate live on every keystroke. *Table: Head-to-head comparison: PivotTables vs SUMIFS / UNIQUE formulas* | Dimension | PivotTables | SUMIFS / COUNTIFS + UNIQUE Formulas | | --- | --- | --- | | Setup speed on raw CSV data | Seconds via Insert → PivotTable dialog | 1–2 minutes writing UNIQUE & SUMIFS ranges | | Updates when source numbers change | Static/cached until regenerated or refreshed | Instantaneous automatic recalculation | | Custom row order & inserted KPI rows | Rigid grouped table structure | Complete cell-by-cell layout & styling freedom | | Adding custom % variance or margin cols | Limited to supported Pivot aggregations | Trivial (= (Actual - Budget) / Budget in next column) | | Auditability by colleagues | Requires inspecting Pivot configuration | Visible formula bar + Trace Precedents arrows | | .xlsx export portability | Outputs structured summary sheet | 100% portable live Excel formulas across all suites | #### Capabilities in Arte Sheets Free vs Arte Sheets Pro Notice that while advanced multi-dimensional PivotTables require Arte Sheets Pro, every conditional aggregation function in the 184-formula engine—SUMIFS, COUNTIFS, AVERAGEIFS, MAXIFS, MINIFS, and SUMPRODUCT—is completely free without sign-up! *Table: Group analysis tools in Arte Sheets Free vs Pro* | Analysis Technique | Arte Sheets Free ($0) | Arte Sheets Pro ($19.99/mo or $179.99/yr) | | --- | --- | --- | | Single-dimension SUM PivotTable | Included | Included | | PivotTable AVERAGE, COUNT, MIN, MAX | Use AVERAGEIFS / COUNTIFS / MINIFS / MAXIFS formulas | Included directly in PivotTable dialog | | 2D PivotTable column groupings | Use two-criteria =SUMIFS($C$2:$C$500,$A$2:$A$500,$E2,$B$2:$B$500,F$1) | Included directly in PivotTable dialog | | Dynamic distinct list (=UNIQUE & =SORT) | Included | Included | | AI help writing group summaries | Public /en/learn/ worked examples | In-app Pro AI assistant (2,000 credits/mo) | #### Side-by-Side Recipe Reference Keep these equivalent patterns handy when turning a raw Orders sheet (Region in A2:A200, Quarter in B2:B200, Revenue in C2:C200) into an executive summary: *Table: Practical aggregation recipes you can run in Arte Sheets* | Goal | PivotTable Action | Live Formula Equivalent | | --- | --- | --- | | Total revenue by Region | Rows: Region · Values: SUM(Revenue) | E2: =SORT(UNIQUE(A2:A200)) · F2: =SUMIFS($C$2:$C$200,$A$2:$A$200,E2) | | Order count by Region | Rows: Region · Values: COUNT (Pro) | F2: =COUNTIFS($A$2:$A$200,E2) | | Average order size by Region | Rows: Region · Values: AVERAGE (Pro) | F2: =AVERAGEIFS($C$2:$C$200,$A$2:$A$200,E2) | | Region × Quarter matrix | Rows: Region · Cols: Quarter · SUM (Pro) | F2: =SUMIFS($C$2:$C$200,$A$2:$A$200,$E2,$B$2:$B$200,F$1) | #### Frequently Asked Questions - **Can I create a SUM PivotTable in Arte Sheets without paying or signing up?** Yes. Basic single-dimension SUM PivotTables are included in the free browser editor alongside all 184 worksheet formulas. - **What does Arte Sheets Pro add to PivotTables?** Arte Sheets Pro unlocks multi-dimensional column grouping ("Group columns by") and additional summary functions (AVERAGE, COUNT, MIN, and MAX) inside the PivotTable generator. - **Why do financial modelers often prefer SUMIFS over PivotTables?** Because SUMIFS cells recalculate automatically whenever inputs change, allow custom subtotal/margin rows anywhere in a P&L, and never surprise readers with stale Pivot caches. - **What is the fastest way to catch range-size mistakes in SUMIFS?** Ensure sum_range and every criteria_range have the exact same start and end row numbers (e.g., $C$2:$C$200 and $A$2:$A$200), and test one known row change to confirm the total moves as expected. ### 3.28 Personal Budget Spreadsheets vs Paid Budgeting Apps (YNAB, Monarch, Copilot) - **URL**: https://sheets.arte-soft.com/compare/personal-budget-spreadsheet-vs-paid-budgeting-apps/ - **SEO Title**: Budget Spreadsheets vs Paid Budget Apps | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: Subscription budgeting apps like YNAB ($109/yr), Monarch Money ($99.99/yr), and Copilot ($95/yr) charge ~$100 every year primarily for automated Plaid/Finicity bank syncing and mobile envelope notifications. Yet many households dislike sharing bank logins with third-party aggregators, fixing broken bank connections, or squeezing custom irregular income and mortgage math into rigid app categories. A local budget spreadsheet in Arte Sheets costs $0 forever, imports bank .csv exports privately in your browser without an account, and gives you full PMT/FV/SUMIFS modeling freedom. **When Arte Sheets fits best:** - $0 annual cost forever: keep that $100/yr inside your actual savings categories instead of another recurring subscription. - Zero bank-credential exposure: download monthly .csv files from your bank and analyze them locally in browser IndexedDB without uploading transactions. - Includes a built-in Loan & Mortgage Calculator template (PMT, total interest, payoff) plus 184 formulas for custom net-worth and debt-snowball scenarios. **When Paid Bank-Sync Budgeting Apps (YNAB, Monarch Money, Copilot) fits best:** - Automatic daily transaction pulls across checking, credit cards, and brokerages without manual CSV downloads (where bank connectors stay stable). - Dedicated native mobile push widgets for quick grocery-aisle category balance checks. - Opinionated zero-based envelope coaching (YNAB) or household partner dashboards (Monarch) out of the box. #### Privacy, Bank Aggregators, and Customization Flexibility Linking bank accounts to commercial budgeting apps typically routes transaction histories, merchant names, and balances through cloud data aggregators (Plaid, MX, Finicity)—and European or regional credit-union connections frequently require re-authentication every 90 days anyway. Exporting a 60-second monthly CSV from your bank and dropping it into Arte Sheets keeps your financial history 100% local in your browser (or inside private German EU cloud storage if you choose to sign in and share a household budget). *Table: Privacy, data ownership, and modeling comparison* | Factor | Arte Sheets Budget Workbook | Paid Budgeting SaaS (YNAB / Monarch / Copilot) | | --- | --- | --- | | Bank login / aggregator sharing | None — uses local .csv/.xlsx files | Links bank accounts via Plaid / MX / Finicity | | Anonymous zero-account option | Yes — 100% local in browser IndexedDB | No — requires cloud account & paid billing after trial | | Custom multi-year cashflow & tax math | Unlimited A1 formulas (SUMIFS, PMT, FV, NPV, IRR) | Restricted to built-in monthly category/goal views | | Mortgage & loan scenario modeling | Built-in PMT Loan Calculator template + Pro Goal Seek | Basic payoff estimators only | | Portable archival format | Standard .xlsx and .csv files you own forever | Subscription lock-in (export raw CSV if canceling) | | EU bank friendliness | Works with any bank that exports CSV/XLSX | US/Canada-focused bank sync; limited or absent EU bank coverage | #### How Fast Is a Monthly CSV Budget Review in a Spreadsheet? Many people overestimate spreadsheet upkeep because they picture typing every coffee receipt manually. With modern Excel formulas in Arte Sheets, a 15-minute monthly review categorizes and charts 200 bank rows effortlessly: *Table: 15-minute monthly spreadsheet budget workflow* | Step | Arte Sheets Feature Used | Time Required | | --- | --- | --- | | 1. Import monthly card/bank statement | Local browser .csv / .xlsx import | 30 seconds | | 2. Map merchants to budget categories | =XLOOKUP() against a reusable Merchant → Category sheet | 2 minutes | | 3. Summarize actual vs planned spending | =SUMIFS() by Category + Conditional Formatting alerts | 2 minutes | | 4. Inspect top outlier purchases | AutoFilter / =SORT(FILTER(...)) + Pie/Column chart | 5 minutes | | 5. Test extra mortgage or savings payment | Built-in Loan Calculator (=PMT / =FV) + save .xlsx backup | 5 minutes | #### 5-Year Cost Comparison Over five years, a paid budgeting app costs roughly $475–$545 before taxes. Using Arte Sheets Free costs $0—and even if a couple shares a live household workbook in Arte Sheets EU cloud storage, up to 10 private cloud workbooks are included free. *Table: 1-year and 5-year household budgeting cost comparison (USD)* | Tool | Annual Cost | 5-Year Total | Bank Sync | Custom Formulas | | --- | --- | --- | --- | --- | | Arte Sheets Free (Local or 10 EU Cloud files) | $0 | $0 | Manual CSV/XLSX | Full 184 Excel formulas | | YNAB (You Need A Budget) | $109/yr ($14.99/mo) | $545.00 | Auto (US/UK/EU select) | None | | Monarch Money | $99.99/yr ($14.99/mo) | $499.95 | Auto (primarily US/CA) | None | | Copilot Money (Apple devices) | $95/yr | $475.00 | Auto | None | | Arte Sheets Pro (optional AI + 62 courses) | $179.99/yr ($19.99/mo) | $899.95 | CSV/XLSX + AI excerpts | Full + Goal Seek & AI | #### Frequently Asked Questions - **Can my partner and I share a family budget in Arte Sheets for free?** Yes. Verified free accounts include up to 10 private EU cloud workbooks (100 MiB total) with real-time sharing, live cell selections, and @comments at $0. - **Does Arte Sheets include a loan or mortgage calculator template?** Yes. Arte Sheets includes a built-in Loan & Mortgage Calculator template using PMT formulas to compute monthly payments, total paid, and total interest. - **Are my bank CSV transactions uploaded anywhere if I don’t sign in?** No. Without signing in and saving to My files, imported CSV and .xlsx budgets remain strictly in your local browser storage. - **When is YNAB or Monarch worth the $100/year fee?** When automated daily bank-card sync and strict envelope spending guardrails on your phone are the only habits that keep your household checking budget balances. ### 3.29 Small-Business Invoicing and Inventory Spreadsheets vs Recurring SaaS - **URL**: https://sheets.arte-soft.com/compare/small-business-invoicing-inventory-spreadsheet-vs-saas/ - **SEO Title**: Small Business Spreadsheets vs ERP SaaS | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: Early-stage consultants, contractors, and micro-businesses often stack $150–$400/month in separate invoicing, inventory, and KPI dashboard SaaS subscriptions before their transaction volume justifies ERP complexity. Arte Sheets ships free, localized Invoice, Staff & Payroll, and Financial KPI spreadsheet templates in 31 languages—letting small teams calculate VAT/GST totals, track stock thresholds with IF/SUMIFS/XLOOKUP, print clean PDFs, and export .xlsx books for their accountant at $0. **When Arte Sheets fits best:** - Built-in Invoice, Financial Report & KPIs, Staff & Payroll, and Loan templates open immediately in 31 UI languages for $0. - Print active invoice or dashboard sheets directly to PDF, and send clean .xlsx or .csv ledgers to your bookkeeper. - Collaborate with a co-founder or VA in private German EU cloud storage (up to 10 workbooks free; 1,000 in Pro). **When Recurring Invoicing, Payroll & Inventory SaaS Tools fits best:** - Dedicated invoicing/accounting SaaS (QuickBooks, Xero, FreshBooks, Stripe Invoicing) automates hosted payment links, recurring dunning emails, and statutory e-invoicing. - Dedicated inventory/ERP systems (Cin7, Zoho Inventory, Shopify) handle real-time multi-warehouse barcode scanning and Concurrent order locking. #### Where Spreadsheets Beat SaaS—and Where You Outgrow Them For a freelancer sending 5–30 custom project invoices a month, or a studio tracking 150 stocked parts, rigid SaaS forms often slow you down when quoting tiered discounts, multi-currency rates, or custom margin scenarios. A spreadsheet lets you inspect every tax cell (=E9*TaxRate), trace precedents, and adjust line items in seconds. Conversely, once multiple warehouse staff scan barcodes simultaneously or statutory Peppol/e-invoicing APIs are legally required, migrating transaction execution to specialized SaaS while keeping financial KPI modeling in spreadsheets is the smart play. *Table: Small-business operational fit: Arte Sheets vs dedicated SaaS* | Business Workflow | Arte Sheets (Spreadsheet) | Dedicated Invoicing / Inventory SaaS | | --- | --- | --- | | Custom client quotes & VAT/GST invoices | Built-in Invoice template + active-sheet PDF print ($0) | Automated email invoices + online card payment links | | SKU stock-level & reorder alerts | =SUMIFS() ins/outs + =IF(Stock<=Min,"Reorder","OK") + Conditional Formatting | Real-time multi-channel Shopify/POS stock reservation | | Gross-to-net payroll cost modeling | Built-in Staff & Payroll template (editable tax/contribution rates) | Direct tax-authority filings & automated bank payouts | | Quarterly unit EBITDA & KPI reporting | Built-in Financial KPI template (SUM, INDEX+MATCH, Q1–Q4 chart) | Canned accounting reports (often inflexible for unit KPIs) | | Accountant year-end handoff | One-click standard .xlsx or .csv export | Accountant portal seat or CSV export | | Data residency & ownership | Local browser IndexedDB or private German EU cloud | Vendor cloud lock-in | #### Core Formulas That Power a Small-Business Workbook Four standard Excel formulas—all free in Arte Sheets—cover 90% of micro-business ledger and inventory tracking without fragile manual totals: *Table: Essential small-business spreadsheet formulas in Arte Sheets* | Operational Need | Formula Pattern | Why It Stays Reliable | | --- | --- | --- | | Pull SKU unit price onto an invoice | =XLOOKUP(B5, Catalog!A:A, Catalog!C:C, "Unknown SKU") | Updates prices from one master sheet; flags typos cleanly | | Current on-hand stock per SKU | =Opening + SUMIFS(Receipts!C:C,Receipts!A:A,A2) - SUMIFS(Sales!C:C,Sales!A:A,A2) | Auditable transaction log instead of overwriting quantities | | Flag overdue unpaid invoices | =IF(AND(Status="Sent", TODAY()>DueDate), "OVERDUE", "Current") | Combines date math with Conditional Formatting highlights | | Monthly revenue by service line | SUM PivotTable or =SUMIFS() matrix | Reconciles bank deposits against invoice categories in seconds | #### Annual Software Stack Cost Comparison Starting lean on Arte Sheets Free ($0) saves $1,000+ in year-one SaaS overhead, and upgrading a founder or analyst to Arte Sheets Pro ($179.99/yr) adds Goal Seek break-even analysis, Macro Studio automation, 2,000 monthly AI credits, and 1,000 EU cloud workbooks. *Table: Small-business software cost comparison (USD)* | Setup | Monthly Cost | Annual Cost | Best Stage | | --- | --- | --- | --- | | Arte Sheets Free (Templates + 10 EU Cloud files) | $0 | $0 | Solo consultants, freelancers & early micro-businesses | | Arte Sheets Pro (AI + Goal Seek + Macros + 1K files) | $19.99/mo | $179.99/yr | Founders & ops leads modeling pricing, margins & reconciliations | | Entry Invoicing + Accounting SaaS | ~$25–$55/mo | $300–$660/yr | Businesses needing automated bank feeds & client payment portals | | Cloud Inventory / Light ERP SaaS | ~$99–$399/mo | $1,188–$4,788/yr | Multi-channel ecommerce brands with warehouse barcode ops | #### Frequently Asked Questions - **Can I print a clean PDF invoice directly from Arte Sheets?** Yes. Load the built-in Invoice template, enter your line items and VAT/GST rate, open Export → PDF / Print, and choose Save as PDF in your browser print dialog. - **Do built-in Invoice and Payroll templates work in languages other than English?** Yes. Arte Sheets localizes built-in Financial, Payroll, Invoice, and Loan template labels across 31 supported languages while preserving your custom numbers and formulas. - **Can Arte Sheets calculate break-even price or unit volume?** Yes. Arte Sheets Pro includes a Goal Seek solver that automatically finds the exact price or quantity needed to hit a target profit cell. - **Is Arte Sheets certified for statutory government tax e-filing?** No. Always verify tax calculations independently and use statutory accounting software where direct government e-invoicing or payroll filing is legally required. ### 3.30 Privacy-First Financial Spreadsheets vs Telemetry-Heavy Office Suites - **URL**: https://sheets.arte-soft.com/compare/privacy-first-financial-spreadsheets-vs-telemetry-office-suites/ - **SEO Title**: Privacy-First Spreadsheets vs Cloud Suites | Arte Sheets - **Category**: Workflows, Privacy & Cost Guides - **Quick Answer (TL;DR)**: Modern cloud office suites default to mandatory identity sign-in, automatic US/global cloud synchronization, "connected experiences" telemetry, and ambient AI sidebars—raising legitimate concerns when working on payroll, cap tables, client audits, or personal net-worth sheets. Arte Sheets is engineered by an EU provider (Arte Soft EOOD, Bulgaria) around strict data minimization: anonymous workbooks remain 100% local in your browser IndexedDB, optional cloud files reside privately in Germany (Hetzner), and AI or external connectors never touch local-only files. **When Arte Sheets fits best:** - Zero-account local mode: calculate, chart, and export .xlsx/.csv files in your browser with zero server storage of workbook contents. - EU-hosted cloud infrastructure (Hetzner Online GmbH, Germany) on both Free and Pro—no Enterprise add-on needed for EU data residency. - Strict AI & connector boundaries: saving a cloud workbook never sends data to AI providers, and local-only workbooks are inaccessible to external connectors. **When Telemetry-Heavy US Cloud Office Suites fits best:** - Air-gapped open-source desktop LibreOffice Calc on an encrypted offline disk eliminates browser environments altogether. - Enterprise Microsoft 365 E3/E5 or Google Workspace Enterprise offer SOC2/ISO27001 admin compliance, DLP policies, and customer-managed encryption keys for large corporations. #### Verifiable Privacy Controls: Local Browser vs EU Cloud vs Big-Tech Suites Privacy claims only matter when backed by concrete architectural boundaries. In Arte Sheets, the public Service Worker caches only static application shell files (JS, CSS, fonts, icons)—explicitly excluding API, billing, account, and document payloads from CacheStorage. When you sign in to use My files, credentials use salted cryptographic password hashes with HttpOnly, Secure, SameSite=Lax cookies, and cloud workbooks sit behind per-user server authorization in Germany—never in public S3 buckets. *Table: Data-governance and telemetry comparison across spreadsheet options* | Privacy Dimension | Arte Sheets | Consumer Cloud Suites (M365 / Google) | Offline LibreOffice Calc | | --- | --- | --- | --- | | Edit .xlsx/.csv without an account | Yes — local IndexedDB mode | No — Microsoft or Google identity required | Yes — local OS disk | | Default cloud auto-upload | Off until you sign in & save to My files | On by default (OneDrive / Google Drive) | None | | Cloud data residency (standard tier) | European Union (Hetzner, Germany) | Global / US regions (EU lock requires Enterprise) | N/A (local disk) | | Data controller jurisdiction | EU GDPR (Arte Soft EOOD, Bulgaria) | US parent corporations (GDPR SCCs/DPF) | Local user | | Marketing email & ad profiling | Zero ads; SES EU used strictly for auth/recovery | Ecosystem cross-promotion & connected telemetry | None | | Self-service data portability & erasure | Download .xlsx + account .json export + full account deletion | Account privacy dashboards / Takeout | Delete local file | #### How AI and Connected Apps Respect Workbook Privacy A major fear with spreadsheet AI in 2026 is silent background indexing or training on confidential financial sheets. Understanding exact data flows in Arte Sheets lets security-conscious analysts use AI selectively or avoid it completely: *Table: Exact data-boundary rules for AI and connectors in Arte Sheets* | Workflow | Leaves Your Browser? | Sent to AI Provider? | How You Stay in Control | | --- | --- | --- | --- | | Anonymous local workbook editing | No | No | Stays in browser IndexedDB; export .xlsx locally | | Public /en/learn/ on-page practice table | No | No | Runs client-side in practice-engine; never saved to account | | Saving workbook to My files (EU cloud) | Stored in Germany (Hetzner) | No | Private per-user storage; never shared or sent to AI automatically | | Using in-app Pro AI assistant | Yes, for your explicit request | Yes (bounded selection/excerpt) | Only runs when you submit a prompt; respects document permissions | | Optional ChatGPT / Codex connector | Only if authorized on shared cloud doc | To connected app you approved | Cannot access browser-only files; revocable anytime in Account | #### Cost of Privacy-First Spreadsheet Workflows Unlike enterprise SaaS vendors that charge custom Enterprise uplift fees just to store spreadsheets inside the European Union, Arte Sheets provides local browser privacy and German EU cloud hosting right on the $0 Free plan. *Table: Privacy & EU residency cost comparison (USD)* | Solution | Price | EU Storage Included | Best Fit | | --- | --- | --- | --- | | Arte Sheets Free | $0 | Local browser + 10 German EU cloud workbooks | Private net-worth, payroll & client .xlsx/.csv analysis | | Arte Sheets Pro | $19.99/mo or $179.99/yr | 1,000 German EU cloud workbooks (1 GiB) | EU professionals wanting opt-in AI, Goal Seek, Macros & 62 courses | | LibreOffice Calc | $0 | Local disk only | Air-gapped workstations needing zero browser or cloud features | | Enterprise Cloud Office Suites | $22–$57+/user/mo | EU Data Boundary on eligible Enterprise SKUs | 1,000-seat corporations requiring SSO, Purview DLP & eDiscovery | #### Frequently Asked Questions - **Does Arte Sheets store my credit card details when I subscribe to Pro?** No. Payments are processed by Stripe; Arte Sheets never receives or stores your card number, CVC, or bank credentials, retaining only Stripe billing references needed for entitlements and statutory EU tax law. - **Can I export all my account metadata and permanently delete my Arte Sheets account?** Yes. Signed-in users can download any cloud workbook as .xlsx, download a machine-readable .json export of their account/progress/billing metadata, and permanently delete their account and cloud workbooks from the Account dialog. - **Can the optional ChatGPT connector read my local browser-only spreadsheets?** No. Local-only workbooks stay in your browser IndexedDB and are completely inaccessible to account connectors. Note also that the ChatGPT plugin is currently under review rather than publicly promised. - **What should I avoid sending if I email Arte Sheets support?** Never email passwords, sign-in codes, payment details, API keys, or confidential client workbooks; a small invented example is safest for reproducing spreadsheet questions. --- ## 4. Guided Spreadsheet Courses (https://sheets.arte-soft.com/en/courses/) ### Spreadsheet reporting essentials (https://sheets.arte-soft.com/en/courses/spreadsheet-reporting-essentials/) Build a small reporting toolkit: total and count matching records, look up prices, calculate a weighted unit cost, and count a complete reporting month. - **Audience**: For readers who can enter data in cells and want to start building small operational reports. 1. [SUMIF in Excel: total a category without losing refunds](https://sheets.arte-soft.com/en/learn/sumif-category-total-refunds/) — Build a category total from a community-garden expense log. Keep negative returns, change the selected category, and check a zero result against the source rows. 2. [SUMIFS: total sales that match two conditions](https://sheets.arte-soft.com/en/learn/sumifs-multiple-conditions/) — A sales total is only useful when it includes the right orders. Use SUMIFS to add amounts for one region and one order status, without hiding or deleting the other rows. 3. [COUNTIFS: count open orders above a minimum amount](https://sheets.arte-soft.com/en/learn/countifs-open-orders-over-amount/) — Count qualifying orders without adding their values. This example combines an order status with a minimum amount and checks what happens exactly at the threshold. 4. [VLOOKUP exact match: find a price by product code](https://sheets.arte-soft.com/en/learn/vlookup-exact-match-product-code/) — Look up a product code in a small price list, return its price, and make missing codes visible instead of accepting the wrong match. 5. [Weighted average in Excel: calculate unit cost with SUMPRODUCT](https://sheets.arte-soft.com/en/learn/weighted-average-unit-cost-sumproduct/) — Three deliveries have different quantities and unit prices. Calculate the cost of one average unit, check it against the invoice totals, and handle a list with no units. 6. [COUNTIFS between dates: count a full month, including timestamps](https://sheets.arte-soft.com/en/learn/countifs-between-dates-with-times/) — Count open repair tickets received in March. Use an inclusive start and an exclusive next-month boundary so a ticket arriving late on the final day is included. 7. [AVERAGEIF in Excel: average readings for one category](https://sheets.arte-soft.com/en/learn/averageif-average-by-category/) — Choose a category, average its numeric readings, and check how a missing reading differs from a recorded zero. ### Everyday spreadsheet checks (https://sheets.arte-soft.com/en/courses/everyday-spreadsheet-checks/) Inspect imported labels, flag a stock threshold, explain percentage changes and reconcile rounding differences using small, checkable examples. - **Audience**: For readers who can enter values in cells and want to understand a few useful formulas through small examples. 1. [TRIM in Excel: clean extra spaces without joining words](https://sheets.arte-soft.com/en/learn/trim-extra-spaces-imported-text/) — Clean inconsistent customer labels while preserving the space between words. Then handle a nonbreaking space copied from a web page and check what the cleanup changes. 2. [COUNTIF in Excel: flag repeated IDs before changing the data](https://sheets.arte-soft.com/en/learn/countif-find-duplicate-identifiers/) — Count repeated booking identifiers, keep blank IDs out of the flags, and distinguish repeated rows from extra copies. 3. [IF in Excel: flag low stock and keep missing counts visible](https://sheets.arte-soft.com/en/learn/if-function-stock-threshold-missing-values/) — Compare a stock count with a minimum level. Decide what happens exactly at the threshold, then distinguish a missing count from a real zero. 4. [COUNT, COUNTA and COUNTBLANK: what counts as an empty cell?](https://sheets.arte-soft.com/en/learn/count-counta-countblank-empty-cells/) — Audit a small measurement log. Distinguish numeric readings, entered notes, truly empty cells and formulas that look blank. 5. [AVERAGE in Excel: why a blank and a zero give different results](https://sheets.arte-soft.com/en/learn/average-ignore-blanks-include-zero/) — Calculate a mean from a small equipment log, show how many readings support it, and avoid replacing missing observations with zero. 6. [MIN and MAX in Excel: find the extremes and calculate the range](https://sheets.arte-soft.com/en/learn/min-max-range-negative-values/) — Use a short temperature log to find the lowest and highest readings, calculate their difference, and avoid reporting missing data as zero. 7. [Percentage change in Excel: increases, decreases and a zero starting value](https://sheets.arte-soft.com/en/learn/percentage-change-increase-decrease-zero-base/) — Compare monthly workshop bookings using the original month as the base. Distinguish a percentage change from an absolute difference and show an explicit result when the starting value is zero. 8. [ROUND in Excel: why rounded rows can disagree with the total](https://sheets.arte-soft.com/en/learn/round-function-line-items-versus-total/) — Compare rounding each amount with rounding the final sum. Use a three-row example, check negative midpoint values, and separate number formatting from changing a value. --- ## 5. Indexed Spreadsheet Lessons & Worked Example GFM Tables (https://sheets.arte-soft.com/en/learn/) Every HTML `
` across all 2959 indexed learning articles is rendered below as a GFM Markdown table alongside its verified formula examples. ### Провери AI прогноза в жива таблица преди споделяне - **URL**: https://sheets.arte-soft.com/bg/learn/check-an-ai-forecast-in-a-shared-workbook/ - **Summary**: Превърни кратък пример за продажби в прогноза с формула, отбележи допусканията и промени един месец. Запази работещата таблица, не само отговора в чата. ### Научи формула с AI подсказки и я провери сам - **URL**: https://sheets.arte-soft.com/bg/learn/learn-formulas-with-ai-hints-and-checks/ - **Summary**: Упражни сбор на поръчки: открий пропуснат ред, предвиди резултата и провери променен вход. Поискай подсказка от AI, преди да му възложиш решението. ### Прегледай решение в таблица: стойност, формула и обяснение - **URL**: https://sheets.arte-soft.com/bg/learn/peer-review-a-formula-explanation/ - **Summary**: Упражнение за двама: различи вярното число от формулата, която работи и при промяна. Обсъди клетката, предложи поправка и я провери преди приемане. ### 4Ts Score for Heparin-Induced Thrombocytopenia (HIT) Pretest Probability - **URL**: https://sheets.arte-soft.com/en/learn/4ts-heparin-induced-thrombocytopenia-hit-pretest-score-formula/ - **Summary**: Calculate Theodore Warkentin’s 0–8 ASH guideline 4Ts Pretest Score (Thrombocytopenia, Timing of platelet fall, Thrombosis, oTher causes) to rule out HIT (0–3, NPV ~99.8%) or immediately switch to non-heparin anticoagulation. *Table — Stop ordering false-positive PF4 immunoassays in Low-4Ts ICU thrombocytopenia!:* | Total 4Ts Score (0–8 Points) | True SRA-Positive HIT Risk | ASH Guideline Management Protocol | | --- | --- | --- | | Low Probability (0–3 Points, e.g., 2) | < 0.2–1.0% (NPV ~99.8%) | Do NOT Send PF4 Assay; Continue Heparin If Indicated | | Intermediate Probability (4–5 Points) | ~10–14% True HIT | STOP All Heparin + Start Non-Heparin Anticoagulant + Send PF4 | | High Probability (6–8 Points, e.g., 6) | ~64% True HIT | STOP All Heparin Immediately + Therapeutic Argatroban/Bivalirudin + PF4/SRA | - **Formula (Total 4-Domain Warkentin 4Ts Score (0–8 Points))**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 2), "Invalid 4Ts Subscore (0-2)", SUM(B2:B5))` - **Formula (ASH Guideline HIT Pretest Stratification & Anticoagulation Action)**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 2), "Invalid 4Ts Subscore (0-2)", IF(SUM(B2:B5) >= 6, "High HIT Probability (4Ts 6-8) — STOP All Heparin, Start Argatroban/Bivalirudin & Send PF4/SRA", IF(SUM(B2:B5) >= 4, "Intermediate HIT Probability (4Ts 4-5) — STOP Heparin, Start Non-Heparin Anticoagulant & Send PF4", "Low HIT Probability (4Ts 0-3, NPV ~99.8%) — Do NOT Order PF4 Assay; Safe to Continue Heparin")))` ### Aalen-Johansen Competing-Risks Cumulative Incidence vs Naive 1 - KM - **URL**: https://sheets.arte-soft.com/en/learn/aalen-johansen-competing-risks-cumulative-incidence-vs-naive-km/ - **Summary**: Calculate cause-specific Cumulative Incidence CIF_1(t) = SUM(S_all(t_{j-1}) * d_{1j} / n_j) and prove why censoring competing deaths inflates naive 1 - KM above 100% total risk. *Table — Expose why 1 - KM_1 + 1 - KM_2 impossibly exceeds total failure 1 - S_all:* | Competing-Risks Estimator at t_3 | Formula Expression | Sample Output | | --- | --- | --- | | All-Cause Event-Free S_all(t_3) | PRODUCT(1 - (d_1j + d_2j) / n_j) | 0.2800 | | Aalen-Johansen CIF_1 (Cause 1) | SUM(S_all(t_{j-1}) * (d_1j / n_j)) | 0.4000 | | Aalen-Johansen CIF_2 (Cause 2) | SUM(S_all(t_{j-1}) * (d_2j / n_j)) | 0.3200 (0.40 + 0.32 + 0.28 = 1!) | | Naive 1 - KM_1 (Censors Cause 2) | 1 - PRODUCT(1 - d_1j / n_j) | 0.4600 (Biased upward by +0.0600) | - **Formula (Interval Aalen-Johansen Cause-1 Incidence Jump Formula)**: `=IF(B3 <= 0, 0, E2 * (C3 / B3))` - **Formula (Cumulative Incidence CIF_1(t) vs Naive 1 - KM_1 Equivalence Check (Zero Competing Risk))**: `=IF(OR(B3 <= 0, C3 + D3 > B3), "Invalid Risk Set", ROUND(SUM(F3:F5), 4))` ### Aaron-Samuelson PAYGO vs Funded Pension Formula - **URL**: https://sheets.arte-soft.com/en/learn/aaron-samuelson-paygo-pension-biological-return-vs-funded-rate/ - **Summary**: Compare Pay-As-You-Go social security’s Samuelson biological rate of return g_bio = (1 + n)*(1 + g_w) - 1 against funded capital return r and compute equilibrium replacement rates. *Table — Understand Henry Aaron’s (1966) Social Insurance Paradox and demographic aging!:* | OLG Pension Metric (n=+10%, g_w=+50%, r=+120%, tau=15%) | Formula | Verified Output | | --- | --- | --- | | Samuelson Biological Rate of Return (g_bio) | (1 + n) * (1 + g_w) - 1 | 0.6500 (+65.0% / generation) | | PAYGO Steady-State Replacement Rate | tau * (1 + n) | 0.1650 (16.5% of Current Wage) | | Funded-Over-PAYGO Benefit Ratio | (1 + r) / ((1 + n) * (1 + g_w)) | 1.3333x (r > g_bio) | | Aaron Condition Regime Verdict | IF(r > g_bio, "Funded Dominates...", ...) | Dynamically Efficient (r > g_bio) | - **Formula (Samuelson (1958) Biological Rate of Return g_bio Formula)**: `=IF(OR(B2 <= -1, B3 <= -1), "Invalid OLG Input", ROUND((1 + B2) * (1 + B3) - 1, 4))` - **Formula (Aaron (1966) Funded-to-PAYGO Steady-State Benefit Ratio Formula)**: `=LET(n_lb, B2, gw_r, B3, r_cp, B4, IF(OR(n_lb <= -1, gw_r <= -1, r_cp <= -1), "Invalid OLG Input", ROUND((1 + r_cp) / ((1 + n_lb) * (1 + gw_r)), 4)))` ### AASHTO 1993 Flexible Pavement Structural Number (SN) Formula: Layer & Drainage Design - **URL**: https://sheets.arte-soft.com/en/learn/aashto-1993-flexible-pavement-structural-number-layer-drainage-formula/ - **Summary**: Calculate composite asphalt highway Structural Number SN = a_1*D_1 + a_2*D_2*m_2 + a_3*D_3*m_3 and minimum required layer thicknesses using the AASHTO (1993) Guide for Design of Pavement Structures. *Table — Convert multi-layer asphalt, crushed base, and subbase thicknesses into one AASHTO Structural Number!:* | Flexible Pavement Layer | Layer Coeff a_i | Thickness D_i (in) | Drainage Coeff m_i | SN Contribution | | --- | --- | --- | --- | --- | | Hot-Mix Asphalt Surface (HMA) | a_1 = 0.44 | D_1 = 5.0 in | 1.00 (Impervious) | 2.200 | | Crushed Aggregate Base | a_2 = 0.14 | D_2 = 8.0 in | m_2 = 1.00 (Fair-Good) | 1.120 | | Granular Subbase | a_3 = 0.11 | D_3 = 10.0 in | m_3 = 0.90 (Slow Drain) | 0.990 | | Total Provided Structural Number SN | Sum of Layers | 23.0 in Total | — | SN = 4.310 | - **Formula (Composite Provided AASHTO Structural Number SN)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 < 0, B6 <= 0, B7 < 0, B8 < 0, B9 <= 0), "Invalid Layer Coefficients, Thicknesses, or Drainage Modifiers", ROUND(B2 * B3 + B4 * B5 * B6 + B7 * B8 * B9, 3))` - **Formula (Minimum Required HMA Surface Thickness D_1 (in) to Meet Target SN_req)**: `=IF(OR(B2 <= 0, B6 <= 0, B9 <= 0, B10 <= 0), "Invalid Pavement Design Inputs", ROUND(MAX(0, (B10 - (B4 * B5 * B6 + B7 * B8 * B9)) / B2), 2))` ### AASHTO Curve Superelevation Radius & Stopping Sight Distance - **URL**: https://sheets.arte-soft.com/en/learn/aashto-highway-curve-superelevation-minimum-radius-and-stopping-sight-formula/ - **Summary**: Calculate AASHTO Green Book Minimum Horizontal Curve Radius V^2 / (127*(e + fs)), Perception-Reaction Distance 0.278*V*tr, Grade-Adjusted Braking Distance, and Total Stopping Sight Distance (SSD). *Table — Design safe highway alignments for wet-pavement friction and downhill braking grades!:* | AASHTO Alignment Metric (V=100 km/h, e=6%, fs=0.10, tr=2.5s, fb=0.35, G=-3%) | Formula | Verified Output | | --- | --- | --- | | Min Horizontal Curve Radius (m) | V_kmh^2 / (127 * (e + f_s)) | 492.13 m | | Perception-Reaction Dist (m) | 0.278 * V_kmh * Reaction_Time_s | 69.50 m | | Grade-Adjusted Braking Dist (m) | V_kmh^2 / (254 * (f_brake + Grade_G)) | 123.03 m (112.49 m @ Level 0%) | | Total Stopping Sight Dist SSD | Reaction_Dist + Braking_Dist | 192.53 m (181.99 m @ Level 0%) | - **Formula (AASHTO Grade-Adjusted Stopping Sight Distance (SSD) Formula)**: `=LET(v_kh, B2, sp_e, B3, fr_s, B4, tr_s, B5, fb_g, B6, gr_d, B7, IF(OR(v_kh <= 0, sp_e < 0, fr_s < 0, sp_e + fr_s <= 0, tr_s <= 0, fb_g <= 0, fb_g + gr_d <= 0.05), "Invalid AASHTO Alignment Input", LET(d_pr, ROUND(0.278 * v_kh * tr_s, 2), d_br, ROUND((v_kh ^ 2) / (254 * (fb_g + gr_d)), 2), ROUND(d_pr + d_br, 2))))` - **Formula (Level Roadway Grade Baseline Check (Set Grade G = 0.00))**: `=IF(ISTEXT(E5), E5, ROUND((B2 ^ 2) / (254 * (B6 + B7)), 2))` ### A/B test conversion lift and statistical significance (two-proportion Z-score) - **URL**: https://sheets.arte-soft.com/en/learn/ab-test-conversion-lift-z-score/ - **Summary**: Calculate relative conversion lift, pooled standard error, and two-proportion Z-score to test 95% statistical significance. *Table — Relative lift vs statistical noise:* | Group | Visitors | Conversions | Rate | Lift / Z-Score | | --- | --- | --- | --- | --- | | Control A | 2000 | 160 | 8.0% | Baseline | | Variant B | 2000 | 200 | 10.0% | +25.0% lift \| Z = 2.21 (p < 0.05) | - **Formula (Two-proportion Z-score and lift formulas with LET)**: `=LET(pA, B2/A2, pB, D2/C2, p, (B2+D2)/(A2+C2), se, SQRT(p*(1-p)*(1/A2 + 1/C2)), ROUND((pB - pA) / se, 2))` - **Formula (Relative conversion lift formula)**: `=ROUND(((D2 / C2) - (B2 / A2)) / (B2 / A2), 4)` ### Abadie Synthetic Control Convex Weights and Post/Pre RMSPE Ratio - **URL**: https://sheets.arte-soft.com/en/learn/abadie-synthetic-control-convex-donor-weights-and-rmspe-ratio/ - **Summary**: Audit convex donor-pool weights (w_j >= 0, SUM w_j = 1), pre-intervention fit, and Abadie’s post-to-pre RMSPE permutation test ratio in Excel and Arte Sheets. *Table — Enforce convex donor-hull constraints before trusting a synthetic counterfactual:* | Synthetic Control Audit Stage | Spreadsheet Rule | Sample Value | | --- | --- | --- | | Convex Simplex Check | MIN(w) >= 0 AND ABS(SUM(w) - 1) <= 1E-6 | Valid ({0.50, 0.30, 0.20}) | | Pre-Intervention RMSPE (T1..T3) | SQRT(MEAN((Y_tr - Y_syn)^2)) pre-policy | 1.0000 | | Post-Intervention ATT & RMSPE (T4..T6) | MEAN(Y_tr - Y_syn) / SQRT(MSPE_post) | ATT = -6.0000 / RMSPE = 6.0000 | | Abadie Post/Pre RMSPE Ratio | RMSPE_post / RMSPE_pre | 6.0000 | - **Formula (Row-Level Convex-Guarded Synthetic Control Counterfactual Formula)**: `=IF(OR(MIN($H$2:$H$4) < 0, ABS(SUM($H$2:$H$4) - 1) > 1E-6), "Invalid Convex Hull Weights", ROUND(C2 * $H$2 + D2 * $H$3 + E2 * $H$4, 4))` - **Formula (Abadie Post-to-Pre Intervention RMSPE Ratio Formula)**: `=IF(OR(MIN(H2:H4) < 0, ABS(SUM(H2:H4) - 1) > 1E-6), "Invalid Convex Hull Weights", LET(tr_pre, B2:B4, sy_pre, F2:F4, tr_pst, B5:B7, sy_pst, F5:F7, mspe_0, (SUMPRODUCT(tr_pre, tr_pre) - 2 * SUMPRODUCT(tr_pre, sy_pre) + SUMPRODUCT(sy_pre, sy_pre)) / ROWS(tr_pre), IF(mspe_0 <= 1E-12, "Exact Zero Pre-Fit Error", LET(mspe_1, (SUMPRODUCT(tr_pst, tr_pst) - 2 * SUMPRODUCT(tr_pst, sy_pst) + SUMPRODUCT(sy_pst, sy_pst)) / ROWS(tr_pst), ROUND(SQRT(mspe_1) / SQRT(mspe_0), 4)))))` ### Abbreviate names into initials: 1-, 2-, and 3-word names - **URL**: https://sheets.arte-soft.com/en/learn/abbreviate-names-into-initials/ - **Summary**: Extract uppercase initials from mononyms, two-part names, and full middle-name strings using TRIM, LEFT, and TEXTAFTER. *Table — Handle 1, 2, or 3 words without #VALUE! errors:* | FullName (A) | Word Count | Initials | | --- | --- | --- | | ada lovelace | 2 | AL | | Grace Brewster Hopper | 3 | GBH | | Plato | 1 | P | - **Formula (Uppercase initials formula)**: `=LET(n, TRIM(A2), UPPER(LEFT(n, 1) & LEFT(IFERROR(TEXTAFTER(n, " ", 1), ""), 1) & LEFT(IFERROR(TEXTAFTER(n, " ", 2), ""), 1)))` - **Formula (Three-word and single-word checks)**: `=LET(n, TRIM(A3), UPPER(LEFT(n, 1) & LEFT(IFERROR(TEXTAFTER(n, " ", 1), ""), 1) & LEFT(IFERROR(TEXTAFTER(n, " ", 2), ""), 1)))` ### Abbreviate state or country names to 2-letter postal codes (mixed-input safe) - **URL**: https://sheets.arte-soft.com/en/learn/abbreviate-us-state-names-to-two-letter-codes/ - **Summary**: Standardize columns that mix full state names ("California", "New York") and 2-letter abbreviations ("tx", "CA") into clean uppercase postal codes. *Table — Handle columns where some rows are already abbreviated:* | Raw Input (A) | Rule Triggered | Standardized Code | | --- | --- | --- | | California | XLOOKUP in FullName table | CA | | tx | Valid 2-letter code -> UPPER | TX | | New York | XLOOKUP in FullName table | NY | | ZZ | Not in valid 2-letter list | Unknown | - **Formula (Mixed-input state standardization formula)**: `=LET(s, TRIM(A2), IF(AND(LEN(s)=2, XLOOKUP(s, $D$2:$D$5, $D$2:$D$5, "")<>""), UPPER(s), XLOOKUP(s, $C$2:$C$5, $D$2:$D$5, "Unknown")))` - **Formula (Reverse lookup: expand 2-letter code to full state name)**: `=XLOOKUP("NY", $D$2:$D$5, $C$2:$C$5, "Unknown")` ### Abbreviated Burn Severity Index (ABSI) Tobiasen Survival Tier Formula - **URL**: https://sheets.arte-soft.com/en/learn/abbreviated-burn-severity-index-absi-tobiasen-survival-score/ - **Summary**: Calculate Joyce Tobiasen’s 5-variable Abbreviated Burn Severity Index (ABSI, 2 to 18 points) summing Female sex (+1), 20-year Age bracket (1–5), Inhalation Injury (+1), Full-Thickness 3rd-Degree Burn (+1), and 10% TBSA bracket (1–10). *Table — Capture full-thickness 3rd-degree eschar and sex alongside age, %TBSA, and inhalation!:* | ABSI Total Score Band | Tobiasen Threat-to-Life Tier | Historical Burn Survival Probability | | --- | --- | --- | | 2–3 / 4–5 Points | Very Low / Moderate | >= 99% / ~98% Survival | | 6–7 / 8–9 Points | Moderately Severe / Serious | 80–90% / 50–70% Survival | | 10–11 / >= 12 Points | Severe / Maximum Threat | 20–40% / <= 10% Survival | - **Formula (Tobiasen (1982) Total Abbreviated Burn Severity Index (ABSI))**: `=IF(OR(B3 < 0, B6 <= 0, B6 > 100), "Invalid Burn Inputs", IF(B2 = 1, 1, 0) + MIN(5, INT(MAX(0, B3 - 1) / 20) + 1) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + MIN(10, INT((B6 - 0.0001) / 10) + 1))` - **Formula (ABSI Threat-to-Life & Survival Probability Tier)**: `=IF((IF(B2 = 1, 1, 0) + MIN(5, INT(MAX(0, B3 - 1) / 20) + 1) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + MIN(10, INT((B6 - 0.0001) / 10) + 1)) >= 12, "Maximum Threat (ABSI >= 12: <= 10% Survival)", IF((IF(B2 = 1, 1, 0) + MIN(5, INT(MAX(0, B3 - 1) / 20) + 1) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + MIN(10, INT((B6 - 0.0001) / 10) + 1)) >= 10, "Severe Threat (ABSI 10-11: 20-40% Survival)", IF((IF(B2 = 1, 1, 0) + MIN(5, INT(MAX(0, B3 - 1) / 20) + 1) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + MIN(10, INT((B6 - 0.0001) / 10) + 1)) >= 8, "Serious Threat (ABSI 8-9: 50-70% Survival)", "Low-to-Moderately Severe (ABSI 2-7: >= 80% Survival)")))` ### ABC–XYZ inventory example: cumulative spend share and demand variation - **URL**: https://sheets.arte-soft.com/en/learn/abc-xyz-dual-inventory-classification-matrix/ - **Summary**: Combine a chosen cumulative-spend classification with population CV of four demand observations. Thresholds are example policy choices, not universal stocking rules. *Table — Separate value share from observed demand variation:* | SKU (A) | Annual Spend (B) & Cum % | Quarterly Demand (C:F) | CV & 9-Box ABC-XYZ Tag | | --- | --- | --- | --- | | SKU-101 | $75,000 (75% -> A) | 100, 105, 95, 100 | CV = 0.0354 (<=0.20 -> X) = "AX" | | SKU-204 | $17,000 (92% -> B) | 80, 130, 60, 130 | CV = 0.3082 (<=0.50 -> Y) = "BY" | | SKU-309 | $8,000 (100% -> C) | 10, 110, 0, 80 | CV = 0.9274 (>0.50 -> Z) = "CZ" | - **Formula (Combined 9-box ABC-XYZ classification formula)**: `=IF(OR(COUNT($B$2:$B$4)<>3,MIN($B$2:$B$4)<0,SUM($B$2:$B$4)<=0,$B$2<$B$3,$B$3<$B$4,COUNT(C2:F2)<>4,MIN(C2:F2)<0),"Invalid inputs",IF(AVERAGE(C2:F2)=0,"Undefined CV",LET(cum, SUM($B$2:B2) / SUM($B$2:$B$4), cv, STDEV.P(C2:F2) / AVERAGE(C2:F2), IFS(cum <= 0.80, "A", cum <= 0.95, "B", TRUE, "C") & IFS(cv <= 0.20, "X", cv <= 0.50, "Y", TRUE, "Z"))))` - **Formula (Demand Coefficient of Variation CV = STDEV.P / AVERAGE)**: `=IF(OR(COUNT(C3:F3)<>4,MIN(C3:F3)<0),"Invalid inputs",IF(AVERAGE(C3:F3)=0,"Undefined CV",ROUND(STDEV.P(C3:F3) / AVERAGE(C3:F3), 4)))` ### ABCD2 Score for TIA Early Stroke Risk (0–7 Point Clinical Rule) - **URL**: https://sheets.arte-soft.com/en/learn/abcd2-transient-ischemic-attack-tia-early-stroke-score/ - **Summary**: Compute the 0–7 point ABCD2 transient ischemic attack (TIA) score across Age (>=60), Blood pressure (>=140/90), Clinical features, Duration, and Diabetes to stratify 2-day ischemic stroke risk. *Table — Stratify 48-hour post-TIA stroke risk systematically in emergency triage!:* | ABCD2 Risk Tier | Score Range | 2-Day Stroke Risk | Example Presentation | | --- | --- | --- | --- | | Low Risk | 0–3 points | ~1.0% | Age 52, BP 128/80, Sensory only (0), 5 min (0), No DM -> 0 pts | | Moderate Risk | 4–5 points | ~4.1% | Age 68 (+1), BP 152/88 (+1), Speech only (+1), 25 min (+1), No DM -> 4 pts | | High Risk | 6–7 points | ~8.1% | Age 68 (+1), BP 152/94 (+1), Weakness (+2), 75 min (+2), DM (+1) -> 7 pts | - **Formula (Total ABCD2 Score (0 to 7 Points))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 > 2, B6 < 0, OR(B7 < 0, B7 > 1)), "Invalid ABCD2 Inputs", --(B2 >= 60) + --(OR(B3 >= 140, B4 >= 90)) + B5 + IF(B6 >= 60, 2, IF(B6 >= 10, 1, 0)) + B7)` - **Formula (ABCD2 48-Hour Stroke Risk Tier)**: `=IF((--(B2 >= 60) + --(OR(B3 >= 140, B4 >= 90)) + B5 + IF(B6 >= 60, 2, IF(B6 >= 10, 1, 0)) + B7) >= 6, "High Stroke Risk (6-7 pts: ~8.1% at 48h)", IF((--(B2 >= 60) + --(OR(B3 >= 140, B4 >= 90)) + B5 + IF(B6 >= 60, 2, IF(B6 >= 10, 1, 0)) + B7) >= 4, "Moderate Stroke Risk (4-5 pts: ~4.1% at 48h)", "Low Stroke Risk (0-3 pts: ~1.0% at 48h)"))` ### Abdi-Ranaldo Close-High-Low (CHL) Bid-Ask Spread Formula - **URL**: https://sheets.arte-soft.com/en/learn/abdi-ranaldo-close-high-low-two-day-bid-ask-spread-estimator/ - **Summary**: Estimate effective proportional bid-ask spreads from daily OHLC bars using Abdi and Ranaldo’s (2017) two-day zero-floored formula s_t = 2 * SQRT(MAX(0, (c_t - eta_t) * (c_t - eta_{t+1}))). *Table — Combine Roll’s close bounce with daily mid-range reference prices eta_t = (h_t + l_t) / 2:* | Two-Day Pair | (c_t - eta_t) * (c_t - eta_{t+1}) | Two-Day AR Spread s_t | | --- | --- | --- | | Days 1-2 (Ask Bounce) | +0.006 * +0.006 = +0.000036 | 0.0120 (120 bps) | | Days 2-3 (Bid Bounce) | -0.004 * -0.004 = +0.000016 | 0.0080 (80 bps) | | Days 3-4 (Noisy Drift < 0) | +0.005 * -0.005 = -0.000025 -> 0 | 0.0000 (Zero-Floored) | | Days 4-5 (Wide Ask Bounce) | +0.008 * +0.008 = +0.000064 | 0.0160 (160 bps) | - **Formula (Two-Day Zero-Floored Abdi-Ranaldo Spread s_AR_t Formula)**: `=LET(h_1, B2, l_1, C2, c_1, D2, h_2, B3, l_2, C3, IF(OR(h_1 < l_1, c_1 < l_1, c_1 > h_1, h_2 < l_2), "Invalid OHLC Bar", LET(eta_1, 0.5 * (h_1 + l_1), eta_2, 0.5 * (h_2 + l_2), prod_c, (c_1 - eta_1) * (c_1 - eta_2), ROUND(2 * SQRT(MAX(0, prod_c)), 4))))` - **Formula (Mean Effective Spread in Basis Points (10,000 * AVERAGE) Formula)**: `=IF(COUNTIF(E2:E5, "Invalid OHLC Bar") > 0, "Invalid OHLC Bar", ROUND(10000 * AVERAGE(E2:E5), 2))` ### ABL Borrowing Base, Dilution Reserve & Availability Formula - **URL**: https://sheets.arte-soft.com/en/learn/abl-revolver-borrowing-base-dilution-reserve-and-excess-availability-formula/ - **Summary**: Calculate Asset-Based Lending (ABL) Effective AR Advance Rate 0.85 - MAX(0, 2*(Dilution - 0.05)), Capped Borrowing Base MIN(Commitment, AR_Adv + 0.85*Inventory_NOLV), Excess Availability, and Springing Cash-Dominion Covenant Gate. *Table — Model the 2x field-exam AR Dilution Reserve and 10% springing Cash Dominion trigger!:* | ABL Borrowing Base Metric ($10M AR @ 8% Dil, $5M Inv NOLV, $9M Drawn, $15M Cap) | Formula | Verified Output | | --- | --- | --- | | Effective AR Advance Rate | MAX(0, 0.85 - MAX(0, 2*(Dil - 0.05))) | 0.7900 (0.8500 @ 4% Dilution) | | Total Capped Borrowing Base ($) | MIN(Cap, AR * Adv_Rate + 0.85 * NOLV) | $12,150,000 ($12,750,000 @ 4% Dil) | | Excess Revolver Availability ($) | Borrowing_Base - Drawn_Balance | $3,150,000 ($650,000 @ $11.5M Draw) | | 10% Springing Dominion Gate | Avail < 0 Default \| < 10% BB Dominion | Covenant Clear: Normal Availability | - **Formula (ABL Borrowing Base & Springing Cash-Dominion Formula)**: `=LET(ar_e, B2, dl_r, B3, in_v, B4, dr_w, B5, cp_m, B6, IF(OR(ar_e < 0, dl_r < 0, dl_r > 1, in_v < 0, dr_w < 0, cp_m <= 0), "Invalid Borrowing Base Input", LET(ad_r, MAX(0, 0.85 - MAX(0, 2 * (dl_r - 0.05))), bb_t, MIN(cp_m, ar_e * ad_r + 0.85 * in_v), ROUND(bb_t, 2))))` - **Formula (Clean 4% Dilution Recovery & $11.5M Draw Cash-Dominion Trigger Checks)**: `=IF(ISTEXT(E3), E3, IF(E4 < 0, "Overadvance Default: Mandatory Paydown", IF(E4 < 0.1 * E3, "Cash Dominion & FCCR Triggered", "Covenant Clear: Normal Availability")))` ### Abrasive Waterjet (AWJ) Jet Velocity & Pump Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/abrasive-waterjet-awj-orifice-jet-velocity-hydraulic-hp-and-garnet-feed-ratio/ - **Summary**: Calculate Supersonic Ruby/Diamond Orifice Waterjet Velocity (m/s), Vena-Contracta Orifice Water Flow (L/min), Hydraulic Jet Power (kW), and Garnet-to-Water Mass Loading Ratio. *Table — At 3,800–6,000 bar, a jewel waterjet orifice fires water at Mach 2.5–3.0 in air—and hydraulic power scales with P^(1.5)!:* | UHP Abrasive Waterjet KPI (3,800 bar, d0=0.33 mm Jewel, Cv=0.96, Cd=0.68, 420 g/min) | Formula | Verified Output | | --- | --- | --- | | Orifice Waterjet Velocity (m/s) | Cv * SQRT((2 * P_bar * 100000) / 1000) | 836.9 m/s (1,051.6 m/s @ 6,000 bar!) | | Orifice Water Flow Rate (L/min) | Cd * A_m2 * SQRT(2*P_Pa / 1000) * 60000 | 3.04 L/min (3.82 L/min @ 6,000 bar) | | Hydraulic Jet Power (kW) | (P_Pa * (Q_L_min / 60000)) / 1000 | 19.27 kW (38.23 kW = +98% @ 6,000 bar!) | | Garnet-to-Water Mass Ratio Raw | (Garnet_g_min / 1000) / Water_L_min | 0.138 (0.110 @ 6,000 bar) | - **Formula (Bernoulli Jewel-Orifice Supersonic Jet Power & Garnet Loading Formula)**: `=LET(pr_b, B2, do_m, B3, cv_f, B4, cd_f, B5, gm_m, B6, IF(OR(pr_b < 500, pr_b > 7000, do_m <= 0.05, do_m > 1.5, cv_f <= 0, cv_f > 1, cd_f <= 0, cd_f > cv_f, gm_m < 0), "Invalid AWJ Input", LET(pr_p, pr_b * 100000, ar_m, (PI() / 4) * ((do_m / 1000) ^ 2), ql_m, cd_f * ar_m * SQRT((2 * pr_p) / 1000) * 60000, ROUND((gm_m / 1000) / ql_m, 3))))` - **Formula (Hyper-Pressure 6,000 bar (87,000 psi) Intensifier Upgrade Check (Set Pressure B2 = 6,000 bar))**: `=IF(ISTEXT(E5), E5, LET(pr_p, B2 * 100000, ar_m, (PI() / 4) * ((B3 / 1000) ^ 2), qs_m, B5 * ar_m * SQRT((2 * pr_p) / 1000), ROUND((pr_p * qs_m) / 1000, 2)))` ### ABS function: measure budget variance distance and tolerance bands - **URL**: https://sheets.arte-soft.com/en/learn/abs-absolute-variance-and-tolerance/ - **Summary**: Strip minus signs with ABS so over-budget and under-budget variances do not cancel each other out and symmetric tolerance checks stay concise. *Table — Prevent positive and negative variances from cancelling out:* | Category (A) | Budget (B) | Actual (C) | Signed C-B | ABS(C-B) | | --- | --- | --- | --- | --- | | Freight | 5000 | 4650 | -350 | 350 | | Packaging | 3200 | 3550 | +350 | 350 | | Insurance | 1800 | 1800 | 0 | 0 | | Utilities | 2400 | 2160 | -240 | 240 | - **Formula (Check symmetric +/- tolerance in a single test)**: `=IF(ABS(C2-B2)>E2, "Review", "Within tolerance")` - **Formula (Compare net signed variance against total absolute variance)**: `=ABS(C2-B2)+ABS(C3-B3)+ABS(C4-B4)+ABS(C5-B5)` ### Absolute and relative cell references: lock constants with $ when copying formulas - **URL**: https://sheets.arte-soft.com/en/learn/absolute-and-relative-cell-references/ - **Summary**: Copied formulas adjust row and column coordinates automatically unless you lock them with dollar signs. Calculate wholesale pack prices from one shared pack size and handling fee without breaking rows below. *Table — One shared multiplier, three product rows:* | Blend (A) | Bag price (B) | Bags per case (E2) | Carton fee (F2) | | --- | --- | --- | --- | | House | 8 | 6 | 3 | | Single Origin | 12 | | | | Decaf | 10 | | | - **Formula (Lock the shared cells before copying down)**: `=B2*$E$2+$F$2` - **Formula (When a mixed reference ($B2 or G$1) is cleaner)**: `=$B2*G$1` ### Absolute Neutrophil Count (ANC) & Reticulocyte Production Index (RPI) - **URL**: https://sheets.arte-soft.com/en/learn/absolute-neutrophil-count-anc-and-reticulocyte-production-index/ - **Summary**: Practice ANC, corrected reticulocyte percentage and RPI calculations with explicit units, a configurable reference hematocrit and a supplied maturation factor. - **Formula (Calculate absolute neutrophil count)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric WBC and percentages",IF(OR(B2<0,B3<0,B4<0,B3+B4>100),"Invalid count or percentages",B2*(B3+B4)/100))` - **Formula (Correct the reticulocyte percentage)**: `=IF(COUNT(B5:B7)<>3,"Enter numeric reticulocyte and hematocrit inputs",IF(OR(B5<0,B5>100,B6<=0,B6>100,B7<=0,B7>100),"Invalid percentage or reference",B5*B6/B7))` - **Formula (Apply a supplied maturation correction)**: `=IF(NOT(ISNUMBER(E3)),E3,IF(NOT(ISNUMBER(B8)),"Enter numeric maturation factor",IF(B8<=0,"Maturation factor must be positive",E3/B8)))` ### Ideal AC transformer: voltage ratio and reflected resistive load - **URL**: https://sheets.arte-soft.com/en/learn/ac-transformer-turns-ratio-voltage-current-and-impedance/ - **Summary**: Calculate step-down / step-up transformer turns ratio a = Np / Ns, secondary voltage Vs = Vp / a, current Is = Vs / ZL, and reflected primary impedance Zp = a^2 * ZL. *Table — Why transformer voltage scales with a—while reflected impedance scales with a^2!:* | Transformer Parameter | Cell | Step-Down Example | Electrical Output | | --- | --- | --- | --- | | Primary Np & Secondary Ns | B2 = 1,200, B3 = 100 | Turns ratio a = 12:1 | Step-Down (a > 1) | | Primary Voltage Vp | B4 = 240 V RMS | Vs = 240 / 12 | 20 V RMS Secondary | | Load Resistance ZL | B5 = 8 Ohms | Is = 20 / 8 = 2.50 A | Power P = 20 * 2.5 = 50 W | | Reflected Primary Impedance | (B2 / B3)^2 * B5 | 12^2 * 8 = 144 * 8 | Zp = 1,152 Ohms (Ip = 0.2083 A) | - **Formula (Secondary RMS Voltage Vs = Vp * (Ns / Np))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B2<>INT(B2),B3<>INT(B3),B4<0,B5<=0),"Invalid inputs",ROUND(B4 * (B3 / B2), 2)))` - **Formula (Reflected Primary Impedance Zp = (Np / Ns)^2 * ZL (Ohms))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B2<>INT(B2),B3<>INT(B3),B4<0,B5<=0),"Invalid inputs",ROUND(((B2 / B3) ^ 2) * B5, 2)))` ### ACA Medical Loss Ratio (MLR) & Rebate Formula - **URL**: https://sheets.arte-soft.com/en/learn/aca-medical-loss-ratio-mlr-quality-improvement-and-member-rebate-formula/ - **Summary**: Calculate Statutory Health Insurer Adjusted Premium Denominator, HCQI-Adjusted Medical Loss Ratio (Claims + Quality_Improvement) / (Premiums - Regulatory_Assessments), and Mandatory Policyholder Rebate. *Table — Include certified Quality Improvement in the numerator and deduct regulatory fees from premiums!:* | 45 CFR Part 158 MLR Metric ($105M Prem, $5M Reg Fees, $74M Claims, $3M HCQI, 80% Min) | Formula | Verified Output | | --- | --- | --- | | Adjusted Premium Denominator ($) | Earned_Premiums - Regulatory_Assessments | $100,000,000.00 | | Attained Statutory MLR | (Claims + HCQI) / Adjusted_Denominator | 0.7700 (77.00% vs 80.0% Min) | | Mandatory Member Rebate ($) | MAX(0, (Target_MLR - MLR) * Adj_Denom) | $3,000,000.00 ($0 @ $78M Claims) | | Regulatory Filing Status | Attained_MLR >= Statutory_Target_MLR | Rebate Owed (MLR Below Statutory Floor) | - **Formula (Statutory MLR Mandatory Policyholder Rebate Formula)**: `=LET(pr_e, B2, rg_f, B3, cl_i, B4, hc_q, B5, tg_m, B6, IF(OR(pr_e <= 0, rg_f < 0, rg_f >= pr_e, cl_i < 0, hc_q < 0, tg_m <= 0.5, tg_m >= 1), "Invalid MLR Filing", LET(dn_a, pr_e - rg_f, ml_r, (cl_i + hc_q) / dn_a, ROUND(MAX(0, (tg_m - ml_r) * dn_a), 2))))` - **Formula (Individual/Small-Group (80%) vs Large-Group (85%) Segment Test)**: `=IF(ISTEXT(E4), E4, IF(E4 > 0, "Rebate Owed (MLR Below Statutory Floor)", "Compliant (Zero MLR Rebate)"))` ### Track Server-Verified Academy Lesson Progress vs AI Hint Practice - **URL**: https://sheets.arte-soft.com/en/learn/academy-verified-lesson-progress-vs-chatgpt-connector-hint-practice-audit/ - **Summary**: Audit team spreadsheet training by separating local draft attempts and AI hint sessions from server-verified Academy lesson completions in Excel and Arte Sheets. *Table — Never confuse local draft attempts or AI hint sessions with verified completion:* | Learning Activity | Entitlement & Credit Rule | Counts Toward Verified Completion? | | --- | --- | --- | | Free Lesson Read & Self-Check | Available without Pro in web app & get_lesson | Only after in-app exercise verification passes | | In-App Pro Assistant Socratic Hint | Requires active Pro; deducts metered Pro AI credits per request | No — coaching aid only; learner must verify sheet | | ChatGPT Connector 0.1.0 (In review) | academy:read OAuth; paid lessons require Pro; 0 Arte AI credits | Read-only progress/prompts; cannot submit or certify | | Server-Verified Exercise Pass | Verified inside Arte Sheets Academy (verifiedLessons) | Yes — sole source for completion & certification | - **Formula (Verified Mastery Rate vs Draft Inflation Gap Formula)**: `=IF(SUM(B2:B5) <= 0, "Invalid Curriculum Total", ROUND(SUM(D2:D5) / SUM(B2:B5), 4))` - **Formula (Module Completion & Certification Readiness Gate Formula)**: `=LET(tot_l, SUM(B2:B5), ver_l, SUM(D2:D5), drf_l, SUM(C2:C5), IF(tot_l <= 0, "Invalid Curriculum Total", IF(ver_l > tot_l, "Count Exceeds Curriculum", IF(ver_l = tot_l, "All Lessons Server-Verified", "In Progress: " & (tot_l - ver_l) & " Unverified"))))` ### Audit Academy verifiedLessons vs MCP Learning-Progress Reads - **URL**: https://sheets.arte-soft.com/en/learn/academy-verified-lessons-vs-mcp-learning-progress-read-audit/ - **Summary**: Separate server-verified Academy lesson completion (verifiedLessons) from saved drafts, locked Pro lesson metadata, and read-only MCP training checks in Arte Sheets. *Table — Distinguish conversational study from server-verified completion in Arte Sheets:* | Audit Metric (6-Lesson Track) | Formula Logic | Verified Output (Pro = 1) | | --- | --- | --- | | Accessible Lesson Content Count | Free lessons + Pro lessons if Active_Pro = 1 | 6 (drops to 3 when Pro = 0) | | Official verifiedLessons Count | COUNTIF(E2:E7, 1) (Server-Verified Only) | 3 of 6 | | Unverified Practice Gap Count | COUNTIFS(D2:D7, 1, E2:E7, 0) | 2 (Run Check in Arte Sheets) | | Track Completion Readiness | Requires all 6 in verifiedLessons | Incomplete: 3 Unverified | - **Formula (Accessible Lesson Count (Honoring Free vs Active-Pro Entitlement) Formula)**: `=IF(AND(H2 <> 0, H2 <> 1), "Invalid Pro Flag", COUNTIF(B2:B7, "Free") + IF(H2 = 1, COUNTIF(B2:B7, "Pro"), 0))` - **Formula (Server-Verified Completion Gate and Unverified Practice Gap Formula)**: `=LET(bad_r, COUNTIFS(D2:D7, 0, E2:E7, 1), ver_n, COUNTIF(E2:E7, 1), tot_n, ROWS(E2:E7), IF(bad_r > 0, "Audit Error: Verified Without Saved Check", IF(ver_n = tot_n, "Track Complete (All Server-Verified in Arte Sheets)", "Incomplete: " & (tot_n - ver_n) & " Unverified")))` ### 2/10 Net 30 formula: implied annualized cost of skipping trade discounts - **URL**: https://sheets.arte-soft.com/en/learn/accounts-payable-early-payment-discount-2-10-net-30/ - **Summary**: Annualize the illustrative cost of foregoing an early-payment discount using simple and compounded conventions. *Table — Why skipping a 2% 10-day discount costs 44.59% compounded annually!:* | Trade Credit Terms | Extra Days Held | Simple APR | Compounded Effective Rate | | --- | --- | --- | --- | | 2/10, Net 30 | 20 days | 37.24% | 44.59% | | 2/10, Net 60 | 50 days | 14.90% | 15.89% | | 1/10, Net 30 | 20 days | 18.43% | 20.13% | - **Formula (Compounded Effective Rate and Simple APR of trade credit)**: `=ROUND((1 + A2 / (1 - A2)) ^ (365 / (C2 - B2)) - 1, 4)` - **Formula (Simple (non-compounded) annualized trade credit APR)**: `=ROUND((A2 / (1 - A2)) * (365 / (C2 - B2)), 4)` - **Formula (Additional worked calculation)**: `=IF(((1 + A2 / (1 - A2)) ^ (365 / (C2 - B2)) - 1) > D2, "Discount has higher implied rate", "Borrowing rate is not lower")` ### Accounts receivable aging buckets: classify invoices into Current, 1-30, 31-60, 61-90, and 90+ - **URL**: https://sheets.arte-soft.com/en/learn/accounts-receivable-aging-buckets/ - **Summary**: Assign standard AR aging bands with ordered IFS thresholds and summarize dollar exposure per bucket with SUMIF. *Table — Order IFS cutoffs strictly from lowest to highest:* | Invoice (A) | DaysPastDue (B) | Amount (C) | Bucket (D) | | --- | --- | --- | --- | | INV-01 | -4 | 500 | Current | | INV-02 | 18 | 1200 | 1-30 Days | | INV-03 | 30 | 800 | 1-30 Days (exact boundary) | | INV-04 | 95 | 2100 | 91+ Days | - **Formula (Assign bucket label and check exact 30-day boundary)**: `=IFS(B3<=0, "Current", B3<=30, "1-30 Days", B3<=60, "31-60 Days", B3<=90, "61-90 Days", TRUE, "91+ Days")` - **Formula (Total dollar exposure in any bucket with SUMIF)**: `=SUMIF(D2:D5, "1-30 Days", C2:C5)` ### Acemoglu-Pischke Firm-Sponsored General Training Formula - **URL**: https://sheets.arte-soft.com/en/learn/acemoglu-pischke-firm-sponsored-general-training-compressed-wage-gap/ - **Summary**: Calculate Daron Acemoglu and Jorn-Steffen Pischke’s (1998, 1999) optimal firm-paid general training intensity tau* = (theta_comp * p_skill) / c_tr under compressed wage structures versus Gary Becker’s (1964) zero-sponsorship benchmark. *Table — Explain why real firms pay for portable coding bootcamps and German apprenticeships!:* | Human Capital Training Metric (p_skill=40, theta_comp=0.35, c_tr=7) | Formula | Verified Output | | --- | --- | --- | | Firm-Sponsored General Training (tau*) | (theta_comp * p_skill) / c_tr | 2.0000 units | | First-Best Social Training Benchmark (tau_FB) | p_skill / c_tr | 5.7143 units | | Net Employer Training Profit (Pi_firm) | theta_comp*p_skill*tau* - 0.5*c_tr*(tau*)^2 | 14.00 | | Worker Free-Training Wage Gain | (1 - theta_comp) * p_skill * tau* | 52.00 | - **Formula (Acemoglu-Pischke Optimal Firm-Sponsored Training Intensity tau* Formula)**: `=LET(p_sk, B2, th_cm, B3, c_tr, B4, IF(OR(p_sk <= 0, th_cm < 0, th_cm > 1, c_tr <= 0), "Invalid Training Input", ROUND((th_cm * p_sk) / c_tr, 4)))` - **Formula (Net Employer Training Rent & Worker Wage Gain Formula)**: `=IF(ISTEXT(E2), E2, ROUND(B3 * B2 * E2 - 0.5 * B4 * (E2 ^ 2), 2))` ### ACI 318 Whitney Stress Block Concrete Beam Moment Formula - **URL**: https://sheets.arte-soft.com/en/learn/aci-318-whitney-stress-block-singly-reinforced-concrete-beam-moment-formula/ - **Summary**: Calculate Whitney Compression Block Depth a (mm), Net Tensile Rebar Strain epsilon_t, Nominal Flexural Capacity M_n (kN·m), and Tension-Controlled Design Moment phi*M_n (kN·m). *Table — Why ACI 318 checks net tensile strain epsilon_t >= 0.005 BEFORE granting phi = 0.90 flexural capacity!:* | ACI 318 Flexural KPI (b=300 mm, d=520 mm, As=1,800 mm², fc'=28, fy=420) | Formula | Verified Output | | --- | --- | --- | | Whitney Block Depth a (mm) | (As * fy) / (0.85 * fc_prime * b) | 105.88 mm (70.59 @ fc' = 42 MPa) | | Net Tensile Rebar Strain eps_t | 0.003 * ((d - (a / beta_1)) / (a / beta_1)) | 0.0095 (0.0136 @ fc' = 42 MPa) | | Nominal Moment Capacity Mn (kN·m) | (As * fy * (d - a / 2)) / 1e6 | 353.10 kN·m (366.44 @ fc' = 42 MPa) | | Design Moment phi*Mn (kN·m) | 0.90 * Mn (when eps_t >= 0.005) | 317.79 kN·m (329.79 @ fc' = 42 MPa) | - **Formula (ACI 318 Tension-Controlled Whitney Design Moment Formula)**: `=LET(bw_m, B2, dp_m, B3, as_m, B4, fc_m, B5, fy_m, B6, IF(OR(bw_m <= 0, dp_m <= 50, as_m <= 0, fc_m < 17, fc_m > 70, fy_m < 280, fy_m > 550), "Invalid Beam Input", LET(ad_p, (as_m * fy_m) / (0.85 * fc_m * bw_m), b1_f, IF(fc_m <= 28, 0.85, MAX(0.65, 0.85 - 0.05 * ((fc_m - 28) / 7))), cd_p, ad_p / b1_f, ep_t, 0.003 * ((dp_m - cd_p) / cd_p), IF(ep_t < 0.005, "OVER-REINFORCED BRITTLE", ROUND((0.9 * as_m * fy_m * (dp_m - ad_p / 2)) / 1000000, 2)))))` - **Formula (50% Stronger Concrete Lever-Arm Insensitivity Check (Set f_c_prime = 42.0 MPa))**: `=IF(ISTEXT(E5), E5, LET(ad_p, (B4 * B6) / (0.85 * B5 * B2), b1_f, IF(B5 <= 28, 0.85, MAX(0.65, 0.85 - 0.05 * ((B5 - 28) / 7))), cd_p, ad_p / b1_f, ROUND(0.003 * ((B3 - cd_p) / cd_p), 4)))` ### Ackers-White (1973) Sediment Transport Formula: Mobility Number F_gr & Concentration - **URL**: https://sheets.arte-soft.com/en/learn/ackers-white-alluvial-sediment-mobility-number-and-transport-formula/ - **Summary**: Calculate Peter Ackers and W. Rodney White’s (1973, HR Wallingford / ASCE) Transition-Exponent Sediment Mobility Number F_gr and Mass Flux Concentration X_ppm across fine transitional sand to coarse gravel. *Table — Unify fine suspended sand (n = 1) and coarse bedload gravel (n = 0) via Ackers & White’s transition exponent n!:* | Ackers-White Coarse-Gravel Case (D_gr > 60 -> n = 0, A_gr = 0.17, m = 1.5, C_gr = 0.025) | Formula at n = 0 | Evaluated Value | | --- | --- | --- | | Grain-Log Velocity Factor | V / (SQRT(32) * LOG10(10 * Depth / d_35)) | 0.1397 m/s (at V = 2.65 m/s, Depth = 1.8 m, d_35 = 0.008 m) | | Coarse Sediment Mobility Number F_gr | Grain_Vel_Factor / SQRT((s - 1) * g * d_35) | 0.3884 (> A_gr = 0.17) | | Dimensionless Transport G_gr | 0.025 * ((F_gr / 0.17) - 1)^1.5 | 0.03641 | | Mass Sediment Concentration X (ppm by weight) | 1e6 * G_gr * s * d_35 / Depth | 428.8 ppm (mg/kg) | - **Formula (Ackers-White Sediment Mobility Number F_gr (General n in [0, 1]))**: `=IF(OR(B2 <= 0, B3 <= B5, B4 <= 0, B5 <= 0, B6 <= 1, B7 < 0, B7 > 1), "Invalid Channel Velocity, Depth, u_*, d_35, s, or Exponent n", ROUND(((B4 ^ B7) / SQRT((B6 - 1) * 9.80665 * B5)) * ((B2 / (SQRT(32) * LOG10((10 * B3) / B5))) ^ (1 - B7)), 4))` - **Formula (Ackers-White Dimensionless Sediment Transport Parameter G_gr)**: `=IF(OR(B2 <= 0, B3 <= B5, B4 <= 0, B5 <= 0, B6 <= 1, B7 < 0, B7 > 1, B8 <= 0, B9 <= 0, B10 <= 0), "Invalid Ackers-White Inputs", ROUND(B10 * (MAX(0, ((((B4 ^ B7) / SQRT((B6 - 1) * 9.80665 * B5)) * ((B2 / (SQRT(32) * LOG10((10 * B3) / B5))) ^ (1 - B7))) / B8) - 1) ^ B9), 5))` ### Acme Power Screw Raising/Lowering Torque & Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/acme-power-screw-raising-and-lowering-torque-efficiency-and-overhauling/ - **Summary**: Calculate Acme Thread Raising Torque T_R (N·m) including Thrust Collar Friction, Load-Lowering Torque T_L (N·m), Overall Screw+Collar Efficiency (%), and Overhauling Check. *Table — Include BOTH 14.5° Acme flank wedging cos(alpha) AND thrust-collar torque—or stall your jack motor!:* | Acme Screw Jack KPI (25 kN, dm=32, l=6, alpha=14.5°, mu=0.12, muc=0.10, dc=45) | Formula | Verified Output | | --- | --- | --- | | Total Raising Torque T_R (N·m) | Thread_Raise_Torque + F * muc * (dc / 2000) | 130.25 N·m (171.77 @ l = 16 mm) | | Total Lowering Torque T_L (N·m) | Thread_Lower_Torque + F * muc * (dc / 2000) | 81.77 N·m (42.44 @ l = 16 mm) | | Overall Screw+Collar Efficiency (%) | (((F * l / 1000) / (2 * PI())) / T_R) * 100 | 18.33% (37.06% @ l = 16 mm) | | Jack Self-Locking Status | T_L > 0 -> SELF-LOCKING else OVERHAULING | SELF-LOCKING | - **Formula (Acme Thread + Thrust Collar Raising Torque Formula)**: `=LET(ld_f, B2, dm_s, B3, ld_l, B4, al_d, B5, mu_t, B6, mu_c, B7, dc_m, B8, IF(OR(ld_f <= 0, dm_s <= 0, ld_l <= 0, al_d < 0, al_d > 30, mu_t <= 0, mu_t > 0.5, mu_c < 0, mu_c > 0.5, dc_m <= 0), "Invalid Screw Input", LET(tl_m, ld_l / (PI() * dm_s), ca_l, COS(al_d * PI() / 180), IF(ca_l <= mu_t * tl_m, "Invalid Screw Input", ROUND(ld_f * (dm_s / 2000) * ((tl_m * ca_l + mu_t) / (ca_l - mu_t * tl_m)) + ld_f * mu_c * (dc_m / 2000), 2)))))` - **Formula (Fast Multi-Start Lead Screw Efficiency Jump Check (Set Lead l = 16 mm))**: `=IF(ISTEXT(E2), E2, LET(tl_m, B4 / (PI() * B3), ca_l, COS(B5 * PI() / 180), tr_q, B2 * (B3 / 2000) * ((tl_m * ca_l + B6) / (ca_l - B6 * tl_m)) + B2 * B7 * (B8 / 2000), ROUND((((B2 * B4 / 1000) / (2 * PI())) / tr_q) * 100, 2)))` ### ACOS function: find roof or vector angles from adjacent-over-hypotenuse ratios - **URL**: https://sheets.arte-soft.com/en/learn/acos-function-inverse-cosine-angle/ - **Summary**: Calculate arccosine angles in [0, 180] degrees using DEGREES(ACOS(ratio)), and guard ratios outside [-1, 1]. *Table — Recover an unknown pitch angle from horizontal run and rafter length:* | Cosine Ratio | ACOS (Radians) | DEGREES(ACOS(Ratio)) | | --- | --- | --- | | 1 (run = length) | 0 | 0° (flat) | | 0.5 | 1.047198 | 60° | | 0 | 1.570796 | 90° (perpendicular) | | -0.5 | 2.094395 | 120° (obtuse vector angle) | - **Formula (Convert ACOS output to degrees)**: `=ROUND(DEGREES(ACOS(A2 / B2)), 2)` - **Formula (Guard ratios outside [-1, 1])**: `=IF(ABS(A2 / B2) > 1, "Invalid ratio", ROUND(DEGREES(ACOS(A2 / B2)), 2))` ### Doppler Effect frequency shift & compressed sound wavelength formula - **URL**: https://sheets.arte-soft.com/en/learn/acoustic-doppler-effect-frequency-shift-and-wavelength/ - **Summary**: Calculate observed acoustic frequency f_obs = f_src * (c + v_obs) / (c - v_src) and wavefront wavelength for approaching vs. receding sound sources. *Table — Keep observer vs. source sign conventions straight in the Doppler equation!:* | Doppler Scenario (f_src = 680 Hz, c = 340 m/s) | Formula | Observed Result | | --- | --- | --- | | Approaching Siren (v_src = +34 m/s, v_obs = 0) | 680 * (340 + 0) / (340 - 34) | 755.56 Hz (+75.56 Hz shift) | | Receding Siren (v_src = -34 m/s, v_obs = 0) | 680 * (340 + 0) / (340 - (-34)) | 618.18 Hz (-61.82 Hz shift) | | Compressed Forward Wavelength (m) | (340 - 34) / 680 | 0.45 m (vs. 0.50 m at rest) | - **Formula (Observed Doppler-shifted frequency (Hz))**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<=0,ABS(C2)>=B2,ABS(D2)>=B2),"Invalid inputs",ROUND(A2 * (B2 + C2) / (B2 - D2), 2))` - **Formula (Wavelength in the medium along the source-to-observer direction)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<=0,ABS(C2)>=B2,ABS(D2)>=B2),"Invalid inputs",ROUND((B2 - D2) / A2, 3))` ### Acoustic Mass Law Wall Transmission Loss & Coincidence Formula - **URL**: https://sheets.arte-soft.com/en/learn/acoustic-mass-law-single-leaf-wall-transmission-loss-tl-and-coincidence-dip/ - **Summary**: Calculate Partition Surface Mass Density m_s (kg/m²), Field-Incidence Mass-Law Sound Transmission Loss TL (dB), Critical Bending-Wave Coincidence Frequency f_c (Hz), and STC Speech-Band Warning. *Table — Doubling wall thickness adds +6 dB Mass-Law isolation—yet HALVES critical coincidence frequency f_c into the speech band!:* | Acoustic Partition KPI (Concrete 2,400 kg/m³, h=0.15 m, f=500 Hz, E=25 GPa) | Formula | Verified Output | | --- | --- | --- | | Surface Mass Density ms (kg/m²) | Density_kg_m3 * Thickness_m | 360.00 kg/m² (720.00 @ h = 0.30 m) | | Field-Incidence Mass-Law TL (dB) | 20 * LOG10(ms * Freq_Hz) - 47.3 | 57.81 dB (63.83 dB @ h = 0.30 m) | | Critical Coincidence Freq fc (Hz) | (343^2/(2*PI()*h))*SQRT(12*rho*(1-nu^2)/E) | 131.27 Hz (65.64 Hz @ h = 0.30 m) | | 6 dB Mass-Doubling Gain Check | +20 * LOG10(2) = +6.02 dB | +6.02 dB | - **Formula (Field-Incidence Mass-Law TL & Critical Bending Coincidence Formula)**: `=LET(rh_o, B2, th_m, B3, fr_q, B4, em_g, B5, nu_p, B6, IF(OR(rh_o <= 50, th_m <= 0.001, fr_q < 20, em_g <= 0.01, nu_p < 0, nu_p >= 0.5), "Invalid Wall Input", LET(ms_k, rh_o * th_m, ROUND(20 * LOG10(ms_k * fr_q) - 47.3, 2))))` - **Formula (6 dB Mass-Doubling & Inverse Coincidence Shift Check (Double Thickness h = 0.30 m))**: `=IF(ISTEXT(E3), E3, ROUND(((343 ^ 2) / (2 * PI() * B3)) * SQRT((12 * B2 * (1 - (B6 ^ 2))) / (B5 * 1000000000)), 2))` ### Acousto-Optic Modulator (AOM) Acoustic Wavelength & Bragg Deflection Angle - **URL**: https://sheets.arte-soft.com/en/learn/acousto-optic-modulator-bragg-diffraction-angle-and-figure/ - **Summary**: Calculate the ultrasonic grating period Lambda = v_a / f_RF (um) and external Bragg angle theta_B ~ (lambda_0 * f_RF) / (2 * v_a) (milliradians) for TeO2 and fused-silica laser acousto-optic deflectors. *Table — Steer and frequency-shift laser beams with RF ultrasound waves inside crystals!:* | RF Drive Frequency (HeNe 632.8 nm in TeO2, va = 4,200 m/s) | Acoustic Grating Period Lambda (um) | External Bragg Angle thetaB (mrad) | 0th-to-1st Separation 2*thetaB | | --- | --- | --- | --- | | 80 MHz Standard Carrier | 52.50 um | 6.027 mrad | 12.053 mrad | | 160 MHz Swept Deflector | 26.25 um | 12.053 mrad | 24.107 mrad | | Zero RF Frequency or Sound Speed | Guarded Input Error | "Invalid AOM Inputs" | Requires lambda > 0, f_RF > 0, va > 0 | - **Formula (Ultrasonic Grating Wavelength Lambda (um) = v_a / f_RF_MHz)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid AOM Inputs", ROUND(B3 / B4, 2))` - **Formula (External Acousto-Optic Bragg Angle theta_B (mrad) = ((lambda_nm * 10^-9 * f_MHz * 10^6) / (2 * v_a)) * 1000)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid AOM Inputs", ROUND((B2 * B4) / (2 * B3), 3))` ### 2019 ACR/EULAR SLE Classification Criteria (ANA >= 1:80 Gate & >= 10 Score) - **URL**: https://sheets.arte-soft.com/en/learn/acr-eular-2019-systemic-lupus-erythematosus-classification-score/ - **Summary**: Evaluate Martin Aringer et al.’s 2019 ACR/EULAR Systemic Lupus Erythematosus classification rule enforcing ALL THREE gates: ANA reciprocal titer >= 80, >= 1 clinical criterion, and weighted score >= 10! *Table — Three mandatory gates—why serology >= 10 alone OR ANA < 1:80 NEVER classifies lupus under 2019 ACR/EULAR!:* | ANA Titer 1:X (B2) | Clinical Domain Sum (B3) | Immunologic Sum (B4) | 2019 ACR/EULAR Classification Result | | --- | --- | --- | --- | | 1:160 (>= 80) | 8 pts (>= 1 clinical) | 6 pts (Total = 14) | Classified as SLE (ANA >= 1:80, Clinical >= 1, Total >= 10) | | 1:40 (< 80) | 8 pts | 6 pts (Total = 14) | Excluded: Entry Criterion ANA >= 1:80 Not Met | | 1:160 (>= 80) | 0 pts (Serology Only!) | 12 pts (Total = 12) | Not Classified: Requires >= 1 Clinical Criterion & Total >= 10 | - **Formula (2019 ACR/EULAR Three-Gate SLE Classification Decision)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0), "Invalid Negative Inputs", IF(B2 < 80, "Excluded: Entry Criterion ANA >= 1:80 Not Met", IF(AND(B3 > 0, B3 + B4 >= 10), "Classified as SLE (ANA >= 1:80, Clinical >= 1, Total >= 10)", "Not Classified: Requires >= 1 Clinical Criterion & Total >= 10")))` - **Formula (Additive ACR/EULAR Weighted Domain Sum (Clinical + Immunologic))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0), "Invalid Negative Inputs", B3 + B4)` ### ACR TI-RADS Thyroid Nodule Calculator: TR1–TR5 Point Sum & FNA Biopsy Size Threshold - **URL**: https://sheets.arte-soft.com/en/learn/acr-ti-rads-thyroid-nodule-ultrasound-point-score-and-fna-threshold/ - **Summary**: Score thyroid ultrasound nodules using Franklin N. Tessler et al.’s (2017) American College of Radiology TI-RADS 5-feature point system (TR1 to TR5) and determine size-based Fine-Needle Aspiration (FNA) vs Surveillance recommendations. *Table — Prevent unnecessary benign thyroid biopsies via ACR TI-RADS additive feature scoring!:* | ACR TI-RADS Category | Total Feature Points | FNA Biopsy Size Cutoff | Ultrasound Surveillance Cutoff | | --- | --- | --- | --- | | TR1 (Benign) / TR2 (Not Suspicious) | 0 pts (TR1) \| 1–2 pts (TR2) | No FNA | No routine US follow-up | | TR3 (Mildly Suspicious) | 3 pts | >= 2.5 cm | >= 1.5 cm (at 1, 3, 5 yr) | | TR4 (Moderately Suspicious) | 4 to 6 pts | >= 1.5 cm | >= 1.0 cm (at 1, 2, 3, 5 yr) | | TR5 (Highly Suspicious) | >= 7 pts | >= 1.0 cm | >= 0.5 cm (annual up to 5 yr) | - **Formula (Total ACR TI-RADS Feature Point Sum)**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, AND(B4 <> 0, B4 <> 3), AND(B5 <> 0, B5 <> 2, B5 <> 3), B6 < 0, B6 > 6, B7 <= 0), "Invalid ACR TI-RADS Feature Points or Diameter", SUM(B2:B6))` - **Formula (ACR TI-RADS Level & Size-Specific FNA / Follow-Up Recommendation)**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, AND(B4 <> 0, B4 <> 3), AND(B5 <> 0, B5 <> 2, B5 <> 3), B6 < 0, B6 > 6, B7 <= 0), "Invalid ACR TI-RADS Feature Points or Diameter", IF(SUM(B2:B6) = 0, "TR1 (Benign): No FNA", IF(SUM(B2:B6) <= 2, "TR2 (Not Suspicious): No FNA", IF(SUM(B2:B6) = 3, IF(B7 >= 2.5, "TR3: Recommend FNA (>= 2.5 cm)", IF(B7 >= 1.5, "TR3: US Follow-Up (>= 1.5 cm)", "TR3: No FNA or Follow-Up (< 1.5 cm)")), IF(SUM(B2:B6) <= 6, IF(B7 >= 1.5, "TR4: Recommend FNA (>= 1.5 cm)", IF(B7 >= 1, "TR4: US Follow-Up (>= 1.0 cm)", "TR4: No FNA or Follow-Up (< 1.0 cm)")), IF(B7 >= 1, "TR5: Recommend FNA (>= 1.0 cm)", IF(B7 >= 0.5, "TR5: US Follow-Up (>= 0.5 cm)", "TR5: No Routine FNA (< 0.5 cm)")))))))` ### Activated-Sludge SRT (MCRT), F/M Ratio & WAS Flow Formula - **URL**: https://sheets.arte-soft.com/en/learn/activated-sludge-mean-cell-residence-time-srt-waste-was-and-fm-ratio/ - **Summary**: Calculate Aeration Bioreactor Biomass Inventory (kg MLVSS), Food-to-Microorganism F/M Ratio (d^-1), Required Daily Waste Activated Sludge Mass (kg/d), and WAS Pump Flow (m³/d). *Table — Deduct effluent VSS lost over the clarifier weir before setting your daily WAS wasting pump!:* | SRT & WAS Control KPI (20,000 m³/d, 240 BOD, 6,000 m³ @ 2,500 MLVSS, SRT = 10 d) | Formula | Verified Output | | --- | --- | --- | | Aeration Biomass Inventory (kg) | Aeration_Vol_m3 * MLVSS_mg_L / 1000 | 15,000.00 kg | | Food-to-Microorganism F/M (d^-1) | (Q_m3_d * BOD_mg_L) / (Vol_m3 * MLVSS_mg_L) | 0.32 d^-1 | | Intentional WAS Mass Wasted (kg/d) | (Biomass_kg / SRT_d) - (Q_m3_d * 10 / 1000) | 1,300.00 kg/d (800.00 @ 15 d SRT) | | Required WAS Pump Flow (m³/d) | WAS_Mass_kg_d / (WAS_VSS_mg_L / 1000) | 200.00 m³/d (123.08 @ 15 d SRT) | - **Formula (SRT-Controlled Daily WAS Pump Flow Formula)**: `=LET(q_in, B2, bd_i, B3, vl_a, B4, ml_v, B5, sr_t, B6, xr_v, B7, IF(OR(q_in <= 0, bd_i <= 0, vl_a <= 0, ml_v <= 100, sr_t < 2, sr_t > 40, xr_v <= ml_v), "Invalid SRT Control Input", LET(ms_b, vl_a * ml_v / 1000, ef_l, q_in * 10 / 1000, ws_m, MAX(0, ms_b / sr_t - ef_l), ROUND(ws_m / (xr_v / 1000), 2))))` - **Formula (Winter Nitrification Longer-SRT Check (Set Target SRT = 15.0 Days))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * B3) / (B4 * B5), 2))` ### Active Chilled Beam Induction Ratio & Cooling Formula - **URL**: https://sheets.arte-soft.com/en/learn/active-chilled-beam-induction-ratio-primary-air-and-sensible-cooling-formula/ - **Summary**: Calculate Induced Room Secondary Airflow Q_sec (L/s), Primary DOAS Ventilation Sensible Cooling (W), Secondary Hydronic Coil Sensible Cooling (W), and Total Chilled-Beam Sensible Capacity (W). *Table — A tiny 28 L/s primary DOAS jet entrains 4x–5x room air across the chilled-beam coil—decoupling ventilation from zone sensible load!:* | Active Chilled Beam KPI (Qpri=28 L/s @ 14°C, IR=4.2, Troom=24.5°C, Tcoil=17.5°C) | Formula | Verified Output | | --- | --- | --- | | Induced Secondary Airflow (L/s) | Primary_Air_L_s * Induction_Ratio_IR | 117.6 L/s (154.0 L/s @ high-nozzle IR=5.5) | | Primary DOAS Sensible Cooling (W) | 1.20 * 1.006 * Qpri_L_s * (Troom - Tpri) | 354.9 W | | Hydronic Coil Sensible Cooling (W) | 1.20 * 1.006 * Qsec_L_s * (Troom - Tcoil) | 993.8 W (1,301.4 W @ IR = 5.5) | | Total Beam Sensible Cooling (W) | Primary_Cooling_W + Hydronic_Coil_W | 1,348.7 W (1,656.3 W @ IR = 5.5) | - **Formula (Nozzle Induction Entrainment & Dual-Stream Chilled-Beam Cooling Formula)**: `=LET(qp_l, B2, ir_n, B3, tr_c, B4, tp_c, B5, ts_c, B6, qs_l, qp_l * ir_n, wp_w, 1.2 * 1.006 * qp_l * (tr_c - tp_c), ws_w, 1.2 * 1.006 * qs_l * (tr_c - ts_c), IF(OR(qp_l <= 0, ir_n < 1.5, ir_n > 8, tp_c >= tr_c, ts_c < 12, ts_c >= tr_c), "Invalid Chilled Beam Input", ROUND(wp_w + ws_w, 1)))` - **Formula (High-Induction Nozzle Plate Swap Check (Set Induction Ratio IR B3 = 5.50))**: `=IF(ISTEXT(E5), E5, ROUND(1.2 * 1.006 * (B2 * B3) * (B4 - B6), 1))` ### Actuarial Commutation Dx, Nx, Mx & Life Premium Formula - **URL**: https://sheets.arte-soft.com/en/learn/actuarial-commutation-functions-dx-nx-mx-and-whole-life-premium-formula/ - **Summary**: Calculate Life Annuity-Due a_ddot_x = N_x / D_x, Death-Benefit Commutation M_x = D_x - (i / (1 + i)) * N_x, Whole-Life Net Single Premium Face * (M_x / D_x), and Net Level Annual Premium Face * (M_x / N_x). *Table — Connect life annuities and whole-life insurance instantly via M_x = D_x - d * N_x!:* | Actuarial Commutation Metric (i=5%, Dx=1,000, Nx=14,700, Face=$100,000) | Formula | Verified Output | | --- | --- | --- | | Life Annuity-Due Factor a_ddot_x | N_x / D_x | 14.7000 (10.5000 @ Nx=10,500) | | Death Commutation Function M_x | D_x - (i / (1 + i)) * N_x | 300.00 (500.00 @ Nx=10,500) | | Whole-Life Net Single Premium | Face * (M_x / D_x) | $30,000.00 ($50,000 @ Nx=10,500) | | Net Level Annual Premium ($/yr) | Face * (M_x / N_x) | $2,040.82/yr ($4,761.90 @ Nx=10,500) | - **Formula (Actuarial Commutation Net Level Annual Premium Formula)**: `=LET(rt_i, B2, d_x, B3, n_x, B4, fc_b, B5, IF(OR(rt_i <= 0, d_x <= 0, n_x < d_x, fc_b <= 0), "Invalid Commutation Table", LET(ds_d, rt_i / (1 + rt_i), m_x, d_x - ds_d * n_x, IF(m_x <= 0, "Invalid Commutation Table", ROUND(fc_b * (m_x / n_x), 2)))))` - **Formula (Older Issue-Age Mortality Check (Set N_x = 10,500))**: `=IF(ISTEXT(E5), E5, ROUND(B5 * (E3 / B3), 2))` ### Actuarial Pure Premium (Frequency x Severity) & Credibility Factor Z - **URL**: https://sheets.arte-soft.com/en/learn/actuarial-pure-premium-frequency-severity-and-credibility/ - **Summary**: Explore observed loss cost, a simplified variable-load calculation and a separate limited-fluctuation claim-frequency credibility illustration. *Table — Separate observed loss cost from frequency credibility:* | Actuarial Ratemaking Metric | Formula | 20,000 Car-Yrs, 800 Claims, $4.8M Loss | Alternative count: 1,200; other inputs unchanged | | --- | --- | --- | --- | | Claim Frequency & Severity | (B3 / B2) & (B4 / B3) | 4.00% freq x $6,000 severity | 6.00% at 1,200 claims | | Pure Premium (Loss Cost) | B4 / B2 | $240.00 per car-year | $240.00 | | Gross Indicated Rate (25% Load) | (B4 / B2) / (1 - B5) | $320.00 simplified gross-up | $320.00 | | Classical Credibility Factor Z | MIN(1, SQRT(B3 / B6)) | SQRT(800/1082) = 85.99% (0.8599) | 100.00% (1.0000 Capped!) | - **Formula (Illustrative gross-up of observed loss cost)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B5<0,B5>=1,B6<=0,AND(B3=0,B4<>0)),"Invalid inputs",ROUND((B4 / B2) / (1 - B5), 2)))` - **Formula (Illustrative frequency credibility weight)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B5<0,B5>=1,B6<=0,AND(B3=0,B4<>0)),"Invalid inputs",MIN(1, ROUND(SQRT(B3 / B6), 4))))` - **Formula (Observed losses per exposure)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B5<0,B5>=1,B6<=0,AND(B3=0,B4<>0)),"Invalid inputs",ROUND(B4 / B2, 2)))` - **Formula (Observed claim frequency)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B5<0,B5>=1,B6<=0,AND(B3=0,B4<>0)),"Invalid inputs",B3/B2))` - **Formula (Observed average severity)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B5<0,B5>=1,B6<=0,AND(B3=0,B4<>0)),"Invalid inputs",IF(B3=0,"N/A",B4/B3)))` - **Formula (Full-precision credibility weight)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B5<0,B5>=1,B6<=0,AND(B3=0,B4<>0)),"Invalid inputs",MIN(1,SQRT(B3/B6))))` ### Viewable vCPM, Publisher eCPM & Fill Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/ad-tech-viewable-vcpm-publisher-ecpm-and-ad-pod-fill-rate/ - **Summary**: Calculate programmatic Ad-Request Fill Rate, MRC Advertiser Viewable CPM (vCPM), Publisher Net Served eCPM, and Ad-Request Yield (rCPM) to optimize price floors without killing total revenue. *Table — Avoid the programmatic price-floor trap: high served eCPM can hide collapsing request yield!:* | Programmatic Yield Metric (1.25M Req, 1.0M Served, 62.5% View, $4.5k Gross, 20% Fee) | Formula | Verified Output | | --- | --- | --- | | Ad-Request Fill Rate | Served_Impressions / Ad_Requests | 0.8000 (80.00%) | | Advertiser MRC Viewable CPM (vCPM) | (Gross_Spend / (Served * View_Rate)) * 1000 | $7.20 / M viewable | | Publisher Net Served eCPM | (Gross_Spend * (1 - SSP_Fee) / Served) * 1000 | $3.60 / M served | | Publisher Net Request Yield (rCPM) | Served_eCPM * Fill_Rate | $2.88 / M requests | - **Formula (Advertiser MRC Viewable CPM (vCPM) Formula)**: `=LET(rq_ad, B2, im_sv, B3, vw_rt, B4, sp_gr, B5, fe_ss, B6, IF(OR(rq_ad <= 0, im_sv <= 0, im_sv > rq_ad, vw_rt <= 0, vw_rt > 1, sp_gr < 0, fe_ss < 0, fe_ss >= 1), "Invalid Ad-Server Input", ROUND((sp_gr / (im_sv * vw_rt)) * 1000, 2)))` - **Formula (Publisher Net Served eCPM vs Ad-Request Yield (rCPM) Formula)**: `=IF(ISTEXT(E3), E3, ROUND((B5 * (1 - B6) / B2) * 1000, 2))` ### Adams-Yellen Pure vs Mixed Bundling Profit Formula - **URL**: https://sheets.arte-soft.com/en/learn/adams-yellen-pure-vs-mixed-product-bundling-reservation-price-profit/ - **Summary**: Compare Separate Component Pricing, Pure Bundling, and Mixed Bundling profits across negatively correlated customer segments and verify Adams & Yellen’s Sub-Cost Exclusion Theorem. *Table — Understand why negatively correlated tastes make software suites profitable—and when Mixed beats Pure Bundling!:* | Adams-Yellen Pricing Regime (N=100/seg, r=(90,15) & (60,60), c=$10 vs c=$25) | Formula | Profit @ c=$10 (vs c=$25) | | --- | --- | --- | | Optimal Separate Component Profit | 2 * MAX(N*(rH-c), 2N*(rM-c), 3N*(rL-c)) | $20,000 ($14,000 @ c=$25) | | Pure Bundling Profit (@ P_B = rH+rL) | MAX(3N*(rH+rL - 2c), N*(2*rM - 2c)) | $25,500 ($16,500 @ c=$25) | | Mixed Bundling Profit (@ rH & 2*rM) | 2N*(rH - c) + N*(2*rM - 2c) | $26,000 ($20,000 @ c=$25) | | Mixed vs Pure Bundling Gain ($) | Profit_Mixed - Profit_Pure | +$500 (+$3,500 @ c=$25) | - **Formula (Mixed Bundling Incentive-Compatible Profit Formula)**: `=LET(n_sg, B2, c_un, B3, r_hi, B4, r_lo, B5, r_md, B6, IF(OR(n_sg <= 0, c_un < 0, r_lo < 0, r_md <= r_lo, r_hi <= r_md, 2 * r_md <= r_hi + r_lo), "Invalid Bundling Matrix", ROUND(2 * n_sg * MAX(0, r_hi - c_un) + n_sg * MAX(0, 2 * r_md - 2 * c_un), 2)))` - **Formula (Mixed-Over-Pure Sub-Cost Exclusion Gain Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - E3, 2))` ### ADC Effective Number of Bits (ENOB), SINAD & Ideal SNR (6.02N + 1.76) - **URL**: https://sheets.arte-soft.com/en/learn/adc-enob-effective-number-of-bits-sinad-and-ideal-snr/ - **Summary**: Compare a rounded ideal full-scale sine-wave SNR formula with SINAD-derived ENOB, and calculate nominal LSB size from the full input-voltage span. - **Formula (Convert SINAD to an equivalent bit count)**: `=IF(NOT(ISNUMBER(B3)),"Enter numeric SINAD",(B3-1.76)/6.02)` - **Formula (Calculate the ideal reference SNR)**: `=IF(NOT(ISNUMBER(B2)),"Enter numeric bit count",IF(OR(B2<1,B2>32,B2<>INT(B2)),"Use integer bits from 1 to 32",6.02*B2+1.76))` - **Formula (Calculate nominal LSB size from the entire input span)**: `=IF(COUNT(B2,B4)<>2,"Enter numeric bits and span",IF(OR(B2<1,B2>32,B2<>INT(B2)),"Use integer bits from 1 to 32",IF(B4<=0,"Span must be positive",1000*B4/2^B2)))` ### Add Decimal Minutes or Decimal Hours to a Clock Time (Midnight-Safe MOD) - **URL**: https://sheets.arte-soft.com/en/learn/add-decimal-minutes-or-hours-to-clock-time-mod/ - **Summary**: Add or subtract decimal minutes (C2 / 1440) or decimal hours (C2 / 24) to any 24-hour clock time—wrapping cleanly across midnight without negative-time #### errors via MOD(..., 1). *Table — Convert decimal minutes or hours into fractional days before adding to clock times!:* | Start Clock Time (B2) | Offset to Add | Day-Fraction Formula | Wrapped 24h Result | | --- | --- | --- | --- | | 23:30 (Night Shift) | +75 decimal minutes | MOD(B2 + (75 / 1440), 1) | 00:45 (0.75 decimal hr) | | 08:15 (Morning Dispatch) | +2.5 decimal hours (150 min) | MOD(B2 + (2.5 / 24), 1) | 10:45 (10.75 decimal hr) | | 00:15 (Rollback Check) | -30 decimal minutes | MOD(B2 + (-30 / 1440), 1) | 23:45 (Wraps backward!) | - **Formula (Add Decimal Minutes to Clock Time & Format as 24-Hour HH:MM)**: `=RIGHT("00" & HOUR(MOD(B2 + (C2 / 1440), 1)), 2) & ":" & RIGHT("00" & MINUTE(MOD(B2 + (C2 / 1440), 1)), 2)` - **Formula (Add Decimal Hours to Clock Time (Returned as Decimal Hour of Day 0–24))**: `=ROUND(MOD(B3 + (D3 / 24), 1) * 24, 2)` ### Add leading zeros to numbers: pad ZIP codes and IDs to fixed length - **URL**: https://sheets.arte-soft.com/en/learn/add-leading-zeros-to-numbers/ - **Summary**: Pad numeric IDs with leading zeros to a target character width using REPT and MAX(0, ...) so longer codes are never truncated. *Table — Why REPT + MAX(0, ...) is safer than RIGHT("00000" & A2, 5):* | RawId (A) | TargetWidth (B) | RIGHT Shortcut | Safe REPT + MAX | | --- | --- | --- | --- | | 42 | 5 | 00042 | 00042 | | 7 | 5 | 00007 | 00007 | | 123456 | 5 | 23456 (truncated!) | 123456 | - **Formula (Truncation-safe zero-padding formula)**: `=REPT("0", MAX(0, B2 - LEN(A2))) & A2` - **Formula (Compare overflow behavior on 6-digit inputs)**: `=RIGHT("00000" & A4, 5)` ### Add Line Breaks in a Formula with CHAR(10) & TEXTJOIN (Multi-Line Address Labels) - **URL**: https://sheets.arte-soft.com/en/learn/add-line-breaks-in-formula-char-10-textjoin/ - **Summary**: Insert multi-line carriage breaks inside spreadsheet formulas using CHAR(10) and TEXTJOIN(CHAR(10), TRUE, ...) so blank apartment or suite rows collapse automatically without empty gap lines. *Table — Avoid ugly double blank lines when Suite or Apt Line 2 is empty!:* | Recipient Field | Example A (With Suite) | Example B (Blank Suite) | TEXTJOIN(CHAR(10), TRUE, ...) Behavior | | --- | --- | --- | --- | | Recipient Name (B2) | Elena Rostova | Elena Rostova | Line 1 | | Street Address (B3) | 742 Evergreen Terrace | 742 Evergreen Terrace | Line 2 | | Suite / Apt (B4) | Suite 400 | (Blank) | Included in A; skipped cleanly in B! | | City, State ZIP (B5) | Seattle, WA 98101 | Seattle, WA 98101 | Line 4 in A; shifts up to Line 3 in B! | - **Formula (Multi-Line Address Block Skipping Blank Lines Automatically)**: `=IF(COUNTA(B2:B5) = 0, "Empty Address", TEXTJOIN(CHAR(10), TRUE, B2:B5))` - **Formula (Count Rendered Non-Empty Lines in the Output Label)**: `=IF(COUNTA(B2:B5) = 0, 0, LEN(TEXTJOIN(CHAR(10), TRUE, B2:B5)) - LEN(SUBSTITUTE(TEXTJOIN(CHAR(10), TRUE, B2:B5), CHAR(10), "")) + 1)` ### Flat add-on interest versus annual cash-flow IRR: a four-payment example - **URL**: https://sheets.arte-soft.com/en/learn/add-on-interest-loan-payment-vs-true-apr-effect/ - **Summary**: Compare four end-of-year flat-interest payments with a declining-balance loan and calculate the annual IRR of the cash flows. *Table — Use the actual payment timing when comparing rates:* | Loan Comparison Metric | Formula / Cash Flows | Quoted "6%" 4-Yr $10k Loan | Borrower Impact | | --- | --- | --- | --- | | Add-On Annual Payment | B2 * (1 + B3 * B4) / B4 | 10,000 * 1.24 / 4 = $3,100.00 | $2,400 total interest | | True 6% Actuarial Payment | PMT(B3, B4, -B2) | $2,885.91 / yr | $1,543.65 total interest | | Annual cash-flow IRR | IRR(C2:C6) | About 9.20% | Annual intervals; no fees | - **Formula (Four-payment flat-interest installment)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<>4),"Invalid inputs",ROUND((B2 * (1 + B3 * B4)) / B4, 2)))` - **Formula (Annual IRR for the displayed four-payment schedule)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<>4),"Invalid inputs",ROUND(IRR(C2:C6), 4)))` ### Add OS-Specific Line Breaks: LF CHAR(10) vs. Windows/RFC-4180 CRLF Payloads - **URL**: https://sheets.arte-soft.com/en/learn/add-os-specific-line-breaks-lf-vs-crlf-payload-export-formula/ - **Summary**: Assemble multi-line shipping addresses, EDI blocks, and RFC-4180 CSV cells using configurable LF (CHAR(10)) or CRLF (CHAR(13)&CHAR(10)) delimiters while skipping empty address lines. *Table — When CHAR(10) alone is enough vs when downstream parsers require CRLF:* | Target Profile | Delimiter Expression | Bytes per Break | Line Count Formula | | --- | --- | --- | --- | | Unix / macOS / Web Cell (LF) | CHAR(10) | 1 char | LEN(txt) - LEN(SUBSTITUTE(txt, CHAR(10), "")) + 1 | | Windows / RFC-4180 / EDI (CRLF) | CHAR(13) & CHAR(10) | 2 chars | LEN(SUBSTITUTE(txt, CHAR(13), "")) - LEN(SUBSTITUTE(txt, CHAR(10), "")) + 1 | - **Formula (OS-Selectable Multi-Line Block with Blank-Line Suppression)**: `=TEXTJOIN(IF($F$2 = "CRLF", CHAR(13) & CHAR(10), CHAR(10)), TRUE, A2:D2)` - **Formula (OS-Agnostic Non-Empty Line Count Audit)**: `=IF(LEN(E2) = 0, 0, LEN(E2) - LEN(SUBSTITUTE(E2, CHAR(10), "")) + 1)` ### Add Workdays on a 6-Day (Mon–Sat) Custom Workweek (Skipping Sundays) - **URL**: https://sheets.arte-soft.com/en/learn/add-workdays-custom-6-day-workweek-skipping-sundays/ - **Summary**: Calculate exact delivery, construction, or retail SLA deadlines on a 6-day Monday–Saturday schedule (skipping Sundays only) using universal closed-form weekday arithmetic A2 + B2 + INT((MOD(WEEKDAY(A2, 2), 7) + B2 - 1) / 6). *Table — Schedule 6-day Mon–Sat delivery and construction SLAs accurately!:* | Start Date (B2) | Mon–Sat Workdays Added (C2) | Sundays Crossed | Completion Date | | --- | --- | --- | --- | | 2026-10-30 (Friday) | +5 workdays | 1 Sunday (Nov 1) | 2026-11-05 (Thursday) | | 2026-10-30 (Friday) | +1 workday | 0 Sundays (Saturday counts!) | 2026-10-31 (Saturday) | | 2026-11-01 (Sunday) | +6 workdays | Starts Mon Nov 2 -> Sat Nov 7 | 2026-11-07 (Saturday) | - **Formula (Add N >= 1 Mon–Sat Workdays (Skipping Sundays Only, ISO yyyy-mm-dd))**: `=IF(C2 < 0, "Use Non-Negative Workdays", IF(C2 = 0, TEXT(B2, "yyyy-mm-dd"), TEXT(B2 + C2 + INT((MOD(WEEKDAY(B2, 2), 7) + C2 - 1) / 6), "yyyy-mm-dd")))` - **Formula (Number of Sundays Crossed During the 6-Day SLA Window)**: `=IF(C2 <= 0, 0, INT((MOD(WEEKDAY(B2, 2), 7) + C2 - 1) / 6))` ### Add years to a date: why EDATE(date, years*12) beats DATE on Feb 29 leap days - **URL**: https://sheets.arte-soft.com/en/learn/add-years-to-date/ - **Summary**: Compare EDATE(start, N*12) against DATE(YEAR(start)+N, MONTH(start), DAY(start)) for contract renewals and expiration dates. *Table — What happens to a Feb 29 contract 1 year later?:* | StartDate (A) | YearsToAdd (B) | EDATE(A, B*12) | DATE(YEAR+B, M, D) | | --- | --- | --- | --- | | 2024-02-29 | 1 | 2025-02-28 (Feb clipped) | 2025-03-01 (Mar overflow) | | 2024-02-29 | 4 | 2028-02-29 (next leap yr) | 2028-02-29 | - **Formula (Add or subtract years with EDATE(A2, B2 * 12))**: `=MONTH(EDATE(A2, B2 * 12)) & "-" & DAY(EDATE(A2, B2 * 12))` - **Formula (Contrast DATE() March 1 overflow on non-leap years)**: `=MONTH(DATE(YEAR(A2) + B2, MONTH(A2), DAY(A2))) & "-" & DAY(DATE(YEAR(A2) + B2, MONTH(A2), DAY(A2)))` ### ADDRESS function: build A1 and sheet-qualified cell references from numbers - **URL**: https://sheets.arte-soft.com/en/learn/address-function-row-column-to-reference/ - **Summary**: Convert 1-based row and column numbers into absolute, relative, or sheet-prefixed cell reference strings using ADDRESS. *Table — Turn numeric coordinates into readable cell addresses:* | Row (A) | Column (B) | Sheet Name (C) | Formula | Result | | --- | --- | --- | --- | --- | | 5 | 3 | Bay East | =ADDRESS(A2, B2) | $C$5 | | 5 | 3 | Bay East | =ADDRESS(A2, B2, 4) | C5 | | 5 | 3 | Bay East | =ADDRESS(A2, B2, 2) | C$5 | | 5 | 3 | Bay East | =ADDRESS(A2, B2, 1, TRUE, C2) | 'Bay East'!$C$5 | - **Formula (Automatic quoting for sheet names with spaces)**: `=ADDRESS(A2, B2, 1, TRUE, C2)` - **Formula (Multi-letter columns and invalid coordinates)**: `=ADDRESS(A2, B2, 4)` ### Get the Address of the First and Last Cell in a Range (ADDRESS + ROWS + COLUMNS) - **URL**: https://sheets.arte-soft.com/en/learn/address-of-first-and-last-cell-in-range-formula/ - **Summary**: Compute the exact A1 coordinates of a range's top-left anchor, bottom-right corner, and full "$B$3:$D$6" span text for audit logs and dynamic range documentation. *Table — Why bottom-right row is ROW(rng) + ROWS(rng) - 1 (Fencepost Rule):* | Range Property | Coordinate Formula | Result on B3:D6 | | --- | --- | --- | | Top-left anchor (absolute) | ADDRESS(ROW(B3), COLUMN(B3)) | "$B$3" | | Bottom-right corner (absolute) | ADDRESS(ROW(B3)+ROWS(B3:D6)-1, COLUMN(B3)+COLUMNS(B3:D6)-1) | "$D$6" | | Relative A1 span string | ADDRESS(...,4) & ":" & ADDRESS(...,4) | "B3:D6" | | Total cell capacity | ROWS(B3:D6) * COLUMNS(B3:D6) | 12 | - **Formula (Bottom-Right Cell Address & Full Span Formula)**: `=ADDRESS(ROW(B3) + ROWS(B3:D6) - 1, COLUMN(B3) + COLUMNS(B3:D6) - 1)` ### Get address of first and last cell in a range (ADDRESS, ROW, ROWS, COLUMN & COLUMNS) - **URL**: https://sheets.arte-soft.com/en/learn/address-of-first-and-last-cell-in-range/ - **Summary**: Return the top-left C3, bottom-right E6, or full $C$3:$E$6 address text for a rectangular range. *Table — Calculate the corners of a rectangular range:* | Range Coordinate Target | Formula Pattern (rng = C3:E6) | abs_num Mode | Returned String / Value | | --- | --- | --- | --- | | Top-Left First Cell (Relative) | ADDRESS(MIN(ROW(rng)), MIN(COLUMN(rng)), 4) | 4 (Relative) | "C3" | | Bottom-Right Last Cell (Relative) | ADDRESS(MIN(ROW)+ROWS-1, MIN(COL)+COLS-1, 4) | 4 (Relative) | "E6" | | Full Absolute Range String | First(abs=1) & ":" & Last(abs=1) | 1 (Default $A$1) | "$C$3:$E$6" | | Bottom-Right Cell Value | INDIRECT(LastAddress) | Dereferenced E6 | 940 (or updated E6) | - **Formula (Address of FIRST (top-left) cell in a range)**: `=ADDRESS(MIN(ROW(C3:E6)), MIN(COLUMN(C3:E6)), 4)` - **Formula (Address of LAST (bottom-right) cell in a range)**: `=ADDRESS(MIN(ROW(C3:E6)) + ROWS(C3:E6) - 1, MIN(COLUMN(C3:E6)) + COLUMNS(C3:E6) - 1, 4)` ### Adjusted Present Value (APV): Unlevered Value, Tax Shield & Distress - **URL**: https://sheets.arte-soft.com/en/learn/adjusted-present-value-apv-unlevered-firm-and-tax-shield/ - **Summary**: Value leveraged buyouts (LBOs) and project-finance structures using Stewart Myers's Adjusted Present Value APV = V_Unlevered + PV(Interest_Tax_Shields) - PV(Financial_Distress). *Table — Value LBOs and paying-down debt schedules without circular WACC!:* | APV Valuation Component ($M) | Formula / Assumption | 5-Year Finite Debt Shield | Permanent Debt Shield (T*D) | | --- | --- | --- | --- | | Base Unlevered Value V_U | FCF discounted at r_u | $250.00M | $250.00M | | + PV(Interest Tax Shields) | D=$100M, rd=6%, Tax=25% | +$6.32M (-PV(6%, 5, $1.5M)) | +$25.00M (25% * $100M) | | - PV(Financial Distress) | 10% Prob * $30M Cost | -$3.00M -> APV = $253.32M | -$3.00M -> APV = $272.00M | - **Formula (Finite-Horizon APV with PV of Interest Tax Shields & Expected Distress ($M))**: `=IF(OR(B2 <= 0, B4 <= 0, B5 < 0, B5 >= 1, B6 <= 0), "Invalid Valuation Input", ROUND(B2 + (-PV(B4, B6, B3 * B4 * B5)) - (B7 * B8), 2))` - **Formula (Permanent Debt APV Benchmark (V_U + Tax * Debt - Expected Distress))**: `=ROUND(B2 + (B5 * B3) - (B7 * B8), 2)` ### ADO Index Calculator: Age, Dyspnoea & Airflow Obstruction 3-Year COPD Mortality Score - **URL**: https://sheets.arte-soft.com/en/learn/ado-index-age-dyspnea-airflow-obstruction-copd-risk-score/ - **Summary**: Calculate Milo Puhan et al.’s (2009, The Lancet) primary-care ADO Index (0–10 points) from Age decade, mMRC Dyspnoea (0–4), and Post-Bronchodilator FEV1 % Predicted — without requiring a 6-Minute Walk Test. *Table — Why primary-care clinics use the ADO Index when 6-Minute Walk corridors are unavailable!:* | ADO Component | 0 Points | 1 Point | 2 Points | 3 to 5 Points | | --- | --- | --- | --- | --- | | Age (Years, >= 40) | 40–49 yr | 50–59 yr | 60–69 yr | 70–79 (3), 80–89 (4), >=90 (5) | | mMRC Dyspnoea Scale (0–4) | Grade 0–1 | Grade 2 | Grade 3 | Grade 4 (3 pts) | | Post-BD FEV1 (% Predicted) | >= 65% | 36% to 64% | <= 35% | — | - **Formula (Total Puhan (2009) ADO Index Score (0 to 10 Points))**: `=IF(OR(B2 < 40, B2 > 120, B3 < 0, B3 > 4, INT(B3) <> B3, B4 <= 0, B4 > 150), "Invalid ADO Inputs (Age >= 40, mMRC 0–4, FEV1% > 0)", MIN(5, INT((B2 - 40) / 10)) + IF(B3 <= 1, 0, B3 - 1) + IF(B4 >= 65, 0, IF(B4 >= 36, 1, 2)))` - **Formula (Estimated 3-Year All-Cause Mortality Probability (%) from Calibrated ADO Logit)**: `=IF(OR(B2 < 40, B2 > 120, B3 < 0, B3 > 4, INT(B3) <> B3, B4 <= 0, B4 > 150), "Invalid ADO Inputs (Age >= 40, mMRC 0–4, FEV1% > 0)", ROUND(100 / (1 + EXP(-(-5.64 + 0.501 * (MIN(5, INT((B2 - 40) / 10)) + IF(B3 <= 1, 0, B3 - 1) + IF(B4 >= 65, 0, IF(B4 >= 36, 1, 2)))))), 2))` ### Adrogué-Madias Formula: Predicted Serum Sodium Change per Liter of IV Infusate - **URL**: https://sheets.arte-soft.com/en/learn/adrogue-madias-infusate-serum-sodium-change-hyponatremia/ - **Summary**: Calculate expected Δ[Na+] = ([Na+ + K+]_infusate - [Na+]_serum) / (TBW + 1) and required 3% hypertonic saline volume (mL) while guarding against osmotic demyelination. *Table — Why dividing by (TBW + 1) accounts for the 1 liter of infused water added to total body water!:* | IV Infusate (70 kg, TBW = 42 L, Serum Na = 116 mEq/L) | Δ[Na+] per 1 Liter Infused | Volume for +6 mEq/L Target | ODS Safety Check | | --- | --- | --- | --- | | 3% Hypertonic NaCl (513 mEq/L, K = 0) | +9.23 mEq/L per L | 650 mL | Never infuse full 1 L blind (> 8 mEq/L)! | | 0.9% Isotonic NaCl (154 mEq/L, K = 0) | +0.88 mEq/L per L | 6,790 mL (Check ADH/SIADH!) | Note: SIADH high urine Osm can paradoxically lower Na | | Target 24h Rise > 8 mEq/L or Invalid Weight | Safety Guard | "Exceeds Safe <= 8 mEq/L 24h ODS Cap" | Osmotic Demyelination Guard | - **Formula (Adrogué-Madias Expected Serum Sodium Change per 1 Liter Infused (mEq/L))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 90, B4 > 190, B5 <= 0, B6 < 0.35, B6 > 0.75), "Invalid Hyponatremia Inputs", ROUND((B2 + B3 - B4) / (B5 * B6 + 1), 2))` - **Formula (Infusate Volume (mL) for Safe 24-Hour Sodium Rise Target (<= 8 mEq/L Cap))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 90, B4 > 190, B5 <= 0, B6 < 0.35, B6 > 0.75), "Invalid Hyponatremia Inputs", IF(OR(B7 <= 0, B7 > 8), "Exceeds Safe <= 8 mEq/L 24h ODS Cap", IF(B2 + B3 <= B4, "Infusate Cannot Raise Serum Na", ROUND((B7 / ((B2 + B3 - B4) / (B5 * B6 + 1))) * 1000, 0))))` ### Agency MBS PSA Prepayment Ramp & Cashflow Formula - **URL**: https://sheets.arte-soft.com/en/learn/agency-mbs-psa-prepayment-ramp-cpr-smm-and-scheduled-principal-formula/ - **Summary**: Calculate SIFMA PSA Seasoned Conditional Prepayment Rate (CPR), Monthly Single Monthly Mortality SMM = 1 - (1 - CPR)^(1/12), Unscheduled Principal on Post-Amortization Balance, and Total Principal. *Table — Apply SMM to post-scheduled balance—and ramp 100% PSA linearly across months 1 to 30!:* | Agency MBS PSA Waterfall ($10.1M Pool, $100k Sched, Month 15, 100% PSA) | Formula | Verified Output | | --- | --- | --- | | PSA Seasoned Annualized CPR | (PSA / 100) * MIN(0.06, 0.002 * Age) | 0.0300 (0.0600 @ Month 40) | | Single Monthly Mortality SMM | ROUND(1 - (1 - CPR)^(1/12), 6) | 0.002535 (0.005143 @ 6.0% CPR) | | Unscheduled Prepayment ($) | (Beg_Bal - Sched_Prin) * SMM | $25,350.00 ($51,430 @ 200% PSA) | | Total Monthly Principal ($) | Scheduled_Prin + Prepayment | $125,350.00 | - **Formula (SIFMA PSA Ramp Annualized CPR & SMM Formula)**: `=LET(bg_b, B2, sc_p, B3, ag_m, B4, ps_a, B5, IF(OR(bg_b <= 0, sc_p < 0, sc_p >= bg_b, ag_m < 1, ps_a < 0), "Invalid PSA Speed", LET(cp_r, (ps_a / 100) * MIN(0.06, 0.002 * ag_m), IF(cp_r >= 1, "Invalid PSA Speed", ROUND(1 - ((1 - cp_r) ^ (1 / 12)), 6)))))` - **Formula (Seasoned Plateau (Age >= 30) vs 200% PSA Equivalence Check)**: `=IF(ISTEXT(E3), E3, ROUND((B2 - B3) * E3, 2))` ### Aghion-Bolton Contingent Control & Covenant Formula - **URL**: https://sheets.arte-soft.com/en/learn/aghion-bolton-incomplete-contracts-contingent-control-covenant/ - **Summary**: Model Philippe Aghion and Patrick Bolton’s (1992) incomplete-contract pecking order across entrepreneur control, debt-covenant state-contingent control, and investor control. *Table — Understand why debt covenants shift control to creditors only in bad states!:* | Governance Allocation Regime (K=140, p=0.70) | Max Pledgeable Cash | Net Social NPV | | --- | --- | --- | | Entrepreneur Control (Non-Voting Equity) | 131.00 (< 140 Unfundable) | Credit Rationed | | Investor Control (Voting Outside Equity) | 153.00 (>= 140 Fundable) | +13.00 (Good State Liquidated) | | Contingent Debt Covenant Control | 146.00 (>= 140 Fundable) | +34.00 (First-Best Achieved) | | High-Capital Squeeze (K = 150) | 146.00 (< 150 Covenant Short) | Must Cede Investor Control (+3.00) | - **Formula (Contingent-Control Pledgeable Cash Capacity Formula)**: `=LET(k_cp, B2, p_gd, B3, yg_c, B4, bg_p, B5, yg_l, B6, yb_c, B7, bb_p, B8, yb_l, B9, IF(OR(k_cp <= 0, p_gd <= 0, p_gd >= 1, bg_p < 0, bb_p < 0), "Invalid Control Input", ROUND(p_gd * yg_c + (1 - p_gd) * yb_l, 2)))` - **Formula (Optimal Aghion-Bolton Governance Regime & Net Social NPV Formula)**: `=IF(ISTEXT(E4), E4, IF(E4 >= B2, ROUND(B3 * (B4 + B5) + (1 - B3) * B9 - B2, 2), "Credit Rationed Under Covenant"))` ### AGMA Gear Pitting Contact Stress (sigma_c) and Elastic C_p Formula - **URL**: https://sheets.arte-soft.com/en/learn/agma-gear-tooth-hertzian-contact-pitting-stress-and-elastic-cp/ - **Summary**: Calculate AGMA elastic coefficient C_p and Hertzian gear-tooth surface pitting stress sigma_c = C_p * SQRT(W_t * K_all / (b * d_p * I_geom)) in Excel and Arte Sheets. *Table — Contrast SQRT(W_t) Hertzian surface pitting against linear Lewis tooth-root bending:* | Gear Material Pairing (W_t = 3,600 N) | AGMA Elastic Coefficient C_p | Contact Stress sigma_c (MPa) | | --- | --- | --- | | Steel Pinion + Steel Gear (207 GPa) | 190.2719 sqrt(MPa) | 1,141.6311 MPa | | Steel Pinion + Cast-Iron Gear (100 GPa) | 151.0282 sqrt(MPa) | 906.1692 MPa | | Steel Pair at 4x Load (W_t = 14,400 N) | 190.2719 sqrt(MPa) | 2,283.2622 MPa (Exactly 2x!) | - **Formula (AGMA Elastic Coefficient C_p (sqrt(MPa)) Formula)**: `=LET(e_1, B2, e_2, B3, nu_1, B4, nu_2, B5, IF(OR(e_1 <= 0, e_2 <= 0, nu_1 < 0, nu_1 >= 0.5, nu_2 < 0, nu_2 >= 0.5), "Invalid AGMA Pitting Input", ROUND(SQRT(1 / (PI() * ((1 - nu_1^2) / e_1 + (1 - nu_2^2) / e_2))), 4)))` - **Formula (AGMA Hertzian Pitting Contact Stress sigma_c (MPa) Formula)**: `=LET(e_1, B2, e_2, B3, nu_1, B4, nu_2, B5, w_t, B6, k_all, B7, b_fc, B8, d_pn, B9, i_gm, B10, IF(OR(e_1 <= 0, e_2 <= 0, nu_1 < 0, nu_1 >= 0.5, nu_2 < 0, nu_2 >= 0.5, w_t < 0, k_all < 1, b_fc <= 0, d_pn <= 0, i_gm <= 0), "Invalid AGMA Pitting Input", LET(cp_el, SQRT(1 / (PI() * ((1 - nu_1^2) / e_1 + (1 - nu_2^2) / e_2))), ROUND(cp_el * SQRT((w_t * k_all) / (b_fc * d_pn * i_gm)), 4))))` ### Agresti-Caffo "+1 Success, +1 Failure per Arm" Risk Difference 95% CI Formula - **URL**: https://sheets.arte-soft.com/en/learn/agresti-caffo-add-two-successes-and-failures-risk-difference-ci/ - **Summary**: Replace degenerate small-sample Wald 2-proportion confidence intervals with Alan Agresti & Brian Caffo’s (2000) adjusted interval: add 1 pseudo-success and 1 pseudo-failure to EACH arm (p_tilde = (x + 1) / (n + 2)) before computing Wald bounds! *Table — Why Wald’s 2-proportion CI collapses completely at zero events—and how Agresti & Caffo’s "+4 total" adjustment fixes coverage!:* | Pilot Trial Data (Arm 1: 6/20 = 30.0% vs Arm 2: 0/20 = 0.0%) | Adjusted Difference p_1,tilde - p_2,tilde | 95% Agresti-Caffo Bounds [Lower, Upper] | | --- | --- | --- | | 6/20 vs 0/20 (Zero-Event Control Arm!) | 7/22 - 1/22 = +0.2727 (+27.27%) | [+0.0609, +0.4846] (Excludes 0 Cleanly!) | | 3/20 vs 1/20 (Sparse Events) | 4/22 - 2/22 = +0.0909 (+9.09%) | [-0.1095, +0.2913] (Includes 0 — Non-Significant) | - **Formula (Agresti-Caffo (2000) Lower 95% Confidence Bound on Risk Difference (p_1 - p_2))**: `=IF(OR(B3 <= 0, B5 <= 0, B2 < 0, B2 > B3, B4 < 0, B4 > B5), "Invalid 2-Sample Counts", ROUND(((B2 + 1) / (B3 + 2) - (B4 + 1) / (B5 + 2)) - 1.959964 * SQRT(((B2 + 1) / (B3 + 2)) * (1 - (B2 + 1) / (B3 + 2)) / (B3 + 2) + ((B4 + 1) / (B5 + 2)) * (1 - (B4 + 1) / (B5 + 2)) / (B5 + 2)), 4))` - **Formula (Agresti-Caffo (2000) Upper 95% Confidence Bound on Risk Difference (p_1 - p_2))**: `=IF(OR(B3 <= 0, B5 <= 0, B2 < 0, B2 > B3, B4 < 0, B4 > B5), "Invalid 2-Sample Counts", ROUND(((B2 + 1) / (B3 + 2) - (B4 + 1) / (B5 + 2)) + 1.959964 * SQRT(((B2 + 1) / (B3 + 2)) * (1 - (B2 + 1) / (B3 + 2)) / (B3 + 2) + ((B4 + 1) / (B5 + 2)) * (1 - (B4 + 1) / (B5 + 2)) / (B5 + 2)), 4))` ### Agresti-Coull Binomial Confidence Interval ("Add 2 Successes & 2 Failures") - **URL**: https://sheets.arte-soft.com/en/learn/agresti-coull-plus-four-binomial-proportion-confidence-interval/ - **Summary**: Replace erratic small-sample Wald intervals with Alan Agresti and Brent Coull’s (1998) z²-adjusted proportion center p̃ = (x + 0.5*z²) / (n + z²) and 95% confidence bounds. *Table — Why textbook p̂ ± 1.96*SQRT(p̂*(1-p̂)/n) gives a nonsensical [0, 0] interval when x = 0!:* | Pilot Binomial Sample (n = 20, z = 1.96) | Shifted Center p̃ | Agresti-Coull Lower 95% | Agresti-Coull Upper 95% | | --- | --- | --- | --- | | x = 2 Responders / n = 20 (Raw 10%) | 0.1645 | 0.0157 (Positive!) | 0.3132 | | x = 0 Adverse Events / n = 20 (Raw 0%) | 0.0806 | 0.0000 (Clamped) | 0.1898 (Rule-of-3 Check) | | Invalid x < 0, x > n, or n <= 0 | Error Guard | Error Guard | "Invalid Binomial Sample" | - **Formula (Agresti-Coull Upper Confidence Limit (Clamped to [0, 1]))**: `=IF(OR(B2 < 0, B3 <= 0, B2 > B3, B4 <= 0), "Invalid Binomial Sample", ROUND(MIN(1, ((B2 + 0.5 * (B4 ^ 2)) / (B3 + (B4 ^ 2))) + B4 * SQRT((((B2 + 0.5 * (B4 ^ 2)) / (B3 + (B4 ^ 2))) * (1 - ((B2 + 0.5 * (B4 ^ 2)) / (B3 + (B4 ^ 2))))) / (B3 + (B4 ^ 2)))), 4))` - **Formula (Agresti-Coull Lower Confidence Limit & Adjusted Center p̃)**: `=IF(OR(B2 < 0, B3 <= 0, B2 > B3, B4 <= 0), "Invalid Binomial Sample", ROUND(MAX(0, ((B2 + 0.5 * (B4 ^ 2)) / (B3 + (B4 ^ 2))) - B4 * SQRT((((B2 + 0.5 * (B4 ^ 2)) / (B3 + (B4 ^ 2))) * (1 - ((B2 + 0.5 * (B4 ^ 2)) / (B3 + (B4 ^ 2))))) / (B3 + (B4 ^ 2)))), 4))` ### AGV & AMR Warehouse Fleet Sizing & Cycle Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/agv-and-amr-warehouse-fleet-sizing-round-trip-cycle-time-and-traffic-factor/ - **Summary**: Calculate Ideal Round-Trip Mission Time Including Deadhead & Docking (min), Net Effective Trips Per Robot Hour, Fractional AGV Requirement, and Rounded Integer Fleet Count. *Table — Sizing an AMR pallet fleet from loaded travel alone misses empty deadheading, LiFePO4 opportunity charging, and aisle intersection blocking!:* | AGV / AMR Fleet Sizing KPI (84 plts/h, 210m Load + 150m Empty @ 1.5 m/s, 40s Dock) | Formula | Verified Output | | --- | --- | --- | | Ideal Round-Trip Mission (min) | (((d_Load + d_Empty) / Speed) + t_Dock) / 60 | 4.67 min | | Net Trips Per Robot-Hour | (60 / Mission_min) * Net_Utilization | 9.64 trips/h (7.46 @ congested 0.58 util) | | Fractional Fleet Requirement | Pallets_Per_Hour / Net_Trips_Per_Robot_Hr | 8.71 robots (11.26 @ congested 0.58 util) | | Required Integer AGV Fleet | ROUNDUP(Fractional_AGV_Count, 0) | 9 AMRs (12 AMRs @ aisle congestion!) | - **Formula (Deadhead + Handshake AGV Cycle Time & Integer Fleet Rounding Formula)**: `=LET(dm_p, B2, dl_m, B3, de_m, B4, vs_m, B5, td_s, B6, ut_f, B7, IF(OR(dm_p <= 0, dl_m <= 0, de_m < 0, vs_m <= 0.1, vs_m > 5, td_s < 0, ut_f <= 0.2, ut_f > 1), "Invalid AGV Input", LET(rt_m, (((dl_m + de_m) / vs_m) + td_s) / 60, tp_h, (60 / rt_m) * ut_f, ROUNDUP(dm_p / tp_h, 0))))` - **Formula (Bi-Directional Aisle Congestion & Charging Bottleneck Check (Set Net Utilization B7 = 0.58))**: `=IF(ISTEXT(E5), E5, LET(rt_m, (((B3 + B4) / B5) + B6) / 60, tp_h, (60 / rt_m) * B7, ROUND(B2 / tp_h, 2)))` ### AI Cell Formatting, Number Formats & Data-Validation Guardrails in Financial Schedules - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-cell-formatting-number-formats-and-validation-rules/ - **Summary**: Apply clean currency, percent, integer, alignment, and #RRGGBB highlight styles—or scale raw dollars into $M display columns—understanding how Arte Sheets validates cell styles, data-validation rules, and suggest-mode permissions. *Table — Scaling millions cleanly ($M = ROUND(Raw / 1000000, 2)) and understanding validated AI style patches!:* | P&L Line Item (Raw USD) | Scaled Millions ($M) | Gross Margin % | Validated AI Style Property | | --- | --- | --- | --- | | Subscription Revenue ($14,850,000, COGS $2,970,000) | $14.85M | 80.00% | numFmt: "currency" / "percent", bold: true | | Professional Services ($3,200,000, COGS $2,240,000) | $3.20M | 30.00% | align: "right", bg: "#f8fafc" | | Zero Revenue Line ($0) | $0.00M | "Zero Revenue" | Guarded before division | - **Formula (Scaled Revenue in Millions ($M) = ROUND(Raw_USD / 1000000, 2))**: `=ROUND(B2 / 1000000, 2)` - **Formula (Zero-Safe Gross Margin Percentage = IF(B2 <= 0, "Zero Revenue", ROUND((B2 - C2) / B2 * 100, 2)))**: `=IF(B2 <= 0, "Zero Revenue", ROUND((B2 - C2) / B2 * 100, 2))` ### AI Assistant Chart Creation: 7 Supported Chart Types, Explicit Ranges & Data Prep - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-chart-creation-supported-types-and-range-limits/ - **Summary**: Use Arte Sheets’ AI Assistant via text or voice to create column, bar, line, area, pie, doughnut, and scatter charts on explicit A1:C10 ranges (<= 10,000 cells, <= 50 charts/sheet, title <= 120 chars), and prepare clean summary tables for instant charting. *Table — Exact chart-creation rules enforced by js/assistant/commands.js in Arte Sheets:* | AI create_chart Parameter | Validated Rule in js/assistant/commands.js | Practical Charting Tip | | --- | --- | --- | | chartType | column, bar, line, area, pie, doughnut, scatter | Use column/bar for categories, line/area for trends, pie/doughnut for <= 6 shares | | range | Explicit A1:C12 rectangle (<= 10,000 cells total) | Place category labels in left column and numeric series in adjacent columns | | title & Sheet Cap | title <= 120 chars; < 50 charts on unprotected sheet | Requires owner/contributor edit mode (blocked for viewer/suggester/suggest mode) | - **Formula (Chart Range Cell-Count Guardrail Check (Rows * Columns <= 10,000 Cells))**: `=IF(OR(B2 < 2, B3 < 2, B4 < 0), "Invalid Dimensions", IF(B4 >= 50, "Sheet Chart Limit Reached (50 Max)", IF(B2 * B3 > 10000, "Exceeds 10,000-Cell AI Chart Range Limit", "Ready for AI create_chart (" & (B2 * B3) & " Cells)")))` - **Formula (Pre-Aggregated Channel Revenue Share (%) for Pie / Doughnut / Column Charting)**: `=IF(SUM($E$2:$E$4) <= 0, "Zero Series Total", ROUND(100 * E2 / SUM($E$2:$E$4), 2))` ### AI Assistant File Attachments (.xlsx, .csv, .tsv, .txt): Safe Excerpt Import & Reconciliation - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-csv-xlsx-file-attachments-reconciliation-formulas/ - **Summary**: Attach vendor .xlsx, .csv, .tsv, or .txt statements (up to 2 MB) in Arte Sheets’ AI assistant to populate clean comparison ranges and reconcile invoice variances with COUNTIF and XLOOKUP. *Table — How isolated Web Worker attachment parsing lets you stage vendor statements without macro or formula injection!:* | Ledger Invoice (A2:B4) | Staged Attachment Excerpt (D2:E4) | COUNTIF + XLOOKUP Delta | Audit Action | | --- | --- | --- | --- | | INV-201 ($1,450.50) | INV-201 ($1,450.50) | $0.00 | Matched to penny | | INV-202 ($2,890.00) | INV-202 ($2,840.00) | +$50.00 Discrepancy | Post comment / @mention AP owner | | INV-203 ($920.75) | Not in D2:D4 | "Missing in Attached Statement" | Request updated vendor CSV/XLSX | - **Formula (Invoice-Level Ledger vs. Staged Attachment Variance = IF(COUNTIF(D2:D4, A3) = 0, ..., ROUND(B3 - XLOOKUP(...), 2)))**: `=IF(COUNTIF(D2:D4, A3) = 0, "Missing in Attached Statement", ROUND(B3 - XLOOKUP(A3, D2:D4, E2:E4), 2))` - **Formula (Missing-Invoice Detection Check on Unmatched Ledger Row A4)**: `=IF(COUNTIF(D2:D4, A4) = 0, "Missing in Attached Statement", ROUND(B4 - XLOOKUP(A4, D2:D4, E2:E4), 2))` ### Arte Sheets AI Assistant File Attachments: Safe .xlsx/.csv/.tsv/.txt Excerpts & Size Limits - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-file-attachments-xlsx-csv-tsv-worker-excerpt-limits/ - **Summary**: Attach .xlsx, .csv, .tsv, or .txt reference files (up to 2 MB) to the Arte Sheets AI Assistant: understand isolated Web Worker parsing, zero macro/formula execution, and excerpt row/byte caps. *Table — How isolated Web Worker parsing inspects reference files safely without executing macros or formulas!:* | Attachment Guardrail in Arte Sheets | Enforced Limit | Practical Workflow Tip | | --- | --- | --- | | Supported File Types & Raw Upload Size | .xlsx, .csv, .tsv, .txt <= 2 MB (2,097,152 bytes) | Export narrow summary extracts rather than multi-megabyte raw dumps | | .xlsx Archive & Sheet Window | <= 500 ZIP entries, <= 20 MB uncompressed, first 3 sheets | Place reference tables on Sheets 1–3 in columns A:L (<= 12 cols) | | .xlsx Row & Line Excerpt Window | <= 100 rows/sheet, <= 150 lines total, <= 300 chars/cell | Keep lookup headers and key rows within rows 1–100 | | Prompt Excerpt & Total Context Payload | <= 12,000 chars worker preview; <= 7,000 UTF-8 bytes sent (<= 23 KB total) | Expand the attached preview card in the dialog to inspect exact extracted text | - **Formula (Attachment Upload Eligibility & .xlsx Row-Coverage Audit Formula)**: `=IF(OR(AND(LOWER(TRIM(B2 & "")) <> "xlsx", LOWER(TRIM(B2 & "")) <> "csv", LOWER(TRIM(B2 & "")) <> "tsv", LOWER(TRIM(B2 & "")) <> "txt"), B3 <= 0, B3 > 2097152), "Rejected: Must Be .xlsx/.csv/.tsv/.txt <= 2 MB", IF(AND(LOWER(TRIM(B2 & "")) = "xlsx", OR(B4 > 3, B5 > 100, B6 > 12)), "Accepted as Partial Excerpt (First 3 Sheets, 100x12 Cells, <=7 KB Sent)", "Accepted: Full Table Fits Within Worker Excerpt Window"))` - **Formula (Percentage of .xlsx Sheet Rows Captured in the First-Sheet 100-Row Excerpt)**: `=IF(B5 <= 0, "Invalid Row Count", ROUND(100 * MIN(B5, 100) / B5, 1))` ### Arte Sheets AI Assistant Formula Guardrails: Bounded Ranges, Spill Rules & Atomic Undo - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-formula-patch-guardrails-ranges-and-atomic-rollback/ - **Summary**: Design reliable AI cell patches within Arte Sheets’ live validation rules: <= 100 unique non-merged/non-spill cells per patch, explicit ranges <= 10,000 cells (no A:A or [book] links), scalar alternatives to blocked spill/volatile functions, and atomic rollback. *Table — Why the AI Assistant enforces strict range, spill, and rollback boundaries on workbook edits!:* | AI Patch Constraint | Live Validation Limit | AI-Patch-Compatible Scalar Pattern | | --- | --- | --- | | Target Cell Batch Size | <= 100 unique non-merged, non-spill cells | Edit up to 100 summary/KPI cells per step | | Formula Range Footprint | Explicit A2:D250 <= 10,000 cells; no A:A or 1:1 | Use =SUMIFS(C2:C500, A2:A500, "Paid") (500 <= 10,000) | | Sequential Row Numbers | SEQUENCE / OFFSET / INDIRECT blocked in AI patches | Use scalar =ROW() - 1 or explicit cell formulas | | External Links & Rollback | No [Workbook.xlsx] links; all-or-nothing rollback | Attach .xlsx/.csv excerpts (<= 2 MB) or reference same-workbook sheets | - **Formula (Check Rectangular Range Cell Count (Rows * Columns <= 10,000 AI Patch Limit))**: `=IF(OR(B2 < 1, B3 < 1, B4 < 1, B5 < 1), "Invalid 1-Based Grid Coordinates", (ABS(B3 - B2) + 1) * (ABS(B5 - B4) + 1))` - **Formula (AI Patch Eligibility Gate (Cells <= 100 & Explicit Range <= 10,000 Cells))**: `=IF(OR(B2 < 1, B3 < 1, B4 < 1, B5 < 1, B6 < 1), "Invalid Patch Metadata", IF(B6 > 100, "Exceeds 100-Cell Patch Cap: Split Prompt by Section", IF((ABS(B3 - B2) + 1) * (ABS(B5 - B4) + 1) > 10000, "Exceeds 10,000-Cell Formula Range Cap: Tighten Row Bounds", "Valid AI Formula Patch Scope")))` ### AI Assistant Sheet & Grid Commands: Add/Rename Tabs & 1-Based Row/Column Edits - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-insert-and-delete-rows-columns-and-rename-sheets/ - **Summary**: Learn how Arte Sheets’ AI Assistant executes create_sheet, rename_sheet, select_sheet, and 1-based insert/delete row and column commands (1..20 count) with protected-sheet and role guardrails, plus write row-insertion-safe total formulas. *Table — Exact structural guardrails for AI sheet management and row/column insertions in Arte Sheets:* | AI Structural Action | Validated Bounds in js/assistant/commands.js | Role & Protection Guardrail | | --- | --- | --- | | create_sheet / rename_sheet / select_sheet | Unique trimmed name <= 31 chars; forbids \ / ? * [ ] :; <= 200 sheets | Blocked on protected sheets, viewer/suggester roles, and suggest mode | | insert_rows / delete_rows | 1-based index (1..1,000,000), count 1..20; delete only when requested | Refuses protected sheets; multi-step execute_steps caps total row/col edits <= 20 | | insert_columns / delete_columns | 1-based index (1..16,384), count 1..20 | Refuses protected sheets and read-only / suggest sessions | - **Formula (Sheet-Name Validity Check Formula (<= 31 Chars & No Forbidden \ / ? * [ ] : Characters))**: `=IF(OR(ISBLANK(B2), LEN(TRIM(B2 & "")) = 0, LEN(TRIM(B2 & "")) > 31), "Invalid Length (1..31 Chars)", IF(ISNUMBER(FIND(":", B2)) + ISNUMBER(FIND("/", B2)) + ISNUMBER(FIND("\", B2)) + ISNUMBER(FIND("?", B2)) + ISNUMBER(FIND("*", B2)) + ISNUMBER(FIND("[", B2)) + ISNUMBER(FIND("]", B2)) > 0, "Contains Forbidden Sheet Character", "Valid Sheet Name"))` - **Formula (Department Budget Total After Inserting Line-Item Rows =ROUND(SUM(E2:E6), 2))**: `=ROUND(SUM(E2:E6), 2)` ### Multi-Step AI Spreadsheet Commands: Sheets, Rows/Columns, Charts & Role-Aware Sharing - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-multi-step-sheets-charts-rows-and-role-aware-sharing/ - **Summary**: Chain up to 10 ordered workbook steps (create/rename/select sheets, insert/delete rows or columns, populate formulas, and build charts) in Arte Sheets while keeping collaborator invitations gated behind explicit owner confirmation. *Table — How bounded multi-step execution builds a summary sheet + chart—and why sharing stays human-confirmed!:* | Assistant Command Category | Validated Scope & Parameters | Permission & Confirmation Rule | | --- | --- | --- | | Sheets & Structure (create/rename/select, insert/delete) | Sheet names <= 31 chars; <= 20 rows/cols (1-based index) | Requires active edit access on unprotected sheet | | Charts (create_chart) | column, bar, line, area, pie, doughnut, scatter on A1:B5 | Explicit range <= 10,000 cells, <= 50 charts/sheet | | Multi-Step Batch (execute_steps) | 1–10 ordered steps, <= 100 edited cells total | Stops on first error; earlier steps remain; excludes sharing | | Workbook Sharing (share_document) | viewer, suggester, or contributor for explicit email | Owner-only preview card; requires clicking Send invitation | - **Formula (Chart-Ready Regional Revenue Share % = IF(SUM(B2:B5) <= 0, "No Chart Revenue", ROUND(B2 / SUM(B2:B5) * 100, 2)))**: `=IF(SUM(B2:B5) <= 0, "No Chart Revenue", ROUND(B2 / SUM(B2:B5) * 100, 2))` - **Formula (High-Performing Regions Subtotal (>= $12,000) via SUMIFS)**: `=SUMIFS(B2:B5, B2:B5, ">=12000")` ### AI Assistant Role Matrix: Cell Suggestion Routing vs. Structural Command Guards - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-role-matrix-structural-commands-vs-cell-suggestions/ - **Summary**: Audit how Arte Sheets routes AI cell edits into reviewable proposals for Suggesters while enforcing Owner/Contributor roles and <=100-cell / <=20-row limits on structural commands. *Table — Why AI cell edits and structural sheet commands follow different permission gates:* | AI Action Class | Owner (Direct) | Contributor (Direct) | Suggester / Suggest Mode | Viewer | | --- | --- | --- | --- | --- | | Cell Values / Formulas / Styles (<= 100) | DIRECT_APPLY (Undoable) | DIRECT_APPLY (Undoable) | SUGGEST_CELLS | BLOCKED_READONLY | | Insert/Delete Rows/Cols (<= 20) & Charts | DIRECT_APPLY | DIRECT_APPLY | BLOCKED_READONLY | BLOCKED_READONLY | | share_document (viewer/suggester/contributor) | OWNER_CONFIRM_PREVIEW | BLOCKED_NOT_OWNER | BLOCKED_NOT_OWNER | BLOCKED_NOT_OWNER | - **Formula (Role- & Budget-Aware AI Action Routing Audit Formula)**: `=IF(A2 = "viewer", "BLOCKED_READONLY", IF(B2 = "share_document", IF(A2 = "owner", "OWNER_CONFIRM_PREVIEW", "BLOCKED_NOT_OWNER"), IF(B2 = "cell_patch", IF(D2 > 100, "EXCEEDS_100_CELLS", IF(OR(A2 = "suggester", C2 = "suggest"), "SUGGEST_CELLS", "DIRECT_APPLY")), IF(D2 > 20, "EXCEEDS_20_ROWS", IF(OR(A2 = "suggester", C2 = "suggest"), "BLOCKED_READONLY", "DIRECT_APPLY")))))` - **Formula (Multi-Step Plan Pre-Flight Count (<= 10 Steps, No Embedded Sharing))**: `=COUNTIF(E2:E6, "DIRECT_APPLY")` ### AI Assistant Context Window Sizing: 40x12 Selection Scan, 160-Cell & 14 KB Caps - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-selection-context-window-160-cell-and-14kb-budget-formula/ - **Summary**: Audit how Arte Sheets scopes live worksheet context for AI Assistant text and voice prompts—scanning up to 40x12 selected cells plus A1:H12 headers within a 160-cell, 14,000-byte, and 30-sheet-tab budget. *Table — Why selecting the exact target table beats highlighting an entire 5,000-row sheet:* | Context Snapshot Dimension | Engine Bound | Practical Prompting Tip | | --- | --- | --- | | Active Selection Window | Up to 40 rows x 12 columns | Select the specific table/KPI block rather than 1,000+ rows | | Top-Left Anchor Fallback | A1:H12 (12 rows x 8 columns, deduplicated) | Keep schema headers or model assumptions near A1:H12 | | Serialized Non-Empty Cells | <= 160 cells and <= 14,000 UTF-8 bytes | Long 300-char formulas consume the 14 KB byte cap faster | | Workbook Tab Directory | First 30 sheets ({id, name}) | Place active AI target tabs among the leading 30 sheets | - **Formula (Deduplicated Coordinate Scan Window Formula)**: `=MAX(0, (MIN(B2, 40) * MIN(B3, 12)) + 96 - B4)` - **Formula (Effective Serialized Cell Count & Truncation Driver Formula)**: `=LET(est_nonempty, INT(E3 * B5), byte_cap_cells, INT(14000 / MAX(1, B6)), MIN(160, MIN(est_nonempty, byte_cap_cells)))` ### Arte Sheets AI Assistant Permission-Aware Sharing: Owner Confirmation & Collaborator Roles - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-share-document-owner-invitation-preview-and-roles/ - **Summary**: Prepare collaborator invitations safely through the Arte Sheets AI Assistant: understand owner-only permissions, viewer/suggester/contributor roles, untrusted-cell email protection, and mandatory Send Invitation confirmation. *Table — Why AI-prepared sharing NEVER sends an email until the workbook owner clicks Send Invitation!:* | Collaborator Role in share_document | UI Card Label | Capabilities in Real-Time Collaborative Session | | --- | --- | --- | | viewer (Default Role) | View | Live view with participant avatars, notifications, and read-only safety | | suggester | Suggest | Submits cell suggestions, threaded comments, and @mentions without direct overwrites | | contributor | Edit | Real-time multi-user cell/formula/chart editing, cursors, comments, and @mentions | - **Formula (AI Sharing Eligibility & Confirmation Card Preflight Formula)**: `=IF(B2 <> 1, "Blocked: Verified Account Email Required", IF(AND(UPPER(TRIM(B3 & "")) <> "OWNER", UPPER(TRIM(B3 & "")) <> "LOCAL_OWNER"), "Blocked: Only Workbook Owner Can Prepare Invitations", IF(OR(LEN(TRIM(B4 & "")) < 5, ISERROR(FIND("@", B4)), NOT(ISERROR(FIND(" ", TRIM(B4 & ""))))), "Blocked: Provide Valid Recipient Email Directly in Prompt", IF(AND(UPPER(TRIM(B5 & "")) <> "VIEWER", UPPER(TRIM(B5 & "")) <> "SUGGESTER", UPPER(TRIM(B5 & "")) <> "CONTRIBUTOR"), "Invalid Role: Choose viewer, suggester, or contributor", "Preview Ready: Owner Must Click Send Invitation"))))` - **Formula (Effective Default Role Resolver (Blank Prompt Role Defaults to viewer))**: `=IF(OR(ISBLANK(B5), LEN(TRIM(B5 & "")) = 0), "viewer", LOWER(TRIM(B5 & "")))` ### AI Assistant in Suggest Mode: Collaborative Cell Suggestions, Role Checks & Proposal Audit - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-suggest-mode-cell-proposals-and-collaborative-review/ - **Summary**: Understand how Arte Sheets routes AI formula and value edits as reviewable cell suggestions for suggester roles and suggest mode, blocks unreviewed style/structural mutations, and requires explicit owner confirmation before sending share invitations. *Table — How AI cell edits interact with collaborative roles (owner, contributor, suggester, viewer) and Suggest Mode:* | Collaborator Role / Workbook Mode | AI Value & Formula Edits (<= 100 Cells) | AI Style Edits, Sheet/Row/Chart Commands & Sharing | | --- | --- | --- | | Owner (Edit Mode, Verified Email) | Applied with atomic validation (or Before/Proposal preview card) | Styles & structure allowed; share_document renders owner Send invitation card | | Contributor / Editor (Edit Mode) | Applied with atomic validation & live sync to co-editors | Styles & structure allowed; share_document blocked (owner-only) | | Suggester Role or Active Suggest Mode | Routed as reviewable cell suggestions ("suggested") | Style changes & structural/chart commands blocked cleanly | | Viewer Role or Protected Sheet | Blocked (readonly) | Blocked (readonly) | - **Formula (Proposed vs. Current Formula Variance Audit =ROUND(C2 - B2, 2))**: `=IF(B2 <= 0, "Invalid Baseline", IF(ABS(C2 - B2) / B2 > 0.05, "Material Suggestion (>5%): Review Required", "Within 5% Tolerance"))` - **Formula (Total Portfolio Delta Across Suggested Line Items =ROUND(SUM(C2:C4) - SUM(B2:B4), 2))**: `=ROUND(SUM(C2:C4) - SUM(B2:B4), 2)` ### AI Spreadsheet Assistant Workflow: Text & Voice Formula Proposals, Bounds & Undo - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-text-and-voice-cell-formulas-and-proposal-review/ - **Summary**: Select a target range in Arte Sheets to fill or update cells, formulas, and formats via text or bounded WebRTC voice commands—understanding Before/Proposal review cards, Undo, suggestion-mode routing, and safe formula bounds. *Table — How range-aware AI proposals, Undo, and collaborative suggestion mode keep budget models safe!:* | Assistant Action / Workbook State | Validation & Execution Behavior | Safety Guardrail | | --- | --- | --- | | Ask for preview (propose_changes) | Shows Before vs. Proposal table with Apply / Discard | Stale-version check if sheet changes before Apply | | Direct edit on owned/editor sheet (apply_changes) | Validates <= 100 non-merged/non-spill cells & applies | Reversible with Undo on local workbooks | | Collaborator in Suggest mode / Suggester role | Submits value/formula edits as cell suggestions | Protected sheets & Viewers are blocked (read-only) | - **Formula (Bounded Zero-Safe Budget Variance Percentage Formula = IF(B2 = 0, "Zero Budget Base", ROUND((C2 - B2) / B2 * 100, 2)))**: `=IF(B2 = 0, "Zero Budget Base", ROUND((C2 - B2) / B2 * 100, 2))` - **Formula (Total Net Schedule Variance Across Selected Rows = SUM(C2:C5) - SUM(B2:B5))**: `=SUM(C2:C5) - SUM(B2:B5)` ### AI Voice Spreadsheet Commands: Live Selection Context, Barge-In & Validated Edits - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-voice-commands-live-selection-context-and-barge-in/ - **Summary**: Use Arte Sheets’ bounded WebRTC voice assistant (up to 3 minutes per call) to dictate quota attainment formulas, charts, and tab navigation hands-free while client-side validation and version checks protect every cell. *Table — Hands-free WebRTC spreadsheet voice sessions with live selection updates and server-side credit safety!:* | Voice Session Capability | Live Runtime Behavior in Arte Sheets | Workbook Protection Rule | | --- | --- | --- | | Microphone & Audio Stream | WebRTC with echo/noise suppression, semantic VAD & barge-in | Bounded up to 3 minutes per voice session; metered credits | | Selection & Tab Context Sync | Refreshes active sheet + selected range automatically | Bounded selection sample (never dumps huge workbooks) | | Spoken Edit / Chart / Sheet Commands | Same validators as text (apply_changes, propose_changes, create_chart) | Blocks stale snapshots, active cell editing & viewer/protected tabs | - **Formula (Voice-Friendly Bounded Quota Attainment % Formula = IF(B2 <= 0, "Invalid Quota", ROUND(C2 / B2 * 100, 2)))**: `=IF(B2 <= 0, "Invalid Quota", ROUND(C2 / B2 * 100, 2))` - **Formula (Average Closed Bookings Across Active Quota Reps via AVERAGEIFS(C2:C5, B2:B5, ">0"))**: `=IF(COUNTIF(B2:B5, ">0") = 0, "No Active Quotas", ROUND(AVERAGEIFS(C2:C5, B2:B5, ">0"), 2))` ### Arte Sheets AI Voice & Multi-Step Commands: WebRTC Sessions & 10-Step Execution Budgets - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-voice-commands-webrtc-session-limits-and-multi-step-edits/ - **Summary**: Combine spoken WebRTC voice commands (up to 3 minutes per call with native barge-in) and multi-step workbook plans (up to 10 ordered steps, 100 edited cells, and 20 row/column edits) safely in Arte Sheets. *Table — How WebRTC Voice Sessions and execute_steps keep spoken multi-step edits deterministic and auditable!:* | Voice & Multi-Step Capability | Enforced Bound in Arte Sheets | Behavior on Partial / Stale State | | --- | --- | --- | | WebRTC Voice Session Duration | Up to 3 minutes per call (15 s server heartbeat) | Cleanly ends with status message; press Microphone to start a new call | | Ordered Steps in execute_steps | 1 to 10 steps (share_document excluded) | Stops at first failed step; earlier completed steps remain | | Cumulative Cell Edits Across Steps | <= 100 unique edited cells total (<= 2,000 chars/value) | Exceeding 100 cells rejects the multi-step plan before execution | | Cumulative Row / Column Insert or Delete | <= 20 rows/columns total (1-based index, delete only if requested) | Blocked in viewer, suggester, Suggest-mode, or protected sheets | - **Formula (Multi-Step AI Command Preflight Validator (execute_steps Budget Check))**: `=IF(B5 <> 0, "Split Sharing Out: share_document Requires Separate Owner Confirmation", IF(B6 > 180, "Exceeds 3-Minute Voice Call Window: Start Fresh Call", IF(OR(B2 < 1, B2 > 10, B3 < 0, B3 > 100, B4 < 0, B4 > 20), "Exceeds Single execute_steps Budget (Max 10 Steps, 100 Cells, 20 Rows/Cols)", "Valid Multi-Step Plan: Ready for Voice or Text Execution")))` - **Formula (Remaining Cell-Edit Headroom Inside a 100-Cell Multi-Step Plan)**: `=100 - B3` ### Arte Sheets AI Assistant Sheet Commands & Stale-Version Protection in Live Collaboration - **URL**: https://sheets.arte-soft.com/en/learn/ai-assistant-workbook-version-staleness-and-sheet-navigation-commands/ - **Summary**: Understand how Arte Sheets protects real-time multi-user workbooks by binding AI proposals to {workbookId, sheetId, version} and enforcing sheet naming rules (<= 31 chars, < 200 sheets, no \ / ? * [ ] :) across create_sheet, rename_sheet, and select_sheet. *Table — Prevent silent overwrites when teammates edit cells while an AI proposal is open!:* | AI Assistant Sheet / Concurrency Check | Live Rule in commands.js & ui.js | Outcome When Violated | | --- | --- | --- | | Proposal Snapshot {workbookId, sheetId, version} | Must equal current store state on Apply | Refuses stale apply; asks for fresh prompt | | Sheet Name Length & Uniqueness | 1..31 trimmed chars; case-insensitive unique | Throws invalid / exists error before creating | | Reserved Workbook Characters | Forbids \ / ? * [ ] : | Rejected so Sheet!A1 formulas stay valid | | Workbook Sheet Capacity & Roles | < 200 sheets; blocked for viewer/suggester/suggest | Throws limit or readonly error cleanly | - **Formula (Pre-Validate Sheet Tab Name Length (1..31 Chars) & Workbook Sheet Cap (< 200))**: `=IF(OR(LEN(TRIM(B2 & "")) = 0, LEN(TRIM(B2 & "")) > 31), "Invalid Sheet Name Length (Requires 1–31 Trimmed Chars)", IF(B3 >= 200, "Workbook Reached 200-Sheet Assistant Limit", "Valid Sheet Name Length & Tab Count"))` - **Formula (Concurrent Version Staleness Check (Proposal_Version = Current_Store_Version))**: `=IF(OR(B4 < 0, B5 < B4), "Invalid Version Counter", IF(B4 = B5, "Fresh Snapshot: Safe to Apply Proposal", "Stale Proposal: Workbook Changed by Collaborator — Regenerate"))` ### AIAG Gage R&R %StudyVar, P/T Ratio & ndc Formula - **URL**: https://sheets.arte-soft.com/en/learn/aiag-gage-rr-study-variation-precision-to-tolerance-and-ndc-formula/ - **Summary**: Combine Equipment Repeatability (EV), Appraiser Reproducibility (AV), and Part Variation (PV) via root-sum-of-squares to audit %StudyVar, 6-sigma Precision-to-Tolerance (P/T), and ndc = INT(1.41 * PV / GRR). *Table — Never add Gage Repeatability and Reproducibility linearly — combine variances in quadrature!:* | AIAG MSA Metric (EV=0.30, AV=0.40, PV=1.20, Tol=10.0) | Formula | Verified Output | | --- | --- | --- | | Combined Gage R&R SD (sigma_GRR) | SQRT(EV^2 + AV^2) | 0.5000 mm (3-4-5 Triple) | | %StudyVar (sigma_GRR / sigma_TV) | 0.50 / SQRT(0.50^2 + 1.20^2) | 0.3846 (38.46% — Fails <30%!) | | 6-Sigma Precision-to-Tolerance (P/T) | (6 * sigma_GRR) / Tolerance | 0.3000 (30.00% of Spec) | | Number of Distinct Categories (ndc) | MAX(1, INT(1.41 * PV / GRR)) | 3 categories (Needs >= 5!) | - **Formula (AIAG %StudyVar (sigma_GRR / sigma_TV) Formula)**: `=LET(s_ev, B2, s_av, B3, s_pv, B4, IF(OR(s_ev < 0, s_av < 0, s_pv <= 0, s_ev + s_av <= 0), "Invalid MSA Input", LET(s_gr, SQRT((s_ev ^ 2) + (s_av ^ 2)), s_tv, SQRT((s_gr ^ 2) + (s_pv ^ 2)), ROUND(s_gr / s_tv, 4))))` - **Formula (AIAG Number of Distinct Categories (ndc) Formula)**: `=LET(s_ev, B2, s_av, B3, s_pv, B4, IF(OR(s_ev < 0, s_av < 0, s_pv <= 0, s_ev + s_av <= 0), "Invalid MSA Input", LET(s_gr, SQRT((s_ev ^ 2) + (s_av ^ 2)), MAX(1, INT(1.41 * (s_pv / s_gr))))))` ### AIMS65 Score for Upper GI Bleeding Inpatient Mortality (0–5 Points) - **URL**: https://sheets.arte-soft.com/en/learn/aims65-upper-gi-bleed-inpatient-mortality-score-formula/ - **Summary**: Calculate Saltzman's 5-point bedside AIMS65 score (Albumin < 3.0 g/dL, INR > 1.5, altered Mental status, Systolic BP <= 90 mmHg, Age > 65 years) directly from raw ED vitals and labs. *Table — Predict acute upper GI bleed inpatient mortality without waiting for endoscopy!:* | AIMS65 Score (0–5 Points) | Risk Tier (< 2 vs >= 2) | Derivation Inpatient Mortality | Bedside Triage Guidance | | --- | --- | --- | --- | | 0 – 1 points | Low Mortality Risk (< 2) | 0.3% (0 pts) to 1.2% (1 pt) | Standard ward / early endoscopy pathway | | 2 points (>= 2 Cutoff!) | High Mortality Risk (>= 2) | ~4% – 5% | Step-down / ICU monitoring & resuscitation | | 3 – 5 points | Very High Mortality Risk | ~10% (3 pts) to ~25%+ (5 pts) | Aggressive ICU resuscitation & urgent GI consult | - **Formula (Automated 5-Factor AIMS65 Score from Raw Labs & Vitals (0 to 5 Points))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1, B5 <= 0, B6 < 18), "Invalid Clinical Inputs", IF(B2 < 3, 1, 0) + IF(B3 > 1.5, 1, 0) + B4 + IF(B5 <= 90, 1, 0) + IF(B6 > 65, 1, 0))` - **Formula (AIMS65 Inpatient Mortality Risk Classification (< 2 Low vs >= 2 High))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1, B5 <= 0, B6 < 18), "Invalid Clinical Inputs", IF((IF(B2 < 3, 1, 0) + IF(B3 > 1.5, 1, 0) + B4 + IF(B5 <= 90, 1, 0) + IF(B6 > 65, 1, 0)) <= 1, "Low Risk (0-1 pts: ~0.3%-1.2% Mortality)", IF((IF(B2 < 3, 1, 0) + IF(B3 > 1.5, 1, 0) + B4 + IF(B5 <= 90, 1, 0) + IF(B6 > 65, 1, 0)) = 2, "High Risk (2 pts: ~4%-5% Mortality)", "Very High Risk (3-5 pts: >=10% Mortality — ICU)")))` ### AIR Score (Appendicitis Inflammatory Response) Calculator (0–12 Points) - **URL**: https://sheets.arte-soft.com/en/learn/air-score-appendicitis-inflammatory-response-andersson-triage/ - **Summary**: Calculate Andersson’s Appendicitis Inflammatory Response (AIR) score (0–12 points) integrating CRP, graded peritoneal defense, WBC, PMN%, fever, vomiting, and RLQ pain to reduce unnecessary CT scans and negative appendectomies. *Table — Why WSES Jerusalem guidelines favor the AIR score over Alvarado for suspected appendicitis!:* | AIR Score Tier (0–12 Points) | Appendicitis Probability | WSES Surgical Triage Action | | --- | --- | --- | | 0 – 4 points | Low Risk (< 2% Perforated) | Safe Outpatient Follow-Up; Avoid Unnecessary CT | | 5 – 8 points | Indeterminate Risk | Point-of-Care Ultrasound / Low-Dose CT + Serial Exam | | 9 – 12 points | High Risk (> 85% Appendicitis) | Direct Surgical Exploration / Laparoscopy Consult | - **Formula (Total Andersson AIR Appendicitis Score (0 to 12 Points))**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, B4 < 0, B4 > 1, B5 < 0, B5 > 100, B6 < 0, B7 < 0), "Invalid AIR Inputs", B2 + B3 + B4 + IF(B5 >= 85, 2, IF(B5 >= 70, 1, 0)) + IF(B6 >= 15, 2, IF(B6 >= 10, 1, 0)) + IF(B7 >= 50, 2, IF(B7 >= 10, 1, 0)))` - **Formula (AIR Score Surgical Triage Stratum (0–4 / 5–8 / 9–12))**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, B4 < 0, B4 > 1, B5 < 0, B5 > 100, B6 < 0, B7 < 0), "Invalid AIR Inputs", IF(B2 + B3 + B4 + IF(B5 >= 85, 2, IF(B5 >= 70, 1, 0)) + IF(B6 >= 15, 2, IF(B6 >= 10, 1, 0)) + IF(B7 >= 50, 2, IF(B7 >= 10, 1, 0)) <= 4, "Low Probability (0-4 — Outpatient Follow-Up)", IF(B2 + B3 + B4 + IF(B5 >= 85, 2, IF(B5 >= 70, 1, 0)) + IF(B6 >= 15, 2, IF(B6 >= 10, 1, 0)) + IF(B7 >= 50, 2, IF(B7 >= 10, 1, 0)) <= 8, "Indeterminate (5-8 — Ultrasound / CT)", "High Probability (9-12 — Surgical Consult)")))` ### Aircraft ACMI Wet-Lease MGBH Floor & PBH Reserve Formula - **URL**: https://sheets.arte-soft.com/en/learn/aircraft-acmi-wet-lease-minimum-guaranteed-block-hours-and-pbh-reserve/ - **Summary**: Calculate Airline ACMI (Aircraft, Crew, Maintenance, Insurance) Wet-Lease Billable Block Hours with Minimum Guaranteed Block Hours (MGBH) Floor, Monthly ACMI Invoice ($), Power-by-the-Hour (PBH) Engine Overhaul Reserve, and Effective Cost Per Flown Seat-Hour. *Table — Separate MGBH take-or-pay billing floors from actual flown Power-by-the-Hour engine reserves!:* | ACMI Wet-Lease Metric (300 MGBH, 340 Flown Hr, $4,500/hr, $650 PBH, 180 Seats) | Formula | Verified Output | | --- | --- | --- | | Billable Block Hours (hr) | MAX(MGBH_Floor_Hr, Actual_Flown_Hr) | 340 hr (300 hr @ 250 Flown) | | Monthly ACMI Invoice ($) | Billable_Block_Hr * ACMI_Rate_Hr | $1,530,000 ($1,350,000 @ 250 Flown) | | PBH Engine Reserve Accrual ($) | Actual_Flown_Hr * PBH_Reserve_Hr | $221,000 ($162,500 @ 250 Flown) | | Effective ACMI / Flown Seat-Hr ($) | Monthly_Invoice / (Actual_Flown * Seats) | $25.00 ($30.00 @ 250 Flown) | - **Formula (ACMI MGBH Invoice & Effective Cost Per Flown Seat-Hour Formula)**: `=LET(mg_h, B2, fl_h, B3, rt_h, B4, pb_h, B5, st_n, B6, IF(OR(mg_h <= 0, fl_h <= 0, rt_h <= 0, pb_h < 0, st_n <= 0), "Invalid ACMI Wet Lease", LET(bl_h, MAX(mg_h, fl_h), inv_d, bl_h * rt_h, ROUND(inv_d / (fl_h * st_n), 2))))` - **Formula (Shoulder-Season Under-Utilization Penalty Check (Set Actual Flown = 250 hr))**: `=IF(ISTEXT(E2), E2, ROUND(B3 * B5, 2))` ### Aircraft Bank Load Factor, Accelerated Stall & Turn Radius - **URL**: https://sheets.arte-soft.com/en/learn/aircraft-coordinated-bank-load-factor-accelerated-stall-speed-and-turn-radius/ - **Summary**: Calculate Level Coordinated-Turn Load Factor n = 1 / COS(phi), Accelerated Stall Speed V_s_bank = V_s1g * SQRT(n), Horizontal Turn Radius V_TAS^2 / (g * TAN(phi)), and Indicated Airspeed Stall Margin. *Table — Guard traffic-pattern base-to-final turns against SQRT(n) accelerated stall!:* | Flight Envelope Metric (60 deg Bank, Vs1g=60 kn, VTAS=98.1 m/s, VIAS=100 kn) | Formula | Verified Output | | --- | --- | --- | | Coordinated Load Factor n (g) | 1 / COS(Bank_Deg * PI() / 180) | 2.0000 g (1.0000 g @ 0 deg) | | Accelerated Stall Speed (kn) | Vs_1g * SQRT(Load_Factor_n) | 84.85 kn (60.00 kn @ 0 deg) | | Level Turn Radius R (m) | VTAS^2 / (9.81 * TAN(Bank_Rad)) | 566.38 m (981.00 m @ 45 deg) | | Stall Speed Margin (kn IAS) | Indicated_Airspeed - Accel_Stall | 15.15 kn | - **Formula (Zero-Bank-Guarded Level Coordinated Turn Radius Formula)**: `=LET(ph_d, B2, vs_k, B3, vt_m, B4, vi_k, B5, IF(OR(ph_d < 0, ph_d >= 85, vs_k <= 0, vt_m <= 0, vi_k <= 0), "Invalid Banked Turn Envelope", IF(ph_d = 0, "Straight Flight (Infinite Radius)", ROUND((vt_m ^ 2) / (9.81 * TAN(ph_d * PI() / 180)), 2))))` - **Formula (45-Degree Turn Radius (TAN = 1) & Wings-Level Straight-Flight Boundary Checks)**: `=IF(OR(B2 < 0, B2 >= 85, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Banked Turn Envelope", ROUND(1 / COS(B2 * PI() / 180), 4))` ### Aircraft Wing Loading & V-n Maneuvering Corner Speed (VA) - **URL**: https://sheets.arte-soft.com/en/learn/aircraft-wing-loading-v-n-maneuvering-corner-speed-and-lift-formula/ - **Summary**: Calculate Wing Loading W/S (N/m^2), Unaccelerated 1g Stall Speed Vs1 = SQRT((2*W/S)/(rho*CL_max)), V-n Structural Design Maneuvering Corner Speed VA = Vs1*SQRT(n_max), and Corner Dynamic Pressure. *Table — Understand why Design Maneuvering Speed VA drops when an aircraft flies lightly loaded!:* | V-n Envelope Metric (W=12,250 N, S=10 m^2, rho=1.225, CLmax=1.25, nmax=4.0g) | Formula | Verified Output | | --- | --- | --- | | Wing Loading W/S (N/m^2) | Aircraft_Weight_N / Wing_Area_m2 | 1,225.00 N/m^2 (784 @ 7,840 N) | | Clean 1g Stall Speed Vs1 (m/s) | SQRT((2 * (W/S)) / (rho * CL_max)) | 40.00 m/s (32.00 m/s @ Light) | | Maneuvering Corner Speed VA | Vs1 * SQRT(Limit_Load_Factor_nmax) | 80.00 m/s (64.00 m/s @ Light) | | Corner Dynamic Pressure q (Pa) | 0.5 * rho * VA^2 | 3,920.00 Pa | - **Formula (V-n Structural Maneuvering (Corner) Speed VA Formula)**: `=LET(wt_n, B2, ar_s, B3, rh_a, B4, cl_m, B5, nm_x, B6, IF(OR(wt_n <= 0, ar_s <= 0, rh_a <= 0, cl_m <= 0, nm_x < 1), "Invalid V-n Envelope Input", LET(ws_l, wt_n / ar_s, vs_1, SQRT((2 * ws_l) / (rh_a * cl_m)), ROUND(vs_1 * SQRT(nm_x), 2))))` - **Formula (Light-Weight Solo Flight VA Reduction Check (Set Weight = 7,840 N))**: `=IF(ISTEXT(E4), E4, ROUND(0.5 * B4 * (E4 ^ 2), 2))` ### Overbooking Critical Fractile & Booking Limit Formula - **URL**: https://sheets.arte-soft.com/en/learn/airline-hotel-overbooking-critical-fractile-spoilage-vs-denied-boarding/ - **Summary**: Balance empty-seat spoilage c_u against denied-boarding bump compensation c_o via the Critical Fractile CF = c_u/(c_u + c_o) to set optimal flight and hotel overbooking limits. *Table — Why overbooking by average no-shows is a costly mistake whenever bump vouchers exceed ticket fares!:* | Overbooking Metric (K=150, c_u=300, c_o=900, NoShows ~ U[6, 26]) | Formula | Verified Output | | --- | --- | --- | | Overbooking Critical Fractile (CF) | c_u / (c_u + c_o) | 0.2500 (25th Percentile) | | Optimal Overbooking Pad (b*) | a_ns + CF * (b_ns - a_ns) | 11.00 seats (vs Naive Mean 16!) | | Optimal Total Booking Limit | K + FLOOR(b*, 1) | 161 reservations | | Low Bump Cost Case (c_o = 100 < c_u = 300) | CF = 0.7500 -> b* = 21 | 171 reservations | - **Formula (Overbooking Critical Fractile & Optimal Pad b* Formula)**: `=LET(k_cp, B2, c_sp, B3, c_bm, B4, a_ns, B5, b_ns, B6, IF(OR(k_cp < 1, c_sp <= 0, c_bm <= 0, a_ns < 0, b_ns < a_ns), "Invalid Overbooking Input", LET(cf_r, c_sp / (c_sp + c_bm), ROUND(a_ns + cf_r * (b_ns - a_ns), 4))))` - **Formula (Authorized Reservation Booking Limit (K + FLOOR(b*, 1)) Formula)**: `=IF(ISTEXT(E3), E3, B2 + FLOOR(E3, 1))` ### Airline RASM, CASM & Break-Even Load Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/airline-rasm-casm-yield-and-break-even-load-factor-formula/ - **Summary**: Calculate Available Seat Miles (ASM), Revenue Passenger Miles (RPM), Passenger Yield, RASM, CASM, and Break-Even Load Factor BELF = CASM / Yield. *Table — Link aircraft capacity (ASM) and passenger traffic (RPM) via RASM = Load_Factor * Yield!:* | Aviation Economics KPI (180 Seats, 1,000 mi, 153 Pax) | Formula | Verified Output | | --- | --- | --- | | Passenger Yield ($ / RPM) | Ticket_Rev / (Pax * Miles) | 0.1800 ($0.18 / pax-mile) | | Passenger RASM ($ / ASM) | Ticket_Rev / (Seats * Miles) | 0.1530 ($0.153 / seat-mile) | | Unit Operating Cost CASM ($ / ASM) | Flight_Cost / (Seats * Miles) | 0.1300 ($0.130 / seat-mile) | | Break-Even Load Factor (BELF) | CASM / Yield | 0.7222 (72.22% vs 85.00% Actual) | - **Formula (Unit Revenue RASM & Unit Cost CASM Formula)**: `=LET(st_n, B2, ml_d, B3, px_n, B4, rv_t, B5, IF(OR(st_n <= 0, ml_d <= 0, px_n < 0, px_n > st_n, rv_t < 0), "Invalid Flight Input", ROUND(rv_t / (st_n * ml_d), 4)))` - **Formula (Exact Break-Even Load Factor BELF = CASM / Yield Formula)**: `=LET(st_n, B2, ml_d, B3, px_n, B4, rv_t, B5, cs_f, B6, IF(OR(st_n <= 0, ml_d <= 0, px_n <= 0, px_n > st_n, rv_t <= 0, cs_f < 0), "Invalid Flight Input", LET(casm_u, cs_f / (st_n * ml_d), yld_u, rv_t / (px_n * ml_d), ROUND(casm_u / yld_u, 4))))` ### Akerlof Market for Lemons Adverse-Selection Cutoff Formula - **URL**: https://sheets.arte-soft.com/en/learn/akerlof-market-for-lemons-adverse-selection-unraveling-threshold/ - **Summary**: Calculate the critical high-quality share q* = (S_H - B_L) / (B_H - B_L), pooling willingness-to-pay, and equilibrium trade surplus before adverse selection collapses the market. *Table — Pinpoint the exact quality share q* below which high-quality sellers withdraw:* | Lemons Market Metric (B_H=20k, S_H=15k, B_L=8k, S_L=6k) | q_plum = 0.50 (Unraveled) | q_plum = 0.65 (Pooling) | | --- | --- | --- | | Critical Plum Share (q*) | 0.5833 (58.33%) | 0.5833 (58.33%) | | Naive Pooling Buyer WTP (B_bar) | 14,000.00 (< S_H!) | 15,800.00 (>= S_H) | | Actual Equilibrium Market Price | 8,000.00 (Lemons Only!) | 15,800.00 (All Units Trade) | | Realized Expected Social Surplus | 1,000.00 (Loss = 2,500) | 3,950.00 (Zero DWL!) | - **Formula (Critical Plum Share Threshold q* = (S_H - B_L) / (B_H - B_L) Formula)**: `=LET(b_hi, B2, s_hi, B3, b_lo, B4, s_lo, B5, IF(OR(s_lo < 0, b_lo <= s_lo, s_hi <= b_lo, b_hi <= s_hi), "Invalid Lemons Ordering", ROUND((s_hi - b_lo) / (b_hi - b_lo), 4)))` - **Formula (Adverse-Selection Equilibrium Market Price Formula)**: `=LET(b_hi, B2, s_hi, B3, b_lo, B4, s_lo, B5, q_pl, B6, IF(OR(s_lo < 0, b_lo <= s_lo, s_hi <= b_lo, b_hi <= s_hi, q_pl <= 0, q_pl >= 1), "Invalid Lemons Ordering", LET(b_bar, q_pl * b_hi + (1 - q_pl) * b_lo, ROUND(IF(b_bar >= s_hi, b_bar, b_lo), 2))))` ### ALBI (Albumin-Bilirubin) Score & Grade 1–3 Liver Reserve Calculator - **URL**: https://sheets.arte-soft.com/en/learn/albi-score-and-grade-albumin-bilirubin-hepatic-reserve-formula/ - **Summary**: Calculate Philip Johnson’s objective Hepatocellular Carcinoma (HCC) liver reserve score ALBI = (LOG10(Bilirubin_umolL) * 0.66) + (Albumin_gL * -0.085) and stratify ALBI Grade 1 (<= -2.60), Grade 2, and Grade 3 (> -1.39). *Table — Eliminate subjective ascites/encephalopathy grading inside Child-Pugh A oncology cohorts!:* | Hepatic Lab Profile (SI Units) | Linear ALBI Score | ALBI Grade Cutoff | HCC Oncology Implication | | --- | --- | --- | --- | | Preserved Reserve (Bili 14 umol/L, Alb 43 g/L) | -2.899 | ALBI Grade 1 (<= -2.60) | Best Resection / Systemic Survival | | Intermediate Reserve (Bili 42 umol/L, Alb 31 g/L) | -1.564 | ALBI Grade 2 (-2.59 to -1.39) | Monitor Post-TACE / TKI Decompensation | | Advanced Dysfunction (ALBI > -1.39) | > -1.39 | ALBI Grade 3 (> -1.39) | High Hepatic Failure Toxicity Risk | - **Formula (Continuous Objective ALBI Score = (LOG10(Bilirubin_umolL) * 0.66) - (0.085 * Albumin_gL))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Bilirubin / Albumin", ROUND((LOG10(B2) * 0.66) + (B3 * -0.085), 3))` - **Formula (ALBI Hepatic Reserve Grade (Grade 1, Grade 2, or Grade 3))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Bilirubin / Albumin", IF(((LOG10(B2) * 0.66) + (B3 * -0.085)) <= -2.6, "ALBI Grade 1 (<= -2.60) — Well-Preserved Hepatic Reserve", IF(((LOG10(B2) * 0.66) + (B3 * -0.085)) <= -1.39, "ALBI Grade 2 (-2.59 to -1.39) — Intermediate Hepatic Reserve", "ALBI Grade 3 (> -1.39) — Decompensated Hepatic Reserve")))` ### Alchian-Allen "Shipping Good Apples Out" Formula - **URL**: https://sheets.arte-soft.com/en/learn/alchian-allen-shipping-the-good-apples-out-unit-freight-formula/ - **Summary**: Prove Armen Alchian and William Allen’s (1964) relative-price compression theorem (P_H + f) / (P_L + f) < P_H / P_L under per-unit freight or specific charges and predict export quality upgrading. *Table — Why Washington exports premium apples while keeping standard apples at home: unit vs ad-valorem cost!:* | Alchian-Allen Metric (P_H = 12, P_L = 4, f = 4, sigma = 2) | Formula | Verified Output | | --- | --- | --- | | Local Origin Relative Price (f = 0) | P_H / P_L = 12 / 4 | 3.0000 standard boxes / premium | | Destination Delivered Relative Price | (P_H + f) / (P_L + f) = 16 / 8 | 2.0000 (-33.33% Compression!) | | Relative Premium Discount (%) | ((P_H+f)/(P_L+f)) / (P_H/P_L) - 1 | -0.3333 (-33.33%) | | Export Quality Mix Shift Multiplier | ((P_H / P_L) / ((P_H + f)/(P_L + f)))^sigma | 2.2500x Premium-to-Low Ratio | - **Formula (Delivered Destination Relative Price Ratio Formula)**: `=IF(OR(B3 <= 0, B2 <= B3, B4 < 0), "Require P_H > P_L > 0 & f >= 0", ROUND((B2 + B4) / (B3 + B4), 4))` - **Formula (CES Export Quality Upgrading Volume Multiplier Formula)**: `=LET(p_hi, B2, p_lo, B3, f_un, B4, sg_el, B5, IF(OR(p_lo <= 0, p_hi <= p_lo, f_un < 0, sg_el < 0), "Require P_H > P_L > 0 & f >= 0", LET(r_loc, p_hi / p_lo, r_dst, (p_hi + f_un) / (p_lo + f_un), ROUND((r_loc / r_dst) ^ sg_el, 4))))` ### Alfvén Wave Speed (vA) & Plasma Beta (MHD Magnetic Confinement Formula) - **URL**: https://sheets.arte-soft.com/en/learn/alfven-wave-velocity-and-plasma-beta-magnetohydrodynamics/ - **Summary**: Calculate magnetohydrodynamic Alfvén speed vA = B / SQRT(mu0 * rho) in km/s and dimensionless Plasma Beta = P_thermal / (B^2 / (2 * mu0)) for tokamak fusion reactors and solar-wind plasmas. *Table — Treat magnetic field lines like plucked violin strings loaded with plasma ions!:* | MHD Plasma State (rho = 10^-6 kg/m^3, P = 40 kPa) | Magnetic Field B (Tesla) | Alfvén Speed vA (km/s) | Plasma Beta | | --- | --- | --- | --- | | Baseline Tokamak Edge / Discharge | B = 2.0 T | 1,784.12 km/s | beta = 0.02513 (2.51%, Magnetically Confined) | | High-Field HTS Magnet Upgrade | B = 4.0 T (2x Field) | 3,568.25 km/s (2.0x vA) | beta = 0.00628 (4x higher P_mag!) | | Invalid Density rho <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid MHD Inputs" | - **Formula (Alfvén Wave Velocity vA = (B / SQRT(mu0 * rho)) / 1000 (km/s))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid MHD Inputs", ROUND((B2 / SQRT((4 * PI() * 0.0000001) * B3)) / 1000, 2))` - **Formula (Dimensionless MHD Plasma Beta = P_thermal / (B^2 / (2 * mu0)))**: `=IF(OR(B2 <= 0, B4 < 0), "Invalid MHD Inputs", ROUND(B4 / ((B2 ^ 2) / (2 * 4 * PI() * 0.0000001)), 5))` ### Alkire-Foster Multidimensional Poverty (MPI) Formula - **URL**: https://sheets.arte-soft.com/en/learn/alkire-foster-multidimensional-poverty-index-headcount-and-intensity/ - **Summary**: Implement Sabina Alkire and James Foster’s (2011) dual-cutoff censoring c_i(k) = IF(c_i >= k, c_i, 0) to calculate Multidimensional Headcount H, Deprivation Intensity A, and MPI = H * A. *Table — Censor non-poor single deprivations before computing poverty intensity A and MPI = H * A!:* | Alkire-Foster Metric (c = [0.60, 0.50, 0.40, 0.20, 0.00], k = 0.3333) | Formula | Verified Output | | --- | --- | --- | | Multidimensional Headcount Ratio (H) | COUNTIF(B2:B6, ">=" & G2) / ROWS(B2:B6) | 0.6000 (3 of 5 Poor) | | Censored Score Sum SUM(c_i(k)) | SUM(C2:C6) = 0.60 + 0.50 + 0.40 | 1.5000 (0.20 Censored to 0) | | Average Deprivation Intensity (A) | SUM(C2:C6) / Poor_Count | 0.5000 (50.0% Intensity) | | Multidimensional Poverty Index (MPI) | AVERAGE(C2:C6) = H * A | 0.3000 | - **Formula (Row-Level Dual-Cutoff Censored Deprivation Score c_i(k) Formula)**: `=IF(B2 >= $G$2, B2, 0)` - **Formula (Deprivation Intensity A & Adjusted Headcount MPI = H * A Formula)**: `=IF(OR(G2 <= 0, G2 > 1, MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Invalid MPI Input", ROUND(AVERAGE(C2:C6), 4))` ### Check if all dates in a column are in chronological order - **URL**: https://sheets.arte-soft.com/en/learn/all-dates-in-chronological-order-check/ - **Summary**: Compare offset ranges A2:A4 and A3:A5 inside SUMPRODUCT to verify schedules never step backward and count out-of-order rows. *Table — Offset-range pairwise comparison (A2:A4 vs A3:A5):* | Row | MilestoneDate (A) | Adjacent Check vs Next Row | | --- | --- | --- | | 2 | 2026-01-10 | 2026-01-10 <= 2026-02-15 (OK) | | 3 | 2026-02-15 | 2026-02-15 <= 2026-02-15 (Same day OK) | | 4 | 2026-02-15 | 2026-02-15 <= 2026-04-01 (OK) | | 5 | 2026-04-01 | (end of list) | - **Formula (Allowing vs rejecting same-day ties)**: `=SUMPRODUCT(--(A2:A4 > A3:A5)) = 0` - **Formula (Strictly increasing check and inversion count)**: `=SUMPRODUCT(--(A2:A4 >= A3:A5)) = 0` ### All-Pay Auction Bidding & Expected Revenue Formula - **URL**: https://sheets.arte-soft.com/en/learn/all-pay-auction-equilibrium-bidding-and-expected-revenue-formula/ - **Summary**: Calculate Baye-Kovenock-de Vries (1996) asymmetric all-pay contest abstention probability 1 - v_2/v_1, expected expenditures, and total sunk-effort dissipation (v_2/2)*(1 + v_2/v_1). *Table — Model R&D patent races, lobbying, and architectural pitches where EVERY entrant pays sunk bids!:* | All-Pay Contest Metric (v_1 = 100, v_2 = 60) | Formula | Verified Output | | --- | --- | --- | | Challenger Zero-Bid Abstention Prob | 1 - (v_2 / v_1) | 0.4000 (40.00% Abstains) | | Leader Expected Sunk Bid E[b_1] | v_2 / 2 | 30.00 | | Challenger Expected Sunk Bid E[b_2] | (v_2^2) / (2 * v_1) | 18.00 | | Total Expected Contest Expenditure | (v_2 / 2) * (1 + v_2 / v_1) | 48.00 (100.00 if v_2 = 100!) | - **Formula (Challenger Strategic Abstention Probability (1 - v_2 / v_1) Formula)**: `=LET(v_1, B2, v_2, B3, IF(OR(v_2 <= 0, v_1 < v_2), "Require v_1 >= v_2 > 0", ROUND(1 - (v_2 / v_1), 4)))` - **Formula (Total Expected All-Pay Contest Expenditure Formula)**: `=LET(v_1, B2, v_2, B3, IF(OR(v_2 <= 0, v_1 < v_2), "Require v_1 >= v_2 > 0", ROUND(0.5 * v_2 * (1 + (v_2 / v_1)), 4)))` ### All-Units vs Incremental Discount EOQ Formula - **URL**: https://sheets.arte-soft.com/en/learn/all-units-vs-incremental-quantity-discount-eoq-total-cost-formula/ - **Summary**: Compare All-Units Price-Break EOQ (step-up to Q_brk) against Incremental Marginal-Tier Discount EOQ (effective setup S + (p_0 - p_1)*Q_brk) on total annual landed cost. *Table — Never confuse an All-Units supplier price break with an Incremental marginal-tier discount!:* | Supplier Contract Structure (D=3,600, S=100, h=20%, Q_brk=900) | Optimal Order Quantity Q* | Minimum Total Annual Cost | | --- | --- | --- | | No-Discount Base Tier (p_0 = 10.00) | EOQ_0 = 600 units | 37,200.00 / yr | | All-Units Price Break (All Q >= 900 at 9.00) | Q_AU* = 900 units (At Break!) | 33,610.00 / yr (-3,590 Saved!) | | Incremental Tier Break (Units > 900 at 9.00) | EOQ_inc* = 2,000 units (Never at Break!) | 36,000.00 / yr (-1,200 Saved) | - **Formula (Minimum Total Annual Cost Under All-Units Price Break Formula)**: `=LET(d_yr, B2, s_ord, B3, h_rt, B4, p_0, B5, q_bk, B6, p_1, B7, IF(OR(d_yr <= 0, s_ord <= 0, h_rt <= 0, p_1 <= 0, p_0 <= p_1, q_bk <= 0), "Invalid Discount EOQ Input", LET(q_0, MIN(q_bk - 1, SQRT((2 * d_yr * s_ord) / (h_rt * p_0))), tc_0, d_yr * p_0 + (d_yr / q_0) * s_ord + 0.5 * q_0 * h_rt * p_0, q_au, MAX(q_bk, SQRT((2 * d_yr * s_ord) / (h_rt * p_1))), tc_au, d_yr * p_1 + (d_yr / q_au) * s_ord + 0.5 * q_au * h_rt * p_1, ROUND(MIN(tc_0, tc_au), 2))))` - **Formula (Minimum Total Annual Cost Under Incremental Marginal Discount Formula)**: `=LET(d_yr, B2, s_ord, B3, h_rt, B4, p_0, B5, q_bk, B6, p_1, B7, IF(OR(d_yr <= 0, s_ord <= 0, h_rt <= 0, p_1 <= 0, p_0 <= p_1, q_bk <= 0), "Invalid Discount EOQ Input", LET(q_0, MIN(q_bk, SQRT((2 * d_yr * s_ord) / (h_rt * p_0))), tc_0, d_yr * p_0 + (d_yr / q_0) * s_ord + 0.5 * q_0 * h_rt * p_0, s_inc, s_ord + (p_0 - p_1) * q_bk, q_in, MAX(q_bk, SQRT((2 * d_yr * s_inc) / (h_rt * p_1))), tc_in, d_yr * p_1 + (d_yr / q_in) * s_inc + 0.5 * q_in * h_rt * p_1, ROUND(MIN(tc_0, tc_in), 2))))` ### Check if all values in a range are at least a minimum threshold - **URL**: https://sheets.arte-soft.com/en/learn/all-values-in-range-meet-minimum/ - **Summary**: Verify that every cell in a batch meets a minimum score AND no cell was left blank—avoiding the MIN(range) blank-cell loophole. *Table — Why MIN(A2:A5) >= 75 passes incomplete batches:* | Scenario | Scores (A2:A5) | MIN >= 75 | Complete + COUNTIF Pass | | --- | --- | --- | --- | | All >= 75 | 84, 91, 75, 88 | TRUE | TRUE | | One < 75 | 84, 91, 72, 88 | FALSE | FALSE | | Missing score | 84, 91, (blank), 88 | TRUE (bug!) | FALSE | - **Formula (Completeness-checked threshold formula)**: `=AND(COUNT(A2:A5) = ROWS(A2:A5), COUNTIF(A2:A5, "<" & B2) = 0)` - **Formula (Demonstrate the blank-cell trap in plain MIN)**: `=MIN(A2:A5) >= B2` ### Strong Allee Effect Population Growth & Critical Extinction Threshold - **URL**: https://sheets.arte-soft.com/en/learn/allee-effect-population-growth-critical-extinction-threshold/ - **Summary**: Calculate cubic strong Allee population growth rate dN/dt = r * N * (1 - N / K) * (N / A - 1), per-capita growth rate, and extinction-vortex vs carrying-capacity trajectory. *Table — Model minimum viable populations, mate-finding failure, and cooperative defense!:* | Population Size N (r = 0.40/yr, K = 1,000, Allee A = 150) | Logistic Factor (1 - N/K) | Allee Factor (N/A - 1) | Growth dN/dt & Fate | | --- | --- | --- | --- | | Sub-Threshold Herd (N = 100 < A) | 0.90 | -0.3333 (Negative!) | -12.00 / yr -> Extinction Vortex! | | Recovering Population (N = 300 > A) | 0.70 | +1.0000 | +84.00 / yr -> Grows Toward K | | Carrying Capacity (N = 1,000 = K) | 0.00 | +5.6667 | 0.00 / yr -> Stable Equilibrium | - **Formula (Cubic Strong Allee Growth Rate dN/dt Formula)**: `=IF(OR(B3 <= 0, B4 <= 0, B4 >= B3), "Invalid Parameters (Require 0 < A < K)", ROUND(B2 * B5 * (1 - B5 / B3) * (B5 / B4 - 1), 2))` - **Formula (Demographic Trajectory Regime (Extinction Vortex vs Viable Growth))**: `=IFS(B5 <= 0, "Extinct (N = 0)", B5 < B4, "Extinction Vortex (N < Allee Threshold)", B5 = B4, "Unstable Allee Tipping Point", B5 < B3, "Viable Recovery Toward K", TRUE, "At or Above Carrying Capacity K")` ### Allen-Cuneen G/G/c Multi-Server Queue Formula - **URL**: https://sheets.arte-soft.com/en/learn/allen-cuneen-g-g-c-multi-server-queue-variability-waiting-time-formula/ - **Summary**: Calculate Multi-Server Utilization rho = lambda / (c * mu), Baseline Erlang-C M/M/c Waiting Time, Allen-Cuneen G/G/c Variability-Adjusted Waiting Time W_q, and Little’s Law Queue WIP L_q. *Table — Extend Kingman’s VUT law to parallel multi-tool bays with the Allen-Cuneen formula!:* | Allen-Cuneen G/G/c Metric (lambda=9/hr, c=2, mu=7.5/hr, Pw=0.45, Ca^2=1.8, Cs^2=0.6) | Formula | Verified Output | | --- | --- | --- | | Multi-Server Utilization rho | lambda / (c * mu) | 0.6000 (60.00% < 100% Stable) | | Baseline M/M/c Queue Wait (hr) | P_wait / (c * mu - lambda) | 0.0750 hr (4.50 minutes) | | Allen-Cuneen G/G/c Wait W_q (hr) | W_q_MMc * ((C_a^2 + C_s^2) / 2) | 0.0900 hr (0.0000 @ D/D/c) | | Expected Queue WIP L_q (lots) | lambda * W_q_GGc | 0.8100 lots | - **Formula (Allen-Cuneen Multi-Server G/G/c Waiting Time Formula)**: `=LET(lm_a, B2, sv_c, B3, mu_s, B4, p_wt, B5, ca_2, B6, cs_2, B7, IF(OR(lm_a <= 0, sv_c < 1, mu_s <= 0, p_wt <= 0, p_wt > 1, ca_2 < 0, cs_2 < 0), "Invalid Queue Input", IF(lm_a >= sv_c * mu_s, "Unstable Queue (rho >= 1)", LET(wq_m, p_wt / (sv_c * mu_s - lm_a), ROUND(wq_m * ((ca_2 + cs_2) / 2), 4)))))` - **Formula (Deterministic D/D/c Zero-Wait & M/M/c Exact Recovery Checks)**: `=IF(ISTEXT(E4), E4, ROUND(B2 * E4, 4))` ### Allen-Cunneen G/G/c Multi-Server Queue Waiting Time Approximation - **URL**: https://sheets.arte-soft.com/en/learn/allen-cunneen-multi-server-g-g-c-queue-waiting-time/ - **Summary**: Calculate expected waiting time in queue Wq and queue length Lq for general multi-server G/G/c stations (fab tool groups, CT scanners, call centers) using Allen-Cunneen variability scaling (Ca^2 + Cs^2) / 2. *Table — Extend Kingman's variability law from 1 server to c parallel servers!:* | 3-Server Cell (c=3, mu=10/hr, rho=0.80, Pw=0.35) | Variability (Ca, Cs) | Variability Factor (Ca^2+Cs^2)/2 | Mean Queue Wait Wq (hr) | | --- | --- | --- | --- | | Bursty Shop Floor | Ca = 1.2, Cs = 0.8 | (1.44 + 0.64) / 2 = 1.04 | 0.0607 hr (3.64 min) | | Pure Poisson Erlang-C | Ca = 1.0, Cs = 1.0 | (1.00 + 1.00) / 2 = 1.00 | 0.0583 hr (3.50 min) | | Scheduled Paced Cell | Ca = 0.5, Cs = 0.5 | (0.25 + 0.25) / 2 = 0.25 | 0.0146 hr (76% wait cut!) | - **Formula (Allen-Cunneen G/G/c Expected Waiting Time in Queue Wq (Hours))**: `=IF(OR(B2 < 1, B3 <= 0, B4 <= 0, B4 >= 1, B5 < 0, B5 > 1, B6 < 0, B7 < 0), "Invalid G/G/c Parameters", ROUND((B5 / (B2 * B3 * (1 - B4))) * (((B6 ^ 2) + (B7 ^ 2)) / 2), 4))` - **Formula (Expected Queue Length Lq = lambda * Wq = (c * mu * rho) * Wq (Jobs))**: `=IF(OR(B2 < 1, B3 <= 0, B4 <= 0, B4 >= 1), "Invalid G/G/c Parameters", ROUND((B2 * B3 * B4) * ((B5 / (B2 * B3 * (1 - B4))) * (((B6 ^ 2) + (B7 ^ 2)) / 2)), 3))` ### Allowance for Doubtful Accounts & Bad Debt Expense (AR aging SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/allowance-for-doubtful-accounts-bad-debt-aging-reserve/ - **Summary**: Illustrate an aging-based allowance estimate and the adjustment from an existing unadjusted allowance balance. *Table — Why the aging method computes TARGET ending allowance—not period expense directly!:* | AR Aging Bucket (A) | Gross AR (B) | Assumed loss rate (C) | Required Reserve | | --- | --- | --- | --- | | 0–30 days past due | $120,000 | 1.0% | $1,200 | | 31–60 days past due | $40,000 | 4.0% | $1,600 | | 61–90 days past due | $20,000 | 15.0% | $3,000 | | 91+ days past due | $10,000 | 50.0% | $5,000 (Sum = $10,800; Net AR = $179,200) | - **Formula (Estimated ending allowance)**: `=SUMPRODUCT(B2:B5, C2:C5)` - **Formula (Period Bad Debt Expense adjusting entry and Net Realizable AR)**: `=SUMPRODUCT(B2:B5, C2:C5) - E2` - **Formula (Net receivables after the estimated allowance)**: `=SUM(B2:B5)-SUMPRODUCT(B2:B5,C2:C5)` ### Almgren-Chriss Optimal Execution Market Impact & Urgency Kappa Formula - **URL**: https://sheets.arte-soft.com/en/learn/almgren-chriss-optimal-execution-market-impact-cost-formula/ - **Summary**: Calculate expected implementation shortfall E[Cost] = 0.5 * gamma * X^2 + (eta / tau) * SUMPRODUCT(n_k, n_k) and execution urgency kappa = SQRT(lambda_risk * sigma^2 / eta) across child-order slices. *Table — Balance temporary child-order slippage against timing risk!:* | Schedule (X = 100,000 sh, 4 Days) | Permanent Cost ($) | Temporary Cost ($) | Expected Shortfall ($) | | --- | --- | --- | --- | | Front-Loaded [40k, 30k, 20k, 10k] | $1,000.00 | $6,000.00 | $7,000.00 | | Equal-Slice TWAP [25k, 25k, 25k, 25k] | $1,000.00 | $5,000.00 | $6,000.00 | | Urgency Parameter kappa (1/day) | sigma = $0.80 | lambda = 1e-5, eta = 2e-6 | 1.7889 / day | - **Formula (Expected Total Market-Impact Cost ($ Implementation Shortfall))**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0, B5 <= 0, ABS(SUM(B6:B9) - B2) > 0.01), "Invalid Execution Inputs", ROUND(0.5 * B3 * (B2 ^ 2) + (B4 / B5) * SUMPRODUCT(B6:B9, B6:B9), 2))` - **Formula (Almgren-Chriss Execution Urgency Parameter (kappa))**: `=IF(OR(B4 <= 0, B10 < 0, B11 < 0), "Invalid Risk Inputs", ROUND(SQRT(B11 * (B10 ^ 2) / B4), 4))` ### Alonso-Muth-Mills Monocentric Bid-Rent & Fringe Formula - **URL**: https://sheets.arte-soft.com/en/learn/alonso-muth-mills-monocentric-city-bid-rent-and-density-gradient/ - **Summary**: Model urban floor-space rent decay p_H(d) = p_H(0) * (1 - t*d/Y)^(1/alpha), suburban dwelling expansion, and agricultural city-edge radius d_max. *Table — Derive urban rent gradients and dwelling-size expansion from Muth’s Condition:* | Urban Spatial Metric (Y=80k, t=1,600, alpha=0.25, p_0=1,600) | Formula | Verified Output | | --- | --- | --- | | Bid-Rent at d = 10 km | p_H(0) * (1 - t * d / Y)^(1 / alpha) | 655.36 / m^2 | | Dwelling Size h(0) vs h(10) | alpha * (Y - t * d) / p_H(d) | 12.50 vs 24.4141 m^2 | | Urban Fringe Radius (d_max) | (Y / t) * (1 - (p_agr / p_H(0))^alpha) | 25.00 km (at p_agr = 100) | - **Formula (Alonso-Muth-Mills Bid-Rent p_H(d) Formula)**: `=LET(inc_y, B2, t_cm, B3, alp_h, B4, p_cbd, B5, d_km, B6, IF(OR(inc_y <= 0, t_cm <= 0, alp_h <= 0, alp_h >= 1, p_cbd <= 0, d_km < 0, t_cm * d_km >= inc_y), "Invalid Urban Input", ROUND(p_cbd * POWER(1 - (t_cm * d_km) / inc_y, 1 / alp_h), 4)))` - **Formula (Equilibrium Urban Fringe Boundary d_max Where p_H(d_max) = p_agr Formula)**: `=LET(inc_y, B2, t_cm, B3, alp_h, B4, p_cbd, B5, p_ag, B7, IF(OR(inc_y <= 0, t_cm <= 0, alp_h <= 0, alp_h >= 1, p_ag <= 0, p_cbd <= p_ag), "Invalid Fringe Input", ROUND((inc_y / t_cm) * (1 - POWER(p_ag / p_cbd, alp_h)), 4)))` ### Altman Z-Score formula: corporate credit risk & bankruptcy distress zones - **URL**: https://sheets.arte-soft.com/en/learn/altman-z-score-bankruptcy-credit-risk-formula/ - **Summary**: Practice the common rounded-coefficient Altman Z-score for public manufacturing firms and its conventional zones. The result is a screening metric, not a default probability. *Table — Combine liquidity, profitability, leverage, and asset turnover into one credit score:* | Altman Ratio Component ($1,000M Assets) | Ratio Value | Weight | Weighted Contribution | | --- | --- | --- | --- | | X1: Working Capital / Assets ($200 / $1,000) | 0.20 | 1.2 | 0.240 | | X2: Retained Earnings / Assets ($300 / $1,000) | 0.30 | 1.4 | 0.420 | | X3: EBIT / Assets ($150 / $1,000) | 0.15 | 3.3 | 0.495 | | X4: Mkt Equity / Liab ($900/$500) & X5: Sales/Assets (1.20) | 1.80 & 1.20 | 0.6 & 1.0 | 1.080 + 1.200 -> Z = 3.435 (model Safe Zone) | - **Formula (Calculate the 5-factor Altman Z-Score)**: `=IF(OR(COUNT(A2:G2)<>7,A2<=0,F2<=0,E2<0,G2<0),"Invalid inputs",ROUND(1.2 * (B2 / A2) + 1.4 * (C2 / A2) + 3.3 * (D2 / A2) + 0.6 * (E2 / F2) + 1 * (G2 / A2), 3))` - **Formula (Classify Z-Score into Safe, Grey, or Distress credit zone)**: `=IF(OR(COUNT(A2:G2)<>7,A2<=0,F2<=0,E2<0,G2<0),"Invalid inputs",LET(z, 1.2 * (B2 / A2) + 1.4 * (C2 / A2) + 3.3 * (D2 / A2) + 0.6 * (E2 / F2) + 1 * (G2 / A2), IFS(z > 2.99, "Safe Zone", z >= 1.81, "Grey Zone", TRUE, "Distress Zone")))` ### Alum Coagulation Alkalinity Consumed & Sludge Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/alum-coagulation-stoichiometric-alkalinity-consumed-and-sludge-yield-formula/ - **Summary**: Calculate Filter Alum Alkalinity Consumed (mg/L CaCO3), Unadjusted Remaining Alkalinity (mg/L), Supplemental Alkalinity Dose Required (mg/L CaCO3), and Daily Dry Alum Sludge (kg/d). *Table — Every 1 mg/L of commercial alum destroys ~0.45 mg/L CaCO3 alkalinity—crashing pH if unbuffered!:* | Alum Jar-Test Stoichiometry KPI (50 MLD, 60 mg/L Alum, 35 Alk, 40 TSS) | Formula | Verified Output | | --- | --- | --- | | Alkalinity Consumed (mg/L CaCO3) | 0.45 * Alum_Dose_mg_L | 27.00 mg/L | | Unadjusted Residual Alk (mg/L) | Raw_Alkalinity - 0.45 * Alum_Dose | 8.00 mg/L (33.00 @ 60 Raw Alk) | | Supplemental Alk Needed (mg/L) | MAX(0, Target_Res_Alk - Unadj_Res_Alk) | 12.00 mg/L (0.00 @ 60 Raw Alk) | | Total Dry Alum Sludge (kg/d) | Flow_MLD * (TSS_Removed + 0.26 * Alum) | 2,780.00 kg/d | - **Formula (Alum Alkalinity Deficit & Dry Coagulation Sludge Formula)**: `=LET(qm_l, B2, al_d, B3, rw_a, B4, tg_a, B5, ts_r, B6, IF(OR(qm_l <= 0, al_d <= 0, rw_a < 0, tg_a < 5, ts_r < 0), "Invalid Alum Dose Input", LET(cn_a, 0.45 * al_d, rm_a, rw_a - cn_a, ROUND(MAX(0, tg_a - rm_a), 2))))` - **Formula (Well-Buffered Hard River Water Zero-Lime Check (Set Raw Alkalinity = 60 mg/L))**: `=IF(ISTEXT(E4), E4, ROUND(B2 * (B6 + 0.26 * B3), 2))` ### Aluminum Sulfuric Anodizing "720 Rule" & Growth Formula - **URL**: https://sheets.arte-soft.com/en/learn/aluminum-sulfuric-anodizing-amp-rule-720-oxide-build-and-rectifier-load-formula/ - **Summary**: Calculate Target Coating Thickness in Mils (0.001 in), Sulfuric-Bath Anodizing Tank Time via the 720 Rule (min), Total Titanium-Rack DC Rectifier Load (A), and Outside-Diameter Dimensional Growth (um). *Table — Anodizing converts aluminum INTO Al2O3—50% penetrates inward and 50% grows outward, shrinking bores and swelling ODs by 1x total coating thickness!:* | MIL-A-8625 Anodizing KPI (50 um Type III @ 24 ASF on 14.5 ft², K=720) | Formula | Verified Output | | --- | --- | --- | | Target Oxide Thickness (mils) | Target_Oxide_um / 25.4 | 1.969 mils (0.709 mils @ 18 um Type II) | | 720-Rule Tank Time (min) | (K_720 * (Target_um / 25.4)) / ASF | 59.06 min (34.02 min @ 18 um, 15 ASF) | | Total Rack Rectifier Current (A) | Current_Density_ASF * Rack_Area_ft2 | 348.0 A (217.5 A @ 15 ASF Type II) | | Shaft OD Growth / Bore Shrink (um) | 2 * (0.50 * Target_Oxide_um) | 50.0 um (18.0 um @ 18 um Type II) | - **Formula (MIL-A-8625 Sulfuric Anodizing 720-Rule Cycle Time & Diameter Shift Formula)**: `=LET(tx_u, B2, cd_a, B3, ar_f, B4, kr_c, B5, IF(OR(tx_u <= 1, tx_u > 125, cd_a < 8, cd_a > 48, ar_f <= 0, kr_c < 650, kr_c > 820), "Invalid Anodize Input", ROUND(2 * (0.5 * tx_u), 1)))` - **Formula (Clear Type II Decorative Anodize Schedule Check (Set Oxide = 18.0 um & Current Density = 15.0 ASF))**: `=IF(ISTEXT(E5), E5, ROUND((B5 * (B2 / 25.4)) / B3, 2))` ### Spreadsheet arithmetic for a simplified alveolar gas equation and P/F ratio - **URL**: https://sheets.arte-soft.com/en/learn/alveolar-gas-equation-a-a-oxygen-gradient-and-pf-ratio/ - **Summary**: Use fictional values to practice pressure units and ratios; this example does not diagnose respiratory disease or recommend treatment. *Table — Fictional physiology arithmetic with fixed assumptions:* | ABG Parameter | Cell | Fictional inputs | Pulmonary Result | | --- | --- | --- | --- | | FiO2 & Barometric P_atm | B2 = 0.21, B3 = 760 mmHg | 0.21 * (760 - 47) = 149.73 | Inspired dry O2 pressure | | Arterial PaCO2 & RQ (0.8) | B4 = 40 mmHg | 40 / 0.8 = 50.00 mmHg | PAO2 = 99.73 mmHg | | Arterial oxygen | B5=88mmHg | 99.73-88 | Difference11.73mmHg | | PaO2 / FiO2 (P/F Ratio) | 88 / 0.21 | 419.05 mmHg | Ratio only; no health classification | - **Formula (Alveolar Oxygen Tension PAO2 & A-a Gradient (mmHg))**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,B2>1,B3<=47,B4<0,B5<0),"Invalid inputs",IF(B2*(B3-47)-B4/0.8<0,"Inconsistent inputs",ROUND((B2 * (B3 - 47) - (B4 / 0.8)) - B5, 2)))` - **Formula (PaO2 divided by inspired oxygen fraction)**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,B2>1,B3<=47,B4<0,B5<0),"Invalid inputs",ROUND(B5 / B2, 2))` ### Visceral Adiposity Index (VAI) Calculator: Amato Sex-Specific Waist-BMI-Lipid Formula - **URL**: https://sheets.arte-soft.com/en/learn/amato-visceral-adiposity-index-vai-sex-specific-cardiometabolic/ - **Summary**: Quantify visceral adipose dysfunction and cardiometabolic risk using Marco C. Amato et al.’s (2010, Diabetes Care) sex-specific Visceral Adiposity Index combining Waist Circumference, BMI, Triglycerides (mmol/L), and HDL-C (mmol/L). *Table — Combine anatomical central waist excess with functional dyslipidemia (high TG, low HDL) in one MRI-calibrated score!:* | Patient Profile (WC cm, BMI kg/m^2, TG & HDL in mmol/L) | Applicable Amato Equation | Evaluated VAI Score | | --- | --- | --- | | Healthy Reference Male (WC=83.2, BMI=23.15, TG=1.03, HDL=1.31) | VAI_M Baseline | 1.00 (Ideal Adipose Function) | | Dyslipidemic Male (WC=102, BMI=29.5, TG=2.10, HDL=0.95) | VAI_M | 3.06 (Marked Visceral Dysfunction) | | Dyslipidemic Female (WC=92, BMI=28.0, TG=1.80, HDL=1.15) | VAI_F | 3.02 (Marked Visceral Dysfunction) | - **Formula (Amato (2010) Sex-Specific Visceral Adiposity Index (VAI, mmol/L Lipids))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 45, B3 > 200, B4 < 14, B4 > 75, B5 <= 0, B6 <= 0), "Invalid Sex (M/F), Waist, BMI, or Lipid (mmol/L) Inputs", ROUND(IF(B2 = "M", (B3 / (39.68 + 1.88 * B4)) * (B5 / 1.03) * (1.31 / B6), (B3 / (36.58 + 1.89 * B4)) * (B5 / 0.81) * (1.52 / B6)), 2))` - **Formula (VAI Adipose-Tissue Dysfunction Classification (> 2.00 Cutoff))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 45, B3 > 200, B4 < 14, B4 > 75, B5 <= 0, B6 <= 0), "Invalid Sex (M/F), Waist, BMI, or Lipid (mmol/L) Inputs", IF(IF(B2 = "M", (B3 / (39.68 + 1.88 * B4)) * (B5 / 1.03) * (1.31 / B6), (B3 / (36.58 + 1.89 * B4)) * (B5 / 0.81) * (1.52 / B6)) > 2, "VAI > 2.00: Elevated Visceral Adipose Dysfunction", "VAI <= 2.00: Preserved Adipose-Lipid Profile"))` ### Amdahl's Law parallel speedup, asymptotic ceiling & Gustafson's Law formulas - **URL**: https://sheets.arte-soft.com/en/learn/amdahls-law-parallel-speedup-and-gustafsons-law/ - **Summary**: Calculate multi-core / GPU parallel speedup 1 / ((1 - p) + p / N), infinite-core serial bottleneck limit 1 / (1 - p), and Gustafson's scaled speedup. *Table — Separate fixed-workload and scaled-workload speedup assumptions:* | Parallel Scaling Metric (p = 80% Parallel, N = 8 Cores) | Formula | Speedup | | --- | --- | --- | | Amdahl's Law (8 Cores) | 1 / ((1 - 0.80) + 0.80 / 8) | 3.33x (41.7% efficiency) | | Amdahl Asymptotic Ceiling (N -> inf) | 1 / (1 - 0.80) | 5.00x absolute max | | Gustafson's Scaled Speedup (8 Cores) | (1 - 0.80) + 8 * 0.80 | 6.60x | | Amdahl at p = 95% Parallel on 16 Cores | 1 / (0.05 + 0.95 / 16) | 9.14x (Max = 20.0x) | - **Formula (Amdahl's Law speedup across N cores or workers)**: `=IF(OR(COUNT(A2:B2)<>2,A2<0,A2>1,B2<1,B2<>INT(B2)),"Invalid inputs",ROUND(1 / ((1 - A2) + (A2 / B2)), 2))` - **Formula (Asymptotic max speedup ceiling and Gustafson's Law)**: `=IF(OR(NOT(ISNUMBER(A2)),A2<0,A2>1),"Invalid inputs",IF(A2=1,"No finite ceiling",ROUND(1/(1-A2),2)))` ### Amihud (ILLIQ) Illiquidity Ratio Formula: Return Impact per $1M Volume - **URL**: https://sheets.arte-soft.com/en/learn/amihud-illiquidity-ratio-price-impact-per-dollar-volume/ - **Summary**: Measure stock market illiquidity from standard daily bars using Amihud’s (2002) ratio ILLIQ = (1 / D) * Sum(|R_t %| / DollarVolume_MUSD_t) without requiring tick-level order-book data. *Table — Quantify price impact per million dollars traded from daily OHLCV data!:* | Trading Day | Abs Daily Return \|R_t\| (%) | Dollar Volume ($M) | Daily Impact (%/M$) | | --- | --- | --- | --- | | Day 1 | 1.20% | $4.00M | 0.3000 | | Day 2 | 0.80% | $2.00M | 0.4000 | | Day 3 | 2.50% | $5.00M | 0.5000 | | Day 4 | 1.50% | $3.00M | 0.5000 (Mean ILLIQ = 0.4250) | - **Formula (Mean Amihud Illiquidity Ratio (% Move per $1M Traded))**: `=IF(MIN(C2:C5) <= 0, "Zero Volume Day Detected", ROUND(SUMPRODUCT(B2:B5 / C2:C5) / COUNT(B2:B5), 4))` - **Formula (Estimated Linear Price Impact (bps) for Order Size Q ($M))**: `=IF(OR(MIN(C2:C5) <= 0, B6 < 0), 0, ROUND(100 * B6 * (SUMPRODUCT(B2:B5 / C2:C5) / COUNT(B2:B5)), 2))` ### Anaerobic Digester VS Destruction, Biogas & CHP kWe Formula - **URL**: https://sheets.arte-soft.com/en/learn/anaerobic-digester-volatile-solids-destruction-biogas-methane-and-chp-kw/ - **Summary**: Calculate Mesophilic Anaerobic Digester Destroyed Volatile Solids (kg/d), Raw Biogas Production (Nm³/d), Pure Biomethane Yield (Nm³/d), and Continuous Cogeneration CHP Power (kWe). *Table — Multiply biogas yield by DESTROYED volatile solids—not influent total solids—and separate CH4 from CO2!:* | Anaerobic Digester & CHP KPI (8,000 kg VS/d, 55% Destr, 0.90 Nm³/kg, 65% CH4) | Formula | Verified Output | | --- | --- | --- | | Destroyed Volatile Solids (kg/d) | Influent_VS_kg_d * VS_Destruction_Eff | 4,400.00 kg/d (6,000 @ Co-Digest) | | Raw Biogas Production (Nm³/d) | Destroyed_VS_kg_d * Biogas_Yield_Nm3_kg | 3,960.00 Nm³/d (5,400 @ Co-Digest) | | Pure Biomethane Flow (Nm³/d) | Raw_Biogas_Nm3_d * Methane_Fraction | 2,574.00 Nm³/d (3,510 @ Co-Digest) | | Continuous CHP Power (kWe) | (Biomethane_Nm3_d * 10.0 / 24) * CHP_Eff | 429.00 kWe (585.00 @ Co-Digest) | - **Formula (Biogas Mass-Balance & Continuous CHP Electrical Power Formula)**: `=LET(vs_i, B2, ds_e, B3, bg_y, B4, ch_f, B5, el_e, B6, IF(OR(vs_i <= 0, ds_e <= 0.1, ds_e > 0.9, bg_y <= 0.3, bg_y > 1.5, ch_f <= 0.4, ch_f > 0.8, el_e <= 0.2, el_e > 0.55), "Invalid Digester Input", LET(vs_d, vs_i * ds_e, ch_m, vs_d * bg_y * ch_f, ROUND((ch_m * 10 / 24) * el_e, 2))))` - **Formula (High-Strength Food-Waste Co-Digestion Lift Check (10,000 kg VS/d @ 60% Destruction))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * B3 * B4 * B5, 2))` ### AND function: require two inspection checks to pass together - **URL**: https://sheets.arte-soft.com/en/learn/and-function-two-conditions/ - **Summary**: Accept a chilled delivery only when the recorded temperature is within limit and the receiver has signed off, while preventing blank temperature cells from passing as zero. *Table — Four delivery lots that test every combination:* | Lot (A) | Temp °C (B) | Signed off (C) | | --- | --- | --- | | Lot 10 | 4 | Yes | | Lot 11 | 4 | No | | Lot 12 | 7 | Yes | | Lot 13 | 8 | No | - **Formula (Combine every required test inside AND)**: `=AND(B2<>"",B2<=5,C2="Yes")` - **Formula (Turn the TRUE/FALSE check into a clear label)**: `=IF(AND(B2<>"",B2<=5,C2="Yes"),"Accept","Hold")` ### Anderson-van Wincoop Gravity & Multilateral Resistance - **URL**: https://sheets.arte-soft.com/en/learn/anderson-van-wincoop-gravity-trade-and-multilateral-resistance/ - **Summary**: Compute structural bilateral trade X_ij = (Y_i * Y_j / Y_W) * (t_ij / (Pi_i * P_j))^(1 - sigma) and expose naive Tinbergen border-puzzle bias. *Table — Why bilateral trade depends on RELATIVE barriers t_ij / (Pi_i * P_j), not t_ij alone!:* | Gravity Model Specification (Y_i=200, Y_j=300, Y_W=10k, sig=5) | Formula | Predicted Bilateral Flow | | --- | --- | --- | | Frictionless Benchmark (t_ij=Pi_i=P_j=1) | (Y_i * Y_j) / Y_W | 6.0000 | | Naive Tinbergen Gravity (Ignores MR) | (Y_i * Y_j / Y_W) * t_ij^(1 - sigma) | 2.4576 | | Structural AvW Gravity (Pi_i=P_j=1.50) | (Y_i*Y_j/Y_W) * (t_ij/(Pi_i*P_j))^(1-sig) | 62.9856 (25.63x Naive!) | - **Formula (Anderson-van Wincoop Structural Bilateral Gravity Flow X_ij Formula)**: `=LET(y_ex, B2, y_im, B3, y_wd, B4, sig_c, B5, t_bi, B6, pi_out, B7, p_in, B8, IF(OR(y_ex <= 0, y_im <= 0, y_wd < y_ex + y_im, sig_c <= 1, t_bi < 1, pi_out <= 0, p_in <= 0), "Invalid Gravity Input", ROUND((y_ex * y_im / y_wd) * POWER(t_bi / (pi_out * p_in), 1 - sig_c), 4)))` - **Formula (Multilateral-Resistance Redirection Amplification Factor (Pi_i * P_j)^(sigma - 1) Formula)**: `=IF(OR(B5 <= 1, B7 <= 0, B8 <= 0), "Invalid Gravity Input", ROUND(POWER(B7 * B8, B5 - 1), 4))` ### Andrew Lo Autocorrelated Sharpe Ratio Annualization Formula - **URL**: https://sheets.arte-soft.com/en/learn/andrew-lo-autocorrelated-sharpe-ratio-annualization-haircut-formula/ - **Summary**: Replace naive SQRT(12) Sharpe annualization on smoothed or illiquid returns with Andrew Lo’s (2002) exact AR(1) serial-correlation scaling factor eta(q, rho_1). *Table — Expose why SQRT(12) annualization overstates smoothed fund Sharpe ratios by 30%+:* | Annualization Metric (q = 12) | Formula Expression | Sample Output (rho_1 = 0.40) | | --- | --- | --- | | Naive i.i.d. Sharpe (Bug) | SQRT(q) * SR_m = 3.4641 * 0.50 | 1.7321 (Overstated by +0.5503) | | AR(1) Variance Multiplier V_mult | q + (2*rho/(1-rho)^2)*(q*(1-rho) - (1-rho^q)) | 25.7778 (vs 12.0000 i.i.d.) | | Lo Annualization Factor eta | q / SQRT(V_mult) | 2.3635 (vs 3.4641 i.i.d.) | | Lo True Annualized Sharpe | eta(q, rho_1) * SR_m | 1.1818 | - **Formula (Lo AR(1) Annualization Factor eta(q, rho_1) Formula)**: `=LET(q_per, B3, rho_a, B4, IF(OR(q_per < 1, ABS(rho_a) >= 1), "Invalid AR(1) Input", LET(v_mul, q_per + ((2 * rho_a) / ((1 - rho_a)^2)) * (q_per * (1 - rho_a) - (1 - (rho_a^q_per))), ROUND(q_per / SQRT(v_mul), 4))))` - **Formula (Autocorrelation-Adjusted Annualized Sharpe Formula & Mean-Reversion Check)**: `=LET(sr_m, B2, q_per, B3, rho_a, B4, IF(OR(q_per < 1, ABS(rho_a) >= 1), "Invalid AR(1) Input", LET(v_mul, q_per + ((2 * rho_a) / ((1 - rho_a)^2)) * (q_per * (1 - rho_a) - (1 - (rho_a^q_per))), ROUND(sr_m * (q_per / SQRT(v_mul)), 4))))` ### Annual Compound Interest Schedule: Year-by-Year Opening, Interest & Ending Balance - **URL**: https://sheets.arte-soft.com/en/learn/annual-compound-interest-rollforward-schedule-formula/ - **Summary**: Build a multi-year compound interest rollforward table showing Beginning Balance, Annual Interest Earned, and Ending Balance—reconciled against P * (1 + r)^n and FV. *Table — Why treasury teams pair a year-by-year rollforward schedule with closed-form FV!:* | Schedule Year (Principal = $50,000, r = 6.0%) | Opening Balance ($) | Annual Interest Earned ($) | Ending Balance ($) | | --- | --- | --- | --- | | Year 1 | $50,000.00 | $3,000.00 | $53,000.00 | | Year 2 | $53,000.00 | $3,180.00 | $56,180.00 | | Year 3 | $56,180.00 | $3,370.80 | $59,550.80 | | Year 4 (Maturity) | $59,550.80 | $3,573.05 | $63,123.85 (Total Int = $13,123.85) | - **Formula (Closed-Form Ending Compound Balance via FV Cross-Check)**: `=IF(OR(G2 < 0, G3 < 0, G4 < 0), "Invalid Schedule Inputs", ROUND(-FV(G3, G4, 0, G2), 2))` - **Formula (Cumulative Compound Interest Earned Across Schedule Rows C2:C5)**: `=ROUND(SUM(C2:C5), 2)` ### Verify Value Does Not Exist in a Blocklist (COUNTIF = 0 Anti-Join) - **URL**: https://sheets.arte-soft.com/en/learn/anti-join-must-not-exist-in-blocklist-countif-formula/ - **Summary**: Enforce "must not exist in list" blocklist rules on vendor IDs, reserved usernames, or sanctioned codes using COUNTIF($E$2:$E$6, A2) = 0 and audit batch blocklist hits. *Table — Preventing reserved usernames, retired SKUs, and sanctioned vendors from entering clean tables!:* | Submitted Handle (A) | Blocklist Match COUNTIF($D$2:$D$5, TRIM(A)) | Gate Status | Audit Interpretation | | --- | --- | --- | --- | | "nova_analytics" | 0 matches | "Approved" | Safe to Provision | | "admin" (Case-Insensitive) | 1 match ("ADMIN") | "Blocked — Reserved ID" | COUNTIF Catches Any Case | | "root " (Trailing Space) | 1 match after TRIM() | "Blocked — Reserved ID" | Prevents Space-Padding Bypass | - **Formula (Single-Entry Space-Safe Blocklist Gate (Must Not Exist in List))**: `=IF(LEN(TRIM(A2)) = 0, "Blank Entry", IF(COUNTIF($D$2:$D$5, TRIM(A2)) = 0, "Approved", "Blocked — Reserved ID"))` - **Formula (Count Blocked Submissions Across Candidate Batch)**: `=COUNTIF(B2:B6, ">0")` ### Antoine Vapor Pressure Equation & Vacuum Boiling Point Temperature - **URL**: https://sheets.arte-soft.com/en/learn/antoine-vapor-pressure-equation-and-boiling-point-temperature/ - **Summary**: Estimate water saturation pressure and invert the Antoine correlation within the documented 1–100°C range, using mmHg absolute pressure. *Table — An empirical correlation with a stated temperature range:* | Thermodynamic Property (Water) | Antoine Formula | Value | Engineering Meaning | | --- | --- | --- | --- | | Vapor Pressure at 100 °C | 10 ^ (B2 - (B3 / (B4 + 100))) | 760.1 mmHg | Approximate normal-pressure result | | Vapor Pressure at 25 °C | 10 ^ (B2 - (B3 / (B4 + 25))) | 23.69 mmHg | Pure-water saturation pressure | | Boiling Temp at 253 mmHg | (B3 / (B2 - LOG10(253))) - B4 | 71.9 °C | Hypothetical absolute pressure | - **Formula (Saturation Vapor Pressure P = 10^(A - (B / (C + T))))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<>8.07131,B3<>1730.63,B4<>233.426),"Use documented coefficient set",IF(OR(B5<1,B5>100),"Outside 1-100 C range",ROUND(10^(B2-B3/(B4+B5)),1))))` - **Formula (Inverse saturation temperature within the same range)**: `=IF(COUNT(B2:B4,B6)<>4,"Invalid inputs",IF(OR(B2<>8.07131,B3<>1730.63,B4<>233.426),"Use documented coefficient set",IF(B6<=0,"Positive absolute pressure required",IF(B2-LOG10(B6)<=0,"Outside 1-100 C range",LET(boilTemp,B3/(B2-LOG10(B6))-B4,IF(OR(boilTemp<1,boilTemp>100),"Outside 1-100 C range",ROUND(boilTemp,1)))))))` ### APACHE II Score & Predicted ICU In-Hospital Mortality (%) - **URL**: https://sheets.arte-soft.com/en/learn/apache-ii-acute-physiology-and-chronic-health-icu-mortality/ - **Summary**: Sum Acute Physiology Score (APS, 0–60), Age Points (0–6), and Chronic Health Points (0, 2, or 5) into total APACHE II (0–71) and compute Knaus logistic hospital mortality (%) with diagnostic category weight. *Table — How Knaus et al. (1985) standardized ICU severity-of-illness benchmarking worldwide!:* | ICU Admission Profile (24-Hour Worst Values) | Total APACHE II (0–71) | Diagnostic Weight W_diag | Predicted Hospital Mortality (%) | | --- | --- | --- | --- | | Mild Post-Stabilization Admission (APS 7 + Age 3 + Chr 0) | 10 pts | 0.000 (Baseline) | 11.3% | | Severe Multi-System ICU Admission (APS 16 + Age 5 + Chr 5) | 26 pts | 0.000 (Baseline) | 56.9% | | Same APACHE II = 26 + Emergency / Sepsis Modifier | 26 pts | +0.603 | 70.7% | - **Formula (Total APACHE II Score (APS + Age Points + Chronic Health Points, 0–71))**: `=IF(OR(B2 < 0, B2 > 60, B3 < 0, B3 > 6, NOT(OR(B4 = 0, B4 = 2, B4 = 5))), "Invalid APACHE II Subscore", B2 + B3 + B4)` - **Formula (Knaus Logistic Predicted In-Hospital Mortality (%))**: `=IF(OR(B2 < 0, B2 > 60, B3 < 0, B3 > 6, NOT(OR(B4 = 0, B4 = 2, B4 = 5))), "Invalid APACHE II Subscore", ROUND(100 / (1 + EXP(-(-3.517 + 0.146 * (B2 + B3 + B4) + B5))), 1))` ### Apfel Simplified PONV Risk Score & Multimodal Prophylaxis Calculator - **URL**: https://sheets.arte-soft.com/en/learn/apfel-postoperative-nausea-and-vomiting-ponv-prophylaxis-score/ - **Summary**: Calculate the 0–4 Apfel Postoperative Nausea and Vomiting (PONV) score, baseline unprophylaxed PONV probability (10%, 21%, 39%, 61%, 79%), and Fourth Consensus antiemetic prophylaxis tier. *Table — Predict postoperative nausea risk from 4 pre-anesthesia questions and match antiemetic classes!:* | Apfel Risk Factor Count (0–4) | Baseline Unprophylaxed PONV (%) | Risk Stratification | Consensus Antiemetic Strategy | | --- | --- | --- | --- | | 0 or 1 Risk Factors | 10% (0) / 21% (1) | Low PONV Risk | Wait-and-See Rescue or Single Agent | | 2 Risk Factors | 39% | Medium PONV Risk | 2 Distinct Antiemetic Classes (e.g., Dex + Ondansetron) | | 3 or 4 Risk Factors | 61% (3) / 79% (4) | High PONV Risk | >= 3 Multimodal Classes + Propofol TIVA / Opioid-Sparing | - **Formula (Predicted Baseline Unprophylaxed PONV Incidence (%))**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 1), "Invalid Apfel Flag (0/1)", IF(SUM(B2:B5) = 0, 10, IF(SUM(B2:B5) = 1, 21, IF(SUM(B2:B5) = 2, 39, IF(SUM(B2:B5) = 3, 61, 79)))))` - **Formula (Fourth Consensus PONV Multimodal Prophylaxis Recommendation)**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 1), "Invalid Apfel Flag (0/1)", IF(SUM(B2:B5) >= 3, "High PONV Risk (3-4 Factors: 61-79%) — >= 3 Multimodal Antiemetics + TIVA", IF(SUM(B2:B5) = 2, "Medium PONV Risk (2 Factors: 39%) — Dual-Class Antiemetic Prophylaxis", "Low PONV Risk (0-1 Factors: 10-21%) — Rescue or Single Agent")))` ### Apgar score spreadsheet exercise: validate five integer subscores - **URL**: https://sheets.arte-soft.com/en/learn/apgar-newborn-score-and-bishop-obstetric-score-formula/ - **Summary**: Sum five fictional 0–2 scores and practice validated band comparisons, with explicit limits on clinical interpretation. - **Formula (Validate every subscore before summing)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(MIN(B2:B6)<0,MAX(B2:B6)>2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6)),"Invalid inputs",SUM(B2:B6)))` - **Formula (Apply the same validation to the band label)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(MIN(B2:B6)<0,MAX(B2:B6)>2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6)),"Invalid inputs",IF(SUM(B2:B6)>=7,"Reassuring band (7-10)",IF(SUM(B2:B6)>=4,"Moderately abnormal band (4-6)","Low band (0-3)"))))` ### API 520 Liquid Relief Valve Orifice Area & API 526 Formula - **URL**: https://sheets.arte-soft.com/en/learn/api-520-liquid-pressure-relief-valve-orifice-area-overpressure-and-kv/ - **Summary**: Calculate API 520 Part I Liquid Relieving Differential Pressure (psi), Required Effective Orifice Area (in²), Rupture-Disk Combination Area (in²), and Selected API 526 Standard Orifice. *Table — Size ASME liquid relief valves at 10% overpressure (1.10 * P_set - P_back)—and round UP to an API 526 letter!:* | API 520 Liquid PRV Sizing KPI (400 GPM, SG=0.81, Kd=0.65, Kv=0.98, 100/10 psig) | Formula | Verified Output | | --- | --- | --- | | Relieving Diff Pressure (psi) | 1.10 * Set_psig - Backpressure_psig | 100.00 psi | | Required Orifice Area Kc=1.0 (in²) | Q * SQRT(SG) / (38 * Kd * Kv * SQRT(dP)) | 1.4872 in² (1.8590 @ 500 GPM) | | With Rupture Disk Kc=0.9 (in²) | Required_Area_Kc1 / 0.90 | 1.6525 in² | | Selected API 526 Standard Orifice | Next Standard Letter >= Required_Area | K (1.838 in2) (L @ 500 GPM) | - **Formula (API 520 Liquid Effective Discharge Area Formula)**: `=LET(q_gp, B2, sg_l, B3, kd_c, B4, kv_f, B5, ps_g, B6, pb_g, B7, IF(OR(q_gp <= 0, sg_l <= 0, kd_c <= 0.4, kd_c > 0.9, kv_f <= 0.3, kv_f > 1, ps_g < 15, pb_g < 0, pb_g >= 0.8 * ps_g), "Invalid API 520 Input", LET(dp_r, 1.1 * ps_g - pb_g, ROUND((q_gp * SQRT(sg_l)) / (38 * kd_c * kv_f * SQRT(dp_r)), 4))))` - **Formula (Pump Impeller Upgrade Letter Step-Up Check (Set Relieving Flow = 500 GPM))**: `=IF(ISTEXT(E3), E3, IF(E3 <= 1.287, "J (1.287 in2)", IF(E3 <= 1.838, "K (1.838 in2)", "L (2.853 in2)")))` ### API 521 Elevated Flare Thermal Radiation & Exclusion Formula - **URL**: https://sheets.arte-soft.com/en/learn/api-521-elevated-flare-stack-thermal-radiation-and-safe-exclusion-radius/ - **Summary**: Calculate API 521 Point-Source Radiated Heat Power (MW), Minimum Safe Slant Distance D (m), Required Ground-Level Sterile Exclusion Radius R (m), and Grade Radiation at Stack Base (kW/m²). *Table — Align MW to kW in API 521 D = SQRT(tau*F*Q / (4*PI()*K))—and solve Pythagoras for ground radius!:* | API 521 Flare Radiation KPI (800 MW, F=0.25, tau=0.95, K=4.73 kW/m², H=45 m) | Formula | Verified Output | | --- | --- | --- | | Radiated Thermal Power (MW) | Total_Heat_MW * Radiated_Fraction_F | 200.00 MW | | Required Slant Distance D (m) | SQRT((tau * F * Q_MW * 1000) / (4*PI()*K)) | 56.54 m | | Ground Exclusion Radius R (m) | SQRT(MAX(0, D_m^2 - Effective_Height_m^2)) | 34.23 m (0.00 m @ H = 60 m) | | Stack-Base Grade Flux (kW/m²) | (tau * F * Q_MW * 1000) / (4 * PI() * H^2) | 7.47 kW/m² (4.20 kW/m² @ 60 m) | - **Formula (API 521 Ground Exclusion Radius & Stack-Base Flux Formula)**: `=LET(q_mw, B2, fr_d, B3, ta_u, B4, k_al, B5, h_ef, B6, IF(OR(q_mw <= 0, fr_d <= 0.05, fr_d > 0.6, ta_u <= 0.5, ta_u > 1, k_al <= 0, h_ef < 5), "Invalid API 521 Flare Input", LET(d_sq, (ta_u * fr_d * q_mw * 1000) / (4 * PI() * k_al), ROUND(SQRT(MAX(0, d_sq - (h_ef ^ 2))), 2))))` - **Formula (Taller 60-Meter Stack Zero-Fence Elimination Check (Set Effective Height = 60.0 m))**: `=IF(ISTEXT(E4), E4, ROUND((B4 * B3 * B2 * 1000) / (4 * PI() * (B6 ^ 2)), 2))` ### API 5C3 Casing Biaxial Tension Collapse Derating Formula - **URL**: https://sheets.arte-soft.com/en/learn/api-5c3-oilfield-casing-d-over-t-collapse-pressure-and-biaxial-tension-derating/ - **Summary**: Calculate Casing Diameter-to-Thickness Ratio (D/t), Hencky-von Mises Biaxial Yield Reduction Factor, Effective Axial-Derated Yield Ypa (psi), and Biaxial Collapse Rating Pca (psi). *Table — Hanging 52,000 psi of buoyant string weight on L-80 casing slashes its API 5C3 external collapse rating in HALF—crushing evacuated pipe flat during swabbing or DST evacuation!:* | API 5C3 Biaxial Casing KPI (9.625" x 0.395" L-80, Yp=80,000 psi, Pc0=3,810 psi) | Formula | Verified Output | | --- | --- | --- | | Slenderness Ratio (D / t) | Casing_OD_in / Wall_Thickness_t_in | 24.37 (plastic collapse regime) | | Hencky-von Mises Biaxial Factor | SQRT(1 - 0.75 * (sa / Yp)^2) - 0.5 * (sa / Yp) | 0.8683 (0.5015 @ 52,000 psi tension!) | | Effective Hoop Yield Ypa (psi) | Nominal_Yp_psi * Hencky_VonMises_Factor | 69,467 psi (40,121 psi under heavy hang) | | Derated Collapse Rating Pca (psi) | Zero_Tension_Pc0_psi * Hencky_Factor | 3,308 psi (1,911 psi = -50% LOSS!) | - **Formula (API TR 5C3 Hencky-von Mises Distortion-Energy Biaxial Collapse Formula)**: `=LET(od_i, B2, wt_i, B3, yp_p, B4, sa_p, B5, pc_z, B6, sr_x, sa_p / yp_p, hv_f, SQRT(1 - 0.75 * (sr_x ^ 2)) - 0.5 * sr_x, IF(OR(od_i < 2.375, od_i > 30, wt_i < 0.15, wt_i > 1.5, od_i / wt_i <= 8, yp_p < 40000, yp_p > 165000, sa_p < 0, sa_p > 0.9 * yp_p, pc_z < 500, pc_z > 25000), "Invalid Casing Input", ROUND(pc_z * hv_f, 0)))` - **Formula (Upper-String Heavy Hanging Tension (`sigma_a = 52,000` psi = `65%` of Yield) Collapse Halving Check)**: `=IF(ISTEXT(E5), E5, ROUND(SQRT(1 - 0.75 * ((B5 / B4) ^ 2)) - 0.5 * (B5 / B4), 4))` ### Append Ranges Horizontally & Vertically (HSTACK & VSTACK) While Dropping Blanks - **URL**: https://sheets.arte-soft.com/en/learn/append-ranges-horizontally-and-vertically-hstack-vstack-drop-blanks/ - **Summary**: Join side-by-side column blocks with HSTACK and append multi-region tables with VSTACK + FILTER so pre-allocated blank rows never leak zeros into consolidated reports. *Table — Why modern HSTACK and VSTACK replace recursive index-stitching LAMBDAs:* | Append Direction | Dynamic Array Formula | Output Shape | Key Benefit | | --- | --- | --- | --- | | Horizontal (Columns) | HSTACK(Block_Left, Block_Right) | Rows x (Cols1 + Cols2) | Side-by-side KPI block join | | Vertical Raw | VSTACK(East_Rows, West_Rows) | (Rows1 + Rows2) x Cols | Includes blank buffer rows | | Vertical Clean | FILTER(VSTACK(...), Keys <> "") | Active_Rows x Cols | Excludes empty buffer rows | - **Formula (Clean Vertical Append Ignoring Blank Padding Rows)**: `=ROWS(FILTER(VSTACK(A2:B4, D2:E4), VSTACK(A2:A4, D2:D4) <> ""))` - **Formula (Horizontal Range Append with HSTACK)**: `=COLUMNS(HSTACK(A2:B3, D2:E3))` ### Approximate Tier Lookup with Multiple Criteria (FILTER + XLOOKUP Weight Breaks) - **URL**: https://sheets.arte-soft.com/en/learn/approximate-tier-lookup-with-multiple-criteria-filter-xlookup/ - **Summary**: Look up volume-discounted freight or commission rates where exact Zone and Service criteria combine with an approximate weight-break threshold—using FILTER inside XLOOKUP(..., -1). *Table — Combining exact categorical filters with approximate numeric bracket matching:* | Step | Expression | Role in Pricing | | --- | --- | --- | | 1. Lane mask | (A2:A7 = G2) * (B2:B7 = G3) | Isolates rows for exact Zone & Service | | 2. Filtered breaks & rates | FILTER(C2:C7, mask), FILTER(D2:D7, mask) | Extracts only that lane's weight tiers | | 3. Bracket lookup | XLOOKUP(G4, breaks, rates, "NO_LANE", -1) | Finds exact or next-smaller weight break | - **Formula (Multi-Criteria Weight-Break Rate Formula)**: `=IF(COUNTIFS(A2:A7, G2, B2:B7, G3) = 0, "NO_LANE", LET(lane_mask, (A2:A7 = G2) * (B2:B7 = G3), XLOOKUP(G4, FILTER(C2:C7, lane_mask), FILTER(D2:D7, lane_mask), "NO_TIER", -1)))` ### Arc Welding Heat Input & IIW Carbon Equivalent (CE) Formula - **URL**: https://sheets.arte-soft.com/en/learn/arc-welding-linear-heat-input-iiw-carbon-equivalent-ceiiw-and-preheat-formula/ - **Summary**: Calculate Gross Arc Power (kW), EN 1011 Thermal-Efficiency-Factored Linear Heat Input Q (kJ/mm), IIW Carbon Equivalent CE_IIW (%), and Hydrogen Cold-Cracking Preheat Requirement. *Table — Why EN 1011 multiplies V*I/v by arc efficiency k—and CE_IIW > 0.45% demands mandatory preheat against HAZ martensite cracking!:* | WPS Metallurgy KPI (28 V, 260 A, 320 mm/min, k=0.80; C=0.14, Mn=1.35) | Formula | Verified Output | | --- | --- | --- | | Gross Electric Arc Power (kW) | (Arc_Voltage_V * Current_A) / 1000 | 7.28 kW | | Factored Heat Input Q (kJ/mm) | (k * V * I * 60) / (1000 * Speed_mm_min) | 1.092 kJ/mm (1.588 @ 220 mm/min) | | IIW Carbon Equivalent CE_IIW (%) | C + Mn/6 + (Cr+Mo+V)/5 + (Ni+Cu)/15 | 0.415% (0.535% @ C=0.22, CrMoV=0.35) | | HAZ Cold-Cracking Preheat Rule | CE_IIW > 0.45% requires preheat | LOW-HYDROGEN NO PREHEAT | - **Formula (EN 1011 Factored Heat Input & IIW Carbon Equivalent Formula)**: `=LET(vl_v, B2, cr_a, B3, tv_m, B4, ef_k, B5, cb_p, B6, mn_p, B7, cm_p, B8, nc_p, B9, IF(OR(vl_v < 8, vl_v > 50, cr_a < 20, cr_a > 1200, tv_m <= 10, ef_k < 0.5, ef_k > 1, cb_p <= 0, cb_p > 1.2, mn_p < 0, cm_p < 0, nc_p < 0), "Invalid WPS Input", LET(ce_v, cb_p + mn_p / 6 + cm_p / 5 + nc_p / 15, IF(ce_v > 0.45, "PREHEAT REQUIRED (CE > 0.45)", "LOW-HYDROGEN NO PREHEAT"))))` - **Formula (Higher-Alloy Cr-Mo Steel Mill Heat & Slow Weave Pass Check (Set v = 220, C = 0.22, CrMoV = 0.35))**: `=IF(ISTEXT(E2), E2, ROUND((B5 * B2 * B3 * 60) / (1000 * B4), 3))` ### Archard Sliding Wear Equation: Wear Volume & Linear Depth (Tribology) - **URL**: https://sheets.arte-soft.com/en/learn/archard-adhesive-wear-volume-and-linear-wear-depth-formula/ - **Summary**: Calculate mechanical sliding wear volume V = (K * F_N * s) / H (mm^3) and bushing/brake-pad linear wear depth h = (K * P * s) / H from Archard's dimensionless wear coefficient K, load F_N, sliding distance s, and hardness H. *Table — Predict brake-pad, gear-tooth, and hip-implant wear life from Archard's Law!:* | Tribology Regime (F_N = 500 N, s = 10,000 m, H = 2.5e9 Pa, Area = 400 mm^2) | Wear Coeff K | Wear Volume V (mm^3) | Linear Wear Depth h (mm) | | --- | --- | --- | --- | | Dry Unlubricated Steel Sliding | K = 2.0e-4 | 400.00 mm^3 | 400 / 400 = 1.000 mm | | Boundary-Lubricated Sliding | K = 1.0e-6 | 2.00 mm^3 (-99.5% wear!) | 2 / 400 = 0.005 mm (5 um) | | Zero/Invalid Hardness Guard | H <= 0 | IF(B5 <= 0, ...) | "Invalid Surface Hardness" | - **Formula (Archard Wear Volume V in Cubic Millimeters (mm^3))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B5 <= 0), "Invalid Wear Input", ROUND(((B2 * B3 * B4) / B5) * 1E9, 2))` - **Formula (Linear Surface Recession / Wear Depth h = V_mm3 / ContactArea_mm2 (mm))**: `=ROUND((((B2 * B3 * B4) / B5) * 1E9) / B6, 4)` ### Archie Water Saturation (Sw) & Formation Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/archie-water-saturation-formation-factor-and-resistivity-log-formula/ - **Summary**: Calculate Clean-Sandstone Formation Resistivity Factor F, Archie Water Saturation Sw, Hydrocarbon Saturation Sh, and Hydrocarbon Pore-Thickness HPV (m). *Table — Enter porosity as a decimal fraction (0.20, never 20)—and cap Sw at 1.00 in wet zones!:* | Archie Well-Log KPI (a=1, phi=0.20, m=2, Rw=0.09, Rt=25 ohm·m, h=15 m) | Formula | Verified Output | | --- | --- | --- | | Formation Resistivity Factor F | a / (Porosity_phi ^ m) | 25.00 | | Water Saturation Sw (n = 2) | MIN(1, SQRT((F * R_w) / R_t)) | 0.3000 (1.0000 @ Rt = 2.25) | | Hydrocarbon Saturation Sh | 1 - Water_Saturation_Sw | 0.7000 (0.0000 @ Rt = 2.25) | | Hydrocarbon Pore-Thickness (m) | Net_Pay_m * Porosity_phi * Sh | 2.10 m (0.00 m Wet Zone) | - **Formula (Archie Clean-Sandstone Water Saturation & HPV Formula)**: `=LET(tr_a, B2, ph_f, B3, cm_m, B4, rw_o, B5, rt_o, B6, h_np, B7, IF(OR(tr_a < 0.5, tr_a > 2, ph_f <= 0.01, ph_f > 0.5, cm_m < 1.2, cm_m > 3, rw_o <= 0, rt_o <= 0, h_np <= 0), "Invalid Archie Log Input", LET(fr_f, tr_a / (ph_f ^ cm_m), ROUND(MIN(1, SQRT((fr_f * rw_o) / rt_o)), 4))))` - **Formula (Aquifer Oil-Water Contact R_0 Check (Set Deep Resistivity R_t = 2.25 ohm·m))**: `=IF(ISTEXT(E3), E3, ROUND(B7 * B3 * (1 - E3), 2))` ### Archimedes' Buoyancy Force, Apparent Immersed Weight & Iceberg Draft fraction - **URL**: https://sheets.arte-soft.com/en/learn/archimedes-buoyancy-force-and-submerged-draft-fraction/ - **Summary**: Calculate static buoyancy and a floating volume fraction, distinguishing neutral buoyancy and signed support force under full immersion. *Table — Displaced volume and static force balance:* | Buoyancy Input | Cell | Glacial Ice vs Steel Block | Marine Physics Output | | --- | --- | --- | --- | | Total Object Volume V | B2 = 0.40 m^3 | 400-liter block | Full-immersion displaced V | | Object Density rho_obj | B3 = 920 kg/m^3 | Glacial ice (< 1,025) | Floats! (89.76% submerged) | | Seawater Density & Gravity | B4 = 1,025, B5 = 9.81 | Max F_b = 1025 * 0.4 * 9.81 | 4,022.10 N full buoyancy | | Steel Block (B3 = 7,850) | 7,850 > 1,025 -> Sinks | (7850 - 1025) * 0.4 * 9.81 | 26,781.30 N underwater crane load | - **Formula (Floating volume fraction or no floating equilibrium)**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<=0),"Invalid inputs",IF(B3>B4,"No floating equilibrium",ROUND(B3/B4,4)))` - **Formula (Full-immersion buoyant force in newtons)**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<=0),"Invalid inputs",ROUND(B4 * B2 * B5, 2))` - **Formula (Signed support force under full immersion)**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<=0),"Invalid inputs",ROUND((B3-B4)*B2*B5,2))` ### ARISCAT Score Formula: Postoperative Pulmonary Complications (PPC) Risk - **URL**: https://sheets.arte-soft.com/en/learn/ariscat-postoperative-pulmonary-complications-surgical-score/ - **Summary**: Calculate Jaume Canet’s 7-factor ARISCAT score (0–123 points) predicting postoperative respiratory failure, pneumonia, and atelectasis across Low (< 26), Intermediate (26–44), and High (>= 45) surgical risk. *Table — Why surgical incision site and anesthesia duration > 3 hours outweigh mild age or anemia in PPC risk!:* | ARISCAT Total Score (0–123) | Validated PPC Incidence | Perioperative Respiratory Optimization | | --- | --- | --- | | < 26 Points (Low Risk) | ~1.6% PPC Rate | Routine Post-Anesthesia Care & Incentive Spirometry | | 26–44 Points (Intermediate Risk) | ~13.3% PPC Rate | Lung-Protective Tidal Volume + Quantitative NMB Reversal | | >= 45 Points (High Risk, e.g., 52) | ~42.1% PPC Rate | High-Dependency Monitoring, Early CPAP / Epidural Analgesia | - **Formula (Total 7-Factor ARISCAT Postoperative Pulmonary Risk Score (0 to 123))**: `=IF(OR(MIN(B2:B8) < 0, B2 > 16, B3 > 24, B4 > 17, B5 > 11, B6 > 24, B7 > 23, B8 > 8), "Invalid ARISCAT Component", SUM(B2:B8))` - **Formula (ARISCAT Perioperative PPC Risk Tier (< 26, 26–44, >= 45))**: `=IF(OR(MIN(B2:B8) < 0, B2 > 16, B3 > 24, B4 > 17, B5 > 11, B6 > 24, B7 > 23, B8 > 8), "Invalid ARISCAT Component", IF(SUM(B2:B8) >= 45, "High PPC Risk (ARISCAT >= 45 — ~42.1% Complication Rate)", IF(SUM(B2:B8) >= 26, "Intermediate PPC Risk (ARISCAT 26–44 — ~13.3% Rate)", "Low PPC Risk (ARISCAT < 26 — ~1.6% Rate)")))` ### Armstrong Competitive Bottleneck Platform Formula - **URL**: https://sheets.arte-soft.com/en/learn/armstrong-competitive-bottleneck-single-homing-vs-multi-homing-pricing/ - **Summary**: Price asymmetric marketplaces via Mark Armstrong’s (2006) Competitive Bottleneck model: subsidize single-homing buyers P_1* = c_1 + t_1 - (alpha_2 - c_2) and monopoly-charge multi-homing sellers. *Table — Why newspapers, app stores, and ride-hail apps subsidize single-homing consumers while taxing multi-homing sellers!:* | Competitive Bottleneck Metric (c_1=10, t_1=15, alpha_2=35, c_2=5, n_1=0.50) | Formula | Verified Output | | --- | --- | --- | | Net Seller Bottleneck Rent per Buyer | alpha_2 - c_2 = 35 - 5 | 30.00 / buyer | | Single-Homing Buyer Price (P_1*) | c_1 + t_1 - (alpha_2 - c_2) | -5.00 (Negative Subsidy Price!) | | Multi-Homing Seller Access Fee (P_2*) | alpha_2 * n_1 = 35 * 0.50 | 17.50 | | Platform Equilibrium Profit | n_1 * (P_1* - c_1 + alpha_2 - c_2) | 7.50 (= 0.50 * t_1) | - **Formula (Armstrong Single-Homing Buyer Equilibrium Price P_1* Formula)**: `=LET(c_1, B2, t_1, B3, al_2, B4, c_2, B5, IF(OR(c_1 < 0, t_1 <= 0, c_2 < 0, al_2 < c_2), "Invalid Bottleneck Input", ROUND(c_1 + t_1 - (al_2 - c_2), 2)))` - **Formula (Multi-Homing Seller Access Fee & Platform Bottleneck Profit Formula)**: `=LET(c_1, B2, t_1, B3, al_2, B4, c_2, B5, n_1, B6, IF(OR(c_1 < 0, t_1 <= 0, c_2 < 0, al_2 < c_2, n_1 <= 0, n_1 > 1), "Invalid Bottleneck Input", LET(p_1, c_1 + t_1 - (al_2 - c_2), ROUND(n_1 * ((p_1 - c_1) + (al_2 - c_2)), 2))))` ### Aroon Up, Aroon Down & Aroon Oscillator Formula: Time-Since-Extreme Trend Gauge - **URL**: https://sheets.arte-soft.com/en/learn/aroon-up-down-and-oscillator-bars-since-extreme-formula/ - **Summary**: Measure trend freshness on a [0, 100] scale using Tushar Chande’s Aroon-Up = 100 * (N - Bars_Since_High) / N, Aroon-Down, and bounded [-100, +100] Aroon Oscillator. *Table — Quantify how recently N-period highs and lows occurred!:* | Lookback Scenario (N = 25) | Bars Since High / Low | Aroon-Up / Aroon-Down | Aroon Oscillator | | --- | --- | --- | --- | | Active Uptrend | 3 bars / 20 bars | 88.00 / 20.00 | +68.00 (Bullish leadership) | | Fresh Breakout High Today | 0 bars / 25 bars | 100.00 / 0.00 | +100.00 (Maximum Dawn) | | Trend Reversal Down | 22 bars / 2 bars | 12.00 / 92.00 | -80.00 (Bearish control) | - **Formula (Aroon-Up Score [0, 100] from Elapsed Bars Since N-Period High)**: `=IF(OR(B2 <= 0, B3 < 0, B3 > B2, B4 < 0, B4 > B2), "Bars Since Extreme Must Lie in [0, N]", ROUND(100 * (B2 - B3) / B2, 2))` - **Formula (Aroon Oscillator (Aroon_Up - Aroon_Down) in [-100, +100])**: `=IF(OR(B2 <= 0, B3 < 0, B3 > B2, B4 < 0, B4 > B2), 0, ROUND(100 * (B4 - B3) / B2, 2))` ### Arora Silicon Electron Mobility Model: Joint Temperature & Doping Law - **URL**: https://sheets.arte-soft.com/en/learn/arora-temperature-and-doping-silicon-mobility-tcad-formula/ - **Summary**: Calculate n-type silicon electron mobility μ_n(T, N) (cm^2/(V·s)) across 200–500 K and arbitrary doping N via Narain Arora’s 1982 TCAD temperature-scaled Caughey-Thomas equations. *Table — Why power MOSFETs slow down at 400 K junction temperature—and by how much!:* | Silicon Operating Condition (T & Donor N) | Reduced Temp Tn = T / 300 | Arora Electron Mobility μn | Device Conduction Impact | | --- | --- | --- | --- | | 300 K Drift Region (N = 1.0 × 10^16 cm^-3) | 1.0000 | 1,218.4 cm^2/(V·s) | Nominal Datasheet RDS(on) | | 400 K Hot Junction (N = 1.0 × 10^16 cm^-3) | 1.3333 | 675.6 cm^2/(V·s) (-44.6%!) | Positive Thermal Resistance Coeff | | 300 K Heavy N+ Collar (N = 1.0 × 10^18 cm^-3) | 1.0000 | 262.1 cm^2/(V·s) | Impurity-Weakened T Dependence | - **Formula (Arora Joint Temperature & Doping Electron Mobility μ_n(T, N) (cm^2/(V·s)))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Arora Inputs", ROUND(88 * ((B2 / 300) ^ -0.57) + (1252 * ((B2 / 300) ^ -2.33)) / (1 + (B3 / (1.26E17 * ((B2 / 300) ^ 2.4))) ^ (0.88 * ((B2 / 300) ^ -0.146))), 1))` - **Formula (Phonon-Limited Low-Doping Ceiling μ_max(T) = μ_min(T) + μ_d(T) (cm^2/(V·s)))**: `=IF(B2 <= 0, "Invalid Arora Inputs", ROUND(88 * ((B2 / 300) ^ -0.57) + 1252 * ((B2 / 300) ^ -2.33), 1))` ### Arps Exponential, Hyperbolic & Harmonic Decline Formula - **URL**: https://sheets.arte-soft.com/en/learn/arps-exponential-harmonic-and-hyperbolic-oil-decline-curve-formula/ - **Summary**: Forecast Oil/Gas Production Rate q(t) and Cumulative Recovery N_p(t) across all three J.J. Arps (1945) decline regimes (Exponential b = 0, Hyperbolic 0 < b < 1, and Harmonic b = 1) without #DIV/0! singularities. *Table — Handle b = 0 Exponential, 0 < b < 1 Hyperbolic, and b = 1 Harmonic reserves in one formula!:* | Arps 4-Year Reserves Metric (q_i=1,000 bbl/d, D_i=0.50/yr, t=4.0 yrs) | Formula | b=0.50 (vs b=0 / b=1) | | --- | --- | --- | | Year-4 Daily Rate q(4) (bbl/d) | b=0 ? q_i*EXP(-Dt) : q_i/(1 + bDt)^(1/b) | 250.00 (135.34 / 333.33) | | Year-4 Instantaneous Decline D(4) | D_i / (1 + b * D_i * t) | 0.2500 /yr (0.50 / 0.1667) | | 4-Yr Cumulative Oil N_p (bbl) | 3-Branch Exact Integral (b=0, 0 1, t_yr < 0), "Invalid Arps Parameter", ROUND(IF(b_ex = 0, 365 * (q_in / d_in) * (1 - EXP(-d_in * t_yr)), IF(b_ex = 1, 365 * (q_in / d_in) * LN(1 + d_in * t_yr), 365 * (q_in / ((1 - b_ex) * d_in)) * (1 - (1 + b_ex * d_in * t_yr) ^ (1 - 1 / b_ex)))), 0)))` - **Formula (Singularity-Safe Arps Instantaneous Rate q(t) Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1, B5 < 0), "Invalid Arps Parameter", ROUND(IF(B4 = 0, B2 * EXP(-B3 * B5), B2 / ((1 + B4 * B3 * B5) ^ (1 / B4))), 2))` ### Arrhenius and Q10 temperature-rate ratios in a spreadsheet - **URL**: https://sheets.arte-soft.com/en/learn/arrhenius-equation-activation-energy-and-q10-shelf-life/ - **Summary**: Compare idealized temperature-rate models with explicit units and assumed coefficients. A rate ratio alone does not establish a product shelf life. *Table — Use Kelvin temperatures and consistent energy units:* | Illustrative kinetic model (assumed Ea = 83.14 kJ/mol) | Formula | Result | | --- | --- | --- | | Kelvin Temperatures (25 °C -> 40 °C) | 25 + 273.15 & 40 + 273.15 | 298.15 K & 313.15 K | | Arrhenius Acceleration Factor (k2 / k1) | EXP((83140 / 8.314) * (1/298.15 - 1/313.15)) | 4.99x faster | | Hypothetical equivalent time, assuming inverse rate | 6 time units * unrounded ratio | 29.91 time units; not validated shelf life | | Q10 Approximation (Q10 = 2, 25 °C -> 45 °C) | 2 ^ ((45 - 25) / 10) | 4.00x | - **Formula (Arrhenius rate acceleration factor (k2 / k1))**: `=IF(OR(COUNT(A2:D2)<>4,A2<0,B2<=-273.15,C2<=-273.15,D2<=0),"Invalid inputs",ROUND(EXP((A2 * 1000 / D2) * (1 / (B2 + 273.15) - 1 / (C2 + 273.15))), 2))` - **Formula (Q10 temperature coefficient rule-of-thumb comparison)**: `=IF(OR(COUNT(B2:C2)<>2,NOT(ISNUMBER(E2)),E2<=0,B2<=-273.15,C2<=-273.15),"Invalid inputs",ROUND(E2 ^ ((C2 - B2) / 10), 2))` ### Arrow & Dumbbell Chart Formula: Floating Base Anchor, Gain/Loss Span & Midpoint - **URL**: https://sheets.arte-soft.com/en/learn/arrow-and-dumbbell-variance-chart-anchor-and-span-formula/ - **Summary**: Stage directional Arrow or Dumbbell change charts by pairing an invisible floating base MIN(Prior, Current) with separate Positive-Gain and Negative-Drop span columns and a centered delta-label midpoint. *Table — Replace cluttered paired bars with clean directional change vectors!:* | Account NPS Trajectory | Prior (B2) | Current (B3) | Anchor Base / Active Span / Midpoint | | --- | --- | --- | --- | | Enterprise Cohort (Gain) | 62 | 85 | Base = 62 \| Gain = +23 \| Loss = 0 \| Mid = 73.5 | | Legacy Retail (Decline) | 90 | 74 | Base = 74 \| Gain = 0 \| Loss = 16 \| Mid = 82.0 | - **Formula (Invisible Floating Anchor Base MIN(Prior, Current))**: `=IF(OR(B2 < 0, B3 < 0), "Requires Non-Negative Endpoints", ROUND(MIN(B2, B3), 2))` - **Formula (Positive Improvement Span & Connector Label Midpoint)**: `=IF(OR(B2 < 0, B3 < 0), 0, ROUND(MAX(0, B3 - B2), 2))` ### Baker’s Percentage Dough Scaling & Strike Water Temp Formula - **URL**: https://sheets.arte-soft.com/en/learn/artisan-bread-bakers-percentage-hydration-flour-scaling-and-desired-dough-temp/ - **Summary**: Calculate Total Baker’s Formula Percentage (>100%), Scaled Total Flour Mass (kg), Hydration Water Mass (kg), and 3-Factor Strike Water Temperature for Desired Dough Temp (°C). *Table — In baker’s math percentages sum to 183%, NOT 100%—and missing Desired Dough Temperature by 3 °C ruins bulk fermentation timing!:* | Commercial Bakery Scaling KPI (45 kg Dough, 72% Hydr, DDT=25 °C, Friction=8 °C) | Formula | Verified Output | | --- | --- | --- | | Total Baker’s Formula (%) | 100 + Hydration% + Salt% + Other% | 183.0% (flour anchored at 100%) | | Scaled Total Flour Mass (kg) | Target_Dough_kg / (Total_Formula_Pct / 100) | 24.59 kg | | Scaled Hydration Water (kg) | Scaled_Flour_kg * (Hydration_Pct / 100) | 17.70 kg | | Required Strike Water Temp (°C) | 3 * DDT_C - (Room_Plus_Flour_C + Friction_C) | 24.0 °C (11.0 °C chilled water in summer!) | - **Formula (Baker’s Percentage Inverse Bowl Scaling & 3-Factor Strike-Water DDT Formula)**: `=LET(md_k, B2, hy_p, B3, sl_p, B4, ot_p, B5, dd_c, B6, rf_c, B7, fr_c, B8, IF(OR(md_k <= 0.5, hy_p < 45, hy_p > 110, sl_p < 0, sl_p > 5, ot_p < 0, dd_c < 18, dd_c > 32, rf_c < 20, rf_c > 80, fr_c < 0), "Invalid Dough Formula", ROUND(3 * dd_c - (rf_c + fr_c), 1)))` - **Formula (August Heatwave 29 °C Bakery + 27 °C Flour Chiller-Water Check (Set Room+Flour Temp B7 = 56.0 °C))**: `=IF(ISTEXT(E5), E5, LET(tp_f, 100 + B3 + B4 + B5, ROUND(B2 / (tp_f / 100), 2)))` ### Arunlakshana-Schild Dose Ratio & pA2 Affinity Formula - **URL**: https://sheets.arte-soft.com/en/learn/arunlakshana-schild-competitive-antagonist-dose-ratio-and-pa2-formula/ - **Summary**: Calculate Competitive Antagonist Dose Ratio DR = EC50_antag / EC50_ctrl, Schild Ordinate LOG10(DR - 1), Dissociation Constant K_B = [B] / (DR - 1), and negative log affinity pA_2 = -LOG10(K_B). *Table — Quantify competitive receptor antagonism from parallel EC50 rightward shifts!:* | Schild Receptor Bioassay Metric (EC50: 10 nM -> 1,010 nM @ [B]=100 nM) | Formula | Verified Output | | --- | --- | --- | | Agonist Dose Ratio (DR) | EC50_shifted / EC50_control | 101.0000x | | Schild Ordinate LOG10(DR - 1) | LOG10(DR - 1) | 2.0000 | | Antagonist K_B (nanomolar) | 10^9 * [B] / (DR - 1) | 1.00 nM (1.0e-9 M) | | Schild Affinity Constant pA_2 | -LOG10([B] / (DR - 1)) | 9.0000 | - **Formula (Schild Dissociation Constant K_B & pA_2 Affinity Formula)**: `=LET(ec_0, B2, ec_b, B3, cn_b, B4, IF(OR(ec_0 <= 0, ec_b <= ec_0, cn_b <= 0), "Invalid Schild Shift (DR <= 1)", LET(dr_v, ec_b / ec_0, kb_m, cn_b / (dr_v - 1), ROUND(-LOG10(kb_m), 4))))` - **Formula (Nanomolar K_B Conversion Formula)**: `=IF(ISTEXT(E5), E5, ROUND(1000000000 * (B4 / (B3 / B2 - 1)), 4))` ### ASC 326 CECL Lifetime Credit Loss & Q-Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/asc-326-cecl-lifetime-expected-credit-loss-and-q-factor-reserve-formula/ - **Summary**: Calculate US GAAP ASC 326 Current Expected Credit Loss (CECL) Historical Through-the-Cycle Base Loss EAD*PD*LGD, Macro-Adjusted Lifetime PD MIN(1, PD*Macro_Scalar), Ending Allowance for Credit Losses (ACL), and Quarterly Provision Expense. *Table — Book forward-looking lifetime credit losses on Day 1 under ASC 326 CECL!:* | ASC 326 CECL Metric ($50M Pool, PD=4.0%, LGD=45%, Macro=1.25x, Prior ACL=$950k) | Formula | Verified Output | | --- | --- | --- | | Historical Base Lifetime ECL ($) | EAD * Historical_PD * LGD | $900,000 | | Macro-Adjusted Lifetime PD | MIN(1, Historical_PD * Macro_Scalar) | 0.0500 (5.00%; 0.0400 @ 1.0x) | | Required Ending Allowance ACL ($) | EAD * Adjusted_PD * LGD | $1,125,000 ($900,000 @ 1.0x) | | Quarterly Provision Expense ($) | Ending_ACL - Prior_Net_ACL | +$175,000 (-$50,000 Release @ 1.0x) | - **Formula (ASC 326 CECL Ending Allowance & Provision Expense Formula)**: `=LET(ea_d, B2, pd_h, B3, lg_d, B4, mc_s, B5, pr_a, B6, IF(OR(ea_d <= 0, pd_h < 0, pd_h > 1, lg_d < 0, lg_d > 1, mc_s <= 0, pr_a < 0), "Invalid CECL Pool Input", LET(pd_f, MIN(1, pd_h * mc_s), ac_l, ea_d * pd_f * lg_d, ROUND(ac_l - pr_a, 2))))` - **Formula (Benign Macro Reserve Release Check (Set Macro_Scalar = 1.00))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * E3 * B4, 2))` ### ASC 350 Goodwill Impairment & Simultaneous Tax Gross-Up Formula - **URL**: https://sheets.arte-soft.com/en/learn/asc-350-goodwill-impairment-headroom-and-tax-deductible-simultaneous-loss/ - **Summary**: Calculate US GAAP ASC 350 Reporting-Unit Valuation Surplus/Deficit, Non-Deductible Stock-Deal Goodwill Impairment, ASC 350-20-35-8C Tax-Deductible Simultaneous-Equation Impairment Gross-Up, and Post-Impairment Goodwill. *Table — Solve ASC 350’s simultaneous-equation Deferred-Tax circularity in one closed-form step!:* | ASC 350 Impairment Metric ($250M Carrying, $220M Fair Value, $60M GW, 25% Tax) | Formula | Verified Output | | --- | --- | --- | | Valuation Headroom / Deficit ($M) | Fair_Value - Carrying_Value | -$30.00M (+$30.00M @ $280M FV) | | Non-Deductible Impairment ($M) | MIN(GW, MAX(0, Carrying - Fair_Value)) | $30.00M ($0.00M @ $280M FV) | | Simultaneous Tax-Deduct Loss ($M) | MIN(GW, MAX(0, Deficit) / (1 - Tax)) | $40.00M ($0.00M @ $280M FV) | | Ending Goodwill Balance ($M) | Goodwill_Balance - Simultaneous_Loss | $20.00M ($60.00M @ $280M FV) | - **Formula (ASC 350-20-35-8C Tax-Deductible Simultaneous Goodwill Impairment Formula)**: `=LET(cv_r, B2, fv_r, B3, gw_b, B4, tx_r, B5, IF(OR(cv_r <= 0, fv_r <= 0, gw_b <= 0, gw_b > cv_r, tx_r < 0, tx_r >= 0.55), "Invalid ASC 350 Impairment Input", LET(df_c, MAX(0, cv_r - fv_r), ROUND(MIN(gw_b, df_c / (1 - tx_r)), 2))))` - **Formula (Positive Headroom Pass Check (Set Reporting Unit Fair Value = $280.00M))**: `=IF(ISTEXT(E4), E4, ROUND(B4 - E4, 2))` ### ASC 606 / IFRS 15 Relative SSP Bundle Allocation Formula - **URL**: https://sheets.arte-soft.com/en/learn/asc-606-ifrs-15-standalone-selling-price-ssp-bundle-allocation-formula/ - **Summary**: Allocate Bundled Multi-Element Transaction Price Across Distinct Performance Obligations Using Relative Standalone Selling Prices (SSP), Point-in-Time License Recognition, Ratable PCS Support Revenue, and Deferred Revenue. *Table — Allocate bundled contract discounts proportionally by Relative Standalone Selling Price (Step 4 of ASC 606)!:* | ASC 606 Step-4 Metric ($108k Deal, $90k License SSP, $30k 36-Mo Support SSP, Mo 8) | Formula | Verified Output | | --- | --- | --- | | Allocated Upfront License ($) | Deal_Price * (License_SSP / Total_SSP) | $81,000.00 | | Allocated 36-Mo PCS Pool ($) | Deal_Price * (Support_SSP / Total_SSP) | $27,000.00 | | Cumulative Recognized Rev ($) | Alloc_License + Alloc_Support*(Mo / 36) | $87,000.00 ($108,000 @ Mo 36) | | Ending Deferred Revenue ($) | Deal_Price - Cumulative_Recognized_Rev | $21,000.00 ($0.00 @ Mo 36) | - **Formula (ASC 606 Relative-SSP Cumulative Revenue Recognition Formula)**: `=LET(tp_d, B2, ss_l, B3, ss_s, B4, mo_e, B5, IF(OR(tp_d <= 0, ss_l <= 0, ss_s <= 0, mo_e < 0, mo_e > 36), "Invalid ASC 606 Bundle Input", LET(ts_p, ss_l + ss_s, al_l, tp_d * (ss_l / ts_p), al_s, tp_d * (ss_s / ts_p), ROUND(al_l + al_s * (mo_e / 36), 2))))` - **Formula (Full 36-Month Contract Completion Check (Set Elapsed Months = 36))**: `=IF(ISTEXT(E4), E4, ROUND(B2 - E4, 2))` ### Cost-to-cost project progress: a simplified revenue and billings worksheet - **URL**: https://sheets.arte-soft.com/en/learn/asc-606-percentage-of-completion-cost-to-cost-revenue/ - **Summary**: Practice cost-based progress and cumulative catch-up arithmetic. Determine applicable ASC 606 or IFRS 15 accounting separately before using a project model. *Table — A simplified cost-based progress model:* | Illustrative project metric ($2.0M price) | Formula | Period Calculation | | --- | --- | --- | | Percent Complete (Cost-to-Cost) | $720k / ($720k + $880k) | 45.0% ($720k / $1,600k est. cost) | | Cumulative vs. Current Revenue | 45% * $2.0M - $500k prior | $900k cum \| $400k current period | | Over / (Under) Billing | $950k Billed - $900k Earned | +$50,000 billed above modeled revenue | - **Formula (Current-period revenue in the simplified model)**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0,B2+C2<=0),"Invalid inputs",LET(progress,B2/(B2+C2),ROUND(progress*A2-D2,2)))` - **Formula (Billings minus modeled cumulative revenue)**: `=IF(OR(COUNT(A2:C2)<>3,MIN(A2:C2)<0,NOT(ISNUMBER(E2)),E2<0,B2+C2<=0),"Invalid inputs",LET(progress,B2/(B2+C2),ROUND(E2-progress*A2,2)))` ### ASC 715 Pension 10% Corridor & NPPC Formula - **URL**: https://sheets.arte-soft.com/en/learn/asc-715-pension-pbo-service-cost-and-10-percent-corridor-amortization/ - **Summary**: Calculate US GAAP ASC 715 Pension 10% Corridor Threshold 0.10 * MAX(PBO, Plan_Assets), Excess Actuarial Loss Amortization, Net Periodic Pension Cost (NPPC), and Balance-Sheet Funded Status. *Table — Apply the 10% MAX(PBO, Plan_Assets) corridor before amortizing pension AOCI losses!:* | ASC 715 Pension Metric (PBO=$500M, Assets=$450M, Loss=$110M, 12 Yrs, Cost=$48M, EROA=$36M) | Formula | Verified Output | | --- | --- | --- | | 10% Corridor Threshold ($M) | 0.10 * MAX(Beg_PBO, Beg_Plan_Assets) | $50.00M ($60.00M @ $600M Assets) | | Minimum Corridor Amortization | MAX(0, Loss - Corridor) / Service_Yrs | $5.00M ($0.00M @ $40M Loss) | | Net Periodic Pension Cost NPPC | Service_Interest - EROA + Amort | $17.00M ($12.00M @ $40M Loss) | | Balance-Sheet Funded Status ($M) | Plan_Assets - PBO | -$50.00M (+$100M @ $600M Assets) | - **Formula (ASC 715 Net Periodic Pension Cost (NPPC) with 10% Corridor Formula)**: `=LET(pb_o, B2, as_t, B3, ls_u, B4, sv_y, B5, si_c, B6, er_a, B7, IF(OR(pb_o <= 0, as_t < 0, ls_u < 0, sv_y <= 0, si_c < 0, er_a < 0), "Invalid ASC 715 Actuarial Input", LET(cr_d, 0.1 * MAX(pb_o, as_t), am_t, MAX(0, ls_u - cr_d) / sv_y, ROUND(si_c - er_a + am_t, 2))))` - **Formula (Inside-Corridor Zero-Amortization & Overfunded Asset-Base Checks)**: `=IF(ISTEXT(E4), E4, ROUND(B3 - B2, 2))` ### ASC 740 Valuation Allowance, UTP & Effective Tax Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/asc-740-deferred-tax-valuation-allowance-and-effective-tax-rate-formula/ - **Summary**: Reconcile US GAAP ASC 740 Statutory Income Tax Expense to Total GAAP Tax Provision Across Permanent Differences, Deferred-Tax Valuation Allowance Changes, Uncertain Tax Position (FIN 48) Reserves, and Effective Tax Rate (ETR). *Table — Read the ASC 740 Effective Tax Rate reconciliation like a forensic equity analyst!:* | ASC 740 Rate Reconciliation ($50M Pretax, 21% Stat, +$1M Perm, +$3.5M VA, +$1.5M UTP) | Formula | Verified Output | | --- | --- | --- | | Expected Statutory Tax ($M) | Pretax_Book_Income * Statutory_Rate | $10.50M | | Total GAAP Tax Provision ($M) | Stat_Tax + Perm_Tax + VA_Change + UTP | $16.50M ($9.00M @ -$4M VA Release) | | GAAP Effective Tax Rate ETR | Total_GAAP_Tax_Provision / Pretax_Income | 0.3300 (0.1800 @ -$4M VA Release) | | Valuation Allowance ETR Impact | VA_Change / Pretax_Book_Income | +0.0700 (+7.00% ETR Drag) | - **Formula (ASC 740 Effective Tax Rate (ETR) Reconciliation Formula)**: `=LET(pt_i, B2, st_r, B3, pm_t, B4, va_d, B5, ut_p, B6, IF(OR(pt_i <= 0, st_r <= 0, st_r >= 0.55), "Invalid ASC 740 Rate Input", LET(pr_v, pt_i * st_r + pm_t + va_d + ut_p, ROUND(pr_v / pt_i, 4))))` - **Formula (Turnaround Valuation-Allowance Release Check (Set VA Change = -$4.00M))**: `=IF(ISTEXT(E4), E4, ROUND(B5 / B2, 4))` ### ASC 805 Purchase Price Allocation, DTL & Goodwill Formula - **URL**: https://sheets.arte-soft.com/en/learn/asc-805-purchase-price-allocation-identifiable-intangibles-and-goodwill/ - **Summary**: Calculate US GAAP ASC 805 / IFRS 3 Non-Tax-Deductible Intangible Step-Up Deferred Tax Liability (DTL), Fair Value of Net Identifiable Assets, Residual Goodwill Recorded, and Bargain Purchase Gain. *Table — Remember the ASC 805 stock-deal DTL trap: intangible write-ups INCREASE residual Goodwill!:* | ASC 805 PPA Metric ($200M Price, $70M Book, $60M Intangibles, 25% Stock-Deal Tax) | Formula | Verified Output | | --- | --- | --- | | Step-Up Deferred Tax Liab ($M) | Intangible_StepUp * StockDeal_Tax_Rate | $15.00M ($0.00M @ Asset Deal) | | Net Identifiable Fair Value ($M) | Book_Net_Assets + StepUp - StepUp_DTL | $115.00M ($130.00M @ Asset Deal) | | Residual Goodwill Recorded ($M) | MAX(0, Purchase_Price - Net_Ident_FV) | $85.00M ($0.00M @ $100M Price) | | Bargain Purchase Gain ($M) | MAX(0, Net_Ident_FV - Purchase_Price) | $0.00M ($15.00M @ $100M Price) | - **Formula (ASC 805 Residual Goodwill (With Carryover-Basis DTL) Formula)**: `=LET(pr_c, B2, bk_n, B3, in_s, B4, tx_r, B5, IF(OR(pr_c <= 0, in_s < 0, tx_r < 0, tx_r >= 0.55), "Invalid ASC 805 PPA Input", LET(dt_l, in_s * tx_r, fv_n, bk_n + in_s - dt_l, ROUND(MAX(0, pr_c - fv_n), 2))))` - **Formula (Distressed $100M Bargain Purchase & Taxable Asset-Deal (Tax = 0) Checks)**: `=IF(ISTEXT(E4), E4, ROUND(MAX(0, E3 - B2), 2))` ### ASC 842 Operating Lease ROU Asset & Plug Amortization - **URL**: https://sheets.arte-soft.com/en/learn/asc-842-operating-lease-rou-asset-incentives-and-straight-line-cost-formula/ - **Summary**: Calculate US GAAP ASC 842 Day-1 Right-of-Use (ROU) Asset (Liability_PV + Direct_Costs - TI_Incentives), Single Straight-Line Annual Lease Expense, Year-1 Liability Discount Accretion, and Year-1 Plug ROU Amortization. *Table — Master ASC 842’s dual-model operating lease "plug" ROU amortization vs IFRS 16!:* | ASC 842 Operating Lease ($850k PV, $30k IDC, $120k TI, $1M Cash, 5 Yr, 6% IBR) | Formula | Verified Output | | --- | --- | --- | | Day-1 Right-of-Use (ROU) Asset | Liability_PV + Direct_Costs - TI_Incentive | $760,000 ($880,000 @ $0 TI) | | Straight-Line Annual Lease Cost | (Total_Cash_Rent + IDC - TI) / Term_Yrs | $182,000/yr ($206,000 @ $0 TI) | | Year-1 Liability Accretion ($) | Liability_PV * Discount_Rate_IBR | $51,000 | | Year-1 Plug ROU Amortization ($) | Straight_Line_Cost - Liability_Interest | $131,000 ($155,000 @ $0 TI) | - **Formula (ASC 842 Operating Lease Year-1 Plug ROU Amortization Formula)**: `=LET(pv_l, B2, id_c, B3, ti_r, B4, cs_r, B5, tr_y, B6, ib_r, B7, IF(OR(pv_l <= 0, id_c < 0, ti_r < 0, pv_l + id_c - ti_r <= 0, cs_r < pv_l, tr_y < 1, ib_r <= 0), "Invalid ASC 842 Lease Schedule", LET(sl_c, (cs_r + id_c - ti_r) / tr_y, in_1, pv_l * ib_r, ROUND(sl_c - in_1, 2))))` - **Formula (Zero-Incentive Baseline Check (Set Landlord TI Incentive = $0))**: `=IF(ISTEXT(E5), E5, ROUND(B2 + B3 - B4, 2))` ### ASDAS-CRP (Ankylosing Spondylitis Disease Activity Score) Formula - **URL**: https://sheets.arte-soft.com/en/learn/asdas-crp-ankylosing-spondylitis-disease-activity-score-formula/ - **Summary**: Calculate the ASAS/EULAR objective axial spondyloarthritis score ASDAS-CRP = 0.121*BackPain + 0.058*Stiffness + 0.110*Global + 0.073*Peripheral + 0.579*LN(MAX(CRP, 2) + 1). *Table — Combining patient symptoms with objective C-reactive protein—including ASAS’s mandatory CRP = 2 mg/L floor!:* | ASDAS-CRP Score Band (Machado 2018 Cutoffs) | Disease Activity State | Clinical Trial Threshold | | --- | --- | --- | | < 1.3 (e.g., Remission Profile -> 0.93) | Inactive Disease (< 1.3) | ASAS Treat-to-Target Remission | | 1.3 to < 2.1 | Low Disease Activity (1.3–2.09) | Acceptable Maintenance State | | 2.1 to 3.5 | High Disease Activity (2.1–3.5) | Biologic / JAKi Initiation Threshold (>= 2.1) | | > 3.5 (e.g., Flare Profile -> 3.54) | Very High Disease Activity (> 3.5) | Severe Axial Inflammation | - **Formula (ASDAS-CRP Axial Spondyloarthritis Score (With ASAS 2 mg/L CRP Floor))**: `=IF(OR(MIN(B2:B5) < 0, MAX(B2:B5) > 10, B6 < 0), "Invalid NRS (0-10) or CRP", ROUND(0.121 * B2 + 0.058 * B3 + 0.11 * B4 + 0.073 * B5 + 0.579 * LN(MAX(B6, 2) + 1), 2))` - **Formula (ASAS / EULAR ASDAS Disease Activity State)**: `=IF(OR(MIN(B2:B5) < 0, MAX(B2:B5) > 10, B6 < 0), "Invalid NRS (0-10) or CRP", IF(0.121 * B2 + 0.058 * B3 + 0.11 * B4 + 0.073 * B5 + 0.579 * LN(MAX(B6, 2) + 1) < 1.3, "Inactive Disease (< 1.3)", IF(0.121 * B2 + 0.058 * B3 + 0.11 * B4 + 0.073 * B5 + 0.579 * LN(MAX(B6, 2) + 1) < 2.1, "Low Disease Activity (1.3–2.09)", IF(0.121 * B2 + 0.058 * B3 + 0.11 * B4 + 0.073 * B5 + 0.579 * LN(MAX(B6, 2) + 1) <= 3.5, "High Disease Activity (2.1–3.5)", "Very High Disease Activity (> 3.5)"))))` ### ASHRAE Huebscher Rectangular Equivalent Duct Diameter Formula - **URL**: https://sheets.arte-soft.com/en/learn/ashrae-huebscher-rectangular-to-circular-equivalent-duct-diameter-formula/ - **Summary**: Calculate Huebscher Equal-Friction Circular Equivalent Diameter De (mm), Wetted-Perimeter Hydraulic Diameter Dh (mm), Rectangular Duct Air Velocity (m/s), and Velocity Pressure Pv (Pa). *Table — Never size rectangular HVAC ducts on a round ductulator using hydraulic diameter Dh—equal Dh does NOT carry equal airflow!:* | ASHRAE Duct Sizing KPI (600x250 mm Trunk, Q=4,500 m³/h, rho=1.20 kg/m³) | Formula | Verified Output | | --- | --- | --- | | Huebscher Equivalent Diameter De (mm) | 1.30 * ((a * b)^0.625) / ((a + b)^0.25) | 413.66 mm (383.55 mm @ flat 1000x150!) | | Hydraulic Diameter Dh (mm) | (2 * a * b) / (a + b) | 352.94 mm (260.87 mm @ flat 1000x150) | | Mean Duct Air Velocity (m/s) | (Q_m3_hr / 3600) / ((a/1000)*(b/1000)) | 8.33 m/s (unchanged at equal 0.15 m²!) | | Duct Velocity Pressure Pv (Pa) | 0.5 * Air_Density * (Velocity_m_s ^ 2) | 41.67 Pa | - **Formula (ASHRAE Huebscher Equal-Friction Diameter & Dynamic Velocity Pressure Formula)**: `=LET(da_m, B2, db_m, B3, qf_h, B4, rh_a, B5, IF(OR(da_m <= 0, db_m <= 0, (MAX(da_m, db_m) / MIN(da_m, db_m)) > 10, qf_h <= 0, rh_a < 0.5, rh_a > 2), "Invalid Duct Input", LET(va_s, (qf_h / 3600) / ((da_m / 1000) * (db_m / 1000)), ROUND(0.5 * rh_a * (va_s ^ 2), 2))))` - **Formula (High-Aspect-Ratio 1,000 x 150 mm Pancake Soffit Penalty Check (Same 0.15 m² Cross-Section!))**: `=IF(ISTEXT(E5), E5, ROUND((1.3 * ((B2 * B3) ^ 0.625)) / ((B2 + B3) ^ 0.25), 2))` ### ASIN function: calculate ramp incline angles from rise and sloped length - **URL**: https://sheets.arte-soft.com/en/learn/asin-function-inverse-sine-angle/ - **Summary**: Convert vertical rise over ramp length into incline degrees in [-90, +90] using DEGREES(ASIN(ratio)), and guard impossible ratios. *Table — When you measure ramp surface length instead of horizontal ground run:* | Vertical Rise (A) | Ramp Length (B) | Rise / Length | DEGREES(ASIN(A/B)) | | --- | --- | --- | --- | | 3 | 6 | 0.5 | 30° | | 1 | 12 | 0.083333 | 4.7802° | | 0 | 6 | 0 | 0° (level) | | -3 | 6 | -0.5 | -30° (downward ramp) | - **Formula (Calculate incline angle in degrees)**: `=ROUND(DEGREES(ASIN(A2 / B2)), 4)` - **Formula (Guard vertical rise exceeding sloped length)**: `=IF(ABS(A2) > B2, "Rise exceeds length", ROUND(DEGREES(ASIN(A2 / B2)), 4))` ### ASME Bolted Flange Gasket m & y Bolt-Load Formula - **URL**: https://sheets.arte-soft.com/en/learn/asme-b16-5-bolted-flange-gasket-seating-stress-m-and-y-factors-bolt-load/ - **Summary**: Calculate Hydrostatic End Force H (kN), Operating Pressurized Bolt Load Wm1 = H + Hp (kN), Ambient Initial Gasket-Seating Bolt Load Wm2 (kN), and Governing Total Bolt Root Area Am (mm²). *Table — On low-pressure flanges, ambient initial gasket-seating crush Wm2—not internal fluid pressure Wm1—governs stud bolt sizing!:* | ASME Appendix 2 Flange KPI (G=285 mm, b=6.4 mm, P=4.2 MPa, m=3.0, y=69 MPa) | Formula | Verified Output | | --- | --- | --- | | Hydrostatic End Force H (kN) | ((PI() / 4) * (G^2) * P_MPa) / 1000 | 267.93 kN (51.04 kN @ low 0.8 MPa) | | Operating Bolt Load Wm1 (kN) | H_kN + (2 * b * PI() * G * m * P) / 1000 | 412.34 kN (78.54 kN @ low 0.8 MPa) | | Gasket-Seating Load Wm2 (kN) | (PI() * b * G * y_MPa) / 1000 | 395.39 kN (GOVERNS @ low 0.8 MPa!) | | Governing Bolt Root Area Am (mm²) | (MAX(Wm1_kN, Wm2_kN) * 1000) / Sb_MPa | 2,397.3 mm² (2,298.8 mm² @ 0.8 MPa) | - **Formula (ASME Appendix 2 Taylor-Forge Wm1 vs Wm2 Governing Bolt Area Formula)**: `=LET(gd_m, B2, bw_m, B3, pr_m, B4, mf_g, B5, ys_m, B6, sb_m, B7, IF(OR(gd_m <= 20, bw_m <= 1, bw_m > gd_m / 4, pr_m <= 0, mf_g < 0.5, ys_m <= 0, sb_m <= 20), "Invalid Flange Input", LET(hf_k, ((PI() / 4) * (gd_m ^ 2) * pr_m) / 1000, hp_k, (2 * bw_m * PI() * gd_m * mf_g * pr_m) / 1000, wo_k, hf_k + hp_k, ws_k, (PI() * bw_m * gd_m * ys_m) / 1000, ROUND((MAX(wo_k, ws_k) * 1000) / sb_m, 1))))` - **Formula (Low-Pressure 0.80 MPa Steam Line Seating-Governed Crossover Check (Set Pressure P B4 = 0.80 MPa))**: `=IF(ISTEXT(E5), E5, ROUND((((PI() / 4) * (B2 ^ 2) * B4) + (2 * B3 * PI() * B2 * B5 * B4)) / 1000, 2))` ### ASPECTS (Alberta Stroke Program Early CT Score 0–10) Formula: MCA Stroke Thrombectomy Gate - **URL**: https://sheets.arte-soft.com/en/learn/aspects-alberta-stroke-program-early-ct-score-mca-ischemic-stroke/ - **Summary**: Calculate Philip A. Barber et al.’s (2000) 10-point subtractive ASPECTS score (10 minus early ischemic change across 4 subcortical ganglionic + 6 cortical M1–M6 MCA regions) for AHA/ASA acute ischemic stroke endovascular thrombectomy triage. *Table — Why ASPECTS starts at 10 (Normal Brain) and subtracts 1 point per early-hypodense MCA territory!:* | ASPECTS Score = 10 - Infarcted Regions | Early Ischemic Core Extent | AHA/ASA Endovascular Thrombectomy (EVT) Context | | --- | --- | --- | | ASPECTS 6 to 10 (0–4 Regions Affected) | Small-to-Moderate Early Ischemic Core | Standard Guideline EVT Eligibility (Class I with LVO) | | ASPECTS 3 to 5 (5–7 Regions Affected) | Large Early Ischemic Core | Large-Core EVT Pathway (SELECT2 / ANGEL-ASPECT Criteria) | | ASPECTS 0 to 2 (8–10 Regions Affected) | Very Extensive Pan-MCA Infarction | High malignant edema / hemorrhage risk — individualized neuro-ICU care | - **Formula (Subtractive 10-Point ASPECTS Score = 10 - (Subcortical Affected + Cortical M1–M6 Affected))**: `=IF(OR(B2 < 0, B2 > 4, B3 < 0, B3 > 6, MOD(B2, 1) <> 0, MOD(B3, 1) <> 0), "Invalid ASPECTS Counts (Subcortical 0..4, Cortical M1-M6 0..6)", 10 - (B2 + B3))` - **Formula (Acute MCA Stroke Core & Thrombectomy Pathway Classifier (ASPECTS >= 6 / 3–5 / 0–2))**: `=IF(OR(B2 < 0, B2 > 4, B3 < 0, B3 > 6, MOD(B2, 1) <> 0, MOD(B3, 1) <> 0), "Invalid ASPECTS Counts", IF(10 - (B2 + B3) >= 6, "ASPECTS " & (10 - B2 - B3) & ": Standard Small/Moderate Core (>= 6 — Standard EVT Eligible)", IF(10 - (B2 + B3) >= 3, "ASPECTS " & (10 - B2 - B3) & ": Large Core (3–5 — Evaluate Large-Core EVT Criteria)", "ASPECTS " & (10 - B2 - B3) & ": Extensive MCA Infarction (0–2)")))` ### AS/RS Crane Bozer-White Single vs Dual Command Formula - **URL**: https://sheets.arte-soft.com/en/learn/asrs-unit-load-crane-bozer-white-single-vs-dual-command-cycle-time-formula/ - **Summary**: Calculate AS/RS Rack Time-Shape Factor b, Expected Single-Command Cycle Time E[SC] (s), Interleaved Dual-Command Cycle Time E[DC] (s), and Dual-Command Throughput (pallets/h). *Table — Stacker cranes move horizontally AND vertically at the same time—and interleaving putaway + retrieval boosts pallet throughput 26%!:* | Bozer-White AS/RS Crane KPI (L=90 m @ 2.5 m/s, H=24 m @ 0.8 m/s, t_PD=12 s) | Formula | Verified Output | | --- | --- | --- | | Rack Time-Shape Factor b (0..1) | MIN(L/vx, H/vy) / MAX(L/vx, H/vy) | 0.833 (0.556 @ faster 1.2 m/s hoist) | | Single-Command Cycle E[SC] (sec) | T * (1 + (b^2)/3) + 2 * t_PD | 68.33 s (63.70 s @ 1.2 m/s hoist) | | Dual-Command Cycle E[DC] (sec) | T * (4/3 + 0.5*b^2 - (b^3)/30) + 4*t_PD | 107.81 s (101.35 s @ 1.2 m/s hoist) | | Dual-Command Pallets / Hour | 2 * (3600 / E_DC_sec) | 66.79 plts/h (71.04 plts/h @ 1.2 m/s) | - **Formula (Bozer-White Chebyshev Single-Command & Dual-Command AS/RS Throughput Formula)**: `=LET(ln_x, B2, ht_y, B3, vx_s, B4, vy_s, B5, pd_s, B6, IF(OR(ln_x <= 0, ht_y <= 0, vx_s <= 0, vy_s <= 0, pd_s < 0), "Invalid ASRS Input", LET(tx_s, ln_x / vx_s, ty_s, ht_y / vy_s, tm_x, MAX(tx_s, ty_s), bf_r, MIN(tx_s, ty_s) / tm_x, dc_s, tm_x * ((4 / 3) + 0.5 * (bf_r ^ 2) - ((bf_r ^ 3) / 30)) + 4 * pd_s, ROUND(2 * (3600 / dc_s), 2))))` - **Formula (High-Speed 1.20 m/s Hoist Motor Upgrade Check (Set Vertical Speed vy = 1.20 m/s))**: `=IF(ISTEXT(E5), E5, LET(tx_s, B2 / B4, ty_s, B3 / B5, tm_x, MAX(tx_s, ty_s), bf_r, MIN(tx_s, ty_s) / tm_x, ROUND(tm_x * ((4 / 3) + 0.5 * (bf_r ^ 2) - ((bf_r ^ 3) / 30)) + 4 * B6, 2)))` ### Assign attendance points based on late arrival time (with grace period) - **URL**: https://sheets.arte-soft.com/en/learn/assign-attendance-points-by-minutes-late/ - **Summary**: Convert clock-in delay into integer minutes with ROUND(MAX(0, PunchIn - ShiftStart) * 1440, 0) and assign progressive attendance points via IFS. *Table — Round time differences * 1440 before comparing grace thresholds:* | ShiftStart (A) | PunchIn (B) | Late Minutes | Attendance Points | | --- | --- | --- | --- | | 08:00 | 08:05 | 5 (within grace) | 0 | | 08:00 | 08:12 | 12 | 0.5 | | 08:00 | 08:35 | 35 | 1 | | 08:00 | 09:15 | 75 | 2 | - **Formula (Attendance point policy formula)**: `=LET(m, ROUND(MAX(0, B2 - A2) * 1440, 0), IFS(m<=5, 0, m<=15, 0.5, m<=60, 1, TRUE, 2))` - **Formula (Rounded late minutes)**: `=ROUND(MAX(0, B2 - A2) * 1440, 0)` ### Calculate Letter Grades (A+ to F) from Numeric Scores (XLOOKUP & VLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/assign-letter-grades-a-through-f-with-plus-minus-cutoffs/ - **Summary**: Assign A+ through F using an editable illustrative plus/minus scale, validate scores and cutoffs, and compare XLOOKUP with ascending-table VLOOKUP. - **Formula (XLOOKUP: exact cutoff or next smaller cutoff)**: `=IF($H$2<>"OK",$H$2,IF(NOT(ISNUMBER(B2)),"Enter numeric score",IF(OR(B2<0,B2>100),"Score must be between 0 and 100",XLOOKUP(B2,$D$2:$D$14,$E$2:$E$14,"Invalid score",-1))))` - **Formula (VLOOKUP: sorted approximate match)**: `=IF($H$2<>"OK",$H$2,IF(NOT(ISNUMBER(B2)),"Enter numeric score",IF(OR(B2<0,B2>100),"Score must be between 0 and 100",VLOOKUP(B2,$D$2:$E$14,2,TRUE))))` ### Assign People or Leads to K Balanced Teams (Round-Robin MOD vs Block) - **URL**: https://sheets.arte-soft.com/en/learn/assign-people-to-balanced-teams-round-robin-mod/ - **Summary**: Assign a complete six-person roster to an integer number of teams from one to six. Compare round-robin and contiguous assignments whose headcounts differ by at most one. - **Formula (Round-robin assignment)**: `=IF(NOT(ISNUMBER($D$2)),"Invalid Team Count",IF(OR($D$2<1,$D$2>ROWS($A$2:$A$7),$D$2<>INT($D$2)),"Invalid Team Count",IF(COUNTBLANK($A$2:$A$7)>0,"Complete the roster","Team "&(MOD(ROW(A2)-ROW($A$2),$D$2)+1))))` - **Formula (Balanced contiguous assignment)**: `=IF(NOT(ISNUMBER($D$2)),"Invalid Team Count",IF(OR($D$2<1,$D$2>ROWS($A$2:$A$7),$D$2<>INT($D$2)),"Invalid Team Count",IF(COUNTBLANK($A$2:$A$7)>0,"Complete the roster","Team "&(QUOTIENT((ROW(A2)-ROW($A$2))*$D$2,ROWS($A$2:$A$7))+1))))` ### Prioritize example shipping workflow rules with IFS - **URL**: https://sheets.arte-soft.com/en/learn/assign-shipping-carrier-tier-with-ifs-and-weight/ - **Summary**: Use an illustrative IFS decision tree to route special-handling flags before express requests and package-weight bands. *Table — Put required review ahead of service preferences:* | WeightLb (A) | Express? (B) | Hazmat? (C) | Example workflow | | --- | --- | --- | --- | | 0.6 | FALSE | FALSE | Small parcel (<= 1 lb) | | 4 | TRUE | TRUE | Manual compliance review (safety wins!) | | 4 | TRUE | FALSE | Express review | | 18 | FALSE | FALSE | Standard parcel (<= 50 lb) | | 85 | FALSE | FALSE | Freight review (catch-all) | - **Formula (Priority-ordered IFS carrier routing formula)**: `=IFS(C2, "Manual compliance review", B2, "Express review", A2 <= 1, "Small parcel", A2 <= 50, "Standard parcel", TRUE, "Freight review")` - **Formula (Illustrative fee estimate)**: `=IFS(C2, 45 + A2 * 1.5, B2, 25 + A2 * 2, A2 <= 1, 5.5, A2 <= 50, 9 + A2 * 0.6, TRUE, 120)` ### ASTM A255 Grossmann Steel Hardenability (DI) Formula - **URL**: https://sheets.arte-soft.com/en/learn/astm-a255-grossmann-ideal-critical-diameter-di-and-steel-hardenability-formula/ - **Summary**: Calculate Manganese Multiplying Factor f_Mn, Combined Alloy Hardenability Product (Mn*Cr*Mo*Ni), Ideal Critical Bar Diameter DI in Millimeters, and DI in Inches. *Table — Carbon sets MAXIMUM martensite hardness—Cr, Mo, and Mn MULTIPLY how deep martensite hardens into thick shaft cores!:* | ASTM A255 Grossmann Hardenability KPI (4140 Alloy vs Plain 1040 @ DI0=5.4 mm) | Formula | Verified Output | | --- | --- | --- | | Manganese Factor f_Mn | 1 + 3.333 * Mn_Pct | 3.833 (3.500 @ 0.75% Mn plain 1040) | | Combined Alloy Multiplier | f_Mn * f_Cr * f_Mo * f_Ni | 19.74x (3.50x @ plain 1040 carbon!) | | Ideal Critical Diameter DI (mm) | Base_DI0_mm * Combined_Alloy_Mult | 106.6 mm (18.9 mm @ plain 1040!) | | Ideal Critical Diameter DI (in) | Ideal_Critical_DI_mm / 25.4 | 4.20 in (0.74 in @ plain 1040!) | - **Formula (ASTM A255 Multiplicative Grossmann Ideal Critical Diameter Formula)**: `=LET(dz_m, B2, mn_p, B3, cr_p, B4, mo_p, B5, ni_p, B6, fm_n, 1 + 3.333 * mn_p, fc_r, 1 + 2.16 * cr_p, fm_o, 1 + 3 * mo_p, fn_i, 1 + 0.363 * ni_p, di_m, dz_m * fm_n * fc_r * fm_o * fn_i, IF(OR(dz_m <= 1, dz_m > 15, mn_p < 0, mn_p > 1.2, cr_p < 0, cr_p > 1.5, mo_p < 0, mo_p > 0.4, ni_p < 0, ni_p > 1.5), "Invalid Alloy Range", ROUND(di_m / 25.4, 2)))` - **Formula (Plain AISI 1040 Carbon Steel Shallow-Hardening Check (Set Mn = 0.75%, Cr = 0, Mo = 0, Ni = 0))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * (1 + 3.333 * B3) * (1 + 2.16 * B4) * (1 + 3 * B5) * (1 + 0.363 * B6), 1))` ### ASTM E1049 Four-Point Rainflow & Equivalent Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/astm-e1049-four-point-rainflow-cycle-counting-and-equivalent-stress-range/ - **Summary**: Evaluate ASTM E1049 Four-Point Rainflow Closed-Hysteresis Bounding Condition on Four Consecutive Stress Reversals (S1..S4), Extracted Inner Cycle Range ΔS_23 vs Outer Envelope ΔS_14 (MPa), and Basquin m-Power Equivalent Constant-Amplitude Stress Range ΔS_eq. *Table — Extract closed stress-strain hysteresis loops with ASTM E1049’s 4-point bounding rule!:* | ASTM E1049 4-Point Metric (S = 40 -> 260 -> 100 -> 340 MPa, Slope m = 3) | Formula | Verified Output | | --- | --- | --- | | 4-Point Bounding Gate | MIN(S2,S3)>=MIN(S1,S4) & MAX(S2,S3)<=MAX(S1,S4) | Closed Full Cycle (S2-S3 Extracted) | | Inner Cycle Range ΔS_23 (MPa) | ABS(S3 - S2) | 160.00 MPa | | Outer Span Range ΔS_14 (MPa) | ABS(S4 - S1) | 300.00 MPa | | Equivalent Stress ΔS_eq (MPa) | (((ΔS_23^m) + (ΔS_14^m)) / 2)^(1/m) | 249.59 MPa (vs 230 MPa Naive Avg) | - **Formula (ASTM E1049 Four-Point Rainflow Closure & Equivalent Stress Formula)**: `=LET(s_1, B2, s_2, B3, s_3, B4, s_4, B5, sl_m, B6, IF(OR((s_2 - s_1) * (s_3 - s_2) >= 0, (s_3 - s_2) * (s_4 - s_3) >= 0, sl_m <= 0), "Invalid Reversal Sequence", IF(AND(MIN(s_2, s_3) >= MIN(s_1, s_4), MAX(s_2, s_3) <= MAX(s_1, s_4)), "Closed Full Cycle (S2-S3 Extracted)", "Open: Wait for Next Reversal")))` - **Formula (Unbounded Valley Excursion Check (Set S3 = 10.0 MPa Below S1 = 40.0 MPa))**: `=IF(E2 = "Invalid Reversal Sequence", E2, ROUND((((ABS(B3 - B4) ^ B6) + (ABS(B5 - B2) ^ B6)) / 2) ^ (1 / B6), 2))` ### ASTRAL Score Formula: Acute Ischemic Stroke 3-Month Unfavorable Outcome - **URL**: https://sheets.arte-soft.com/en/learn/astral-acute-ischemic-stroke-functional-outcome-score-formula/ - **Summary**: Calculate Georgios Ntaios & Patrik Michel’s integer ASTRAL score = INT(Age / 5) + NIHSS + 2*Onset>3h + 2*VisualField + 1*AbnormalGlucose + 3*DecreasedLOC for 3-month mRS > 2 prediction. *Table — Six emergency-room bedside integers—INT(Age / 5) + exact NIHSS + 4 weighted clinical flags!:* | Acute Stroke Admission Profile | INT(Age/5) + NIHSS Base | ASTRAL Total Integer Score | 3-Month Unfavorable (mRS 3–6) Risk | | --- | --- | --- | --- | | Age 72 (14) + NIHSS 11 + >3h + Visual + Glu | 14 + 11 = 25 | 30 Points | High Unfavorable Outcome Risk (ASTRAL >= 25) | | Age 54 (10) + NIHSS 3, <3h, Normal Glu/LOC | 10 + 3 = 13 | 13 Points | Low Unfavorable Risk (< 15% mRS 3–6) | | Invalid Age < 18 or NIHSS > 42 | Error Guard | "Invalid ASTRAL Admission Inputs" | Clinical Bounds Guard | - **Formula (Ntaios-Michel ASTRAL Integer Score = INT(Age / 5) + NIHSS + 2*T + 2*R + 1*A + 3*L)**: `=IF(OR(B2 < 18, B2 > 115, B3 < 0, B3 > 42, MIN(B4:B7) < 0, MAX(B4:B7) > 1), "Invalid ASTRAL Admission Inputs", INT(B2 / 5) + B3 + 2 * B4 + 2 * B5 + B6 + 3 * B7)` - **Formula (ASTRAL 3-Month Functional Outcome Risk Tier)**: `=IF(OR(B2 < 18, B2 > 115, B3 < 0, B3 > 42, MIN(B4:B7) < 0, MAX(B4:B7) > 1), "Invalid ASTRAL Admission Inputs", IF(INT(B2 / 5) + B3 + 2 * B4 + 2 * B5 + B6 + 3 * B7 >= 25, "High Unfavorable Risk (ASTRAL >= 25 — High 3-Mo mRS 3–6 Risk)", IF(INT(B2 / 5) + B3 + 2 * B4 + 2 * B5 + B6 + 3 * B7 >= 18, "Intermediate Risk (ASTRAL 18–24)", "Low Unfavorable Risk (ASTRAL < 18 — Favorable Independence)")))` ### Apparent vs Absolute Magnitude, Distance Modulus & Pogson Flux Ratio - **URL**: https://sheets.arte-soft.com/en/learn/astronomical-apparent-vs-absolute-magnitude-distance-modulus/ - **Summary**: Calculate stellar absolute magnitude and distance in parsecs using consistent photometric bands, with an explicit extinction correction. *Table — Compare magnitudes in the same band and system:* | Photometric Metric | Formula | Star m = 8.5 at d = 100 pc | At Reference d = 10 pc | | --- | --- | --- | --- | | Distance Modulus (m - M) | 5 * LOG10(B3) - 5 | 5 * 2 - 5 = +5.00 mag | 0.00 mag (M = m!) | | Absolute Magnitude M | B2 - B5 - (5*LOG10(B3)-5) | 8.5 - 5.0 = +3.50 mag | +8.50 mag | | Flux Dimming Factor (10pc vs d) | 10^(0.4*(m-A-M)) | 10 ^ 2.0 = 100x dimmer | 1x (Reference) | - **Formula (Absolute magnitude with extinction correction)**: `=IF(COUNT(B2:B3,B5)<>3,"Invalid inputs",IF(OR(B3<=0,B5<0),"Invalid inputs",ROUND(B2-B5-(5*LOG10(B3)-5),2)))` - **Formula (Distance from a supplied absolute magnitude)**: `=IF(COUNT(B2,B4:B5)<>3,"Invalid inputs",IF(B5<0,"Invalid inputs",10^((B2-B5-B4+5)/5)))` - **Formula (Geometric distance modulus)**: `=IF(COUNT(B2:B3,B5)<>3,"Invalid inputs",IF(OR(B3<=0,B5<0),"Invalid inputs",5*LOG10(B3)-5))` - **Formula (Flux ratio with its direction stated)**: `=IF(COUNT(B2,B4:B5)<>3,"Invalid inputs",IF(B5<0,"Invalid inputs",ROUND(10^(0.4*(B2-B5-B4)),4)))` ### ATAN function: convert percent grade and rise-over-run slope into degrees - **URL**: https://sheets.arte-soft.com/en/learn/atan-function-grade-percent-to-degrees/ - **Summary**: Turn road grade percentages (10%, 100%, -8%) or rise/run ratios into slope angles using DEGREES(ATAN(grade)). *Table — Why 100% grade is 45 degrees—not 90 degrees:* | Slope Grade (A) | ATAN(A) Radians | DEGREES(ATAN(A)) | | --- | --- | --- | | 0 (flat) | 0 | 0° | | 0.10 (10% uphill) | 0.099669 | 5.7106° | | 1.00 (100% slope) | 0.785398 | 45° | | -0.08 (-8% downhill) | -0.079830 | -4.5739° | - **Formula (Convert decimal grade to degrees)**: `=ROUND(DEGREES(ATAN(A2)), 4)` - **Formula (When horizontal run can be zero, prefer ATAN2)**: `=B2 / C2` ### ATAN2 function: calculate full 4-quadrant angles using Excel's (x, y) order - **URL**: https://sheets.arte-soft.com/en/learn/atan2-function-x-y-quadrant-angle/ - **Summary**: Find exact directional angles from -180 to +180 degrees from (x, y) coordinates with ATAN2—avoiding quadrant loss and Excel's (x_num, y_num) argument trap. *Table — Critical syntax detail: Excel puts x_num FIRST, y_num SECOND:* | Point (x, y) | Quadrant / Axis | DEGREES(ATAN2(x, y)) | | --- | --- | --- | | (1, 1) | Quadrant I (NE) | 45° | | (-1, 1) | Quadrant II (NW) | 135° | | (-1, -1) | Quadrant III (SW) | -135° | | (0, 5) | Positive Y axis (x = 0) | 90° (no #DIV/0!) | - **Formula (Full-quadrant direction formula)**: `=ROUND(DEGREES(ATAN2(A2, B2)), 2)` - **Formula (Guard the (0, 0) origin explicitly)**: `=IF(AND(A2=0, B2=0), "Undefined origin", ROUND(DEGREES(ATAN2(A2, B2)), 2))` ### Atkinson Inequality Index & Equally Distributed Equivalent Income (y_EDE) Formula - **URL**: https://sheets.arte-soft.com/en/learn/atkinson-inequality-aversion-equally-distributed-equivalent-income/ - **Summary**: Measure social-welfare-weighted income inequality with tunable bottom-tail sensitivity epsilon != 1 using Sir Anthony Atkinson’s 1970 formula A(epsilon) = 1 - y_EDE / mu, where y_EDE = (MEAN(y_i^(1 - epsilon)))^(1 / (1 - epsilon)). *Table — Why Anthony Atkinson’s 1970 welfare index reveals normative trade-offs hidden inside a single Gini number!:* | Inequality Aversion Parameter epsilon | Equally Distributed Equivalent y_EDE | Atkinson Index A(epsilon) = 1 - y_EDE/mu | Distributional Welfare Interpretation | | --- | --- | --- | --- | | epsilon = 0.50 (Moderate Aversion) | $53,708.83 (vs $60,000 Mean) | 0.1049 (10.49% Welfare Loss) | Balanced sensitivity across brackets | | epsilon = 2.00 (High Bottom-Tail Aversion) | $38,747.88 (Harmonic Mean) | 0.3542 (35.42% Welfare Loss) | Heavily weights lowest-income $20k quartile | | epsilon = 1.00 or Non-Positive Income <= 0 | Requires Geometric Mean / y > 0 | "Requires Positive Incomes & epsilon != 1" | Power-Mean Singularity Guard | - **Formula (Atkinson Inequality Index A(epsilon) = 1 - ((SUM(y^(1-eps))/N)^(1/(1-eps))) / AVERAGE(y))**: `=IF(OR(MIN(B2:B5) <= 0, B6 < 0, B6 = 1), "Requires Positive Incomes & epsilon != 1", ROUND(1 - (((((B2 ^ (1 - B6)) + (B3 ^ (1 - B6)) + (B4 ^ (1 - B6)) + (B5 ^ (1 - B6))) / 4) ^ (1 / (1 - B6))) / AVERAGE(B2:B5)), 4))` - **Formula (Atkinson Equally Distributed Equivalent Income y_EDE ($))**: `=IF(OR(MIN(B2:B5) <= 0, B6 < 0, B6 = 1), "Requires Positive Incomes & epsilon != 1", ROUND((((B2 ^ (1 - B6)) + (B3 ^ (1 - B6)) + (B4 ^ (1 - B6)) + (B5 ^ (1 - B6))) / 4) ^ (1 / (1 - B6)), 2))` ### ATRIA Bleeding Risk Score (0–10) for Atrial Fibrillation Anticoagulation - **URL**: https://sheets.arte-soft.com/en/learn/atria-bleeding-risk-score-anticoagulated-atrial-fibrillation/ - **Summary**: Calculate Margaret Fang’s 5-variable ATRIA major hemorrhage score (0–10: Anemia +3, Severe Renal Disease eGFR <30 or Dialysis +3, Age >=75 +2, Prior Bleed +1, Hypertension +1) to stratify Low (0–3), Intermediate (4), and High (5–10) bleeding risk. *Table — Why ATRIA assigns triple weight (+3) to Anemia and eGFR < 30!:* | ATRIA Bleeding Score (0–10) | Risk Stratum | Observed Annual Major Bleed Rate | | --- | --- | --- | | 0 – 3 Points (e.g., Age >=75 + HTN = 3 pts) | Low Bleeding Risk (0–3) | 0.76% per patient-year | | 4 Points (e.g., Anemia +3, HTN +1 = 4 pts) | Intermediate Bleeding Risk (4) | 2.62% per patient-year | | 5 – 10 Points (e.g., Anemia +3, Age >=75 +2, HTN +1 = 6) | High Bleeding Risk (5–10) | 5.76% per patient-year | - **Formula (Weighted 5-Factor ATRIA Bleeding Score (0–10))**: `=IF(OR(COUNTA(B2:B6) < 5, SUMPRODUCT((B2:B6 <> 0) * (B2:B6 <> 1)) > 0), "Invalid Binary ATRIA Flag", 3 * B2 + 3 * B3 + 2 * B4 + B5 + B6)` - **Formula (ATRIA Major Hemorrhage Risk Category)**: `=IF(OR(COUNTA(B2:B6) < 5, SUMPRODUCT((B2:B6 <> 0) * (B2:B6 <> 1)) > 0), "Invalid Binary ATRIA Flag", IF(3 * B2 + 3 * B3 + 2 * B4 + B5 + B6 >= 5, "High Bleeding Risk (5-10: ~5.76%/yr)", IF(3 * B2 + 3 * B3 + 2 * B4 + B5 + B6 = 4, "Intermediate Bleeding Risk (4: ~2.62%/yr)", "Low Bleeding Risk (0-3: ~0.76%/yr)")))` ### How to Fix & Break Circular References Algebraically in Financial Models - **URL**: https://sheets.arte-soft.com/en/learn/audit-and-break-circular-references-in-financial-models/ - **Summary**: Resolve a bonus based on profit after its own deduction using algebra, validated inputs, an explicit rounding policy and a reconciliation check. - **Formula (Calculate and round the bonus once)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric inputs",IF(B3<0,"Rate must be nonnegative",IF(B2<=0,0,ROUND(B2*(B3/(1+B3)),2))))` - **Formula (Reconcile profit using the rounded bonus)**: `=IF(ISNUMBER(B5),B2-B5,B5)` - **Formula (Check the total)**: `=IF(ISNUMBER(B6),ROUND(B5+B6-B2,10),B6)` ### AUDIT-C Alcohol Misuse Screening Score (0–12) & Sex-Specific Cutoff Formula - **URL**: https://sheets.arte-soft.com/en/learn/audit-c-alcohol-misuse-screening-sex-specific-score-formula/ - **Summary**: Calculate the 3-question WHO/VA AUDIT-C consumption score (0 to 12 points) and apply validated sex-specific hazardous-drinking thresholds (>= 4 points in men, >= 3 points in women). *Table — Screen unhealthy alcohol use in 3 questions with sex-specific >=4 / >=3 thresholds!:* | Sex Assigned / Metabolic Cutoff | Negative Screen | Positive Hazardous Screen | High-Severity Tier | | --- | --- | --- | --- | | Male ("M", Cutoff >= 4) | 0 – 3 points | 4 – 7 points (Brief Intervention) | 8 – 12 points (Dependence Assessment) | | Female ("F", Cutoff >= 3) | 0 – 2 points | 3 – 7 points (Brief Intervention) | 8 – 12 points (Dependence Assessment) | | Q1 = 0 Consistency Rule | If Never Drinks (Q1=0) | Total = 0 (Q2 & Q3 must be 0) | Abstinent | - **Formula (Total 3-Item AUDIT-C Consumption Score (0 to 12 Points))**: `=IF(OR(MIN(B3:B5) < 0, MAX(B3:B5) > 4), "Invalid AUDIT-C Item (0 to 4)", IF(B3 = 0, 0, SUM(B3:B5)))` - **Formula (Sex-Specific AUDIT-C Screening Interpretation (>= 4 Men, >= 3 Women))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), MIN(B3:B5) < 0, MAX(B3:B5) > 4), "Invalid Inputs", IF(IF(B3 = 0, 0, SUM(B3:B5)) >= 8, "High Risk (>=8): Assess Alcohol Dependence", IF(IF(B3 = 0, 0, SUM(B3:B5)) >= IF(B2 = "F", 3, 4), "Positive Screen: Hazardous Drinking Counseling", "Negative Screen: Low-Risk / Abstinent")))` ### Highlight & Audit Numbers Stored with Embedded Unit or Currency Symbols (ISTEXT) - **URL**: https://sheets.arte-soft.com/en/learn/audit-numbers-containing-embedded-text-or-unit-symbols-istext/ - **Summary**: Catch imported entries like "125 kg", "approx 90", or "EUR 400" that masquerade as numbers and silently drop out of SUM() using --AND(B2 <> "", ISTEXT(B2)). *Table — Why typing "125 kg" inside a numeric cell silently deletes 125 from SUM(B2:B6)!:* | Ledger Entry in B2:B6 | Included in SUM(B2:B6)? | Contaminated Flag --AND(B<>"", ISTEXT(B)) | Correct Fix | | --- | --- | --- | --- | | 250 and 180 (True Numbers) | Yes ($430 Subtotal) | 0 (Valid Number) | Use custom number format for units | | "125 kg" and "EUR 95" (Embedded Units!) | NO (Silently Skipped!) | 1 (Flagged — 2 Rows!) | Strip text units -> numeric 125 & 95 | | "" (Blank Pending Row B5) | Ignored | 0 (Blank Allowed) | Not false-flagged as text symbol | - **Formula (Count Contaminated Text-With-Symbol Entries in a Numeric Column)**: `=SUM(C2:C6)` - **Formula (Audit Banner: Warn Before Publishing Unreconciled SUM(B2:B6))**: `=IF(SUM(C2:C6) > 0, "Audit Warning: Text Symbols Excluded from Sum", SUM(B2:B6))` ### Doubly Robust Augmented IPW (AIPW) Treatment Effect Formula - **URL**: https://sheets.arte-soft.com/en/learn/augmented-ipw-aipw-doubly-robust-causal-treatment-estimator/ - **Summary**: Build Robins-Rotnitzky-Zhao doubly robust AIPW pseudo-outcomes psi_i = (m_1 - m_0) + D*(Y - m_1)/e - (1 - D)*(Y - m_0)/(1 - e) and verify consistency when either nuisance model is misspecified. *Table — Prove the Double-Robustness Theorem numerically on four spreadsheet rows:* | Nuisance-Model Specification | Pure HT IPW Estimate | Doubly Robust AIPW Estimate | | --- | --- | --- | | Exact m_d(X), Misspecified e(X) | +1.0417 (Biased) | +10.0000 (Exact via Outcome Fit) | | Misspecified m_d(X) = 0, Exact e(X) = 0.5 | +10.0000 (Exact) | +10.0000 (Exact via IPW Correction) | | Extreme Propensity e <= 0 or e >= 1 | Explodes / Div-by-Zero | Blocked by Positivity Guard | - **Formula (Row-Level Neyman-Orthogonal AIPW Pseudo-Outcome psi_i Formula)**: `=LET(d_tr, B2, e_ps, C2, y_ob, D2, m_1, E2, m_0, F2, IF(OR(e_ps <= 0, e_ps >= 1), "Positivity Violation: 0 < e < 1", ROUND((m_1 - m_0) + d_tr * (y_ob - m_1) / e_ps - (1 - d_tr) * (y_ob - m_0) / (1 - e_ps), 4)))` - **Formula (Doubly Robust Sample Average Treatment Effect AVERAGE(psi) Formula)**: `=IF(OR(MIN(C2:C5) <= 0, MAX(C2:C5) >= 1), "Positivity Violation: 0 < e < 1", ROUND(AVERAGE(G2:G5), 4))` ### Aumann-Maschler Contested-Garment Bankruptcy Formula - **URL**: https://sheets.arte-soft.com/en/learn/aumann-maschler-talmudic-bankruptcy-contested-garment-division-formula/ - **Summary**: Calculate Robert Aumann and Michael Maschler’s (1985) Contested-Garment (nucleolus) bankruptcy awards x_1 = 0.5*(E + MAX(0, E - c_2) - MAX(0, E - c_1)) versus pari-passu recovery. *Table — Understand why the Talmudic nucleolus splits only the contested estate!:* | Bankruptcy Division Metric (E=120, c_1=100, c_2=300) | Formula | Verified Output | | --- | --- | --- | | Contested-Garment Award to Creditor 1 (x_1) | 0.5 * (E + MAX(0, E - c_2) - MAX(0, E - c_1)) | 50.00 (50.0% Recovery) | | Contested-Garment Award to Creditor 2 (x_2) | E - x_1 | 70.00 (23.3% Recovery) | | Pari-Passu Proportional Award to Creditor 1 | E * (c_1 / (c_1 + c_2)) | 30.00 (30.0% Recovery) | | Nucleolus vs Pari-Passu Small-Claim Shift | x_1 - E * (c_1 / (c_1 + c_2)) | +20.00 | - **Formula (Universal Contested-Garment Nucleolus Award Formula)**: `=LET(es_vl, B2, cl_1, B3, cl_2, B4, IF(OR(es_vl < 0, cl_1 < 0, cl_2 < 0, cl_1 + cl_2 <= 0, es_vl > cl_1 + cl_2), "Invalid Insolvent Estate", ROUND(0.5 * (es_vl + MAX(0, es_vl - cl_2) - MAX(0, es_vl - cl_1)), 2)))` - **Formula (Pari-Passu Comparison & Small-Claimant Protection Wedge Formula)**: `=IF(ISTEXT(E2), E2, ROUND(E2 - B2 * (B3 / (B3 + B4)), 2))` ### Austempered Ductile Iron (ADI) Ms & Ausferrite Formula - **URL**: https://sheets.arte-soft.com/en/learn/austempered-ductile-iron-adi-salt-bath-quench-severity-and-bainitic-window-formula/ - **Summary**: Calculate Initial Matrix Martensite-Start Ms (°C), Salt-Bath Austempering Superheat Above Ms (°C), T0-Limited Enriched Austenite Carbon C_gamma (wt%), and Enriched Ms (°C). *Table — Why 2.4% silicon in Austempered Ductile Iron blocks cementite carbides—creating carbon-stabilized ausferrite stronger than forged steel!:* | ASTM A897 ADI Ausferrite KPI (C0=0.78%, Mn=0.36%, Mo=0.24%, Tbath=360 vs 285 °C) | Formula | Verified Output | | --- | --- | --- | | Initial Matrix Ms0 (°C) | 539 - 423*C0 - 30.4*Mn - 7.5*Mo | 196.3 °C | | Salt-Bath Superheat Above Ms0 (°C) | Salt_Bath_Temp_C - Initial_Ms0_C | 163.7 °C (88.7 °C @ lower-ADI 285 °C) | | T0 Enriched Austenite C_gamma (wt%) | (720 - Salt_Bath_Temp_C) / 195 | 1.846 wt% (2.231 wt% @ 285 °C Grade 1400!) | | Stabilized Ausferrite Ms_enr (°C) | 539 - 423*C_gamma - 30.4*Mn - 7.5*Mo | -254.7 °C (-417.4 °C cryogenic stability!) | - **Formula (Andrews Martensite-Start & Bhadeshia T0 Carbon-Enriched Ausferrite Formula)**: `=LET(cz_w, B2, mn_w, B3, mo_w, B4, tb_c, B5, ms_z, 539 - 423 * cz_w - 30.4 * mn_w - 7.5 * mo_w, cg_w, (720 - tb_c) / 195, ms_e, 539 - 423 * cg_w - 30.4 * mn_w - 7.5 * mo_w, IF(OR(cz_w < 0.5, cz_w > 1.1, mn_w < 0.1, mn_w > 1.2, mo_w < 0, mo_w > 1, tb_c < 240, tb_c > 420, tb_c <= ms_z + 25), "Invalid ADI Schedule", ROUND(ms_e, 1)))` - **Formula (Wear-Resistant Grade 1400 Lower-Ausferrite 285 °C Salt Bath Check (Set Salt Bath B5 = 285 °C))**: `=IF(ISTEXT(E5), E5, ROUND((720 - B5) / 195, 3))` ### Autoclave Prepreg Fiber Volume & Cured Ply Thickness Formula - **URL**: https://sheets.arte-soft.com/en/learn/autoclave-prepreg-composite-laminate-fiber-volume-fraction-and-cured-ply-thickness/ - **Summary**: Calculate Zero-Void Fiber Volume Fraction Vf (%) from Resin Weight Content, Single Cured Ply Thickness CPT (mm), Total N-Ply Laminate Thickness (mm), and Cured Laminate Density (g/cm³). *Table — Prepreg data sheets quote Resin Content by WEIGHT—converting to Fiber VOLUME Fraction shifts laminate thickness and stiffness!:* | Aerospace Prepreg Autoclave KPI (FAW=194 gsm, Wr=0.34, rhof=1.78, rhor=1.26, 16 Plies) | Formula | Verified Output | | --- | --- | --- | | Fiber Volume Fraction Vf (%) | ((1-Wr)/rhof) / ((1-Wr)/rhof + Wr/rhor) * 100 | 57.88% (64.54% after bleed to Wr=0.28) | | Cured Ply Thickness CPT (mm) | (FAW_gsm / (rho_f * Vf_frac)) / 1000 | 0.1883 mm (0.1689 mm @ Wr = 0.28) | | Total N-Ply Laminate Gauge (mm) | CPT_mm * Ply_Count_N | 3.013 mm (2.702 mm @ Wr = 0.28) | | Cured Laminate Density (g/cm³) | Vf * rho_f + (1 - Vf) * rho_r | 1.561 g/cm³ (1.596 g/cm³ @ Wr = 0.28) | - **Formula (Weight-to-Volume Prepreg Conversion & Exact Cured Ply Thickness Formula)**: `=LET(fa_w, B2, wr_f, B3, rf_g, B4, rr_g, B5, np_c, B6, wf_f, 1 - wr_f, vf_r, (wf_f / rf_g) / ((wf_f / rf_g) + (wr_f / rr_g)), IF(OR(fa_w <= 20, wr_f < 0.15, wr_f > 0.65, rr_g <= 0.8, rf_g <= rr_g, np_c < 1), "Invalid Prepreg Input", ROUND(vf_r * rf_g + (1 - vf_r) * rr_g, 3)))` - **Formula (Bleeder-Cloth Resin-Bleed Consolidation Check (Set Net Cured Resin Weight Wr B3 = 0.28))**: `=IF(ISTEXT(E5), E5, LET(wf_f, 1 - B3, vf_r, (wf_f / B4) / ((wf_f / B4) + (B3 / B5)), ROUND(((B2 / (B4 * vf_r)) / 1000) * B6, 3)))` ### Automatic Row Numbers That Expand Dynamically and Skip Blank Separator Rows - **URL**: https://sheets.arte-soft.com/en/learn/automatic-dynamic-row-numbers-skipping-blank-rows-sequence-counta/ - **Summary**: Number task lists automatically without broken #REF! chains using SEQUENCE(COUNTA(...)) for contiguous blocks or IF(ISBLANK(...), "", COUNTA($B$2:B2)) for tables with blank separator rows. *Table — Contiguous SEQUENCE spills vs. gap-tolerant expanding COUNTA:* | Row | Task Description (Col B) | Gap-Aware Formula: IF(ISBLANK(B2), "", COUNTA($B$2:B2)) | | --- | --- | --- | | 2 | Finalize schema | 1 | | 3 | Seed test fixtures | 2 | | 4 | (Blank section break) | "" | | 5 | Run QA suite | 3 | | 6 | Publish release notes | 4 | - **Formula (Gap-Tolerant Sequential Row Numbering)**: `=IF(ISBLANK(B2), "", COUNTA($B$2:B2))` - **Formula (Single-Cell Spilled Row Numbers for Contiguous Lists)**: `=SEQUENCE(COUNTA(B2:B6))` ### Average or sum the last N numeric entries with FILTER and TAKE - **URL**: https://sheets.arte-soft.com/en/learn/average-and-filter-last-n-numeric-entries-take/ - **Summary**: Select the last N numeric cells in source-row order, retaining zero and negative values while skipping text, blanks and error cells. *Table — Skip blank rows and "Maintenance" text notes when averaging the last N shifts!:* | Shift Row | Output (Col B) | ISNUMBER(B) | Included in Last 3 Numeric? | | --- | --- | --- | --- | | Shifts 1–2 | 110, 130 | TRUE, TRUE | Older valid runs (dropped by TAKE -3) | | Shift 3 | "Maint" | FALSE | Skipped cleanly! | | Shift 4 | 140 | TRUE | Included (#1 of last 3) | | Shift 5 | (blank) | FALSE | Skipped cleanly! | | Shifts 6–7 | 160, 180 | TRUE, TRUE | Included (#2 and #3 -> Avg = 160!) | - **Formula (Rolling Average of Last N Valid Numeric Values)**: `=IF(NOT(ISNUMBER(D2)),"Invalid N",IF(OR(D2<1,D2<>INT(D2)),"Invalid N",IF(COUNT(B2:B8)=0,"No numeric data",AVERAGE(TAKE(FILTER(B2:B8, ISNUMBER(B2:B8)), -D2)))))` - **Formula (Sum of Last N Valid Numeric Values)**: `=IF(NOT(ISNUMBER(D2)),"Invalid N",IF(OR(D2<1,D2<>INT(D2)),"Invalid N",IF(COUNT(B2:B8)=0,"No numeric data",SUM(TAKE(FILTER(B2:B8, ISNUMBER(B2:B8)), -D2)))))` ### Average Call Duration (AHT) Per Month with AVERAGEIFS & EOMONTH - **URL**: https://sheets.arte-soft.com/en/learn/average-call-or-ticket-handle-time-by-month-averageifs/ - **Summary**: Calculate monthly call-center Average Handle Time (AHT) between dynamic month start >= MonthStart and <= EOMONTH(MonthStart, 0) using AVERAGEIFS—with COUNTIFS zero-call protection. *Table — Aggregate support-desk Average Handle Time (AHT) cleanly by calendar month!:* | Target Month Start (E2) | Date Criteria Window | Matching Call Durations (min) | Monthly AHT | | --- | --- | --- | --- | | 2026-03-01 (March) | >= 2026-03-01 and <= 2026-03-31 | 6.4, 8.2, 5.8 min (3 calls) | 6.80 minutes | | 2026-04-01 (April) | >= 2026-04-01 and <= 2026-04-30 | 7.5, 9.5 min (2 calls) | 8.50 minutes | | 2026-05-01 (Future Month) | 0 matching calls | COUNTIFS = 0 guard | 0 (No #DIV/0!!) | - **Formula (Monthly Average Handle Time (AHT) via AVERAGEIFS + EOMONTH)**: `=IF(COUNTIFS(A2:A6, ">=" & E2, A2:A6, "<=" & EOMONTH(E2, 0)) = 0, 0, ROUND(AVERAGEIFS(C2:C6, A2:A6, ">=" & E2, A2:A6, "<=" & EOMONTH(E2, 0)), 2))` - **Formula (Queue-Specific Monthly AHT (Adding Queue Tier Criteria))**: `=ROUND(AVERAGEIFS(C2:C6, A2:A6, ">=" & E2, A2:A6, "<=" & EOMONTH(E2, 0), B2:B6, F2), 2)` ### Average & Sum If Companion Column Is Not Blank (and Exclude Zero Placeholders) with AVERAGEIFS - **URL**: https://sheets.arte-soft.com/en/learn/average-if-not-blank-and-exclude-zero-placeholders-averageifs/ - **Summary**: Average or sum values in column C only where companion column B is populated ("<>") while optionally excluding unrecorded 0 placeholders ("<>0") without triggering #DIV/0!. *Table — AVERAGE(C2:C6) already ignores blanks in C—so when DO you need "Average If Not Blank"?:* | Aggregation Goal on Values C2:C6 & Reviewer B2:B6 | Worksheet Formula | Result on Sample Data | | --- | --- | --- | | Naive AVERAGE(C2:C6) (Includes unreviewed Row 4 & 0 placeholder Row 5!) | =AVERAGE(C2:C6) | 64.00 (Severely diluted!) | | Sum Only Reviewed Rows (B2:B6 Not Blank "<>") | =SUMIFS(C2:C6, B2:B6, "<>") | 240.00 (Rows 2, 3, 5, 6) | | Average Reviewed & Non-Zero Rows Only | =AVERAGEIFS(C2:C6, B2:B6, "<>", C2:C6, "<>0") | 80.00 (Rows 2, 3, 6: [78, 84, 78]) | - **Formula (Guarded Average If Companion Column Not Blank & Non-Zero)**: `=IF(COUNTIFS(B2:B6, "<>", C2:C6, "<>0") = 0, "No Reviewed Non-Zero Rows", ROUND(AVERAGEIFS(C2:C6, B2:B6, "<>", C2:C6, "<>0"), 2))` - **Formula (Sum If Companion Column Not Blank =SUMIFS(C2:C6, B2:B6, "<>"))**: `=ROUND(SUMIFS(C2:C6, B2:B6, "<>"), 2)` ### Average ignoring zeros: exclude 0 placeholders without counting blanks - **URL**: https://sheets.arte-soft.com/en/learn/average-ignore-zeros/ - **Summary**: Use AVERAGEIF(range, "<>0") to skip both blank cells and zero-output shutdown days—and guard all-zero ranges cleanly. *Table — Why 0 drags AVERAGE down while blanks do not:* | Day (A) | UnitsProduced (B) | Included in AVERAGEIF("<>0")? | | --- | --- | --- | | Mon | 240 | Yes | | Tue (Shutdown) | 0 | Skipped | | Wed | 260 | Yes | | Thu (Shutdown) | 0 | Skipped | | Fri | 250 | Yes | - **Formula (Compare AVERAGEIF("<>0") = 250 vs AVERAGE = 150)**: `=AVERAGEIF(B2:B6, "<>0")` - **Formula (Guard all-zero weeks against #DIV/0!)**: `=IFERROR(AVERAGEIF(B2:B6, "<>0"), 0)` ### AVERAGE in Excel: why a blank and a zero give different results - **URL**: https://sheets.arte-soft.com/en/learn/average-ignore-blanks-include-zero/ - **Summary**: Calculate a mean from a small equipment log, show how many readings support it, and avoid replacing missing observations with zero. - **Formula (Calculate the mean of the recorded values)**: `=AVERAGE(B2:B5)` - **Formula (Show the observation count beside the result)**: `=COUNT(B2:B5)` - **Formula (Handle the case where there are no readings)**: `=IF(COUNT(B2:B5)=0,"No readings",AVERAGE(B2:B5))` ### Average Non-Zero Values While Keeping or Excluding Negatives (AVERAGEIF) - **URL**: https://sheets.arte-soft.com/en/learn/average-non-zero-values-excluding-zeros-averageif-averageifs/ - **Summary**: Exclude placeholder 0.00 cells from KPI and margin averages using AVERAGEIF(range, "<>0") vs. strictly positive AVERAGEIF(range, ">0") with #DIV/0! protection. *Table — Why "<>0" and ">0" give completely different answers when credit memos or negative variances exist!:* | Aggregation Rule on [120, 0, -30, 150, 0, 120] | Included Cells | Computed Mean | Accounting Use Case | | --- | --- | --- | --- | | AVERAGEIF(B2:B7, "<>0") | 4 non-zero cells (keeps -30) | 90.00 | Active-month net P&L / variance tracking | | AVERAGEIF(B2:B7, ">0") | 3 positive cells (drops 0 and -30) | 130.00 | Gross positive-sales benchmarking | | All Zeros [0, 0, 0, 0, 0, 0] | 0 matching cells | "All Values Zero" | Prevents #DIV/0! crash | - **Formula (Average All Non-Zero Numbers (Preserving Negative Entries))**: `=IF(COUNTIF(B2:B7, "<>0") = 0, "All Values Zero", ROUND(AVERAGEIF(B2:B7, "<>0"), 2))` - **Formula (Average Strictly Positive Numbers Only (">0"))**: `=IF(COUNTIF(B2:B7, ">0") = 0, "No Positive Values", ROUND(AVERAGEIF(B2:B7, ">0"), 2))` ### Average a Range While Ignoring #DIV/0! and #N/A Errors (AVERAGEIF) - **URL**: https://sheets.arte-soft.com/en/learn/average-numbers-while-ignoring-formula-errors/ - **Summary**: Compute the exact arithmetic mean of valid numeric cells in a range containing formula errors (#DIV/0!, #N/A, #VALUE!) using AVERAGEIF(range, "<1E100") without distorting zeros. *Table — Why AVERAGEIF(range, "<1E100") beats IFERROR(range, 0):* | Store Row | Margin Cell | Included by AVERAGEIF("<1E100")? | Naive IFERROR(...,0) Distortion | | --- | --- | --- | --- | | Store 1 | 120 | Yes (120) | 120 | | Store 2 | #DIV/0! | Ignored cleanly | Treated as 0 (wrong!) | | Store 3 | 150 | Yes (150) | 150 | | Store 4 | #N/A | Ignored cleanly | Treated as 0 (wrong!) | | Store 5 | 90 | Yes (90) -> Mean = 120 | 90 -> Distorted Mean = 72 | - **Formula (Error-Proof Mean of Finite Numbers)**: `=IF(COUNT(B2:B6) = 0, "No Valid Readings", ROUND(AVERAGEIF(B2:B6, "<1E100"), 2))` - **Formula (Valid Numeric Sample Size vs Error Cell Count)**: `=COUNT(B2:B6)` ### Average Salary by Department & Job Level (AVERAGEIF / AVERAGEIFS) - **URL**: https://sheets.arte-soft.com/en/learn/average-salary-by-department-and-level-averageif-averageifs/ - **Summary**: Calculate mean base compensation by department with AVERAGEIF and by department + seniority band with AVERAGEIFS, guarding zero-headcount #DIV/0! errors cleanly. *Table — Compensation benchmarking without #DIV/0! crashes on unfilled department bands!:* | Compensation Filter | Matching Employees | Formula Used | Mean Base Salary | | --- | --- | --- | --- | | Engineering (All Levels) | 3 employees ($132k, $148k, $170k) | AVERAGEIF(B2:B7, "Engineering", D2:D7) | $150,000 | | Engineering + Senior Only | 2 employees ($132k, $148k) | AVERAGEIFS(D2:D7, B2:B7, "Engineering", C2:C7, "Senior") | $140,000 | | Legal (0 Active Headcount) | 0 employees (#DIV/0! Guard) | IF(COUNTIF(...)=0, "No Active Headcount", ...) | "No Active Headcount" | - **Formula (Mean Salary by Department (Zero-Headcount Safe AVERAGEIF))**: `=IF(COUNTIF(B2:B7, F2) = 0, "No Active Headcount", ROUND(AVERAGEIF(B2:B7, F2, D2:D7), 0))` - **Formula (Mean Salary by Department AND Seniority Band (AVERAGEIFS))**: `=IF(COUNTIFS(B2:B7, F2, C2:C7, G2) = 0, "No Active Headcount", ROUND(AVERAGEIFS(D2:D7, B2:B7, F2, C2:C7, G2), 0))` ### Average top 3 (or top N) scores: drop lowest grades dynamically - **URL**: https://sheets.arte-soft.com/en/learn/average-top-3-scores/ - **Summary**: Combine SORT, TAKE, and AVERAGE to average the highest N scores—with N driven by a cell instead of a fixed {1,2,3} constant. *Table — Why TAKE + SORT beats hardcoded LARGE(range, {1,2,3}):* | Quiz (A) | Score (B) | Sorted Rank | TopN (D2) | | --- | --- | --- | --- | | Quiz 1 | 72 | #4 (dropped) | 3 | | Quiz 2 | 94 | #1 (kept) | | | Quiz 3 | 88 | #3 (kept) | | | Quiz 4 | 65 | #5 (dropped) | | | Quiz 5 | 91 | #2 (kept) | | - **Formula (Average the highest N scores)**: `=ROUND(AVERAGE(TAKE(SORT(B2:B6, 1, -1), D2)), 2)` - **Formula (Average the bottom N scores or guard N < 1)**: `=AVERAGE(TAKE(SORT(B2:B6, 1, 1), 2))` ### AVERAGEA function: average ranges where TRUE = 1 and text = 0 - **URL**: https://sheets.arte-soft.com/en/learn/averagea-function-text-and-booleans/ - **Summary**: Understand exactly how AVERAGEA evaluates logical checkboxes and text entries compared with standard AVERAGE. *Table — When text and TRUE/FALSE flags should count in the denominator:* | Student (A) | QuizEntry (B) | AVERAGE Treats As | AVERAGEA Treats As | | --- | --- | --- | --- | | Nora | 10 | 10 | 10 | | Owen | TRUE (bonus credit) | Ignored | 1 | | Pia | Absent | Ignored | 0 | | Quinn | 5 | 5 | 5 | - **Formula (Side-by-side: AVERAGEA = 4 vs AVERAGE = 7.5)**: `=AVERAGEA(B2:B5)` - **Formula (All-blank range returns #DIV/0!)**: `=AVERAGEA(D2:D5)` ### AVERAGEIF in Excel: average readings for one category - **URL**: https://sheets.arte-soft.com/en/learn/averageif-average-by-category/ - **Summary**: Choose a category, average its numeric readings, and check how a missing reading differs from a recorded zero. *Table — Build a category and reading pair:* | Row | Group | Reading | | --- | --- | --- | | 2 | Bench | 4 | | 3 | Floor | 10 | | 4 | Bench | 8 | | 5 | Floor | 14 | | 6 | Bench | not entered | - **Formula (Keep the condition range separate from the numbers)**: `=AVERAGEIF(A2:A6,D2,B2:B6)` - **Formula (Use explicit, aligned ranges)**: `=AVERAGEIF($A$2:$A$6,D2,$B$2:$B$6)` ### AVERAGEIFS function: average values matching multiple criteria - **URL**: https://sheets.arte-soft.com/en/learn/averageifs-multiple-conditions/ - **Summary**: Calculate the mean turnaround time for rows matching both site and priority, ignore unrecorded blanks while keeping real zeros, and handle #DIV/0! when no rows match. *Table — Lab samples filtered by site and priority:* | Site (A) | Priority (B) | Hours (C) | | --- | --- | --- | | Main | Urgent | 4 | | Main | Routine | 14 | | Main | Urgent | 8 | | Annex | Urgent | 6 | | Main | Urgent | | - **Formula (Put average_range first, followed by criteria pairs)**: `=AVERAGEIFS(C2:C6,A2:A6,E2,B2:B6,F2)` - **Formula (Real zeros vs blanks and unmatched criteria (#DIV/0!))**: `=IFERROR(AVERAGEIFS(C2:C6,A2:A6,E2,B2:B6,F2),"No completed samples")` ### Averch-Johnson Regulated Capital Gold-Plating Formula - **URL**: https://sheets.arte-soft.com/en/learn/averch-johnson-rate-of-return-regulation-capital-gold-plating/ - **Summary**: Calculate the Averch-Johnson (1962) shadow cost of capital r_eff = r - (lambda/(1 - lambda))*(s - r) and quantify rate-base capital over-intensity ("gold-plating") under rate-of-return regulation. *Table — Why rate-of-return utility caps induce electric and gas monopolies to over-build capital rate base!:* | Averch-Johnson Utility Metric (w=20, r=10%, s=14%, lambda=0.50) | Formula | Verified Output | | --- | --- | --- | | Cost-Minimizing Capital-Labor Ratio | (w / r) * (alpha / beta) | 200.0000 | | Shadow Cost of Capital (r_eff) | r - (lambda / (1 - lambda)) * (s - r) | 0.0600 (6.00% < 10.00% WACC) | | Regulated Averch-Johnson (K / L)* | (w / r_eff) * (alpha / beta) | 333.3333 | | Capital Gold-Plating Excess (%) | ((K/L)* / (K/L)_min) - 1 | +0.6667 (+66.67% Over-Capitalized!) | - **Formula (Averch-Johnson Shadow Cost of Capital & Regulated K/L Ratio Formula)**: `=LET(w_lb, B2, r_wc, B3, s_al, B4, al_k, B5, bt_l, B6, lm_c, B7, IF(OR(w_lb <= 0, r_wc <= 0, s_al < r_wc, al_k <= 0, bt_l <= 0, lm_c < 0, lm_c >= 1), "Invalid AJ Input", LET(r_ef, r_wc - (lm_c / (1 - lm_c)) * (s_al - r_wc), IF(r_ef <= 0, "Non-Interior AJ Corner (r_eff <= 0)", ROUND((w_lb / r_ef) * (al_k / bt_l), 4)))))` - **Formula (Proportional Gold-Plating Distortion ((r / r_eff) - 1) Formula)**: `=IF(ISTEXT(E3), E3, ROUND((E3 / E2) - 1, 4))` ### Avrami (JMAK) Isothermal Crystallization Fraction & Half-Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/avrami-jmak-isothermal-crystallization-and-phase-kinetics/ - **Summary**: Calculate Johnson-Mehl-Avrami-Kolmogorov (JMAK) transformed phase fraction X(t) = 1 - EXP(-k * t^n) and crystallization half-time t_1/2 = (LN(2) / k)^(1 / n) for polymers, steels, and glasses. *Table — Model sigmoidal S-curve nucleation, growth, and impingement in isothermal annealing!:* | Annealing Time t (Polymer Spherulites: k = 0.02 min^-3, Avrami n = 3) | Extended Volume k * t^n | Transformed Fraction X(t) | Microstructure Stage | | --- | --- | --- | --- | | Early Induction (t = 2.0 min) | 0.160 | 0.1479 (14.8%) | Isolated nuclei growing | | Half-Time t_1/2 = 3.260 min | 0.6931 (= LN(2)) | 0.5000 (50.0%) | Peak transformation rate | | Late Impingement (t = 4.0 min) | 1.280 | 0.7220 (72.2%) | Spherulite impingement | - **Formula (Avrami-JMAK Transformed Volume Fraction X(t) = 1 - EXP(-k * t^n))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Avrami Parameters", ROUND(1 - EXP(-B2 * (B4 ^ B3)), 4))` - **Formula (Isothermal Crystallization Half-Time t_1/2 = (LN(2) / k)^(1 / n))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Avrami Parameters", ROUND((LN(2) / B2) ^ (1 / B3), 3))` ### Stress, Strain, Young's Modulus & Factor of Safety formulas (PL / AE) - **URL**: https://sheets.arte-soft.com/en/learn/axial-stress-strain-and-youngs-modulus-hookes-law/ - **Summary**: Calculate tensile stress (MPa = N / mm²), elastic elongation ΔL = (P · L) / (A · E), strain ε, and yield Factor of Safety. *Table — Engineer's unit shortcut: 1 Newton / mm² equals 1 Megapascal (MPa) exact!:* | Mechanics of Materials Metric (25 kN Steel Rod) | Formula | Result | | --- | --- | --- | | Engineering Stress σ (MPa = N / mm²) | =A2 / B2 | 125.00 MPa | | Elastic Elongation ΔL (mm = PL / AE) | =(A2 * C2) / (B2 * D2 * 1000) | 1.2500 mm | | Axial Strain ε (mm / mm) | =ΔL / C2 = σ / (E * 1000) | 0.000625 (625 microstrain) | | Yield Factor of Safety (FoS) | =E2 / (A2 / B2) | 2.00 (ratio to supplied yield strength only) | - **Formula (Tensile Stress (MPa), Elastic Elongation ΔL (mm), and Factor of Safety formulas)**: `=IF(OR(COUNT(A2:E2)<>5,A2<0,B2<=0,C2<=0,D2<=0,E2<=0),"Invalid inputs",IF(A2/B2>=E2,"Outside elastic model",ROUND(A2*C2/(B2*D2*1000),4)))` - **Formula (Tensile Stress (MPa) and Yield Factor of Safety)**: `=IF(OR(COUNT(A2:E2)<>5,A2<0,B2<=0,C2<=0,D2<=0,E2<=0),"Invalid inputs",IF(A2=0,"No applied load",ROUND(E2/(A2/B2),2)))` ### Bachelier Normal ATM Option Price & Straddle Breakeven Formula - **URL**: https://sheets.arte-soft.com/en/learn/bachelier-normal-option-pricing-and-straddle-breakeven-formula/ - **Summary**: Price at-the-money options on interest rates, spreads, and commodities that can trade near or below zero using Bachelier’s (1900) arithmetic normal formula C_ATM = DF * sigma_N * SQRT(T / (2 * PI())). *Table — Price rate swaptions, yield-curve spreads, and negative-capable futures cleanly!:* | Expiry T (sigma_N = 12.00, r = 0%) | Undiscounted ATM Call / Put | ATM Straddle Breakeven (+/-) | Ratio to 1-SD Move | | --- | --- | --- | --- | | 3 Months (T = 0.25 yr) | 2.3937 | +/- 4.7873 | 79.79% of 6.00 SD | | 1 Year (T = 1.00 yr) | 4.7873 | +/- 9.5746 | 79.79% of 12.00 SD | | Discounted 1Y (r = 4.00%) | 4.5996 | +/- 9.5746 (terminal) | DF = 0.9608 | - **Formula (Discounted Bachelier ATM Call / Put Premium)**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Vol or Expiry", ROUND(EXP(-B5 * B4) * B3 * SQRT(B4 / (2 * PI())), 4))` - **Formula (Terminal ATM Straddle Breakeven Distance (+/- Price Units))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Vol or Expiry", ROUND(2 * B3 * SQRT(B4 / (2 * PI())), 4))` ### Bagnold Stream Power Formula: Cross-Sectional Omega (W/m) & Unit Stream Power omega (W/m^2) - **URL**: https://sheets.arte-soft.com/en/learn/bagnold-stream-power-and-specific-erosion-threshold-formula/ - **Summary**: Quantify river geomorphic energy dissipation and channel incision/avulsion potential using Ralph A. Bagnold’s (1966, USGS PP 422-I) Cross-Sectional Stream Power Omega = rho * g * Q * S (W/m) and Specific Unit Stream Power omega = Omega / W (W/m^2). *Table — Treat an alluvial river as a gravitational machine expending potential energy per meter and per square meter!:* | Specific Unit Stream Power omega (W/m^2) | Geomorphic Channel Response Regime | Engineering Design Implication | | --- | --- | --- | | omega < 35 W/m^2 | Low-Energy Depositional / Stable | Prone to silt/sand aggradation if over-widened | | 35 <= omega < 300 W/m^2 | Active Bedload & Meander Migration | Requires bank toe protection & equilibrium sizing | | omega >= 300 W/m^2 | Catastrophic Flood Geomorphic Threshold | Major scour, avulsion, and boulder mobilization risk | - **Formula (Bagnold Cross-Sectional Stream Power Omega (W/m) = 1000 * 9.80665 * Q * S)**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Discharge Q > 0 m^3/s and Slope S > 0", ROUND(1000 * 9.80665 * B2 * B3, 1))` - **Formula (Specific Unit Stream Power omega (W/m^2) = Omega / Width & Stability Tier)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Requires Positive Discharge Q, Slope S, and Channel Width W", ROUND((1000 * 9.80665 * B2 * B3) / B4, 2))` ### Probabilistic Sharpe Ratio (PSR) Formula with Skewness and Kurtosis - **URL**: https://sheets.arte-soft.com/en/learn/bailey-lopez-de-prado-probabilistic-and-deflated-sharpe-ratio-formula/ - **Summary**: Audit backtested Sharpe ratios against negative skewness, fat tails, and multiple-testing benchmarks SR_0 using Bailey and López de Prado’s Probabilistic Sharpe Ratio. *Table — Catch the Pearson kurtosis (3) vs excess kurtosis (0) bug in PSR spreadsheets:* | PSR Audit Quantity | Formula Expression | Sample Output | | --- | --- | --- | | Gaussian Sharpe SE (Ignores Tails) | SQRT((1 + 0.5 * SR_hat^2) / (T - 1)) | 0.1749 (Understates error!) | | Non-Normal Sharpe SE (gam_4 = 3 + ex) | SQRT((1 - gam_3*SR + ((2 + ex)/4)*SR^2) / (T - 1)) | 0.2314 (+32.3% wider SE) | | PSR Z-Statistic vs Hurdle SR_0 | (SR_hat - SR_0) / SE_SR | 1.0802 | | Probabilistic Sharpe Ratio PSR | Normal_CDF(Z_PSR) | 0.8600 (Fails 95% hurdle!) | - **Formula (Non-Normal Sharpe Standard Error SE_SR Formula (Using Excess Kurtosis Input))**: `=LET(t_obs, B2, sr_hat, B3, sk_val, B5, ex_k, B6, num_v, 1 - sk_val * sr_hat + ((2 + ex_k) / 4) * (sr_hat^2), IF(OR(t_obs <= 2, num_v <= 0), "Invalid Moment Input", ROUND(SQRT(num_v / (t_obs - 1)), 4)))` - **Formula (Probabilistic Sharpe Ratio PSR(SR_0) Formula)**: `=LET(t_obs, B2, sr_hat, B3, sr_hur, B4, sk_val, B5, ex_k, B6, num_v, 1 - sk_val * sr_hat + ((2 + ex_k) / 4) * (sr_hat^2), IF(OR(t_obs <= 2, num_v <= 0), "Invalid Moment Input", LET(se_sr, SQRT(num_v / (t_obs - 1)), z_psr, (sr_hat - sr_hur) / se_sr, u_1, 1 / (1 + 0.2316419 * ABS(z_psr)), ph_1, 0.3989422804014327 * EXP(-0.5 * z_psr^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), ROUND(IF(z_psr >= 0, 1 - ph_1, ph_1), 4))))` ### Randomly Assign Rows to Equal-Sized Balanced Groups (RANK + MOD + INDEX) - **URL**: https://sheets.arte-soft.com/en/learn/balanced-random-group-assignment-rank-mod-index-formula/ - **Summary**: Eliminate lopsided RANDBETWEEN group sizes by ranking pre-drawn random decimals with RANK(B2, $B$2:$B$7) and cycling evenly through group labels via INDEX($E$2:$E$4, MOD(Rank - 1, K) + 1). *Table — Why RANDBETWEEN(1, 3) creates lopsided cohorts—and how RANK + MOD guarantees exact balance!:* | Participant & Frozen Random Draw B2:B7 | RANK(B, $B$2:$B$7) | MOD(Rank - 1, 3) + 1 | Assigned Balanced Cohort | | --- | --- | --- | --- | | Emp_4 (Draw = 0.93 — Highest) | Rank 1 | MOD(0, 3) + 1 = 1 | Cohort_A | | Emp_1 (Draw = 0.81 — 2nd) | Rank 2 | MOD(1, 3) + 1 = 2 | Cohort_B | | Emp_2 (Draw = 0.14 — 6th) | Rank 6 | MOD(5, 3) + 1 = 3 | Cohort_C | - **Formula (Balanced Equal-Size Cohort Assignment via INDEX + MOD + RANK)**: `=IF(COUNTA(E2:E4) = 0, "Define Group Names", INDEX(E2:E4, MOD(RANK(B2, B2:B7) - 1, COUNTA(E2:E4)) + 1))` - **Formula (Assigned Cohort for Lowest Random Draw Row (B3 = 0.14 -> Rank 6 -> Group 3))**: `=IF(COUNTA(E2:E4) = 0, "Define Group Names", INDEX(E2:E4, MOD(RANK(B3, B2:B7) - 1, COUNTA(E2:E4)) + 1))` ### Balassa-Samuelson Real Exchange Rate Appreciation Formula - **URL**: https://sheets.arte-soft.com/en/learn/balassa-samuelson-productivity-differential-real-exchange-rate/ - **Summary**: Quantify trend real exchange rate appreciation (1 - gamma_T) * ((g_AT - g_AN) - (g_AT* - g_AN*)) and inflation differentials in catching-up economies. *Table — Explain the Penn Effect: why fast-growing traded sectors raise nontradable service prices:* | Balassa-Samuelson Component | Formula | Verified Output | | --- | --- | --- | | Domestic Sectoral TFP Gap | g_AT - g_AN | 0.0500 (+5.00%/yr) | | Foreign Benchmark TFP Gap | g_AT* - g_AN* | 0.0100 (+1.00%/yr) | | Real FX Appreciation Rate | (1 - gamma_T) * ((g_AT - g_AN) - (g_AT* - g_AN*)) | 0.0240 (+2.40%/yr) | | Pegged-FX Equilibrium CPI Inflation | pi* + Real_FX_Appreciation | 0.0440 (4.40%/yr) | - **Formula (Balassa-Samuelson Real Exchange Rate Appreciation Rate Formula)**: `=LET(gam_t, B2, g_at, B3, g_an, B4, f_at, B5, f_an, B6, IF(OR(gam_t < 0, gam_t > 1), "Invalid Tradable Share (Require 0 <= gamma_T <= 1)", ROUND((1 - gam_t) * ((g_at - g_an) - (f_at - f_an)), 4)))` - **Formula (Equilibrium CPI Inflation Under a Fixed Nominal Exchange Rate Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B7 + E3, 4))` ### Balloon loan formula: monthly payment (PMT with FV) & 5/25 balloon payoff balance - **URL**: https://sheets.arte-soft.com/en/learn/balloon-loan-payment-and-remaining-balloon-balance/ - **Summary**: Model commercial balloon mortgages both ways: solve monthly PMT for a fixed maturity residual OR compute the 5-year balloon payoff on a 25-year amortization schedule. *Table — Two commercial balloon structures—and getting PMT / FV cash-flow signs right!:* | Balloon Structure ($500k @ 6.00%) | Formula | Result | | --- | --- | --- | | Target $400k Balloon @ Mo 60 | =ROUND(-PMT(B2/12, C2, A2, -D2), 2) | $3,933.28 / month | | 5/25 Schedule Monthly Payment (300m) | =ROUND(-PMT(B2/12, E2, A2), 2) | $3,221.51 / month | | 5/25 Balloon Balance Due @ Mo 60 | =ROUND(-FV(B2/12, C2, PMT(B2/12, E2, A2), A2), 2) | $449,660.43 lump sum | | Interest-Only Balloon ($500k FV) | =ROUND(-PMT(B2/12, C2, A2, -A2), 2) | $2,500.00 / month | - **Formula (Monthly payment to reach a specified balloon residual D2 at Month C2)**: `=ROUND(-PMT(B2 / 12, C2, A2, -D2), 2)` - **Formula (Remaining balloon payoff balance at Month C2 on an E2-month amortization schedule)**: `=ROUND(-FV(B2 / 12, C2, PMT(B2 / 12, E2, A2), A2), 2)` ### Bangdiwala’s B Observer Agreement Area Index Formula - **URL**: https://sheets.arte-soft.com/en/learn/bangdiwala-b-observer-agreement-chart-diagonal-area-index-formula/ - **Summary**: Quantify k x k observer agreement geometrically in Excel and Arte Sheets via Bangdiwala’s B = SUM(n_ii^2) / SUM(R_i * C_i) and linear partial-credit weighted B_w. *Table — Compute exact agreement-square area over marginal-rectangle area by hand:* | Bangdiwala Component (3x3) | Geometric Formula | Exact Output | | --- | --- | --- | | Diagonal Square Area Sum | n_11^2 + n_22^2 + n_33^2 = 400 + 900 + 196 | 1,496 | | Marginal Rectangle Area Sum | R_1*C_1 + R_2*C_2 + R_3*C_3 = 625 + 1,600 + 400 | 2,625 | | Unweighted Bangdiwala B | SUM(n_ii^2) / SUM(R_i * C_i) | 0.5699 | | Adjacent-Shaded Weighted B_w | 1 - SUM_offdiag(w_loss * area) / Denom | Adds 1-step ordinal credit | - **Formula (Unweighted Bangdiwala B Statistic Formula)**: `=LET(diag_sq, B2^2 + C3^2 + D4^2, rect_ar, SUM(B2:D2) * SUM(B2:B4) + SUM(B3:D3) * SUM(C2:C4) + SUM(B4:D4) * SUM(D2:D4), IF(rect_ar <= 0, "Empty Marginals", ROUND(diag_sq / rect_ar, 4)))` - **Formula (Perfect Agreement Boundary Check)**: `=ROUND((B2 + C3 + D4) / SUM(B2:D4), 4)` ### Bank NIM, Efficiency Ratio & Basel III LCR Formula - **URL**: https://sheets.arte-soft.com/en/learn/bank-net-interest-margin-nim-efficiency-ratio-and-basel-lcr/ - **Summary**: Calculate bank Net Interest Margin NIM = (Interest_Inc - Interest_Exp) / Avg_Earning_Assets, Overhead Efficiency Ratio, and Basel III 30-day Liquidity Coverage Ratio LCR. *Table — Divide NIM by Average Earning Assets (NOT Total Assets!) and enforce Basel’s 75% LCR inflow cap!:* | Bank Financial KPI (NII=$320M, AEA=$8,000M, HQLA=$900M) | Formula | Verified Output | | --- | --- | --- | | Net Interest Margin (NIM) | (Int_Inc - Int_Exp) / Avg_Earning_Assets | 0.0400 (4.00%) | | Operating Efficiency Ratio | NonInt_Exp / (NII + NonInt_Inc) | 0.5500 (55.00%) | | Capped Net 30-Day Cash Outflows | MAX(Outflows - Inflows, 0.25 * Outflows) | 750.00 ($M) | | Basel III Liquidity Coverage Ratio (LCR) | HQLA / Capped_Net_Outflows | 1.2000 (120.0% >= 100% Pass) | - **Formula (Net Interest Margin (NIM) & Bank Efficiency Ratio Formula)**: `=IF(OR(B4 <= 0, B2 < 0, B3 < 0), "Invalid Bank Input", ROUND((B2 - B3) / B4, 4))` - **Formula (Basel III Liquidity Coverage Ratio (LCR) with 75% Inflow Cap Formula)**: `=LET(hq_la, B7, out_30, B8, in_30, B9, IF(OR(hq_la < 0, out_30 <= 0, in_30 < 0), "Invalid LCR Input", ROUND(hq_la / MAX(out_30 - in_30, 0.25 * out_30), 4)))` ### Bank statement reconciliation formula: Adjusted Bank vs Adjusted Book balance - **URL**: https://sheets.arte-soft.com/en/learn/bank-statement-reconciliation-formula/ - **Summary**: Reconcile month-end bank statements against general-ledger cash by adjusting for deposits in transit, outstanding checks, fees, interest, and NSF items. *Table — Why raw bank and book cash balances rarely match at month-end:* | Bank Side | Amount ($) | Book (GL) Side | Amount ($) | | --- | --- | --- | --- | | Ending Bank Statement (A2) | 42,500 | Unadjusted Book Cash (D2) | 44,420 | | + Deposits in Transit (B2) | +3,800 | + Interest Earned (E2) | +80 | | - Outstanding Checks (C2) | -2,150 | - Service Fees & NSF (F2+G2) | -350 (35 + 315) | | Adjusted Bank Balance | 44,150 | Adjusted Book Balance | 44,150 | - **Formula (Adjusted balances and rounded difference)**: `=LET(adjBank, A2 + B2 - C2, adjBook, D2 + E2 - F2 - G2, diff, ROUND(adjBank - adjBook, 2), IF(diff = 0, "Reconciled", "Unreconciled: " & diff))` - **Formula (Adjusted bank balance in this example)**: `=A2 + B2 - C2` ### Banzhaf Voting Power Index Formula: Weighted Quota, Critical Swings & Power vs. Seat Share - **URL**: https://sheets.arte-soft.com/en/learn/banzhaf-weighted-voting-power-index-critical-swing-coalition/ - **Summary**: Expose why nominal shareholdings mislead in weighted board voting [Quota q; w_1, w_2, w_3] by counting critical swing coalitions and computing the Normalized Banzhaf Power Index. *Table — Why a 48% shareholder and a 4% shareholder can hold the EXACT same voting power!:* | Weighted Board Game [Quota q; w_A, w_B, w_C] | Critical Swings [eta_A, eta_B, eta_C] | Normalized Banzhaf Power [beta_A, beta_B, beta_C] | | --- | --- | --- | | [51; 48, 48, 4] (4% Tie-Breaker) | [2, 2, 2] (Total = 6) | [33.33%, 33.33%, 33.33%] (Equal Power!) | | [60; 45, 35, 20] (Supermajority) | [3, 1, 1] (Total = 5) | [60.00%, 20.00%, 20.00%] | | [51; 52, 35, 13] (Majority Controlling) | [4, 0, 0] (Total = 4) | [100.00%, 0.00%, 0.00%] (A = Dictator) | - **Formula (Critical Swing Count eta_A Across All 4 Coalitions Containing Voter A (3-Voter Board))**: `=IF(OR(B2 <= (B3 + B4 + B5) / 2, B2 > B3 + B4 + B5), "Quota Must Exceed 50% and <= Total Votes", IF(B3 >= B2, 1, 0) + IF(AND(B3 + B4 >= B2, B4 < B2), 1, 0) + IF(AND(B3 + B5 >= B2, B5 < B2), 1, 0) + IF(AND(B3 + B4 + B5 >= B2, B4 + B5 < B2), 1, 0))` - **Formula (Voter C Normalized Banzhaf Power Index (%) = 100 * eta_C / (eta_A + eta_B + eta_C))**: `=IF(OR(B2 <= (B3 + B4 + B5) / 2, B2 > B3 + B4 + B5), "Quota Must Exceed 50% and <= Total Votes", ROUND(100 * (IF(B5 >= B2, 1, 0) + IF(AND(B3 + B5 >= B2, B3 < B2), 1, 0) + IF(AND(B4 + B5 >= B2, B4 < B2), 1, 0) + IF(AND(B3 + B4 + B5 >= B2, B3 + B4 < B2), 1, 0)) / ((IF(B3 >= B2, 1, 0) + IF(AND(B3 + B4 >= B2, B4 < B2), 1, 0) + IF(AND(B3 + B5 >= B2, B5 < B2), 1, 0) + IF(AND(B3 + B4 + B5 >= B2, B4 + B5 < B2), 1, 0)) + (IF(B4 >= B2, 1, 0) + IF(AND(B3 + B4 >= B2, B3 < B2), 1, 0) + IF(AND(B4 + B5 >= B2, B5 < B2), 1, 0) + IF(AND(B3 + B4 + B5 >= B2, B3 + B5 < B2), 1, 0)) + (IF(B5 >= B2, 1, 0) + IF(AND(B3 + B5 >= B2, B3 < B2), 1, 0) + IF(AND(B4 + B5 >= B2, B4 < B2), 1, 0) + IF(AND(B3 + B4 + B5 >= B2, B3 + B4 < B2), 1, 0))), 2))` ### Bar of Pie & Pie of Pie Chart Formula: Tail-Slice Threshold, "Other" Wedge & Sub-Bar Share - **URL**: https://sheets.arte-soft.com/en/learn/bar-of-pie-and-pie-of-pie-chart-other-slice-split-threshold-formula/ - **Summary**: Build a clean Bar-of-Pie or Pie-of-Pie breakdown table by aggregating micro-slices below a percentage threshold into a single "Other" main-pie wedge and computing both within-"Other" and grand-total shares for the secondary bar stack. *Table — Prevent unreadable 1% pie-label collisions by splitting tail categories into a secondary bar!:* | Channel Category ($1,000,000 Total, 8% Split Cutoff) | Revenue ($) | Grand-Total Share | Chart Placement | | --- | --- | --- | --- | | Enterprise Direct | $460,000 | 46.00% | Primary Pie Slice #1 | | Mid-Market SaaS | $280,000 | 28.00% | Primary Pie Slice #2 | | Channel Partners | $140,000 | 14.00% | Primary Pie Slice #3 | | Consolidated "Other" (< 8% each: Affiliates $55k + Events $40k + Print $25k) | $120,000 | 12.00% | Primary Pie "Other" Wedge -> Secondary Bar (45.8% / 33.3% / 20.8%) | - **Formula (Consolidated "Other" Main-Pie Wedge Total Below Split Threshold)**: `=IF(OR(SUM(B2:B7) <= 0, B8 <= 0, B8 >= 0.5), "Requires Positive Total and Split Cutoff in (0, 0.50)", ROUND(SUMIF(B2:B7, "<" & (B8 * SUM(B2:B7))), 2))` - **Formula (Secondary Bar Conditional Share (%) of Selected Tail Slice Within "Other")**: `=IF(SUMIF(B2:B7, "<" & (B8 * SUM(B2:B7))) <= 0, 0, ROUND(100 * B5 / SUMIF(B2:B7, "<" & (B8 * SUM(B2:B7))), 2))` ### Barbell vs Bullet Bond Convexity Advantage Formula - **URL**: https://sheets.arte-soft.com/en/learn/barbell-vs-bullet-bond-portfolio-duration-match-convexity-advantage/ - **Summary**: Match modified duration via w_short = (D_long - D_bullet)/(D_long - D_short) and calculate the Barbell Convexity Advantage and parallel-shift outperformance 0.5 * Delta_C * (Delta_y)^2. *Table — Why a duration-matched Barbell ALWAYS has higher convexity than a Bullet bond!:* | Barbell vs Bullet Metric (D_target = 8.00) | Formula | Verified Output | | --- | --- | --- | | Duration-Matching Short Weight (w_s) | (D_l - D_b) / (D_l - D_s) | 0.6250 (62.50% 2Y / 37.50% 30Y) | | Barbell Portfolio Convexity | w_s * C_s + (1 - w_s) * C_l | 156.0000 (vs Bullet 75.0000) | | Net Convexity Pick-Up (Delta_C) | C_barbell - C_bullet | +81.0000 | | Parallel ±200 bps Return Bonus | 0.5 * Delta_C * (Delta_y)^2 | +0.0162 (+162 bps Outperformance) | - **Formula (Duration-Matched Barbell Portfolio Convexity Formula)**: `=LET(d_s, B2, c_s, B3, d_l, B4, c_l, B5, d_b, B6, c_b, B7, IF(OR(d_s <= 0, d_l <= d_s, d_b < d_s, d_b > d_l, c_s <= 0, c_l <= 0, c_b <= 0), "Require D_short <= D_bullet <= D_long and Positive Inputs", LET(w_s, (d_l - d_b) / (d_l - d_s), ROUND(w_s * c_s + (1 - w_s) * c_l, 4))))` - **Formula (Second-Order Parallel Yield-Shock Outperformance Formula)**: `=IF(ISTEXT(E3), E3, ROUND(0.5 * (E3 - B7) * (B8^2), 4))` ### Barber-Johnson Hospital Bed Occupancy, TOI & ALOS Formula - **URL**: https://sheets.arte-soft.com/en/learn/barber-johnson-hospital-bed-occupancy-turnover-interval-and-alos/ - **Summary**: Calculate all four Barber and Johnson (1973) inpatient hospital utilization metrics — Percentage Bed Occupancy, Average Length of Stay (ALOS), Turnover Interval (TOI), and Bed Throughput. *Table — Link hospital bed occupancy, length of stay, empty-bed turnover, and patient throughput!:* | Barber-Johnson (1973) Ward Metric (B=200, t=365, O=58,400, D=14,600) | Formula | Verified Output | | --- | --- | --- | | Bed Occupancy Percentage (P) | O / (B * t) = ALOS / (ALOS + TOI) | 0.8000 (80.00%) | | Average Length of Stay (ALOS) | O / D | 4.0000 days / patient | | Turnover Interval (TOI, Empty Days) | (B * t - O) / D | 1.0000 day / discharge | | Annual Bed Throughput (TP) | D / B = t / (ALOS + TOI) | 73.00 patients / bed / yr | - **Formula (Barber-Johnson Turnover Interval (TOI) & Cycle-Time Identity Formula)**: `=LET(bd_st, B2, dy_pr, B3, oc_bd, B4, ds_pt, B5, IF(OR(bd_st <= 0, dy_pr <= 0, oc_bd < 0, ds_pt <= 0), "Invalid Ward Census Input", ROUND((bd_st * dy_pr - oc_bd) / ds_pt, 4)))` - **Formula (Clinical Ward Congestion & Surge Status Formula)**: `=IF(ISTEXT(E2), E2, IF(E2 > 1, "Surge Overflow (>100% Staffed Beds)", IF(E2 > 0.85, "High-Congestion Boarding Risk", "Balanced Bed Flow")))` ### BARD Score (BMI, AST/ALT Ratio, Diabetes) for MASLD Liver Fibrosis - **URL**: https://sheets.arte-soft.com/en/learn/bard-score-nafld-masld-advanced-liver-fibrosis-rule-out/ - **Summary**: Rule out advanced F3–F4 hepatic bridging fibrosis in NAFLD/MASLD without platelet counts using Stephen Harrison’s 0–4 BARD Score (BMI >= 28 [+1], AST/ALT >= 0.8 [+2], Type 2 Diabetes [+1]; 0–1 has 96% NPV). *Table — Why AST / ALT flipping above 0.8 signals bridging fibrosis in fatty liver disease!:* | BARD Total Score (0–4 Points) | F3–F4 Advanced Fibrosis Risk | Primary-Care MASLD Pathway | | --- | --- | --- | | BARD 0–1 Points (e.g., BMI 29, AST/ALT 0.61 -> 1) | Low Risk (96% NPV Rule-Out) | Lifestyle Weight Loss & Repeat Score in 1–2 Years | | BARD 2–4 Points (e.g., BMI 31.4, AST/ALT 0.92, DM -> 4) | 17x Odds of F3–F4 Fibrosis | Order VCTE (FibroScan) / ELF & Hepatology Referral | | Invalid Enzymes (AST <= 0 or ALT <= 0) | Lab Ratio Guard | "Invalid BARD Lab Input" | Requires Positive BMI, AST, and ALT | - **Formula (Total 3-Component BARD Liver Fibrosis Score (0–4 Points))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 > 1), "Invalid BARD Lab Input", IF(B2 >= 28, 1, 0) + IF((B3 / B4) >= 0.8, 2, 0) + B5)` - **Formula (MASLD Advanced Fibrosis Rule-Out vs. Elastography Referral)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 > 1), "Invalid BARD Lab Input", IF((IF(B2 >= 28, 1, 0) + IF((B3 / B4) >= 0.8, 2, 0) + B5) >= 2, "Elevated Fibrosis Risk (BARD 2-4) — Order FibroScan Elastography / Hepatology Referral", "Low Advanced Fibrosis Risk (BARD 0-1: 96% NPV Rule-Out) — Lifestyle & Routine Follow-Up"))` ### Barometric Altitude Pressure & ISA Tropospheric Lapse Rate formulas - **URL**: https://sheets.arte-soft.com/en/learn/barometric-altitude-pressure-and-density-altitude-formula/ - **Summary**: Compute International Standard Atmosphere (ISA) air pressure P(h) = 101.325 * (1 - 2.25577E-5 * h)^5.25588 in kPa and standard temperature from 0 to 11,000 meters. *Table — Use a fixed standard-atmosphere tropospheric approximation:* | Elevation Benchmark | Altitude h (B3) | ISA Pressure P(h) (kPa) | ISA Temp T(h) (°C) | | --- | --- | --- | --- | | Mean Sea Level (MSL) | 0 m | 101.325 kPa (100% P0) | +15.0 °C | | Denver / High Plateau | 1,600 m | 83.53 kPa (~82.4% P0) | +4.6 °C | | 5,000 m Base Camp | 5,000 m | 54.02 kPa (~53.3% P0) | -17.5 °C | | Jet Cruise (10,000 m) | 10,000 m | 26.44 kPa (~26.1% P0) | -50.0 °C | - **Formula (ISA Barometric Air Pressure P(h) in kilopascals (kPa))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<>101.325,B4<>15,B3<0,B3>11000),"Invalid inputs",ROUND(B2 * ((1 - 0.0000225577 * B3) ^ 5.25588), 2)))` - **Formula (ISA Standard Outside Air Temperature T(h) = 15 - 0.0065 * h_meters)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<>101.325,B4<>15,B3<0,B3>11000),"Invalid inputs",ROUND(B4 - 0.0065 * B3, 2)))` ### Barone-Adesi and Whaley Quadratic American Option Early-Exercise Premium - **URL**: https://sheets.arte-soft.com/en/learn/barone-adesi-whaley-quadratic-american-option-early-exercise-premium/ - **Summary**: Calculate the Barone-Adesi-Whaley (1987) quadratic exponent q2, smooth-pasting coefficient A2, and early-exercise premium for American options with carry b < r. *Table — Check Merton’s no-early-exercise rule before adding an American premium:* | BAW Quantity | Formula Expression | Sample Output | | --- | --- | --- | | Scale Parameters M, N, K_h | M = 2*r/sig^2, N = 2*b/sig^2, K_h = 1 - EXP(-r*T) | M = 4, N = 0, K_h = 0.0198 | | Quadratic Exponent q2 | (-(N - 1) + SQRT((N - 1)^2 + 4*M/K_h)) / 2 | 14.7217 | | European Call Baseline c_Eur | Generalized Black-Scholes at carry b = 0 | 2.9681 | | American Call Value C_BAW | IF(b >= r, c_Eur, c_Eur + A2 * (S / S_star)^q2) | 3.0802 (EEP = 0.1121) | - **Formula (Barone-Adesi-Whaley Quadratic Root q2 Formula)**: `=LET(r_rf, B4, b_car, B5, sig_v, B6, t_yr, B7, IF(OR(r_rf <= 0, sig_v <= 0, t_yr <= 0), "Invalid BAW Input", LET(m_val, 2 * r_rf / (sig_v^2), n_val, 2 * b_car / (sig_v^2), k_hor, 1 - EXP(-r_rf * t_yr), ROUND((-(n_val - 1) + SQRT((n_val - 1)^2 + 4 * m_val / k_hor)) / 2, 4))))` - **Formula (American Call Value with Early-Exercise Premium Formula)**: `=LET(s_px, B2, k_str, B3, r_rf, B4, b_car, B5, sig_v, B6, t_yr, B7, s_crit, B8, IF(OR(r_rf <= 0, sig_v <= 0, t_yr <= 0), "Invalid BAW Input", LET(sig_t, sig_v * SQRT(t_yr), d_1, (LN(s_px / k_str) + (b_car + 0.5 * sig_v^2) * t_yr) / sig_t, d_2, d_1 - sig_t, t_1, 1 / (1 + 0.2316419 * ABS(d_1)), p_1, 0.3989422804014327 * EXP(-0.5 * d_1^2) * t_1 * (0.31938153 + t_1 * (-0.356563782 + t_1 * (1.781477937 + t_1 * (-1.821255978 + 1.330274429 * t_1)))), nd_1, IF(d_1 >= 0, 1 - p_1, p_1), t_2, 1 / (1 + 0.2316419 * ABS(d_2)), p_2, 0.3989422804014327 * EXP(-0.5 * d_2^2) * t_2 * (0.31938153 + t_2 * (-0.356563782 + t_2 * (1.781477937 + t_2 * (-1.821255978 + 1.330274429 * t_2)))), nd_2, IF(d_2 >= 0, 1 - p_2, p_2), c_eur, s_px * EXP((b_car - r_rf) * t_yr) * nd_1 - k_str * EXP(-r_rf * t_yr) * nd_2, IF(b_car >= r_rf, ROUND(c_eur, 4), IF(s_px >= s_crit, ROUND(s_px - k_str, 4), LET(m_val, 2 * r_rf / (sig_v^2), n_val, 2 * b_car / (sig_v^2), k_hor, 1 - EXP(-r_rf * t_yr), q_2, (-(n_val - 1) + SQRT((n_val - 1)^2 + 4 * m_val / k_hor)) / 2, d1_s, (LN(s_crit / k_str) + (b_car + 0.5 * sig_v^2) * t_yr) / sig_t, ts, 1 / (1 + 0.2316419 * ABS(d1_s)), ps, 0.3989422804014327 * EXP(-0.5 * d1_s^2) * ts * (0.31938153 + ts * (-0.356563782 + ts * (1.781477937 + ts * (-1.821255978 + 1.330274429 * ts)))), nd1_s, IF(d1_s >= 0, 1 - ps, ps), a2_coef, (s_crit / q_2) * (1 - EXP((b_car - r_rf) * t_yr) * nd1_s), ROUND(c_eur + a2_coef * (s_px / s_crit)^q_2, 4)))))))` ### Barro-Gordon Inflation Bias & Rogoff Central Banker Formula - **URL**: https://sheets.arte-soft.com/en/learn/barro-gordon-discretionary-inflation-bias-and-rogoff-central-bank/ - **Summary**: Calculate discretionary time-inconsistency inflation bias lambda * alpha * Delta_y*, excess social loss, and Rogoff conservative central-banker delegation. *Table — Model why discretionary output temptations raise inflation without raising average output!:* | Monetary Policy Regime (pi*=2%, alpha=0.5, dy*=5%) | Equilibrium Inflation | Inflation Bias Over Target | | --- | --- | --- | | Credible Rules / Commitment | 0.0200 (2.00%) | 0.0000 (0 bps) | | Pure Discretion (lambda_y = 1.20) | 0.0500 (5.00%) | +0.0300 (+300 bps) | | Rogoff Conservative Banker (lambda_CB = 0.40) | 0.0300 (3.00%) | +0.0100 (+100 bps) | - **Formula (Barro-Gordon Discretionary Equilibrium Inflation pi* + lambda_y * alpha_pc * Delta_y* Formula)**: `=LET(pi_tg, B2, alp_s, B3, lam_y, B4, dy_gp, B5, IF(OR(alp_s <= 0, lam_y < 0, dy_gp < 0), "Invalid Barro-Gordon Input", ROUND(pi_tg + lam_y * alp_s * dy_gp, 4)))` - **Formula (Rogoff Conservative Central Banker Inflation Formula)**: `=LET(pi_tg, B2, alp_s, B3, lam_y, B4, dy_gp, B5, lam_cb, B6, IF(OR(alp_s <= 0, lam_y < 0, dy_gp < 0, lam_cb < 0, lam_cb > lam_y), "Require 0 <= lambda_CB <= lambda_y", ROUND(pi_tg + lam_cb * alp_s * dy_gp, 4)))` ### Barron Radial Consolidation Vertical Wick Drain Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/barron-radial-consolidation-prefabricated-vertical-wick-drain-time-formula/ - **Summary**: Calculate Drain Spacing Ratio n = d_e / d_w, Exact Barron Geometric Factor F(n), Radial Consolidation Time Factor T_r, and Surcharge Waiting Time to Target Consolidation (Months). *Table — Why Prefabricated Vertical Drains (PVDs) compress 20-year marine-clay settlements into 8 months!:* | Barron Wick Drain KPI (de = 1.50 m, dw = 0.06 m, ch = 2.40 m²/yr, Ur = 90%) | Formula | Verified Output | | --- | --- | --- | | Drain Spacing Ratio n (de / dw) | Influence_Dia_de / Equivalent_Drain_dw | 25.00 (40.00 @ de = 2.40 m) | | Exact Barron Factor F(n) | (n^2/(n^2-1))*LN(n) - (3*n^2-1)/(4*n^2) | 2.4744 (2.9413 @ de = 2.40 m) | | Radial Time Factor T_r | (F(n) / 8) * LN(1 / (1 - Ur)) | 0.7122 (0.8466 @ de = 2.40 m) | | Waiting Time to Target Ur (Months) | ((de^2 * T_r) / ch_m2_yr) * 12 | 8.01 mo (24.38 mo @ de = 2.40 m!) | - **Formula (Exact Barron Equal-Strain Radial Consolidation Time Formula)**: `=LET(de_m, B2, dw_m, B3, ch_y, B4, ur_f, B5, IF(OR(dw_m <= 0, de_m < 5 * dw_m, ch_y <= 0, ur_f <= 0.05, ur_f >= 0.999), "Invalid Wick Drain Input", LET(nr_t, de_m / dw_m, n2_s, nr_t ^ 2, fn_b, (n2_s / (n2_s - 1)) * LN(nr_t) - (3 * n2_s - 1) / (4 * n2_s), tr_f, (fn_b / 8) * LN(1 / (1 - ur_f)), ROUND((((de_m ^ 2) * tr_f) / ch_y) * 12, 2))))` - **Formula (Wider Drain Grid nonlinear d_e^2 * F(n) Schedule Penalty Check (Set d_e = 2.40 m))**: `=IF(ISTEXT(E5), E5, LET(nr_t, B2 / B3, n2_s, nr_t ^ 2, ROUND((n2_s / (n2_s - 1)) * LN(nr_t) - (3 * n2_s - 1) / (4 * n2_s), 4)))` ### Barthel Index of Activities of Daily Living (0–100 ADL Stroke & Rehab Score) - **URL**: https://sheets.arte-soft.com/en/learn/barthel-index-activities-of-daily-living-adl-rehab-score/ - **Summary**: Sum the 10-item Mahoney & Barthel Index (0–100 in 5-point steps across Feeding, Bathing, Grooming, Dressing, Bowels, Bladder, Toilet Use, Chair/Bed Transfers, Mobility, and Stairs) and classify functional dependency. *Table — Track stroke recovery and geriatric rehabilitation on the 0–100 Barthel ADL scale!:* | Barthel Total (0–100) | Shah Functional Dependency Tier | Rehabilitation Profile | Discharge Planning Implication | | --- | --- | --- | --- | | 0–20 points | Total Dependency | Acute dense hemiplegia | 24-hour skilled nursing / acute rehab | | 21–60 points | Severe Dependency | Requires maximal transfer & toileting assist | Inpatient rehabilitation facility (IRF) | | 61–90 points | Moderate Dependency | Example stroke rehab patient = 65 pts | Home health PT/OT + family assistance | | 91–99 / 100 points | Slight Dependency / Independent (100) | Full self-care & stair negotiation | Independent community living | - **Formula (Total 10-Item Barthel ADL Score (0 to 100 in 5-Point Multiples))**: `=IF(OR(MIN(B2:B11) < 0, MAX(B3:B4) > 5, B2 > 10, MAX(B5:B8) > 10, MAX(B9:B10) > 15, B11 > 10, MOD(SUM(B2:B11), 5) <> 0), "Invalid Barthel Subscores", SUM(B2:B11))` - **Formula (Shah Barthel Functional Dependency Classification)**: `=IF(SUM(B2:B11) = 100, "Independent (100)", IF(SUM(B2:B11) >= 91, "Slight Dependency (91-99)", IF(SUM(B2:B11) >= 61, "Moderate Dependency (61-90)", IF(SUM(B2:B11) >= 21, "Severe Dependency (21-60)", "Total Dependency (0-20)"))))` ### Warehouse Block-Stacking Optimal Lane Depth Formula - **URL**: https://sheets.arte-soft.com/en/learn/bartholdi-hackman-warehouse-block-stacking-optimal-lane-depth-formula/ - **Summary**: Calculate John Bartholdi and Steven Hackman’s optimal floor-stacking pallet lane depth d* = SQRT((a * N) / (2 * z)) balancing cross-aisle waste against honeycombing unoccupied pallet positions. *Table — Balance deep-lane honeycombing waste against shallow-lane aisle waste!:* | Block-Stacking Design Metric (N=48 pallets, z=3 high, Full Aisle a=2) | Formula | Verified Output | | --- | --- | --- | | Floor Stacks Required (k = N / z) | N / z | 16.00 floor stacks | | Optimal Lane Depth (d* pallets) | SQRT((a * N) / (2 * z)) | 4.0000 pallets deep | | Avg Honeycombing + Aisle Waste at d* | (d* - 1)/2 + (a * N)/(4 * z * d*) | 3.50 floor stacks (1.50 + 2.00) | | Cycle Space Utilization Ratio | (N / (2 * z)) / ((N / (2 * z)) + Waste) | 0.6957 (69.57% vs 50.0% at d=1) | - **Formula (Bartholdi-Hackman Optimal Block-Stacking Lane Depth d* Formula)**: `=LET(n_pl, B2, z_ht, B3, a_wd, B4, IF(OR(n_pl < 1, z_ht < 1, a_wd <= 0), "Invalid Block-Stack Input", ROUND(SQRT((a_wd * n_pl) / (2 * z_ht)), 4)))` - **Formula (Cycle-Average Unproductive Floor Positions & Space Utilization Formula)**: `=LET(n_pl, B2, z_ht, B3, a_wd, B4, IF(ISTEXT(E2), E2, LET(d_op, MAX(1, ROUND(SQRT((a_wd * n_pl) / (2 * z_ht)), 0)), w_st, (d_op - 1) / 2 + (a_wd * n_pl) / (4 * z_ht * d_op), k_av, n_pl / (2 * z_ht), ROUND(k_av / (k_av + w_st), 4))))` ### BASDAI (Bath Ankylosing Spondylitis Disease Activity Index) Formula - **URL**: https://sheets.arte-soft.com/en/learn/basdai-bath-ankylosing-spondylitis-disease-activity-index-formula/ - **Summary**: Calculate the 0–10 Bath Ankylosing Spondylitis Disease Activity Index BASDAI = (Q1 + Q2 + Q3 + Q4 + (Q5 + Q6)/2) / 5 averaging morning stiffness severity and duration into a single domain. *Table — Why BASDAI averages Q5 & Q6 before dividing by 5—preventing double-weighting of morning stiffness!:* | BASDAI Score & Change | axSpA Clinical Interpretation | ASAS / EULAR Guideline Threshold | | --- | --- | --- | | BASDAI < 4.0 (0.0 – 3.9) | Controlled / Low Disease Activity | Continue Exercise + NSAID or Current Biologic | | BASDAI >= 4.0 (4.0 – 10.0) | High Axial Disease Activity | Eligible for TNF-i / IL-17i / JAK-i Escalation | | Drop >= 2.0 pts or >= 50% | BASDAI-50 Responder at Week 12 | Confirm Treatment Continuation | - **Formula (BASDAI Composite Score (0.0 to 10.0 Scale))**: `=IF(OR(COUNT(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 10), "Invalid BASDAI Item (0-10)", ROUND((SUM(B2:B5) + (B6 + B7) / 2) / 5, 2))` - **Formula (ASAS / EULAR BASDAI >= 4.0 Biologic Activity Classification)**: `=IF(OR(COUNT(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 10), "Invalid BASDAI Item (0-10)", IF((SUM(B2:B5) + (B6 + B7) / 2) / 5 >= 4, "Active axSpA (BASDAI >= 4.0 — Evaluate Biologic)", "Controlled Disease Activity (BASDAI < 4.0)"))` ### Baseball OPS (On-Base Plus Slugging), OBP, SLG & Isolated Power (ISO) - **URL**: https://sheets.arte-soft.com/en/learn/baseball-ops-on-base-plus-slugging-and-isolated-power/ - **Summary**: Calculate Major League Baseball On-Base Percentage (H + BB + HBP) / (AB + BB + HBP + SF), Total Bases shortcut H + 2B + 2*3B + 3*HR, Slugging, OPS, and Isolated Power. *Table — Combine reaching base and extra-base hitting:* | Sabermetric Hitting Stat | Formula | 500 AB, 150 H, 35 2B, 5 3B, 30 HR, 75 BB, 5 HBP, 10 SF | | --- | --- | --- | | Batting Average (AVG) | B3 / B2 | .300 (0.300) | | On-Base Percentage (OBP) | (B3+B7+B8) / (B2+B7+B8+B9) | 230 / 590 = .390 (0.390) | | Slugging Percentage (SLG) | (B3 + B4 + 2*B5 + 3*B6) / B2 | 285 / 500 = .570 (0.570) | | On-Base Plus Slugging (OPS) | OBP + SLG \| ISO = SLG - AVG | OPS = .960 \| ISO = .270 | - **Formula (Official On-Base Plus Slugging (OPS = OBP + SLG))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(MIN(B2:B9)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),B8<>INT(B8),B9<>INT(B9),B3>B2,SUM(B4:B6)>B3),"Invalid inputs",IF(B2=0,"N/A",ROUND(((B3 + B7 + B8) / (B2 + B7 + B8 + B9)) + ((B3 + B4 + 2 * B5 + 3 * B6) / B2), 3))))` - **Formula (Isolated Power (ISO = SLG - AVG))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(MIN(B2:B9)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),B8<>INT(B8),B9<>INT(B9),B3>B2,SUM(B4:B6)>B3),"Invalid inputs",IF(B2=0,"N/A",ROUND((B4 + 2 * B5 + 3 * B6) / B2, 3))))` - **Formula (On-base percentage (OBP))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(MIN(B2:B9)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),B8<>INT(B8),B9<>INT(B9),B3>B2,SUM(B4:B6)>B3),"Invalid inputs",IF(SUM(B2,B7:B9)=0,"N/A",ROUND((B3 + B7 + B8) / (B2 + B7 + B8 + B9), 3))))` - **Formula (Slugging percentage (SLG))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(MIN(B2:B9)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),B8<>INT(B8),B9<>INT(B9),B3>B2,SUM(B4:B6)>B3),"Invalid inputs",IF(B2=0,"N/A",ROUND((B3 + B4 + 2 * B5 + 3 * B6) / B2, 3))))` - **Formula (Batting average (AVG))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(MIN(B2:B9)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),B8<>INT(B8),B9<>INT(B9),B3>B2,SUM(B4:B6)>B3),"Invalid inputs",IF(B2=0,"N/A",ROUND(B3/B2,3))))` ### Basel CET1 Ratio, RWA Density & Texas Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/basel-cet1-capital-adequacy-rwa-density-and-texas-ratio-formula/ - **Summary**: Audit bank solvency from three angles: Basel III Common Equity Tier 1 Ratio CET1 / RWA, Risk-Weight Density RWA / Total_Assets, and Gerard Cassidy’s Non-Performing Asset Texas Ratio. *Table — Cross-check risk-weighted CET1 % with RWA Density and Gerard Cassidy’s Texas Ratio!:* | Bank Solvency Metric (Assets=$20B, RWA=$12.5B, CET1=$1.5B, LLR=$0.3B, NPA=$0.45B) | Formula | Verified Output | | --- | --- | --- | | Basel III CET1 Capital Ratio | CET1_Capital / RWA | 0.1200 (12.00%) | | Risk-Weighted Asset Density | RWA / Total_Assets | 0.6250 (62.50%) | | Unweighted Tangible Leverage Ratio | CET1_Capital / Total_Assets | 0.0750 (7.50%) | | Cassidy Texas Ratio (NPA Coverage) | NPA / (CET1_Capital + LLR) | 0.2500 (25.0% < 100% Safe) | - **Formula (Basel III Common Equity Tier 1 (CET1) Ratio & RWA Density Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 2 * B2, B4 < 0), "Invalid Solvency Input", ROUND(B4 / B3, 4))` - **Formula (Gerard Cassidy Non-Performing Asset Texas Ratio Formula)**: `=LET(cet_1, B4, llr_r, B5, npa_s, B6, IF(OR(llr_r < 0, npa_s < 0), "Invalid Solvency Input", IF(cet_1 + llr_r <= 0, "Capital Exhausted", ROUND(npa_s / (cet_1 + llr_r), 4))))` ### Basel III Net Stable Funding Ratio (NSFR) Formula - **URL**: https://sheets.arte-soft.com/en/learn/basel-iii-net-stable-funding-ratio-nsfr-asf-and-rsf-liquidity-formula/ - **Summary**: Calculate Basel III Available Stable Funding (ASF), Required Stable Funding (RSF), Structural 1-Year Net Stable Funding Ratio NSFR = ASF / RSF (>= 100%), and Stable Funding Surplus/Deficit. *Table — Pair 30-day LCR stress buffers with Basel III’s 1-year structural NSFR = ASF / RSF!:* | Basel III NSFR ALCO Metric ($30B Cap, $80B Retail, $28B Corp; $30B HQLA, $60B Mtg, $70B Loan) | Formula | Verified Output | | --- | --- | --- | | Available Stable Funding ASF ($B) | 1.00*Cap + 0.95*Retail + 0.50*Corp | $120.00B ($82.00B @ $40B Retail) | | Required Stable Funding RSF ($B) | 0.05*HQLA + 0.65*Mtg + 0.85*CorpLoan | $100.00B | | Net Stable Funding Ratio (NSFR) | ASF / RSF (>= 1.00 Mandatory) | 1.2000 (120.00%; 0.8200 Breach) | | Stable Funding Surplus / Deficit | ASF - RSF | +$20.00B (-$18.00B @ $40B Retail) | - **Formula (Basel III NSFR Ratio Formula)**: `=LET(cp_l, B2, rt_d, B3, op_d, B4, hq_1, B5, mt_g, B6, cr_l, B7, IF(OR(cp_l < 0, rt_d < 0, op_d < 0, hq_1 < 0, mt_g < 0, cr_l < 0), "Invalid Balance Sheet", LET(as_f, 1 * cp_l + 0.95 * rt_d + 0.5 * op_d, rs_f, 0.05 * hq_1 + 0.65 * mt_g + 0.85 * cr_l, IF(rs_f <= 0, "Invalid Balance Sheet", ROUND(as_f / rs_f, 4)))))` - **Formula (Retail Deposit Outflow into Overnight Repo Stress Check)**: `=IF(ISTEXT(E4), E4, ROUND(E2 - E3, 2))` ### Bass Diffusion Model Adoption Curve and Peak Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/bass-new-product-diffusion-innovation-imitation-adoption-peak/ - **Summary**: Forecast cumulative adopters N(t), peak sales timing t* = MAX(0, LN(q / p) / (p + q)), and peak adoption rate s(t*) = m * (p + q)^2 / (4 * q) using Frank Bass’s (1969) innovation-imitation model. *Table — Dispel the 50% myth: Bass adoption ALWAYS peaks strictly BEFORE 50% market penetration!:* | Bass Diffusion Benchmark (m=90,000, p=0.04, q=0.36) | Formula | Verified Output | | --- | --- | --- | | Time to Peak Sales (t_star) | IF(q > p, LN(q/p)/(p+q), 0) | 5.4931 years | | Peak Annual Adoption Rate (s_max) | IF(q > p, m*(p+q)^2/(4*q), m*p) | 10,000.00 adopters/yr | | Cumulative Adopters at Peak N(t*) | m * (0.5 - p / (2*q)) (for q > p) | 40,000.00 (44.44% of m) | - **Formula (Bass Cumulative Adopters N(t) at Horizon t Formula)**: `=LET(m_pot, B2, p_in, B3, q_im, B4, t_yr, B5, IF(OR(m_pot <= 0, p_in <= 0, q_im < 0, t_yr < 0), "Invalid Bass Parameter", LET(ex_t, EXP(-(p_in + q_im) * t_yr), ROUND(m_pot * (1 - ex_t) / (1 + (q_im / p_in) * ex_t), 2))))` - **Formula (Peak Adoption Rate s_max (Handling Both q > p Contagion and q <= p Launch-Peak) Formula)**: `=LET(m_pot, B2, p_in, B3, q_im, B4, IF(OR(m_pot <= 0, p_in <= 0, q_im < 0), "Invalid Bass Parameter", IF(q_im > p_in, ROUND(m_pot * ((p_in + q_im)^2) / (4 * q_im), 2), ROUND(m_pot * p_in, 2))))` ### Differential Batch Distillation Formula: Remaining Still Pot Moles W & Composite Purity x_D - **URL**: https://sheets.arte-soft.com/en/learn/batch-differential-distillation-pot-depletion-and-distillate-purity/ - **Summary**: Calculate remaining kettle liquid W (mol), boiled-off overhead distillate D = F - W, and pooled composite distillate purity x_D,avg in single-stage constant-alpha batch distillation via Lord Rayleigh’s (1902) integrated VLE material balance. *Table — Track progressive pot depletion and pooled overhead purity during batch solvent recovery!:* | Batch Still Stage (Charge F = 100 kmol, x_F = 0.50, alpha = 2.50) | Formula | Evaluated Value | | --- | --- | --- | | Target Final Still-Pot Composition x_W | Specified Stripping Endpoint | x_W = 0.2000 | | Logarithmic Boil-Down Ratio LN(F / W) | Rayleigh Constant-alpha Integral | 1.3942 -> W = 24.80 kmol | | Collected Overhead Distillate D = F - W | 100 - 24.80 | 75.20 kmol | | Pooled Receiver Purity x_D,avg | (F * x_F - W * x_W) / (F - W) | 0.5990 (59.90 mol%) | - **Formula (Remaining Kettle Still Moles W After Stripping x_F Down to x_W)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B4 <= 0, B4 >= B3, B5 <= 1), "Requires F > 0, 0 < x_W < x_F < 1, and alpha > 1.0", ROUND(B2 * EXP(-((1 / (B5 - 1)) * LN((B3 * (1 - B4)) / (B4 * (1 - B3))) + LN((1 - B4) / (1 - B3)))), 2))` - **Formula (Pooled Composite Overhead Distillate Mole Fraction x_D,avg)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B4 <= 0, B4 >= B3, B5 <= 1), "Requires F > 0, 0 < x_W < x_F < 1, and alpha > 1.0", ROUND((B2 * B3 - (B2 * EXP(-((1 / (B5 - 1)) * LN((B3 * (1 - B4)) / (B4 * (1 - B3))) + LN((1 - B4) / (1 - B3))))) * B4) / (B2 - (B2 * EXP(-((1 / (B5 - 1)) * LN((B3 * (1 - B4)) / (B4 * (1 - B3))) + LN((1 - B4) / (1 - B3)))))), 4))` ### Battery Coulombic, Voltaic & Round-Trip RTE Formula - **URL**: https://sheets.arte-soft.com/en/learn/battery-coulombic-efficiency-voltaic-efficiency-and-round-trip-rte-formula/ - **Summary**: Decompose Grid Battery Storage Round-Trip Energy Efficiency RTE = eta_Coulombic * eta_Voltaic from Charge/Discharge Amp-Hours and Mean Voltages, and quantify Dissipated Cycle Energy Loss. *Table — Never mistake 99% Coulombic Amp-Hour efficiency for Round-Trip Watt-Hour efficiency!:* | BESS Cycle Efficiency Metric (200Ah @ 3.50V Charge -> 190Ah @ 3.15V Discharge) | Formula | Verified Output | | --- | --- | --- | | Coulombic Efficiency eta_C | Q_discharge_Ah / Q_charge_Ah | 0.9500 (95.00% Faradaic) | | Voltaic Efficiency eta_V | V_discharge_avg / V_charge_avg | 0.9000 (90.00% Overpotential) | | Round-Trip Energy Efficiency RTE | eta_C * eta_V = E_dis_Wh / E_chg_Wh | 0.8550 (85.50%; 0.9453 LFP C/5) | | Cycle Energy Dissipated (Wh) | Q_chg * V_chg - Q_dis * V_dis | 101.50 Wh HVAC Thermal Load | - **Formula (Exact Multiplicative BESS Round-Trip Efficiency (RTE) Formula)**: `=LET(q_ch, B2, q_ds, B3, v_ch, B4, v_ds, B5, IF(OR(q_ch <= 0, q_ds <= 0, q_ds > q_ch, v_ch <= 0, v_ds <= 0, v_ds > v_ch), "Invalid Cycle Telemetry", LET(et_c, q_ds / q_ch, et_v, v_ds / v_ch, ROUND(et_c * et_v, 4))))` - **Formula (Low-Rate LFP Benchmark Check (99.5% Coulombic x 95.0% Voltaic))**: `=IF(ISTEXT(E4), E4, ROUND(B2 * B4 - B3 * B5, 2))` ### Battery Ragone Specific Energy & Peak Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/battery-ragone-specific-energy-specific-power-and-internal-ir-drop-formula/ - **Summary**: Calculate Matched-Load Peak Specific Power P_max = V_oc^2 / (4 * R_int * Mass), Ragone Voltage Efficiency (1 + SQRT(1 - P_load / P_max)) / 2, Delivered Specific Energy, and High-Power Runtime. *Table — Derive the exact Ragone energy-vs-power knee from open-circuit voltage and internal resistance!:* | Ragone Cell Metric (Voc=4.0V, Rint=4mOhm, Mass=0.40kg, E0=250Wh/kg, Pload=900W/kg) | Formula | Verified Output | | --- | --- | --- | | Peak Matched Specific Power P_max | V_oc^2 / (4 * R_int * Mass_kg) | 2,500.00 W/kg | | Ragone Voltage Efficiency | (1 + SQRT(1 - P_load / P_max)) / 2 | 0.9000 (0.5000 @ P_load = P_max) | | Delivered Specific Energy (Wh/kg) | E_0_Whkg * Ragone_Efficiency | 225.00 Wh/kg (125.00 @ P_max) | | Constant-Power Runtime (min) | 60 * (Delivered_Whkg / P_load_Wkg) | 15.00 minutes (3.00 min @ P_max) | - **Formula (Christen-Carlen Ragone Delivered Specific Energy Formula)**: `=LET(v_oc, B2, r_in, B3, ms_k, B4, e_zr, B5, p_ld, B6, IF(OR(v_oc <= 0, r_in <= 0, ms_k <= 0, e_zr <= 0, p_ld <= 0), "Invalid Cell Spec", LET(p_mx, (v_oc ^ 2) / (4 * r_in * ms_k), IF(p_ld > p_mx, "Voltage Collapse (P_load > P_max)", LET(et_r, (1 + SQRT(1 - p_ld / p_mx)) / 2, ROUND(e_zr * et_r, 2))))))` - **Formula (Matched-Impedance Knee Test (P_load = P_max = 2,500 W/kg))**: `=IF(ISTEXT(E4), E4, ROUND(60 * (E4 / B6), 2))` ### Baumol’s Cost Disease Formula: Relative Unit Labor Cost & Stagnant Sector GDP Share - **URL**: https://sheets.arte-soft.com/en/learn/baumol-cost-disease-unbalanced-sector-productivity-wage-growth/ - **Summary**: Model William Baumol’s (1967) Unbalanced Growth Law: explain why healthcare, education, and live-service unit costs compound at ((1 + g_p) / (1 + g_s))^t when economy-wide wages track progressive-sector productivity. *Table — Why string quartets, universities, and bedside nursing grow relentlessly more expensive even with zero waste!:* | Horizon t (g_p = 3.5%/yr, g_s = 0.5%/yr, Initial Share s_0 = 15%) | Relative Unit Cost Multiple R(t) | Constant-Real-Ratio GDP Share s(t) | | --- | --- | --- | | t = 0 Years (Base Year) | 1.0000x | 15.00% of Total Expenditure | | t = 25 Years | 2.0864x (+108.64% Real Price Surge) | 26.90% of Total Expenditure | | t = 50 Years | 4.3531x (+335.31% Real Price Surge) | 43.44% of Total Expenditure | - **Formula (Baumol Relative Unit Labor Cost Multiplier R(t) = ((1 + g_p) / (1 + g_s))^t)**: `=IF(OR(B2 <= -1, B3 <= -1, B4 < 0, B5 <= 0, B5 >= 1), "Invalid Baumol Growth Parameters", ROUND(((1 + B2) / (1 + B3)) ^ B4, 4))` - **Formula (Constant-Real-Output Stagnant Sector Nominal Expenditure Share (%) After t Years)**: `=IF(OR(B2 <= -1, B3 <= -1, B4 < 0, B5 <= 0, B5 >= 1), "Invalid Baumol Growth Parameters", ROUND(100 / (1 + ((1 - B5) / B5) / (((1 + B2) / (1 + B3)) ^ B4)), 2))` ### Baumol-Tobin Optimal Cash Replenishment Size and Opportunity Cost Audit - **URL**: https://sheets.arte-soft.com/en/learn/baumol-tobin-optimal-cash-replenishment-lot-and-opportunity-cost/ - **Summary**: Balance fixed securities-liquidation fees against foregone short-term yield using the Baumol-Tobin square-root cash model C* = SQRT(2 * b * T / i) and verify cost symmetry. *Table — Predict the exact cash transfer lot and cost equality by hand:* | Policy | Transfer Lot C | Annual Fees + Foregone Yield = Total Cost | | --- | --- | --- | | Naive Monthly Sweep | 120,000 (12x/yr) | 600 + 2,400 = 3,000 (600 excess cost) | | Baumol-Tobin Optimum C* | 60,000 (24x/yr) | 1,200 + 1,200 = 2,400 (Exact minimum) | | Higher Yield i = 9% | 40,000 (36x/yr) | 1,800 + 1,800 = 3,600 (Square-root scaling) | - **Formula (Optimal Cash Replenishment Lot C* Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Cash Input", ROUND(SQRT(2 * B3 * B2 / B4), 2))` - **Formula (Total Annual Cash Management Cost & Hint-First Check)**: `=LET(t_ann, B2, b_fee, B3, i_rate, B4, c_opt, SQRT(2 * b_fee * t_ann / i_rate), ROUND((t_ann / c_opt) * b_fee + (c_opt / 2) * i_rate, 2))` ### Baveno VII Portal Hypertension (CSPH) Rule-Of-5 Criteria & ANTICIPATE Probability Formula - **URL**: https://sheets.arte-soft.com/en/learn/baveno-vii-clinically-significant-portal-hypertension-lsm-platelets/ - **Summary**: Stratify compensated advanced chronic liver disease (cACLD) patients for Clinically Significant Portal Hypertension (CSPH, HVPG >= 10 mmHg) and endoscopic screening avoidance using Baveno VII (2022) Transient Elastography LSM + Platelet criteria and the ANTICIPATE logistic score. *Table — Replace invasive transjugular HVPG catheterization and unnecessary endoscopies with Baveno VII Rule-of-5!:* | Baveno VII Non-Invasive Tier (Viral / Alcohol / Non-Obese cACLD) | LSM (kPa) & Platelet (x10^9/L) Thresholds | Clinical Management Action | | --- | --- | --- | | Rule-Out cACLD | LSM < 10 kPa (Absence of clinical signs) | Very (< 1%) 3-yr decompensation risk | | Rule-Out CSPH (> 90% NPV) | LSM <= 15 kPa AND Platelets >= 150 | CSPH Excluded; no beta-blocker needed | | Endoscopy-Sparing Safe Zone | LSM < 20 kPa AND Platelets > 150 | Safely avoid screening upper endoscopy | | Rule-In CSPH (> 90% PPV) | LSM >= 25 kPa | CSPH Confirmed (>= 10 mmHg); consider carvedilol | - **Formula (Baveno VII CSPH & Endoscopy-Sparing Clinical Stratification Formula)**: `=IF(OR(B2 <= 1, B2 > 75, B3 <= 5, B3 > 1000), "Invalid Liver Stiffness LSM (1–75 kPa) or Platelets (5–1,000 x10^9/L)", IF(B2 >= 25, "Rule-In CSPH (LSM >= 25 kPa, >90% PPV)", IF(AND(B2 <= 15, B3 >= 150), "Rule-Out CSPH (LSM <= 15 kPa & PLT >= 150, >90% NPV)", IF(AND(B2 < 20, B3 > 150), "CSPH Gray Zone — Baveno VI Endoscopy-Sparing (<20 kPa & PLT >150)", "Indeterminate CSPH Gray Zone — Evaluate ANTICIPATE / Spleen Stiffness"))))` - **Formula (ANTICIPATE Study Continuous CSPH Probability (%) from LSM & Platelets)**: `=IF(OR(B2 <= 1, B2 > 75, B3 <= 5, B3 > 1000), "Invalid LSM or Platelets", ROUND(100 / (1 + EXP(-(-6.332025 + 3.10006 * LN(B2) - 0.020462 * B3))), 1))` ### Bayes' Theorem formula: Positive Predictive Value (PPV) & false-positive paradox - **URL**: https://sheets.arte-soft.com/en/learn/bayes-theorem-positive-predictive-value-false-positive/ - **Summary**: Use a hypothetical fraud detector to calculate predictive values from prevalence, sensitivity and specificity. *Table — Why base rates matter for interpreting a positive flag:* | Bayesian Screening Metric (99% Sens / 99% Spec) | Prevalence = 1% | Prevalence = 10% | 2nd Independent Confirming Test | | --- | --- | --- | --- | | Positive Predictive Value P(D \| +) | 50.00% (1-in-2 false alarm!) | 91.67% | 99.00% (Updated prior = 50%) | | False Discovery Rate (1 - PPV) | 50.00% | 8.33% | 1.00% | | Negative Predictive Value P(~D \| -) | 99.99% | 99.89% | 99.00% (prior = 50%) | - **Formula (Bayes' Theorem Positive Predictive Value (PPV) and Negative Predictive Value (NPV))**: `=IF(OR(COUNT(A2:C2)<>3,MIN(A2:C2)<0,MAX(A2:C2)>1),"Invalid probabilities",IF(A2*B2+(1-A2)*(1-C2)=0,"Undefined conditional probability",ROUND((A2 * B2) / (A2 * B2 + (1 - A2) * (1 - C2)), 4)))` - **Formula (Negative Predictive Value P(Clear | Negative Result))**: `=IF(OR(COUNT(A2:C2)<>3,MIN(A2:C2)<0,MAX(A2:C2)>1),"Invalid probabilities",IF((1-A2)*C2+A2*(1-B2)=0,"Undefined conditional probability",ROUND(((1 - A2) * C2) / ((1 - A2) * C2 + A2 * (1 - B2)), 4)))` ### Becker Optimal Enforcement Audit & Sanction Formula - **URL**: https://sheets.arte-soft.com/en/learn/becker-economics-of-enforcement-expected-sanction-and-fine-rule/ - **Summary**: Compute Becker / Polinsky-Shavell maximal-fine audit probability p* = H/W_max - (c_p*G_max)/W_max^2 and explain optimal under-deterrence when auditing is costly. *Table — Why Becker sets fines at the solvency cap W_max and calibrates p* below H / W_max!:* | Becker-Polinsky-Shavell Metric (H=5k, W_max=20k, G_max=10k, c_p=2k) | Formula | Verified Output | | --- | --- | --- | | Zero-Cost Pigouvian Audit Benchmark | H / W_max | 0.2500 (25.00% Audit Rate) | | Cost-Adjusted Optimal Audit Rate (p*) | H / W_max - (c_p * G_max) / W_max^2 | 0.2000 (20.00% Audit Rate) | | Optimal Expected Sanction (p* * W_max) | p* * W_max | 4,000.00 (< Harm 5,000.00) | | Deterred Violation Share | MIN(1, (p* * W_max) / G_max) | 0.4000 (40.00% Deterred) | - **Formula (Cost-Adjusted Optimal Inspection Probability p* Formula)**: `=LET(h_ex, B2, w_mx, B3, g_mx, B4, cp_a, B5, IF(OR(h_ex <= 0, w_mx < h_ex, g_mx <= 0, cp_a < 0), "Invalid Enforcement Input", LET(p_raw, (h_ex / w_mx) - (cp_a * g_mx) / (w_mx^2), ROUND(MAX(0, MIN(1, p_raw)), 4))))` - **Formula (Optimal Expected Sanction p* * W_max Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E3 * B3, 2))` ### Bedside Schwartz Pediatric eGFR Formula (2009 IDMS Creatinine) - **URL**: https://sheets.arte-soft.com/en/learn/bedside-schwartz-pediatric-egfr-creatinine-height-formula/ - **Summary**: Calculate pediatric estimated glomerular filtration rate eGFR = (0.413 * Height_cm) / Serum_Cr_mgdL (mL/min/1.73 m^2) for children aged 1–17 years using IDMS-standardized enzymatic serum creatinine. *Table — Why adult CKD-EPI formulas cannot be used in growing children—and why k dropped to 0.413!:* | Pediatric Height & Enzymatic Serum Cr | 0.413 * Height_cm / Cr_mgdL | KDIGO Pediatric CKD Stage | Medication & Renal Action | | --- | --- | --- | --- | | 135 cm Child, Cr = 0.55 mg/dL | 101.4 mL/min/1.73 m^2 | G1 Normal (>= 90) | Standard Weight-Based Dosing | | 125 cm Child, Cr = 0.65 mg/dL | 79.4 mL/min/1.73 m^2 | G2 Mildly Decreased (60–89) | Monitor Hydration & Nephrotoxins | | 110 cm Child, Cr = 1.40 mg/dL | 32.5 mL/min/1.73 m^2 | G3 Moderate CKD (30–59) | Adjust Renally Cleared Drug Doses | - **Formula (2009 CKiD Bedside Schwartz Pediatric eGFR (mL/min/1.73 m^2))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Height / Creatinine", ROUND((0.413 * B2) / B3, 1))` - **Formula (KDIGO Pediatric GFR Category & Renal Dosing Flag)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Height / Creatinine", IF(((0.413 * B2) / B3) >= 90, "KDIGO G1 Normal (>= 90 mL/min/1.73m2)", IF(((0.413 * B2) / B3) >= 60, "KDIGO G2 Mildly Decreased (60-89)", IF(((0.413 * B2) / B3) >= 30, "KDIGO G3 Moderate CKD (30-59) — Renal Dose Adjust", "KDIGO G4-G5 Severe CKD (< 30) — Urgent Pediatric Nephrology"))))` ### Beer Carbonation Volumes CO2 (Zahm-Nagel) & Line Formula - **URL**: https://sheets.arte-soft.com/en/learn/beer-and-sparkling-beverage-zahm-carbonation-volumes-co2-head-pressure-and-g-per-l/ - **Summary**: Calculate ASBC Equilibrium Dissolved Carbonation (Volumes CO2 and g/L), Draught Choker Restriction Line Length (ft), and Beer Style Carbonation Band from Gauge Pressure & Temp. *Table — Hold bright-tank CO2 regulator pressure fixed at 12.5 psi when glycol chilling warms from 38°F to 54°F and beer loses 25% of its carbonation!:* | ASBC Zahm-Nagel Carbonation & Draught KPI (Pg=12.5 psig, Lift=6 ft, Choker=2.2 psi/ft) | Formula | Verified Output | | --- | --- | --- | | Dissolved Carbonation (Volumes CO2) | (Pg + 14.696)*(0.01821 + 0.090115*EXP(-(TF-32)/43.11)) - 0.003342 | 2.62 vol @ 38°F (1.96 vol FLAT @ 54°F!) | | Dissolved CO2 Mass Conc (g/L) | Volumes_CO2 * 1.96 (STP CO2 Density) | 5.14 g/L (3.85 g/L @ 54°F) | | Balanced Choker Line Length (ft) | (Gauge_psi - 0.5*Lift_ft - 1.0) / Resist_psi_ft | 3.86 ft of 3/16" ID choker | | BJCP / ASBC Carbonation Band | >= 2.30 Volumes Standard American/Euro Spec | STANDARD LAGER / ALE (2.3-2.8 vol) | - **Formula (ASBC / Zahm-Nagel Henry’s Law Solubility & Draught Hydrostatic-Friction Balance Formula)**: `=LET(pg_p, B2, tf_d, B3, hl_f, B4, rl_p, B5, vc_o, (pg_p + 14.696) * (0.01821 + 0.090115 * EXP(-(tf_d - 32) / 43.11)) - 0.003342, IF(OR(pg_p < 4, pg_p > 45, tf_d < 30, tf_d > 75, hl_f < -10, hl_f > 40, (pg_p - 0.5 * hl_f - 1) <= 0.5, rl_p < 0.2, rl_p > 5), "Invalid Carbonation Input", IF(vc_o >= 2.3, "STANDARD LAGER / ALE (2.3-2.8 vol)", "FLAT / CASK LEVEL (<2.3 vol)")))` - **Formula (Warm 54°F Walk-In Cooler at Unchanged 12.5 psig Regulator Flat-Beer Check (Set B3 = 54°F))**: `=IF(ISTEXT(E2), E2, LET(vc_o, (B2 + 14.696) * (0.01821 + 0.090115 * EXP(-(B3 - 32) / 43.11)) - 0.003342, ROUND(vc_o * 1.96, 2)))` ### Beer-Lambert Law formula: Absorbance (2 - LOG10(%T)) & Molar Concentration - **URL**: https://sheets.arte-soft.com/en/learn/beer-lambert-law-absorbance-transmittance-concentration/ - **Summary**: Convert UV-Vis % Transmittance into Optical Absorbance A = 2 - LOG10(%T) and calculate unknown analyte concentration c = A / (ε · l). *Table — Spectrophotometry essentials: % Transmittance is logarithmic, Concentration is linear in A!:* | % Transmittance (%T) | Optical Absorbance A = 2 - LOG10(%T) | Concentration (µM, ε=12,000, l=1 cm) | | --- | --- | --- | | 100% T (Solvent Blank) | 0.0000 AU | 0.00 µM | | 25% T (Sample) | 0.6021 AU | 50.17 µM | | 10% T (Concentrated) | 1.0000 AU | 83.33 µM | - **Formula (Optical Absorbance from % Transmittance and Beer-Lambert Concentration (µM))**: `=IF(OR(NOT(ISNUMBER(A2)),A2<=0,A2>100),"Invalid transmittance",ROUND(2-LOG10(A2),4))` - **Formula (Solve unknown sample concentration in micromolar (µM) from %T, ε (B2), and path l (C2))**: `=IF(OR(COUNT(A2:C2)<>3,A2<=0,A2>100,B2<=0,C2<=0),"Invalid inputs",ROUND((2-LOG10(A2))/(B2*C2)*1000000,2))` ### Begg & Mazumdar Rank Correlation Test: Kendall’s τ Funnel Asymmetry Z-Score - **URL**: https://sheets.arte-soft.com/en/learn/begg-mazumdar-rank-correlation-funnel-asymmetry-variance/ - **Summary**: Test meta-analytic publication bias nonparametrically using Colin Begg and Madhuchhanda Mazumdar’s (1994) Kendall rank correlation τ and exact variance σ_S² = k*(k - 1)*(2*k + 5) / 18. *Table — Nonparametric rank-correlation alternative to Egger’s regression when outlier trials skew OLS slopes!:* | Meta-Analysis Pair Counts (k = 8 Studies, 28 Pairs) | Begg Kendall’s τ | Asymptotic Z-Statistic | Publication Bias Inference | | --- | --- | --- | --- | | C = 22 Concordant, D = 6 Discordant (S = +16) | +0.5714 | Z = +1.979 (\|Z\| > 1.96) | Significant Rank Asymmetry (p = 0.048) | | C = 14 Concordant, D = 14 Discordant (S = 0) | 0.0000 | Z = 0.000 | Symmetric Funnel Rank Order | | Invalid k < 3 or C + D > k*(k - 1)/2 | Error Guard | "Invalid Study Pair Counts" | Combinatorial Bounds Guard | - **Formula (Begg & Mazumdar Kendall Rank Correlation τ)**: `=IF(OR(B2 < 3, B3 < 0, B4 < 0, B3 + B4 > B2 * (B2 - 1) / 2), "Invalid Study Pair Counts", ROUND((B3 - B4) / (B2 * (B2 - 1) / 2), 4))` - **Formula (Begg-Mazumdar Rank-Correlation Z-Statistic Z = (C - D) / σ_S)**: `=IF(OR(B2 < 3, B3 < 0, B4 < 0, B3 + B4 > B2 * (B2 - 1) / 2), "Invalid Study Pair Counts", ROUND((B3 - B4) / SQRT(B2 * (B2 - 1) * (2 * B2 + 5) / 18), 3))` ### Beggs-Brill Two-Phase Flow Formula: Mixture Froude Number & Horizontal Liquid Holdup H_L(0) - **URL**: https://sheets.arte-soft.com/en/learn/beggs-brill-horizontal-two-phase-liquid-holdup-and-froude-number/ - **Summary**: Determine horizontal gas-liquid pipeline Mixture Froude Number N_Fr = v_m^2 / (g * D), Input No-Slip Liquid Fraction lambda_L, and Segregated/Intermittent/Distributed Liquid Holdup H_L(0) via H. Dale Beggs and James P. Brill (1973). *Table — Predict pipeline liquid inventory from superficial gas & liquid velocities!:* | Beggs-Brill Horizontal Flow Regime | Power-Law Constants (a, b, c) | Evaluated H_L(0) at lambda_L = 0.25, N_Fr = 12.0 | | --- | --- | --- | | Segregated (Stratified / Wavy / Annular) | a = 0.980, b = 0.4846, c = 0.0868 | H_L(0) = 0.4032 | | Intermittent (Plug / Elongated Slug) | a = 0.845, b = 0.5351, c = 0.0173 | H_L(0) = 0.3855 | | Distributed (Dispersed Bubble / Mist) | a = 1.065, b = 0.5824, c = 0.0609 | H_L(0) = 0.4080 | - **Formula (Beggs-Brill Mixture Froude Number N_Fr = (v_sL + v_sG)^2 / (g * D))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Requires Positive v_sL, v_sG, and Pipe Diameter D", ROUND(((B2 + B3) ^ 2) / (9.80665 * B4), 4))` - **Formula (Beggs-Brill Intermittent-Slug Horizontal Liquid Holdup H_L(0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Requires Positive v_sL, v_sG, and Pipe Diameter D", ROUND(MAX(B2 / (B2 + B3), (0.845 * ((B2 / (B2 + B3)) ^ 0.5351)) / ((((B2 + B3) ^ 2) / (9.80665 * B4)) ^ 0.0173)), 4))` ### Beighton Hypermobility Score Formula: 2017 EDS Age-Stratified Cutoffs (0 to 9) - **URL**: https://sheets.arte-soft.com/en/learn/beighton-generalized-joint-hypermobility-age-adjusted-score/ - **Summary**: Calculate the 9-point Beighton Joint Hypermobility Score and apply the 2017 International Ehlers-Danlos Syndrome (hEDS) age-adjusted generalized hypermobility thresholds (>= 6 prepubertal, >= 5 ages 13–50, >= 4 over 50). *Table — Why the 2017 International EDS Consortium replaced a flat >= 5 cutoff with age-stratified thresholds!:* | Patient Age & Beighton Maneuver Sum | 2017 EDS Age-Adjusted Cutoff | Generalized Joint Hypermobility (GJH) Status | | --- | --- | --- | | Age 28 yr, Beighton = 6 / 9 | >= 5 Required (Ages 13–50) | "Positive for GJH (Meets 2017 Age-Adjusted Cutoff)" | | Age 10 yr, Beighton = 5 / 9 | >= 6 Required (Prepubertal < 13) | "Negative for GJH (Below Age-Specific Threshold)" | | Age 56 yr, Beighton = 4 / 9 | >= 4 Required (Age > 50) | "Positive for GJH (Meets 2017 Age-Adjusted Cutoff)" | - **Formula (2017 International EDS Age-Stratified Generalized Joint Hypermobility Decision)**: `=IF(OR(B2 <= 0, B2 > 115, MIN(B3:B7) < 0, MAX(B3:B6) > 2, B7 > 1), "Invalid Beighton Inputs", IF(SUM(B3:B7) >= IF(B2 < 13, 6, IF(B2 <= 50, 5, 4)), "Positive for GJH (Meets 2017 Age-Adjusted Cutoff)", "Negative for GJH (Below Age-Specific Threshold)"))` - **Formula (Total 9-Point Beighton Joint Hypermobility Score)**: `=IF(OR(B2 <= 0, B2 > 115, MIN(B3:B7) < 0, MAX(B3:B6) > 2, B7 > 1), "Invalid Beighton Inputs", SUM(B3:B7))` ### Bélanger Equation: Hydraulic Jump Sequent Depth & Specific Energy Head Loss - **URL**: https://sheets.arte-soft.com/en/learn/belanger-conjugate-depth-and-hydraulic-jump-head-loss/ - **Summary**: Calculate rectangular stilling-basin sequent depth y_2 = 0.5*y_1*(SQRT(1 + 8*Fr_1^2) - 1) and turbulent energy dissipation ΔE = (y_2 - y_1)^3 / (4*y_1*y_2). *Table — Why dam spillways conservation of momentum—not Bernoulli energy—governs a hydraulic jump!:* | Upstream Toe Flow (y_1 = 0.45 m) | Sequent Depth y_2 (m) | Energy Head Loss ΔE (m) | USBR Stilling Basin Regime | | --- | --- | --- | --- | | Fr_1 = 3.8 (Spillway Chute Toe) | 2.204 m (4.90× y_1) | 1.360 m | Oscillating-to-Steady Jump (2.5–4.5) | | Fr_1 = 6.0 (High-Head Outlet) | 3.600 m (8.00× y_1) | 3.876 m | Steady Jump (4.5–9.0 — Best Dissipation) | | Subcritical Fr_1 <= 1 or y_1 <= 0 | No Jump Possible | "Requires Supercritical Fr1 > 1" | Hydraulic Regime Guard | - **Formula (Bélanger Hydraulic Jump Sequent (Conjugate) Depth y_2 (m))**: `=IF(OR(B2 <= 0, B3 <= 1), "Requires Supercritical Fr1 > 1", ROUND(0.5 * B2 * (SQRT(1 + 8 * (B3 ^ 2)) - 1), 3))` - **Formula (Hydraulic Jump Turbulent Specific-Energy Head Loss ΔE (m))**: `=IF(OR(B2 <= 0, B3 <= 1), "Requires Supercritical Fr1 > 1", ROUND(((B4 - B2) ^ 3) / (4 * B2 * B4), 3))` ### Bell-Delaware Method Formula: Shell-Side Heat Transfer Coefficient (Jc, Jl, Jb, Js, Jr) - **URL**: https://sheets.arte-soft.com/en/learn/bell-delaware-shell-side-heat-exchanger-correction-factors/ - **Summary**: Correct ideal crossflow tube-bank heat transfer h_id for real TEMA shell-and-tube baffle geometry, leakage, bundle bypass, unequal spacing, and laminar gradients via h_s = h_id * Jc * Jl * Jb * Js * Jr. *Table — Why real baffled shell-and-tube exchangers achieve only ~60% of ideal crossflow heat transfer!:* | TEMA Shell-Side Configuration | Combined Product Jc*Jl*Jb*Js*Jr | Corrected Shell h_s (W/m²·K) | Dominant Hydraulic Penalty | | --- | --- | --- | --- | | Baseline (Jl=0.76, Jb=0.88, no strips) | 0.6677 | 1,235.3 W/(m²·K) | Baffle leakage + bundle bypass | | With Sealing Strips (Jb raised to 0.96) | 0.7284 | 1,347.6 W/(m²·K) | +9.1% gain by blocking OTL bypass | | Non-positive factor Jl <= 0 | Error Guard | "Invalid Bell-Delaware Factor" | Strict positive bounds check | - **Formula (Bell-Delaware Corrected Shell-Side Coefficient h_s = h_id * Jc * Jl * Jb * Js * Jr)**: `=IF(OR(B2 <= 0, MIN(B3:B7) <= 0, MAX(B3:B7) > 1.5), "Invalid Bell-Delaware Factor", ROUND(B2 * B3 * B4 * B5 * B6 * B7, 1))` - **Formula (Combined Delaware Shell-Side Efficiency Multiplier J_total)**: `=IF(OR(B2 <= 0, MIN(B3:B7) <= 0, MAX(B3:B7) > 1.5), "Invalid Bell-Delaware Factor", ROUND(B3 * B4 * B5 * B6 * B7, 4))` ### Belleville Disc-Spring Parallel & Series Stack Formula - **URL**: https://sheets.arte-soft.com/en/learn/belleville-coned-disc-spring-load-deflection-series-and-parallel-stack/ - **Summary**: Calculate DIN 2092 Belleville Coned-Disc Spring Stack Load Capacity (N), Total Axial Deflection (mm), Effective Stack Stiffness Rate (N/mm), and Elastic Energy Stored (J). *Table — Nested parallel washers multiply LOAD (n_p * F_1), while alternating series packets multiply TRAVEL (n_s * s_1)!:* | DIN 2092 Belleville Stack KPI (F1 = 4,000 N, s1 = 0.80 mm, np = 3, ns = 4) | Formula | Verified Output | | --- | --- | --- | | Total Stack Load Capacity (N) | Parallel_np * Single_Washer_Load_N | 12,000.00 N (4,000.00 @ 1x12) | | Total Stack Deflection (mm) | Series_ns * Single_Washer_Defl_mm | 3.20 mm (9.60 mm @ 1x12) | | Effective Stack Stiffness (N/mm) | Total_Stack_Load_N / Total_Deflection_mm | 3,750.00 N/mm (416.67 @ 1x12) | | Stored Elastic Energy (Joules) | 0.5 * Stack_Load_N * (Stack_Defl_mm / 1000) | 19.20 J (19.20 J Invariant!) | - **Formula (Belleville Parallel-Series Stack Stiffness & Energy Formula)**: `=LET(f_sg, B2, s_sg, B3, n_pr, B4, n_sr, B5, IF(OR(f_sg <= 0, s_sg <= 0, n_pr < 1, n_sr < 1), "Invalid Disc Stack Input", LET(f_st, n_pr * f_sg, s_st, n_sr * s_sg, ROUND(f_st / s_st, 2))))` - **Formula (Energy-Invariance Re-Stacking Check (Re-Arrange Same 12 Washers to 1-Parallel x 12-Series))**: `=IF(ISTEXT(E4), E4, ROUND(0.5 * (B4 * B2) * ((B5 * B3) / 1000), 2))` ### Belobaba EMSR-a Nested Seat Protection Formula - **URL**: https://sheets.arte-soft.com/en/learn/belobaba-emsr-a-airline-nested-fare-class-booking-protection-formula/ - **Summary**: Calculate Pairwise Littlewood Seat Protections y_13 and y_23 under Exponential High-Fare Demand, Belobaba’s Additive EMSR-a Joint Protection Y_12, and Nested Discount Class Booking Limit. *Table — Scale Littlewood’s two-class rule to multi-bucket fare ladders with Belobaba’s EMSR-a!:* | Belobaba EMSR-a Metric (f1=$400/20, f2=$200/30, f3=$100, 150-Seat Cabin) | Formula | Verified Output | | --- | --- | --- | | Class 1 vs Class 3 Protection y_13 | mu_1 * LN(f_1 / f_3) | 27.73 seats (13.86 @ f3=$200) | | Class 2 vs Class 3 Protection y_23 | mu_2 * LN(f_2 / f_3) | 20.79 seats (0.00 @ f3=$200) | | EMSR-a Joint Protection Y_12 | ROUND(y_13 + y_23, 0) | 49 seats (14 @ f3=$200) | | Nested Class-3 Booking Limit BL_3 | MAX(0, Cabin_Capacity - Y_12) | 101 seats (136 @ f3=$200) | - **Formula (Belobaba EMSR-a Joint Protection & Nested Booking Limit Formula)**: `=LET(f_c1, B2, m_c1, B3, f_c2, B4, m_c2, B5, f_c3, B6, cp_s, B7, IF(OR(f_c3 <= 0, f_c2 < f_c3, f_c1 <= f_c2, m_c1 < 0, m_c2 < 0, cp_s < 1), "Invalid Nested Fare Ladder", LET(y_13, m_c1 * LN(f_c1 / f_c3), y_23, m_c2 * LN(f_c2 / f_c3), pr_t, ROUND(y_13 + y_23, 0), MAX(0, cp_s - pr_t))))` - **Formula (Collapsed Fare-Gap Boundary Check (f_3 = f_2 = $200))**: `=IF(ISTEXT(E5), E5, ROUND(B3 * LN(B2 / B6) + B5 * LN(B4 / B6), 0))` ### Belt Conveyor Bulk Tonnage Capacity & Drive Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/belt-conveyor-bulk-tonnage-capacity-surcharge-cross-section-and-drive-power/ - **Summary**: Calculate CEMA Mass Conveying Capacity Q_m (t/h), Potential Gravity Lift Power P_lift (kW), Horizontal Idler Rolling Friction Power P_fric (kW), and Required Drive Motor Shaft Power (kW). *Table — Switching a belt conveyor from crushed limestone to dense iron-ore concentrate trips the gearbox breaker even at identical volumetric belt profile!:* | CEMA Belt Conveyor KPI (Ab=0.115 m², v=2.4 m/s, rho=1.60 t/m³, L=180 m, H=18 m) | Formula | Verified Output | | --- | --- | --- | | Mass Tonnage Capacity Qm (t/h) | 3600 * Belt_Area_m2 * Speed_m_s * rho_t_m3 | 1,589.76 t/h (2,384.64 @ 2.40 t/m³ ore) | | Gravity Elevation Power Plift (kW) | (Ab * v * rho*1000 * 9.80665 * H) / 1000 | 77.95 kW (116.93 kW @ 2.40 t/m³ ore) | | Material Rolling Friction Power (kW) | (f * Ab * rho*1000 * L * 9.80665 * v)/1000 | 19.49 kW (29.23 kW @ 2.40 t/m³ ore) | | Required Motor Shaft Power (kW) | (Plift_kW + Pfric_kW) / Drive_Efficiency | 110.73 kW (166.09 kW trips 132 kW drive!) | - **Formula (CEMA Troughed Belt Tonnage, Elevation Lift & Idler Friction Power Formula)**: `=LET(ab_m, B2, vb_s, B3, rb_t, B4, lh_m, B5, hv_m, B6, fr_i, B7, ef_d, B8, IF(OR(ab_m <= 0, vb_s <= 0, vb_s > 10, rb_t <= 0, lh_m <= 0, hv_m < 0, fr_i < 0.01, fr_i > 0.1, ef_d <= 0, ef_d > 1), "Invalid Conveyor Input", LET(ms_k, ab_m * vb_s * rb_t * 1000, pw_l, (ms_k * 9.80665 * hv_m) / 1000, pw_f, (fr_i * (ab_m * rb_t * 1000) * lh_m * 9.80665 * vb_s) / 1000, ROUND((pw_l + pw_f) / ef_d, 2))))` - **Formula (Dense Iron-Ore Concentrate Campaign Overload Check (Set Bulk Density rho_b = 2.40 t/m³))**: `=IF(ISTEXT(E5), E5, ROUND(3600 * B2 * B3 * B4, 2))` ### Beneish M-Score formula: 8-variable forensic earnings manipulation screen - **URL**: https://sheets.arte-soft.com/en/learn/beneish-m-score-earnings-manipulation-forensic-formula/ - **Summary**: Calculate an eight-input Beneish screening score from prepared accounting indices and compare its unrounded value with an explicit review threshold. *Table — Use the M-score as a screening signal, not a fraud verdict:* | Company Profile | 8 Beneish Inputs (DSRI..LVGI) | Calculated M-Score | Screening result (chosen cutoff -1.78) | | --- | --- | --- | --- | | Steady Baseline Firm | Indices = 1.00, TATA = 0.00 | M = -2.48 | Below chosen threshold | | Aggressive Accrual / Receivables Spike | DSRI=1.45, SGI=1.50, TATA=0.08... | M = -1.07 | Review indicated | - **Formula (Compute the 8-variable Beneish M-Score)**: `=IF(COUNT(A2:H2)<>8,"Invalid inputs",ROUND(-4.84 + 0.92 * A2 + 0.528 * B2 + 0.404 * C2 + 0.892 * D2 + 0.115 * E2 - 0.172 * F2 + 4.679 * G2 - 0.327 * H2, 2))` - **Formula (Compare the unrounded score with a configurable threshold)**: `=IF(COUNT(A2:I2)<>9,"Invalid inputs",LET(m, -4.84 + 0.92 * A2 + 0.528 * B2 + 0.404 * C2 + 0.892 * D2 + 0.115 * E2 - 0.172 * F2 + 4.679 * G2 - 0.327 * H2, IF(m > I2, "Review indicated", "Below chosen threshold")))` ### Benford first-digit probabilities and significant-digit extraction - **URL**: https://sheets.arte-soft.com/en/learn/benfords-law-first-digit-and-nth-digit-fraud-audit/ - **Summary**: Extract significant digits from numeric amounts and compare a sample count with a theoretical Benford probability; deviations alone do not establish fraud. *Table — A descriptive digit check, not a fraud verdict:* | Digit | Theoretical probability | Extraction | Interpretation | | --- | --- | --- | --- | | Digit 1 | 30.10% (0.3010) | Significant digits of absolute magnitude | Model expectation, not a fraud signal | | Digit 2 | 17.61% (0.1761) | Significant digits of absolute magnitude | Model expectation, not a fraud signal | | Digit 5 | 7.92% (0.0792) | Significant digits of absolute magnitude | Model expectation, not a fraud signal | | Digit 9 | 4.58% (0.0458) | Significant digits of absolute magnitude | Model expectation, not a fraud signal | - **Formula (Benford's Law expected first-digit probability LOG10(1 + 1 / d))**: `=IF(COUNT(E2)<>1,"Invalid inputs",IF(OR(E2<1,E2>9,E2<>INT(E2)),"Invalid inputs",ROUND(LOG10(1 + 1 / E2), 4)))` - **Formula (Count transactions beginning with digit E2)**: `=IF(COUNT(E2)<>1,"Invalid inputs",IF(OR(E2<1,E2>9,E2<>INT(E2)),"Invalid inputs",COUNTIF(C2:C7, E2)))` - **Formula (Second significant digit of B4)**: `=IF(ISNUMBER(B4),IF(OR(ABS(B4)<1E-9,ABS(B4)>1E12),"Excluded",LET(magnitude,ABS(B4),significand,ROUND(magnitude/10^INT(LOG10(magnitude)),12),normalized,IF(significand>=10,1,significand),INT(MOD(ROUND(normalized*10,10),10)))),"Excluded")` ### Benjamini-Hochberg FDR vs Holm-Bonferroni Threshold Formula - **URL**: https://sheets.arte-soft.com/en/learn/benjamini-hochberg-fdr-and-holm-bonferroni-step-down-thresholds/ - **Summary**: Compare Benjamini-Hochberg step-up False Discovery Rate critical values (i/m)*q against Holm-Bonferroni step-down Family-Wise Error Rate cutoffs alpha/(m - i + 1) across sorted p-values. *Table — Understand step-DOWN stopping (Holm) vs step-UP largest-rank discovery (Benjamini-Hochberg)!:* | Sorted Rank i (m = 5, q = 0.05) | Observed p_(i) | Holm Cutoff vs BH Cutoff | | --- | --- | --- | | Rank 1 | 0.0040 | 0.0100 (Pass) vs 0.0100 (Pass) | | Rank 2 | 0.0130 | 0.0125 (STOP!) vs 0.0200 (Pass) | | Rank 3 | 0.0220 | 0.0167 (Blocked) vs 0.0300 (Pass) | | Rank 4 | 0.0380 | 0.0250 (Blocked) vs 0.0400 (k_max = 4!) | | Rank 5 | 0.0650 | 0.0500 (Blocked) vs 0.0500 (Fail) | - **Formula (Benjamini-Hochberg Step-Up Total Discoveries k_max Formula)**: `=LET(q_fdr, G2, IF(OR(q_fdr <= 0, q_fdr >= 1, B2 < 0, B6 > 1, B2 > B3, B3 > B4, B4 > B5, B5 > B6), "Require Sorted p in [0,1]", MAX(IF(B2 <= 0.2 * q_fdr, 1, 0), IF(B3 <= 0.4 * q_fdr, 2, 0), IF(B4 <= 0.6 * q_fdr, 3, 0), IF(B5 <= 0.8 * q_fdr, 4, 0), IF(B6 <= q_fdr, 5, 0))))` - **Formula (Holm-Bonferroni Step-Down Sequential Discoveries Formula)**: `=LET(alp_f, G2, IF(OR(alp_f <= 0, alp_f >= 1, B2 > B3, B3 > B4, B4 > B5, B5 > B6), "Require Sorted p in [0,1]", IF(B2 > alp_f / 5, 0, IF(B3 > alp_f / 4, 1, IF(B4 > alp_f / 3, 2, IF(B5 > alp_f / 2, 3, IF(B6 > alp_f, 4, 5)))))))` ### Berg Balance Scale (BBS): 14-Item Functional Score & <45 Fall Cutoff - **URL**: https://sheets.arte-soft.com/en/learn/berg-balance-scale-14-item-post-stroke-and-elderly-fall-score/ - **Summary**: Sum all 14 ordinal (0–4) Berg Balance Scale tasks into total BBS (0–56), evaluate the < 45 multiple-fall threshold, and assign mobility assistance tiers (0–20 Wheelchair, 21–40 Assisted Ambulation, 41–56 Independent). *Table — Why 45 / 56 is neuro-rehabilitation’s benchmark balance threshold!:* | Total 14-Item Berg Score (0–56) | Mobility & Fall-Risk Tier | Multiple-Fall Cutoff (<45) | | --- | --- | --- | | 0 – 20 Points (e.g., 16 pts) | High Risk — Wheelchair Mobility (0–20) | Elevated Multiple-Fall Risk (<45) | | 21 – 40 Points (e.g., 35 pts) | Medium Risk — Walking With Assistance (21–40) | Elevated Multiple-Fall Risk (<45) | | 41 – 56 Points (41–44 Borderline; 45–56 Safe) | Independent Ambulation Tier (41–56) | <45 Borderline vs >=45 Low Risk | - **Formula (Total 14-Item Berg Balance Scale Score (0–56))**: `=IF(OR(COUNTA(B2:B15) < 14, MIN(B2:B15) < 0, MAX(B2:B15) > 4), "Invalid Berg Item (0-4)", SUM(B2:B15))` - **Formula (Berg Ambulation Tier & <45 Fall-Cutoff Classification)**: `=IF(OR(COUNTA(B2:B15) < 14, MIN(B2:B15) < 0, MAX(B2:B15) > 4), "Invalid Berg Item (0-4)", IF(SUM(B2:B15) <= 20, "High Risk: Wheelchair Mobility (0-20)", IF(SUM(B2:B15) <= 40, "Medium Risk: Assisted Ambulation (21-40)", IF(SUM(B2:B15) < 45, "Independent Tier (<45 Elevated Fall Risk)", "Low Fall Risk: Independent (>=45)"))))` ### Berlin ARDS Severity (PaO2/FiO2) & Ventilator Oxygenation Index (OI) - **URL**: https://sheets.arte-soft.com/en/learn/berlin-definition-ards-pao2-fio2-severity-and-oxygenation-index/ - **Summary**: Classify Acute Respiratory Distress Syndrome into Mild (200 < P/F <= 300), Moderate (100 < P/F <= 200), or Severe (P/F <= 100 on PEEP >= 5 cmH2O) per the 2012 Berlin Definition alongside Mean-Airway-Pressure Oxygenation Index OI = (100 * FiO2 * MAP) / PaO2. *Table — Why pairing Berlin P/F with Oxygenation Index (OI) captures ventilator pressure cost!:* | Ventilated Arterial Blood Gas State (PEEP >= 5) | PaO2 / FiO2 Ratio | Berlin ARDS Tier | Oxygenation Index OI | | --- | --- | --- | --- | | PaO2 = 150, FiO2 = 0.60, MAP = 12 | 250.0 mmHg | Mild ARDS (200 < P/F <= 300) | 4.8 | | PaO2 = 85, FiO2 = 0.60, MAP = 16 | 141.7 mmHg | Moderate ARDS (100 < P/F <= 200) | 11.3 | | PaO2 = 55, FiO2 = 0.80, MAP = 22 | 68.8 mmHg | Severe ARDS (P/F <= 100) | 32.0 (ECMO Zone!) | - **Formula (Berlin ARDS PaO2/FiO2 Severity Classification (Requiring PEEP >= 5 cmH2O))**: `=IF(OR(B2 <= 0, B3 < 0.21, B3 > 1, B4 < 0), "Invalid Ventilator Inputs", IF(B4 < 5, "PEEP < 5 cmH2O (Berlin Requires PEEP >= 5)", IF(B2 / B3 <= 100, "Severe ARDS (P/F <= 100)", IF(B2 / B3 <= 200, "Moderate ARDS (100 < P/F <= 200)", IF(B2 / B3 <= 300, "Mild ARDS (200 < P/F <= 300)", "P/F > 300 (Above ARDS Hypoxemia Threshold)")))))` - **Formula (Mean-Airway-Pressure Oxygenation Index OI = (100 * FiO2 * MAP_aw) / PaO2)**: `=IF(OR(B2 <= 0, B3 < 0.21, B3 > 1, B5 <= 0), "Invalid Ventilator Inputs", ROUND((100 * B3 * B5) / B2, 1))` ### Bernoulli's Equation & Venturi Flowmeter differential-pressure formula - **URL**: https://sheets.arte-soft.com/en/learn/bernoulli-equation-and-venturi-meter-flow-rate/ - **Summary**: Calculate volumetric flow rate from Venturi throat pressure drop via Q = Cd * A2 * SQRT(2 * dP / (rho * (1 - (A2/A1)^2))) and throat velocity V2 = Q / A2. *Table — Convert differential pressure dP across a pipe constriction into flow rate Q!:* | Venturi Parameter | Cell | Water Line Example | Fluid Result | | --- | --- | --- | --- | | Pipe Area A1 & Throat Area A2 | B2 = 0.02 m^2, B3 = 0.005 m^2 | Area ratio A2/A1 = 0.25 | Beta^4 = (0.25)^2 = 0.0625 | | Pressure Drop dP & Density rho | B4 = 15,000 Pa, B5 = 1,000 kg/m^3 | 15 kPa differential across water | 2*dP / (rho*(1-0.0625)) = 32.00 | | Discharge Coefficient Cd | B6 = 0.98 | Smooth converging nozzle | Ideal SQRT(32) = 5.6569 m/s | | Flow Rate Q & Liters/sec | Venturi Equation | Q = 0.02772 m^3/s | 27.72 L/s (Throat V2 = 5.54 m/s) | - **Formula (Venturi volumetric flow rate Q (m^3/s))**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B3<=0,B3>=B2,B4<0,B5<=0,B6<=0,B6>1),"Invalid inputs",ROUND(B6 * B3 * SQRT((2 * B4) / (B5 * (1 - (B3 / B2) ^ 2))), 5))` - **Formula (Flow in Liters per second (L/s) & zero-flow boundary)**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B3<=0,B3>=B2,B4<0,B5<=0,B6<=0,B6>1),"Invalid inputs",ROUND(1000 * B6 * B3 * SQRT((2 * B4) / (B5 * (1 - (B3 / B2) ^ 2))), 2))` ### BET Adsorption Isotherm: Monolayer Capacity, Constant C & Surface Area - **URL**: https://sheets.arte-soft.com/en/learn/bet-adsorption-isotherm-monolayer-and-specific-surface-area/ - **Summary**: Calculate Brunauer-Emmett-Teller (BET) energetic constant C = 1 + (s / i), monolayer capacity n_m = 1 / (s + i), and N2 specific surface area S_BET (m^2/g) from linearized isotherm slope and intercept. *Table — Convert linearized 77 K nitrogen physisorption plots into m^2/g catalyst area!:* | Porous Solid Sample | BET Slope s (g/mmol) | Intercept i (g/mmol) | BET Constant C & S_BET (m^2/g) | | --- | --- | --- | --- | | Calcined Ceramic Support | 38.50 | 0.50 | C = 78.00 \| S_BET = 2.50 m^2/g | | Mesoporous Silica Catalyst | 4.80 | 0.20 | C = 25.00 \| S_BET = 19.51 m^2/g | | Microporous Zeolite (Invalid Fit) | 0.95 | -0.02 (<= 0!) | Invalid Negative BET Intercept | - **Formula (Specific Surface Area S_BET (m^2/g) from N2 77 K BET Slope & Intercept)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid BET Fit (Intercept <= 0)", ROUND((1 / (B2 + B3)) * 0.001 * 6.02214E23 * 0.162E-18, 2))` - **Formula (Dimensionless BET Energetic Constant C = 1 + (s / i))**: `=IF(B3 <= 0, "Invalid BET Fit (Intercept <= 0)", ROUND(1 + (B2 / B3), 2))` ### Bethe-Bloch Mass Stopping Power (-dE/rho*dx) & Proton Bragg Peak Formula - **URL**: https://sheets.arte-soft.com/en/learn/bethe-bloch-heavy-ion-stopping-power-and-bragg-peak-formula/ - **Summary**: Calculate collisional mass stopping power S_mass = 0.307075 * (Z/A) * (z^2 / beta^2) * (LN((2 * m_e * c^2 * beta^2) / ((1 - beta^2) * I_eV)) - beta^2) in MeV*cm^2/g for protons and alpha particles in tissue/water. *Table — Why cancer proton therapy dumps its dose in a sharp Bragg Peak right at the tumor!:* | Projectile in Water/Tissue (Z/A = 0.5551, I = 75 eV) | Charge z & Speed beta | Mass Stopping Power (MeV*cm^2/g) | Clinical / Shielding Regime | | --- | --- | --- | --- | | Fast Entrance Proton (~145 MeV) | z = 1, beta = 0.50 | 5.57 MeV*cm^2/g | Low entrance skin dose | | Slowing Proton Near End-of-Range | z = 1, beta = 0.20 | 26.85 MeV*cm^2/g (4.82x surge!) | Rising edge of Bragg Peak! | | Alpha Particle / He-4 Ion | z = 2, beta = 0.50 | 22.29 MeV*cm^2/g (Exact z^2 = 4x!) | High-LET dense ionization track | - **Formula (Bethe-Bloch Mass Stopping Power -dE/(rho*dx) in MeV*cm^2/g)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B4 <= 0, B5 <= 0, ((2 * 511000 * (B3 ^ 2)) / ((1 - (B3 ^ 2)) * B5)) <= 1), "Outside Bethe-Bloch Velocity Domain", ROUND(0.307075 * B4 * ((B2 ^ 2) / (B3 ^ 2)) * (LN((2 * 511000 * (B3 ^ 2)) / ((1 - (B3 ^ 2)) * B5)) - (B3 ^ 2)), 2))` - **Formula (Linear Stopping Power LET = -dE/dx = S_mass * Density_g_cm3 (MeV/cm))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B6 <= 0), "Outside Bethe-Bloch Velocity Domain", ROUND(B6 * 0.307075 * B4 * ((B2 ^ 2) / (B3 ^ 2)) * (LN((2 * 511000 * (B3 ^ 2)) / ((1 - (B3 ^ 2)) * B5)) - (B3 ^ 2)), 2))` ### Brewery Tunnel Pasteurization Units (PU) Lethality Formula - **URL**: https://sheets.arte-soft.com/en/learn/beverage-tunnel-pasteurization-units-pu-lethality-rate-and-over-pasteurization-formula/ - **Summary**: Calculate Del Vecchio Instantaneous Pasteurization Rate 1.393^(T-60) (PU/min), Total Delivered PU, Minimum Hold Time for Target PU (min), and Spec Realization (%). *Table — A 32-minute filler line jam inside a 64.5°C tunnel pasteurizer cooks canned lager to 142 PU—turning crisp hops into wet-cardboard trans-2-nonenal!:* | EBC / ASBC Tunnel Pasteurizer KPI (Target = 22.0 PU, Reference T0 = 60°C, z = 6.94°C) | Formula | Verified Output | | --- | --- | --- | | Lethal Rate L_PU (PU / min) | 1.393 ^ (Cold_Spot_Temp_C - 60) | 2.290 PU/min @ 62.5°C (4.444 @ 64.5°C!) | | Total Delivered Lethality (PU) | Hold_Time_min * (1.393 ^ (Temp_C - 60)) | 25.19 PU (142.21 PU BAKED BEER @ jam!) | | Min Hold Time for Spec (min) | Target_Spec_PU / (1.393 ^ (Temp_C - 60)) | 9.61 min (4.95 min @ 64.5°C) | | Target PU Realization (%) | (Delivered_PU / Target_Spec_PU) * 100 | 114.5% optimal (646.4% oxidized!) | - **Formula (Del Vecchio ASBC / EBC PU = t * 1.393^(T - 60) Beverage Lethality Formula)**: `=LET(tc_p, B2, th_m, B3, pu_s, B4, lr_p, 1.393 ^ (tc_p - 60), IF(OR(tc_p < 50, tc_p > 80, th_m <= 0, th_m > 180, pu_s < 5, pu_s > 200), "Invalid PU Input", ROUND(((th_m * lr_p) / pu_s) * 100, 1)))` - **Formula (Downstream Labeler Stoppage Without Spray Attemperation (`T = 64.5°C`, `t = 32` min) Staling Check)**: `=IF(ISTEXT(E5), E5, ROUND(B3 * (1.393 ^ (B2 - 60)), 2))` ### Bieniawski Rock Mass Rating (RMR89) & Tunnel Load Formula - **URL**: https://sheets.arte-soft.com/en/learn/bieniawski-rock-mass-rating-rmr89-tunnel-stand-up-time-and-serafim-pereira-modulus/ - **Summary**: Calculate Basic RMR89 (0–100), Strike/Dip Orientation-Adjusted RMR89, Serafim-Pereira Deformation Modulus Em (GPa), and Unal Tunnel Roof Support Load Pressure (kPa). *Table — Ignoring adverse joint dip orientation and fault gouge drops tunnel rock modulus 15x from 33.5 GPa to 2.24 GPa!:* | Bieniawski RMR89 Tunnel KPI (Span B=8.0 m, gamma=26.5 kN/m³: Class II vs Fault Class IV) | Formula | Verified Output | | --- | --- | --- | | Basic Unadjusted RMR89 (0–100) | UCS_RQD_Pts + Spacing_Cond_Pts + Water_Pts | 76 pts (36 pts sheared fault zone) | | Orientation-Adjusted RMR89 | Basic_RMR89 + Strike_Dip_Penalty_Pts | 71 pts Class II (24 pts Class IV Poor!) | | Serafim-Pereira Modulus Em (GPa) | 10 ^ ((Adjusted_RMR89 - 10) / 40) | 33.50 GPa (2.24 GPa 15x softer!) | | Unal Crown Support Load (kPa) | ((100 - Adjusted_RMR89) / 100) * gamma * Span_m | 61.5 kPa (161.1 kPa steel ribs + shotcrete!) | - **Formula (Bieniawski RMR89, Serafim-Pereira Deformation Modulus & Unal Support Pressure Formula)**: `=LET(p1_s, B2, p2_s, B3, p3_s, B4, pa_d, B5, bs_m, B6, gr_k, B7, rt_s, p1_s + p2_s + p3_s + pa_d, IF(OR(p1_s < 3, p1_s > 35, p2_s < 5, p2_s > 50, p3_s < 0, p3_s > 15, pa_d < -12, pa_d > 0, rt_s < 1, bs_m < 1.5, bs_m > 30, gr_k < 18, gr_k > 33), "Invalid RMR89 Input", ROUND(((100 - rt_s) / 100) * gr_k * bs_m, 1)))` - **Formula (Water-Bearing Clay-Gouge Fault Zone (`RMR = 24` Class IV Poor Rock) Squeeze Check)**: `=IF(ISTEXT(E5), E5, ROUND(10 ^ (((B2 + B3 + B4 + B5) - 10) / 40), 2))` ### Bifacial Solar PV Albedo Rear Irradiance & Gain Formula - **URL**: https://sheets.arte-soft.com/en/learn/bifacial-solar-pv-albedo-rear-side-irradiance-bifaciality-and-gain-formula/ - **Summary**: Calculate Unshaded Rear-Side Irradiance G_rear (W/m²), IEC 60904-1-2 Equivalent Effective Irradiance G_eff (W/m²), Bifacial Energy Gain BG (%), and Array DC Output (kW). *Table — White TPO roof membranes or winter snow lift ground albedo from 0.25 to 0.65—nearly tripling rear-side bifacial PV boost!:* | IEC 60904-1-2 Bifacial PV KPI (Gfront=950, GHI=850, Albedo=0.25, VF=0.70, Phi=0.75) | Formula | Verified Output | | --- | --- | --- | | Rear-Side Irradiance Grear (W/m²) | GHI * Ground_Albedo * View_Factor | 148.75 W/m² (386.75 @ 0.65 white TPO) | | Effective Irradiance Geff (W/m²) | G_front + Bifaciality_Phi * G_rear | 1,061.56 W/m² (1,240.06 @ 0.65 TPO) | | Bifacial Gain Boost BG (%) | ((Phi * G_rear) / G_front) * 100 | 11.74% (30.53% @ 0.65 white TPO!) | | STC-Normalized DC Power (kW) | Front_kWp * (G_eff / 1000) | 106.16 kW (124.01 kW @ 0.65 TPO) | - **Formula (IEC 60904-1-2 Equivalent Bifacial Irradiance & DC Array Power Formula)**: `=LET(gf_r, B2, gh_i, B3, al_b, B4, vf_r, B5, ph_b, B6, kw_p, B7, IF(OR(gf_r <= 0, gh_i < 0, al_b < 0.05, al_b > 0.95, vf_r <= 0, vf_r > 1, ph_b < 0.5, ph_b > 1, kw_p <= 0), "Invalid Bifacial Input", LET(gr_r, gh_i * al_b * vf_r, ge_f, gf_r + ph_b * gr_r, ROUND(kw_p * (ge_f / 1000), 2))))` - **Formula (White TPO Cool-Roof / Fresh-Snow High-Albedo Surge Check (Set Albedo = 0.65))**: `=IF(ISTEXT(E5), E5, ROUND(((B6 * (B3 * B4 * B5)) / B2) * 100, 2))` ### Biggest gainers and losers formula: extract Top N & Bottom N movers (SORTBY & TAKE) - **URL**: https://sheets.arte-soft.com/en/learn/biggest-gainers-and-losers-top-movers-table/ - **Summary**: Rank the largest and smallest percentage changes without reordering the source table. Distinguish top/bottom rankings from positive-only gainers and negative-only losers. *Table — Turn raw period-over-period tables into automated Top Movers & Laggards panels:* | Ticker / SKU (A) | Prior (B) | Current (C) | % Change (D) | Movers Rank | | --- | --- | --- | --- | --- | | SKU-Nova | $100 | $138 | +38.00% | #1 Biggest Gainer! | | SKU-Apex | $200 | $244 | +22.00% | #2 Gainer | | SKU-Core | $150 | $153 | +2.00% | Mid-pack | | SKU-Bolt | $120 | $96 | -20.00% | #2 Loser | | SKU-Vega | $80 | $52 | -35.00% | #1 Biggest Loser! | - **Formula (Return the complete Top N table)**: `=TAKE(SORTBY(A2:D6,D2:D6,-1),F2)` - **Formula (Extract #1 Biggest Loser (sort_order = 1 ascending))**: `=INDEX(TAKE(SORTBY(A2:D6, D2:D6, 1), F2), 1, 1)` ### Informational Cascade & Bayesian Herding Formula - **URL**: https://sheets.arte-soft.com/en/learn/bikhchandani-hirshleifer-welch-informational-cascade-herding-formula/ - **Summary**: Calculate Bikhchandani, Hirshleifer & Welch’s (1992) Bayesian herding posterior after two sequential actions, early cascade probability 1 - 2*q*(1 - q), and false-cascade risk (1 - q)^2. *Table — Prove why rational Bayesians ignore their own private signal once two predecessors agree!:* | BHW Cascade Metric (p_0 = 0.50, q = 0.75) | Formula | Verified Output | | --- | --- | --- | | Agent 3 Posterior After (Adopt, Adopt, Private L) | (p_0 * q) / (p_0 * q + (1 - p_0) * (1 - q)) | 0.7500 (> 0.50 -> Herds!) | | Probability Cascade Starts at Agent 3 | q^2 + (1 - q)^2 = 1 - 2*q*(1 - q) | 0.6250 (62.50%) | | Correct Cascade Probability (True State) | q^2 | 0.5625 (56.25%) | | False Cascade Probability (Wrong Herd!) | (1 - q)^2 | 0.0625 (6.25%) | - **Formula (General Bayes Posterior After Net Public-Plus-Private Signal Count k_net Formula)**: `=LET(q_ac, B2, p_0, B3, k_nt, B4, IF(OR(q_ac <= 0.5, q_ac >= 1, p_0 <= 0, p_0 >= 1), "Require 0.5 < q < 1 and 0 < p_0 < 1", LET(lr_k, (q_ac / (1 - q_ac))^k_nt, p_num, p_0 * lr_k, ROUND(p_num / (p_num + (1 - p_0)), 4))))` - **Formula (Agent-3 Informational Cascade & False-Herd Probability Formula)**: `=LET(q_ac, B2, IF(OR(q_ac <= 0.5, q_ac >= 1), "Require 0.5 < q < 1 and 0 < p_0 < 1", ROUND((1 - q_ac)^2, 4)))` ### Utilization, Realization, and Effective Hourly Rate formulas (agencies & law) - **URL**: https://sheets.arte-soft.com/en/learn/billable-utilization-and-realization-rate-agency/ - **Summary**: Decompose consulting and legal revenue leakage across Utilization %, Billing Realization %, and Collection % into Effective Hourly Rate. *Table — The 4-lever professional services identity: Rate x Utilization x Realization x Collection:* | Agency Practice KPI (160 Cap Hrs, $200 Std Rate) | Formula | Result | | --- | --- | --- | | Billable Utilization (128 Billable Hrs) | =128 / 160 | 80.0% (0.80) | | Billing Realization ($23,040 Invoiced vs $25,600 Std) | =23040 / (128 * 200) | 90.0% (0.90) | | Collection Rate ($21,888 Cash Collected) | =21888 / 23040 | 95.0% (0.95) | | Effective Yield / Capacity Hour | =21888 / 160 | $136.80 / hr | - **Formula (Utilization, Realization, and Effective Hourly Yield formulas)**: `=ROUND(D2 / (B2 * C2), 4)` - **Formula (Effective collected rate per total capacity hour)**: `=ROUND(E2 / A2, 2)` - **Formula (Additional worked calculation)**: `=ROUND(B2 / A2, 4)` ### Billing Lookup with Standard vs. Partner Client Rates (XLOOKUP + IF) - **URL**: https://sheets.arte-soft.com/en/learn/billing-lookup-with-standard-vs-discounted-client-rates-xlookup/ - **Summary**: Calculate billable timecard line totals by selecting between Standard and Retainer/Partner hourly rate columns in a role rate card via XLOOKUP and multiplying by hours logged. *Table — Eliminating duplicate rate cards when clients split into Standard vs. Retainer pricing!:* | Timecard Entry (Role \| Tier \| Hours) | Standard Rate (F) | Retainer Rate (G) | Billed Line Total | | --- | --- | --- | --- | | Senior_Dev \| Retainer \| 12.5 hrs | $180 / hr | $150 / hr (Selected) | $1,875.00 | | Senior_Dev \| Standard \| 12.5 hrs | $180 / hr (Selected) | $150 / hr | $2,250.00 | | Unknown Role "Intern" \| Retainer | Not in E2:E4 | #N/A Trapped | "Role Not in Rate Card" | - **Formula (Two-Tier Client Rate Line Total (Hours × Applicable Rate))**: `=IF(C2 < 0, "Invalid Hours", IFNA(ROUND(C2 * IF(B2 = "Retainer", XLOOKUP(A2, $E$2:$E$4, $G$2:$G$4), XLOOKUP(A2, $E$2:$E$4, $F$2:$F$4)), 2), "Role Not in Rate Card"))` - **Formula (Effective Hourly Rate Applied ($/hr))**: `=IFNA(IF(B2 = "Retainer", XLOOKUP(A2, $E$2:$E$4, $G$2:$G$4), XLOOKUP(A2, $E$2:$E$4, $F$2:$F$4)), "Role Not in Rate Card")` ### Binomial probability formula: exact k successes in n independent trials - **URL**: https://sheets.arte-soft.com/en/learn/binomial-probability-distribution-formula/ - **Summary**: Calculate exact binomial probability P(X = k), expected successes n*p, and binomial standard deviation SQRT(n*p*(1-p)) using FACT. *Table — Exact binomial probability from first principles:* | Successes k (n=5, p=0.20) | Combinations C(5,k) | Exact P(X = k) | | --- | --- | --- | | k = 0 | 1 | 0.3277 (32.77%) | | k = 1 | 5 | 0.4096 (40.96%) | | k = 2 | 10 | 0.2048 (20.48%) | | k = 3 | 10 | 0.0512 (5.12%) | - **Formula (Exact P(X = k), mean, and standard deviation formulas)**: `=IF(OR(A2<0,A2>100,A2<>INT(A2),B2<0,B2>A2,B2<>INT(B2),C2<0,C2>1), "Invalid inputs", IF(C2=0, IF(B2=0,1,0), IF(C2=1,IF(B2=A2,1,0),ROUND((FACT(A2) / (FACT(B2) * FACT(A2 - B2))) * (C2 ^ B2) * ((1 - C2) ^ (A2 - B2)), 4))))` - **Formula (Binomial mean and standard deviation)**: `=ROUND(SQRT(A2 * C2 * (1 - C2)), 4)` ### Biopharma Synthetic Royalty Hard Cap & Post-Cap Tail Formula - **URL**: https://sheets.arte-soft.com/en/learn/biopharma-synthetic-royalty-monetization-hard-cap-and-tail-formula/ - **Summary**: Calculate Non-Dilutive Biopharma Synthetic Royalty Hard-Cap Trigger Sales ($M), Cumulative Royalty + Post-Cap Tail Payout ($M), Biotech Issuer Cap Savings vs Uncapped Royalty, and Royalty Investor Realized Multiple (MOIC). *Table — Model non-dilutive synthetic royalty caps accurately instead of projecting uncapped revenue leakage!:* | Synthetic Royalty Metric ($120M Upfront, $3.5B Sales, 8% Rate, 2.0x Cap, 1% Tail) | Formula | Verified Output | | --- | --- | --- | | Hard-Cap Trigger Sales ($M) | (Upfront_M * Hard_Cap_Mult) / Base_Royalty | $3,000.00M | | Total Capped + Tail Payout ($M) | MIN(Sales*r, Cap) + MAX(0, Sales - Trigger)*Tail | $245.00M ($160.00M @ $2B Sales) | | Issuer Savings vs Uncapped ($M) | Sales * Base_Royalty - Total_Payout | $35.00M ($0.00M @ $2B Sales) | | Investor Realized Multiple (x) | Total_Payout_M / Upfront_Capital_M | 2.0417x (1.3333x @ $2B Sales) | - **Formula (Synthetic Royalty Hard-Cap & Tail Payout Formula)**: `=LET(up_m, B2, sl_m, B3, ry_r, B4, cp_x, B5, tl_r, B6, IF(OR(up_m <= 0, sl_m < 0, ry_r <= 0, ry_r >= 0.5, cp_x <= 1, tl_r < 0, tl_r >= ry_r), "Invalid Royalty Monetization", LET(cp_m, up_m * cp_x, tr_s, cp_m / ry_r, ROUND(MIN(sl_m * ry_r, cp_m) + MAX(0, sl_m - tr_s) * tl_r, 2))))` - **Formula (Sub-Cap Commercial Ramp Check (Set Cumulative Sales = $2,000.00M))**: `=IF(ISTEXT(E3), E3, ROUND(E3 / B2, 4))` ### Bioreactor Volumetric Oxygen Transfer (kLa), OTR & Minimum kLa_min - **URL**: https://sheets.arte-soft.com/en/learn/bioreactor-volumetric-oxygen-transfer-kla-and-critical-our/ - **Summary**: Calculate aerobic fermenter Oxygen Transfer Rate OTR = k_L*a * (C_star - C_L) (mmol O2/(L*h)), cellular Oxygen Uptake Rate OUR = q_O2 * X, and minimum required k_L*a to prevent dissolved oxygen starvation below C_crit. *Table — Prevent dissolved-oxygen crashes during peak aerobic cell density!:* | Aerobic Bioreactor Metric (C* = 0.24, CL = 0.06, Ccrit = 0.05 mmol/L) | Formula Expression | Calculated Value | | --- | --- | --- | | Gas-Liquid Oxygen Transfer Rate (kLa = 180 h^-1) | kLa * (C* - CL) | 32.40 mmol O2/(L*h) | | Minimum Required kLa_min (qO2 = 4.5, X = 6 g/L) | (qO2 * X) / (C* - Ccrit) | 142.1 h^-1 | | Net Oxygen Transfer Headroom (OTR - OUR) | kLa*(C* - CL) - qO2*X | +5.40 mmol O2/(L*h) (Safe Aerobic) | - **Formula (Volumetric Oxygen Transfer Rate OTR = k_L*a * (C* - C_L) (mmol/(L*h)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= B3), "Invalid DO Parameters", ROUND(B2 * (B3 - B4), 2))` - **Formula (Minimum Required k_L*a_min (h^-1) Above Critical Dissolved Oxygen C_crit)**: `=IF(OR(B3 <= B5, B5 < 0, B6 <= 0, B7 <= 0), "Invalid DO Parameters", ROUND((B6 * B7) / (B3 - B5), 1))` ### Biot Number (Bi), Fourier Number (Fo) & Lumped-Capacitance Cooling - **URL**: https://sheets.arte-soft.com/en/learn/biot-number-fourier-number-and-lumped-capacitance-cooling/ - **Summary**: Calculate Biot and Fourier numbers and an approximate lumped transient temperature using a consistent characteristic length. Check inputs and a Bi < 0.1 screening criterion before displaying temperature. - **Formula (Calculate Biot number)**: `=IF(COUNT(B2:B8)<>7,"Complete numeric inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0,B6<0,B7< -273.15,B8< -273.15),"Invalid physical input",B2*B3/B4))` - **Formula (Calculate Fourier number)**: `=IF(COUNT(B2:B8)<>7,"Complete numeric inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0,B6<0,B7< -273.15,B8< -273.15),"Invalid physical input",B5*B6/B3^2))` - **Formula (Calculate the approximate uniform temperature)**: `=IF(COUNT(B2:B8)<>7,"Complete numeric inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0,B6<0,B7< -273.15,B8< -273.15),"Invalid physical input",IF(B2*B3/B4>=0.1,"Bi >= 0.1: review spatial model",B8+(B7-B8)*EXP(-(B2*B3/B4)*(B5*B6/B3^2)))))` ### Biotech Clinical Phase POS & Risk-Adjusted rNPV Formula - **URL**: https://sheets.arte-soft.com/en/learn/biotech-drug-discovery-phase-transition-pos-and-rnpv-valuation-formula/ - **Summary**: Calculate Biopharma Cumulative Likelihood of Approval LOA = P_Ph1 * P_Ph2 * P_Ph3_NDA, Risk-Adjusted Commercial Launch PV, Pipeline Asset Risk-Adjusted Net Present Value (rNPV), and Breakeven Approval Probability. *Table — Value clinical-stage drug candidates with explicit phase-gate probabilities—never inflated 45% discount rates!:* | Biopharma rNPV Metric (Ph1=60%, Ph2=35%, Ph3/NDA=50%, Launch PV=$800M, R&D=$44M) | Formula | Verified Output | | --- | --- | --- | | Cumulative Approval Probability LOA | P_Phase1 * P_Phase2 * P_Phase3_NDA | 0.1050 (0.1750 Post-Ph1 Readout) | | Risk-Adjusted Commercial PV ($M) | Unrisked_Launch_PV * Cumulative_LOA | $84.00M ($140.00M Post-Ph1) | | Pipeline Asset rNPV ($M) | Risked_Commercial_PV - Risked_RD_PV | $40.00M ($96.00M Post-Ph1) | | Breakeven LOA Hurdle | Risked_RD_PV / Unrisked_Launch_PV | 0.0550 (5.50% Minimum LOA) | - **Formula (Biotech Pipeline Risk-Adjusted Net Present Value (rNPV) Formula)**: `=LET(p_s1, B2, p_s2, B3, p_s3, B4, cm_v, B5, rd_v, B6, IF(OR(p_s1 <= 0, p_s1 > 1, p_s2 <= 0, p_s2 > 1, p_s3 <= 0, p_s3 > 1, cm_v <= 0, rd_v < 0), "Invalid Clinical rNPV Input", LET(lo_a, p_s1 * p_s2 * p_s3, ROUND(cm_v * lo_a - rd_v, 2))))` - **Formula (Positive Phase-1 Readout Value Inflection Check (Set Phase-1 POS = 1.00))**: `=IF(ISTEXT(E4), E4, ROUND(B2 * B3 * B4, 4))` ### Birch-Murnaghan 3rd-Order Isothermal Equation of State (P–V GPa) - **URL**: https://sheets.arte-soft.com/en/learn/birch-murnaghan-third-order-isothermal-equation-of-state-gpa/ - **Summary**: Calculate high-pressure crystal compression P(V) (GPa) in diamond-anvil cells and planetary mantles using Francis Birch’s Eulerian finite-strain 3rd-order Equation of State. *Table — Why linear Hooke’s law fails inside Earth’s mantle—and Eulerian finite strain succeeds to 100+ GPa!:* | MgO Unit-Cell Volume V (V0 = 74.70 Å^3) | Compression Ratio V / V0 | Eulerian Strain f_E | Birch-Murnaghan Pressure P (GPa) | | --- | --- | --- | --- | | V = 74.70 Å^3 (Ambient 1 atm) | 1.0000 | 0.0000 | 0.00 GPa | | V = 62.00 Å^3 (Upper Lower-Mantle) | 0.8300 | 0.0661 | 43.49 GPa | | V = 55.00 Å^3 (Deep Mantle DAC) | 0.7363 | 0.1129 | 91.09 GPa | - **Formula (3rd-Order Birch-Murnaghan Isothermal Pressure P(V) (GPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Crystal EOS Inputs", ROUND(1.5 * B2 * (((B4 / B5) ^ (7 / 3)) - ((B4 / B5) ^ (5 / 3))) * (1 + 0.75 * (B3 - 4) * (((B4 / B5) ^ (2 / 3)) - 1)), 2))` - **Formula (Eulerian Finite Strain f_E = 0.5 * ((V_0 / V)^(2/3) - 1))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Crystal EOS Inputs", ROUND(0.5 * (((B4 / B5) ^ (2 / 3)) - 1), 4))` ### BISAP Score for Acute Pancreatitis Early Severity & Mortality Risk (0–5) - **URL**: https://sheets.arte-soft.com/en/learn/bisap-acute-pancreatitis-bedside-severity-score-formula/ - **Summary**: Calculate the 0–5 point Bedside Index for Severity in Acute Pancreatitis (BISAP) within the first 24 hours of admission from BUN, mental status (GCS), SIRS count, age, and pleural effusion. *Table — Identify severe acute pancreatitis in the first 24 hours—without waiting 48 hours for Ranson's!:* | BISAP Score Range | In-Hospital Mortality | Clinical Risk Stratum | Example Admission Profile | | --- | --- | --- | --- | | 0–2 points | < 2% (0 pts: ~0.2%) | Low Mortality Risk | BUN 18, GCS 15, SIRS 1, Age 54, No Effusion -> 0 pts | | 3–5 points | 5% to >20% | High Risk Severe Pancreatitis | BUN 34 (+1), GCS 14 (+1), SIRS 3 (+1), Age 67 (+1), Effusion 0 -> 4 pts | | Exact Threshold Boundary | BUN = 25, Age = 60 | Strict > 25 and > 60 | Scores 0 points for BUN and Age! | - **Formula (Total 24-Hour BISAP Score (0 to 5 Points))**: `=IF(OR(B2 < 0, B3 < 3, B3 > 15, B4 < 0, B4 > 4, B5 <= 0, B6 < 0, B6 > 1), "Invalid BISAP Inputs", --(B2 > 25) + --(B3 < 15) + --(B4 >= 2) + --(B5 > 60) + --(B6 = 1))` - **Formula (BISAP Severity Classification (< 3 vs >= 3 Cutoff))**: `=IF((--(B2 > 25) + --(B3 < 15) + --(B4 >= 2) + --(B5 > 60) + --(B6 = 1)) >= 3, "High Risk Severe Pancreatitis (BISAP >= 3)", "Low Mortality Risk (<2%, BISAP 0-2)")` ### Bishop Simplified Method of Slices Formula: Circular Slope Factor of Safety & m_alpha - **URL**: https://sheets.arte-soft.com/en/learn/bishop-simplified-method-of-slices-circular-slope-safety-factor/ - **Summary**: Compute Alan W. Bishop’s (1955) Simplified Method of Slices circular slope stability Factor of Safety FS = SUM(((c'*b + (W - u*b)*TAN(phi')) / m_alpha)) / SUM(W * SIN(alpha)) using vertical force equilibrium. *Table — Why Bishop’s Simplified Method eliminates Fellenius’s 10–15% underprediction in just 2–3 iterations!:* | Slice i (c' = 15 kPa, phi' = 28 deg, FS_trial = 1.40) | Width b_i (m) | Weight W_i (kN/m) | Angle alpha_i (deg) | Pore u_i (kPa) | Bishop m_alpha,i | | --- | --- | --- | --- | --- | --- | | Slice 1 (Crest) | 4.0 | 280 | 36 | 12 | 1.0323 | | Slice 2 (Mid-Slope) | 4.0 | 390 | 22 | 24 | 1.0693 | | Slice 3 (Toe) | 4.0 | 210 | 8 | 15 | 1.0430 | - **Formula (Bishop Base-Obliquity Factor m_alpha = COS(alpha) + SIN(alpha) * TAN(phi') / FS_trial)**: `=IF(G4 <= 0, "Requires Positive Trial FS", ROUND(COS(RADIANS(C2)) + SIN(RADIANS(C2)) * TAN(RADIANS(G3)) / G4, 4))` - **Formula (Updated Bishop Simplified Factor of Safety FS_updated Across Slices 1–3)**: `=IF(OR(G2 < 0, G3 < 0, G4 <= 0, MIN(E2:E4) <= 0.2), "Invalid Parameters or Low m_alpha Toe", ROUND(((G2 * A2 + MAX(0, B2 - D2 * A2) * TAN(RADIANS(G3))) / E2 + (G2 * A3 + MAX(0, B3 - D3 * A3) * TAN(RADIANS(G3))) / E3 + (G2 * A4 + MAX(0, B4 - D4 * A4) * TAN(RADIANS(G3))) / E4) / (B2 * SIN(RADIANS(C2)) + B3 * SIN(RADIANS(C3)) + B4 * SIN(RADIANS(C4))), 3))` ### Bitwise Permission Flag Extraction & Bit-Shift Formula (INT & MOD Powers of 2) - **URL**: https://sheets.arte-soft.com/en/learn/bitwise-permission-bitmask-and-shift-extraction-formula/ - **Summary**: Test individual permission bits inside integer RBAC bitmasks using INT(MOD(mask / 2^bit, 2)) and perform exact left/right bit shifts (mask * 2^s and INT(mask / 2^s)) in any spreadsheet. *Table — Decode packed RBAC permission integers and hardware status registers!:* | Bit Position k (Weight 2^k) | Permission Flag | Mask M = 13 (1101_2) | Extracted Bit | | --- | --- | --- | --- | | k = 0 (Weight 1) | Read | INT(MOD(13 / 1, 2)) | 1 (Granted) | | k = 1 (Weight 2) | Write | INT(MOD(13 / 2, 2)) | 0 (Denied) | | k = 2 (Weight 4) | Execute | INT(MOD(13 / 4, 2)) | 1 (Granted) | | k = 3 (Weight 8) | Admin | INT(MOD(13 / 8, 2)) | 1 (Granted) | - **Formula (Extract Single Permission Bit k (0 or 1) from Integer Mask M)**: `=IF(OR(B2 < 0, B3 < 0), "Invalid Mask or Bit", INT(MOD(B2 / (2 ^ B3), 2)))` - **Formula (Left Bit-Shift (BITLSHIFT) & Right Bit-Shift (BITRSHIFT) by s Bits)**: `=IF(OR(B2 < 0, B4 < 0), "Invalid Shift", B2 * (2 ^ B4))` ### Biweekly and semimonthly pay schedule formulas (with weekend adjustment) - **URL**: https://sheets.arte-soft.com/en/learn/biweekly-and-semimonthly-pay-dates/ - **Summary**: Generate 26-period biweekly pay dates (+14 days) and 24-period semimonthly 15th/month-end pay dates that step back onto Friday. *Table — Biweekly (26 paydays) vs Semimonthly (24 paydays):* | Schedule Type | Anchor / Period | Raw Calendar Date | Weekend-Adjusted Payday | | --- | --- | --- | --- | | Biweekly Period 3 | 2026-01-09 + 2*14 | 2026-02-06 (Fri) | 2026-02-06 | | Semimonthly Feb 15 | 2026-02-15 | 2026-02-15 (Sun) | 2026-02-13 (Fri) | | Semimonthly May End | 2026-05-31 | 2026-05-31 (Sun) | 2026-05-29 (Fri) | - **Formula (Biweekly and weekend-safe semimonthly formulas)**: `=TEXT(A2 + (B2 - 1) * 14, "yyyy-mm-dd")` - **Formula (Semimonthly 15th-of-month payday (Friday rollback))**: `=TEXT(WORKDAY(DATE(C2, 2, 15) + 1, -1), "yyyy-mm-dd")` ### Bjerksund-Stensland Closed-Form American Option Trigger Boundary - **URL**: https://sheets.arte-soft.com/en/learn/bjerksund-stensland-flat-boundary-american-call-trigger-and-value/ - **Summary**: Compute the Bjerksund-Stensland (1993) closed-form flat early-exercise boundary I_flat, characteristic root beta, and smooth-pasting coefficient alpha without iterative root-finding. *Table — Eliminate Newton-Raphson root-finding for critical American exercise boundaries:* | Bjerksund-Stensland Term | Closed-Form Expression | Sample Output (K=100, r=0.08, b=0, sig=0.20, T=0.25) | | --- | --- | --- | | Characteristic Exponent beta | (0.5 - b/sig^2) + SQRT((b/sig^2 - 0.5)^2 + 2*r/sig^2) | 2.5616 | | Perpetual Trigger B_inf vs B_0 | (beta / (beta - 1)) * K vs MAX(K, (r/(r-b))*K) | 164.0388 vs 100.0000 | | Horizon Factor h_T | -(b*T + 2*sig*SQRT(T)) * (B_0 / (B_inf - B_0)) | -0.3123 | | Flat Exercise Trigger I_flat | B_0 + (B_inf - B_0) * (1 - EXP(h_T)) | 117.1781 | - **Formula (Characteristic Exponent beta Formula)**: `=IF(OR(B4 <= 0, B5 >= B4, B6 <= 0), "No Early Call Exercise (b >= r)", ROUND((0.5 - B5 / (B6^2)) + SQRT(((B5 / (B6^2)) - 0.5)^2 + 2 * B4 / (B6^2)), 4))` - **Formula (Closed-Form Flat Exercise Trigger I_flat Formula)**: `=LET(k_str, B3, r_rf, B4, b_car, B5, sig_v, B6, t_yr, B7, IF(OR(k_str <= 0, r_rf <= 0, b_car >= r_rf, sig_v <= 0, t_yr <= 0), "No Early Call Exercise (b >= r)", LET(bet_v, (0.5 - b_car / (sig_v^2)) + SQRT(((b_car / (sig_v^2)) - 0.5)^2 + 2 * r_rf / (sig_v^2)), b_inf, (bet_v / (bet_v - 1)) * k_str, b_zer, MAX(k_str, (r_rf / (r_rf - b_car)) * k_str), h_fac, -(b_car * t_yr + 2 * sig_v * SQRT(t_yr)) * (b_zer / (b_inf - b_zer)), ROUND(b_zer + (b_inf - b_zer) * (1 - EXP(h_fac)), 4))))` ### Bjerrum Field Vane Shear Correction Factor (mu) Formula: Plasticity Index Clay Strength - **URL**: https://sheets.arte-soft.com/en/learn/bjerrum-field-vane-shear-plasticity-index-correction-factor/ - **Summary**: Correct raw in-situ Field Vane Shear strength s_u,FV for strain-rate and anisotropy effects in high-plasticity soft clays using Laurits Bjerrum’s (1972/1973) mobilization factor mu = 1.7 - 0.54 * LOG10(PI) and s_u,design = mu * s_u,FV. *Table — Why unfactored Field Vane Shear tests overestimate embankment stability in high-plasticity clays!:* | Clay Deposit & Atterberg Limits (LL - PL = PI) | Bjerrum Vane Factor mu (Capped <= 1.0) | Mobilized s_u,design for s_u,FV = 42 kPa | | --- | --- | --- | | Lean Glacial Clay (LL = 32%, PL = 17% -> PI = 15%) | MIN(1.0, 1.065) = 1.000 (No Reduction) | 42.00 kPa | | Soft Silty Clay (LL = 58%, PL = 23% -> PI = 35%) | 1.7 - 0.54 * LOG10(35) = 0.866 | 36.38 kPa | | High-Plasticity Clay (LL = 85%, PL = 25% -> PI = 60%) | 1.7 - 0.54 * LOG10(60) = 0.740 | 31.07 kPa (-26% Rate Effect!) | - **Formula (Bjerrum Field Vane Correction Factor mu = MIN(1, 1.7 - 0.54 * LOG10(LL - PL)))**: `=IF(OR(B2 <= B3, B3 <= 0, B4 <= 0), "Invalid Atterberg Limits or Vane Strength", ROUND(MIN(1, MAX(0.4, 1.7 - 0.54 * LOG10(B2 - B3))), 4))` - **Formula (Mobilized Design Undrained Shear Strength s_u,design (kPa) = mu * s_u,FV)**: `=IF(OR(B2 <= B3, B3 <= 0, B4 <= 0), "Invalid Atterberg Limits or Vane Strength", ROUND(B4 * MIN(1, MAX(0.4, 1.7 - 0.54 * LOG10(B2 - B3))), 2))` ### One-asset Black-Litterman example: blend a prior and one absolute view - **URL**: https://sheets.arte-soft.com/en/learn/black-litterman-posterior-expected-return-blend-formula/ - **Summary**: Explore a scalar normal-prior update with one absolute return view; distinguish uncertainty in the estimated mean from asset return variance. *Table — State the scalar model assumptions:* | Black-Litterman Input | Cell / Formula | Equal Confidence (50/50) | High Conviction (omega = 0.0005) | | --- | --- | --- | --- | | Equilibrium Return Pi | B2 = 6.0% (0.06) | tau=0.05 (B3), Vol=20% (B4) | Prior Var = 0.05*0.04 = 0.0020 | | PM View Return Q & omega | B5 = 10.0% (0.10) | omega B6 = 0.0020 | Prior Prec=500 \| View Prec=2000 | | Posterior Expected E[R]_BL | Precision-weighted blend | 8.00% (0.0800 midpoint) | 9.20% (0.0920 -> 80% view!) | | Posterior Variance Var_BL | 1 / (Prec_prior + Prec_view) | 1 / 1000 = 0.0010 | 1 / 2500 = 0.0004 | - **Formula (Black-Litterman Posterior Expected Return E[R]_BL)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B3<=0,B4<=0,B6<=0),"Invalid inputs",ROUND(((B2 / (B3 * (B4 ^ 2))) + (B5 / B6)) / ((1 / (B3 * (B4 ^ 2))) + (1 / B6)), 4)))` - **Formula (Posterior Estimation Variance Var_BL)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B3<=0,B4<=0,B6<=0),"Invalid inputs",ROUND(1 / ((1 / (B3 * (B4 ^ 2))) + (1 / B6)), 4)))` ### Black-Scholes d1, d2 Log-Moneyness & Put-Call Parity Arbitrage Check Formula - **URL**: https://sheets.arte-soft.com/en/learn/black-scholes-d1-d2-moneyness-and-put-call-parity-arbitrage-formula/ - **Summary**: Compute Black-Scholes-Merton standardized log-moneyness factors d1 and d2 using LN, SQRT, and EXP alongside Hans Stoll’s model-free European Put-Call Parity pricing residual. *Table — Audit European option chains with exact d1, d2, and model-free Put-Call Parity!:* | Derivatives Metric (S=100, K=100, r=5%, sigma=20%, T=1 yr) | Exact Closed-Form Expression | Evaluated Value | | --- | --- | --- | | Black-Scholes d1 & d2 (ATM) | (0 + (0.05 + 0.02)*1) / 0.20 & d1 - 0.20 | d1 = 0.3500 \| d2 = 0.1500 | | In-the-Money Shift (S = 110) | (LN(1.10) + 0.07) / 0.20 | d1 = 0.8266 | | Put-Call Parity Residual (C=10.45, P=5.57) | (10.45 - 5.57) - (100 - 100*e^-0.05) | +0.0029 (~$0.003 fair parity) | - **Formula (Black-Scholes-Merton Standardized Log-Moneyness Factor d1)**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0, B6 <= 0), "S, K, Volatility, and Time T Must Be Positive", ROUND((LN(B2 / B3) + (B4 + 0.5 * (B5 ^ 2)) * B6) / (B5 * SQRT(B6)), 4))` - **Formula (European Put-Call Parity Pricing Residual (C - P) - (S - K * e^(-r*T)))**: `=ROUND((B7 - B8) - (B2 - B3 * EXP(-B4 * B6)), 4)` ### Blake Jaw Crusher Nip Angle & Critical RPM Formula - **URL**: https://sheets.arte-soft.com/en/learn/blake-jaw-crusher-nip-angle-critical-toggle-rpm-and-taggart-throughput-formula/ - **Summary**: Calculate Crushing-Chamber Nip Angle alpha (deg), Gape-to-CSS Reduction Ratio, Rose & English Critical Toggle Flywheel Speed Ncrit (RPM), and Volumetric Wedge Throughput (t/h). *Table — Exceed a 26° jaw-crusher nip angle and wet quarry boulders shoot UPWARD out of the feed gape like watermelon seeds!:* | Blake Jaw Crusher KPI (900x1200 mm, Stroke s=32 mm, Bulk Density=1.65 t/m³) | Formula | Verified Output | | --- | --- | --- | | Chamber Nip Angle alpha (deg) | ATAN((Gape_mm - CSS_mm) / Height_mm) * 180 / PI() | 23.12° safe (31.43° ROCK EJECTION!) | | Gape-to-CSS Reduction Ratio | Top_Gape_G_mm / Closed_Side_CSS_mm | 8.18 : 1 (12.00 : 1 over-choked!) | | Rose-English Critical Speed (RPM) | 66.433 * SQRT(tan_alpha / (Stroke_mm / 1000)) | 242.7 RPM (~199 RPM @ 82% Ncrit) | | Wedge Prism Throughput (t/h) | W * (CSS+s/2) * (s/tanA) * 0.45 * 0.82*Nc * 60 * rho | 100.4 t/h (60.6 t/h @ tight 75 mm CSS) | - **Formula (Blake Nip-Angle Grip Limit & Rose-English Free-Fall Critical RPM Formula)**: `=LET(gp_m, B2, cs_m, B3, st_m, B4, hc_m, B5, wj_m, B6, rb_t, B7, tn_a, (gp_m - cs_m) / hc_m, nc_r, 66.433 * SQRT(tn_a / (st_m / 1000)), IF(OR(gp_m < 150, gp_m > 2500, cs_m < 15, cs_m > 0.5 * gp_m, st_m < 5, st_m > 80, hc_m < gp_m, wj_m < 200, wj_m > 3500, rb_t < 0.8, rb_t > 3.5), "Invalid Crusher Input", ROUND((wj_m / 1000) * ((cs_m + st_m / 2) / 1000) * ((st_m / 1000) / tn_a) * 0.45 * (0.82 * nc_r) * 60 * rb_t, 1)))` - **Formula (Shallow Chamber + Tight 75 mm CSS (`H = 1,350` mm, `CSS = 75` mm) Slippage & Choke Check)**: `=IF(ISTEXT(E5), E5, ROUND((ATAN((B2 - B3) / B5) * 180) / PI(), 2))` ### Debt-Stabilizing Primary Balance & (r - g) Formula - **URL**: https://sheets.arte-soft.com/en/learn/blanchard-debt-stabilizing-primary-balance-and-r-minus-g-snowball/ - **Summary**: Project public debt-to-GDP dynamics d_t = ((1 + r)/(1 + g))*d_{t-1} - pb_t and calculate Olivier Blanchard’s (2019) debt-stabilizing primary balance pb* = ((r - g)/(1 + g))*d_{t-1}. *Table — Understand why (r - g) < 0 lets debt/GDP shrink even with small primary deficits — and flips violently when r > g!:* | IMF Debt Sustainability Metric (d_0=90%, r=4.5%, g=2.5%, pb=-1.0%) | Formula | Verified Output | | --- | --- | --- | | Interest-Growth Differential (r - g) | r - g = 4.50% - 2.50% | +0.0200 (+200 bps Snowball) | | Debt-Stabilizing Primary Balance (pb*) | ((r - g) / (1 + g)) * d_0 | +0.0176 (+1.76% Surplus Needed) | | Projected Next-Year Debt/GDP (d_1) | ((1 + r) / (1 + g)) * d_0 - pb_t | 0.9276 (92.76% of GDP) | | Annual Debt/GDP Change (d_1 - d_0) | pb* - pb_t | +0.0276 (+2.76% of GDP) | - **Formula (Exact IMF Debt-Stabilizing Primary Balance pb* Formula)**: `=LET(d_pr, B2, r_ef, B3, g_ym, B4, IF(OR(d_pr < 0, r_ef <= -1, g_ym <= -1), "Invalid Debt-Dynamics Input", ROUND(((r_ef - g_ym) / (1 + g_ym)) * d_pr, 4)))` - **Formula (Next-Period Public Debt-to-GDP Ratio d_t Formula)**: `=LET(d_pr, B2, r_ef, B3, g_ym, B4, pb_t, B5, IF(OR(d_pr < 0, r_ef <= -1, g_ym <= -1), "Invalid Debt-Dynamics Input", ROUND(((1 + r_ef) / (1 + g_ym)) * d_pr - pb_t, 4)))` ### Bland-Altman Bias & 95% Limits of Agreement (LoA) Method-Comparison Formula - **URL**: https://sheets.arte-soft.com/en/learn/bland-altman-method-comparison-bias-and-95-limits-of-agreement/ - **Summary**: Calculate mean inter-device bias d̄ = AVERAGE(D2:D7), difference standard deviation s_d = STDEV.S(D2:D7), and 95% Limits of Agreement d̄ ± 1.96 * s_d to validate clinical measurement instruments. *Table — Why high Pearson correlation r = 0.99 STILL hides dangerous clinical calibration errors!:* | Bland-Altman Metric (6 Paired BP Subjects) | Spreadsheet Formula | Computed Value (mmHg) | Clinical Validation Meaning | | --- | --- | --- | --- | | Systematic Mean Bias d̄ | =AVERAGE(D2:D7) | +2.00 mmHg | Wearable Over-Reads by 2 mmHg | | Upper 95% Limit of Agreement | =ROUND(AVERAGE(D2:D7)+1.96*STDEV.S(D2:D7),2) | +5.51 mmHg | 97.5th Percentile Positive Discrepancy | | Lower 95% Limit of Agreement | =ROUND(AVERAGE(D2:D7)-1.96*STDEV.S(D2:D7),2) | -1.51 mmHg | 2.5th Percentile Negative Discrepancy | - **Formula (Upper 95% Limit of Agreement (d̄ + 1.96 * s_d))**: `=IF(COUNT(D2:D7) < 3, "Insufficient Paired Samples", ROUND(AVERAGE(D2:D7) + 1.96 * STDEV.S(D2:D7), 2))` - **Formula (Lower 95% Limit of Agreement (d̄ - 1.96 * s_d) & Mean Bias)**: `=IF(COUNT(D2:D7) < 3, "Insufficient Paired Samples", ROUND(AVERAGE(D2:D7) - 1.96 * STDEV.S(D2:D7), 2))` ### Blaney-Criddle Crop Evapotranspiration (ETo, ETc) & Net Irrigation - **URL**: https://sheets.arte-soft.com/en/learn/blaney-criddle-crop-evapotranspiration-and-irrigation-need/ - **Summary**: Calculate FAO Blaney-Criddle reference evapotranspiration ETo = p * (0.46 * T_mean + 8) (mm/day), crop water demand ETc = K_c * ETo, and monthly Net Irrigation Requirement MAX(0, 30 * ETc - P_eff). *Table — Estimate monthly crop water demand when only temperature and latitude are measured!:* | Season & Crop Stage (Daytime Share p = 0.28, K_c = 1.15) | Mean Temp T_mean (C) | Reference ETo / Crop ETc | 30-Day Net Irrigation (P_eff = 35 mm) | | --- | --- | --- | --- | | Peak Summer Mid-Season Corn | 25.0 C | ETo = 5.46 \| ETc = 6.28 mm/d | 188.37 - 35 = 153.4 mm | | Mild Spring Growth | 15.0 C | ETo = 4.17 \| ETc = 4.80 mm/d | 143.93 - 35 = 108.9 mm | | Monsoon Month (P_eff = 220 mm) | 25.0 C | ETo = 5.46 \| ETc = 6.28 mm/d | MAX(0, -31.6) = 0.0 mm (Rainfed!) | - **Formula (FAO Blaney-Criddle Reference Evapotranspiration ETo (mm/day))**: `=IF(OR(B2 <= 0, B2 >= 1, (0.46 * B3 + 8) <= 0), "Invalid Daytime Share or Subfreezing Temp", ROUND(B2 * (0.46 * B3 + 8), 2))` - **Formula (30-Day Monthly Net Irrigation Requirement NIR (mm))**: `=ROUND(MAX(0, (30 * B4 * B2 * (0.46 * B3 + 8)) - B5), 1)` ### Bliss Independence & Loewe Combination Index Formula - **URL**: https://sheets.arte-soft.com/en/learn/bliss-independence-vs-loewe-combination-index-drug-synergy-formula/ - **Summary**: Calculate Chester Bliss’s Probabilistic Additive Inhibition E_Bliss = E_A + E_B - E_A * E_B, Excess Over Bliss (EOB), and Loewe / Chou-Talalay Isobole Combination Index CI = d_A / D_{x,A} + d_B / D_{x,B}. *Table — Stop summing fractional inhibitions E_A + E_B and test drug synergy with Bliss & Loewe!:* | Drug Combination Metric (EA=0.40, EB=0.50, EAB=0.85; dA=20/80, dB=15/60) | Formula | Verified Output | | --- | --- | --- | | Bliss Expected Additive Effect | E_A + E_B - E_A * E_B | 0.7000 (70.00% Kill) | | Excess Over Bliss (EOB) | E_AB - (E_A + E_B - E_A * E_B) | +0.1500 (+15.00% Lift) | | Loewe / Chou-Talalay CI | d_A / D_{x,A} + d_B / D_{x,B} | 0.5000 (2x Dose-Sparing) | | Pharmacodynamic Interaction | CI < 1 Synergy; CI > 1 Antagonism | Synergistic (CI < 1) | - **Formula (Loewe / Chou-Talalay Combination Index (CI) Formula)**: `=LET(e_a, B2, e_b, B3, e_ab, B4, d_a, B5, dx_a, B6, d_b, B7, dx_b, B8, IF(OR(e_a < 0, e_a > 1, e_b < 0, e_b > 1, e_ab < 0, e_ab > 1, d_a <= 0, dx_a <= 0, d_b <= 0, dx_b <= 0), "Invalid Synergy Assay", ROUND(d_a / dx_a + d_b / dx_b, 4)))` - **Formula (Excess Over Bliss & Isobole Classification Formula)**: `=IF(ISTEXT(E4), E4, IF(ABS(E4 - 1) < 0.0001, "Additive (CI = 1)", IF(E4 < 1, "Synergistic (CI < 1)", "Antagonistic (CI > 1)")))` ### Bloch-Grüneisen Metal Resistivity: T^5 Cryogenic vs Linear High-T Law - **URL**: https://sheets.arte-soft.com/en/learn/bloch-gruneisen-phonon-scattering-metal-resistivity-scaling/ - **Summary**: Model pure metal electrical resistivity ρ(T) across the Thirring high-temperature expansion ρ_0 + ρ_Θ*(T/Θ_R)*(1 - Θ_R^2/(18*T^2)) and Bloch’s cryogenic T^5 acoustic-phonon law. *Table — Why pure copper resistivity scales linearly with T at 300 K—but collapses as T^5 at 20 K!:* | Copper Temperature Regime (ΘR = 333 K, ρΘ = 1.88 μΩ·cm) | Scaling Law Active | Predicted Resistivity ρ(T) | Scattering Physics | | --- | --- | --- | --- | | Cryogenic Magnet Coil (T = 20 K) | ρ0 + 497.6 · ρΘ · (T/ΘR)^5 | 0.002731 μΩ·cm | Small-Angle T^5 Phonon Freeze-Out | | Ambient Interconnect (T = 300 K) | Thirring Linear-T Expansion | 1.5798 μΩ·cm | Full Brillouin-Zone Phonon Bath | | Power Busbar Hot Spot (T = 600 K) | Thirring Linear-T Expansion | 3.3314 μΩ·cm | Asymptotic Linear Slope ρΘ / ΘR | - **Formula (High-Temperature Bloch-Grüneisen Resistivity (T >= 0.5 * Θ_R, μΩ·cm))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 < 0.5 * B3), "Use Low-T T^5 Formula or Check Inputs", ROUND(B2 + B4 * (B5 / B3) * (1 - (B3 ^ 2) / (18 * (B5 ^ 2))), 4))` - **Formula (Cryogenic Bloch T^5 Resistivity Limit (T <= 0.15 * Θ_R, μΩ·cm))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid BG Inputs", ROUND(B2 + 497.6 * B4 * ((B5 / B3) ^ 5), 6))` ### Bloom Filter False-Positive & Optimal Hash Formula - **URL**: https://sheets.arte-soft.com/en/learn/bloom-filter-false-positive-probability-and-optimal-hash-count/ - **Summary**: Size LSM-tree and cache Bloom filters via optimal hash count k* = ROUND((m/n)*LN(2), 0), false-positive rate (1 - EXP(-k*n/m))^k, and required bits per key -LN(p)/(LN(2)^2). *Table — Tune LSM-tree and CDN Bloom filters without wasting RAM or over-hashing!:* | Bloom Filter Sizing Metric (m=10,000, n=1,000, p_tgt=1%) | Formula | Verified Output | | --- | --- | --- | | Bits Allocated per Key (m / n) | m / n | 10.0000 bits / key | | Optimal Integer Hash Count (k*) | MAX(1, ROUND((m / n) * LN(2), 0)) | 7 hash functions | | False-Positive Probability at k* | (1 - EXP(-k* * n / m))^k* | 0.008194 (0.8194% FPR) | | Minimum Bits/Key for 1.00% FPR | -LN(0.01) / (LN(2)^2) | 9.5851 bits / key | - **Formula (Optimal Hash Count k* & Evaluated False-Positive Probability Formula)**: `=LET(m_bt, B2, n_ky, B3, IF(OR(m_bt < 1, n_ky < 1), "Invalid Bloom Input", LET(k_op, MAX(1, ROUND((m_bt / n_ky) * LN(2), 0)), ROUND((1 - EXP((-k_op * n_ky) / m_bt))^k_op, 6))))` - **Formula (Theoretical Minimum Bits per Key (-LN(p_target) / LN(2)^2) Formula)**: `=IF(OR(B4 <= 0, B4 >= 1), "Require 0 < p_target < 1", ROUND(-LN(B4) / (LN(2)^2), 4))` ### Blown-Film Extrusion BUR, Layflat & Draw-Down Formula - **URL**: https://sheets.arte-soft.com/en/learn/blown-film-extrusion-blow-up-ratio-bur-draw-down-ratio-ddr-and-film-gauge-formula/ - **Summary**: Calculate Transverse Blow-Up Ratio BUR = D_bubble/D_die, Collapsed Nip Layflat Width (mm), Machine-Direction Draw-Down Ratio DDR, and Forming Orientation Ratio DDR/BUR. *Table — Stretch a blown-film bubble too hard in the haul-off nip without enough Blow-Up Ratio and the bag splits lengthwise like string cheese!:* | TAPPI Blown-Film Tower KPI (Die D=200 mm, Gap=1.80 mm: Balanced 560mm/35um vs Narrow 320mm/20um) | Formula | Verified Output | | --- | --- | --- | | Transverse Blow-Up Ratio BUR | Bubble_Diam_mm / Die_Diam_mm | 2.80 (1.60 under-blown @ 320 mm!) | | Collapsed Layflat Width LFW (mm) | (PI() / 2) * Bubble_Diam_mm | 879.6 mm (502.7 mm @ 320 mm) | | Machine Draw-Down Ratio DDR | (Die_Gap_mm * 1000) / (Film_um * BUR) | 18.37 (56.25 excessive axial draw!) | | Orientation Balance (DDR / BUR) | Draw_Down_Ratio_DDR / Blow_Up_Ratio_BUR | 6.56 (35.16 splitty MD tear failure!) | - **Formula (Tubular Blown-Film Biaxial Stretch Ratios (BUR, Layflat & DDR) Formula)**: `=LET(dd_m, B2, tg_m, B3, db_m, B4, tf_u, B5, bu_r, db_m / dd_m, dd_r, (tg_m * 1000) / (tf_u * bu_r), IF(OR(dd_m <= 20, tg_m < 0.3, tg_m > 5, db_m < dd_m, tf_u < 5, tf_u > 500), "Invalid Blown-Film Input", ROUND(dd_r / bu_r, 2)))` - **Formula (Under-Inflated 1.6 BUR Thin-Gauge (320 mm Bubble, 20 um Film) MD Splitting Check)**: `=IF(ISTEXT(E5), E5, LET(bu_r, B4 / B2, ROUND((B3 * 1000) / (B5 * bu_r), 2)))` ### BMI calculation formula: metric (kg/cm), imperial (lb/in), and categories - **URL**: https://sheets.arte-soft.com/en/learn/bmi-calculation-formula-metric-imperial/ - **Summary**: Calculate Body Mass Index from kilograms and centimeters or pounds and inches, and assign adult screening bands with IFS. *Table — Convert centimeters to meters before squaring:* | WeightKg (A) | HeightCm (B) | Metric BMI | WeightLb (C) / HeightIn (D) | Imperial BMI | | --- | --- | --- | --- | --- | | 72 | 180 | 22.2 | 154 lb / 70 in | 22.1 | - **Formula (Metric and imperial BMI formulas)**: `=ROUND(A2 / ((B2 / 100) ^ 2), 1)` - **Formula (Classify adult BMI ranges with LET and IFS)**: `=LET(bmi, A2 / ((B2 / 100) ^ 2), IFS(bmi < 18.5, "Underweight", bmi < 25, "Healthy weight", bmi < 30, "Overweight", TRUE, "Obesity"))` ### BODE Index for COPD 4-Year Survival & Transplant Referral (0–10) - **URL**: https://sheets.arte-soft.com/en/learn/bode-index-copd-4-year-mortality-prognosis-formula/ - **Summary**: Calculate Bartolome Celli’s 0–10 multidimensional COPD BODE Index from Body-mass index (<= 21), Obstruction (FEV1 % predicted), Dyspnea (mMRC 0–4), and Exercise capacity (6-minute walk distance). *Table — Predict COPD 4-year survival far more accurately than spirometric FEV1 alone!:* | BODE Index Quartile (0–10 Points) | NEJM Validated 4-Year Survival | Prognostic Severity | Pulmonary Management | | --- | --- | --- | --- | | Quartile 1 (Score 0–2) | 80% 4-Year Survival | Mild Systemic Impact | Inhaler Optimization & Smoking Cessation | | Quartile 2 (3–4) / Quartile 3 (5–6) | 67% / 57% 4-Year Survival | Moderate-Severe COPD | Pulmonary Rehabilitation & Lung-Volume Reduction Check | | Quartile 4 (Score 7–10, e.g., 7) | 18% 4-Year Survival | End-Stage Systemic COPD | ISHLT Lung Transplant & Palliative Evaluation | - **Formula (Total Multidimensional COPD BODE Score (0–10 Points))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 150, B4 < 0, B4 > 4, B5 < 0), "Invalid BODE Input", IF(B2 <= 21, 1, 0) + IF(B3 >= 65, 0, IF(B3 >= 50, 1, IF(B3 >= 36, 2, 3))) + IF(B4 <= 1, 0, IF(B4 = 2, 1, IF(B4 = 3, 2, 3))) + IF(B5 >= 350, 0, IF(B5 >= 250, 1, IF(B5 >= 150, 2, 3))))` - **Formula (BODE Quartile 4-Year Survival & ISHLT Transplant Triage)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 150, B4 < 0, B4 > 4, B5 < 0), "Invalid BODE Input", IF((IF(B2 <= 21, 1, 0) + IF(B3 >= 65, 0, IF(B3 >= 50, 1, IF(B3 >= 36, 2, 3))) + IF(B4 <= 1, 0, IF(B4 = 2, 1, IF(B4 = 3, 2, 3))) + IF(B5 >= 350, 0, IF(B5 >= 250, 1, IF(B5 >= 150, 2, 3)))) >= 7, "BODE Quartile 4 (Score 7-10: ~18% 4-Yr Survival) — Lung Transplant / Palliative Evaluation", IF((IF(B2 <= 21, 1, 0) + IF(B3 >= 65, 0, IF(B3 >= 50, 1, IF(B3 >= 36, 2, 3))) + IF(B4 <= 1, 0, IF(B4 = 2, 1, IF(B4 = 3, 2, 3))) + IF(B5 >= 350, 0, IF(B5 >= 250, 1, IF(B5 >= 150, 2, 3)))) >= 5, "BODE Quartile 3 (Score 5-6: ~57% 4-Yr Survival) — Intensive Pulmonary Rehab & Transplant Referral", IF((IF(B2 <= 21, 1, 0) + IF(B3 >= 65, 0, IF(B3 >= 50, 1, IF(B3 >= 36, 2, 3))) + IF(B4 <= 1, 0, IF(B4 = 2, 1, IF(B4 = 3, 2, 3))) + IF(B5 >= 350, 0, IF(B5 >= 250, 1, IF(B5 >= 150, 2, 3)))) >= 3, "BODE Quartile 2 (Score 3-4: ~67% 4-Yr Survival) — Pulmonary Rehabilitation", "BODE Quartile 1 (Score 0-2: ~80% 4-Yr Survival) — Standard GOLD Care"))))` ### Bodenstein Number (Bo) & Levenspiel Closed-Vessel RTD Variance Formula - **URL**: https://sheets.arte-soft.com/en/learn/bodenstein-axial-dispersion-number-and-rtd-vessel-variance/ - **Summary**: Quantify non-ideal tubular reactor and chromatography column backmixing via the Bodenstein number Bo = u*L / D_ax and Octave Levenspiel’s exact closed-vessel dimensionless residence-time variance sigma_theta² = 2/Bo - (2/Bo²)*(1 - EXP(-Bo)). *Table — Bridging ideal Plug Flow (Bo -> infinity) and ideal CSTR backmixing (Bo -> 0) via tracer RTD variance!:* | Tubular Reactor / Column Regime | Bodenstein Number Bo = u*L/D_ax | Closed-Vessel Variance sigma_theta² | Reactor Modeling Approximation | | --- | --- | --- | --- | | u=0.15 m/s, L=2.4 m, D_ax=0.018 m²/s | 20.00 | 0.09500 | Near-Plug Flow (N_tanks ≈ 10.5) | | Maldistributed Packing D_ax=0.045 m²/s | 8.00 | 0.21883 | Significant Axial Backmixing | | Invalid D_ax <= 0 or L <= 0 | Undefined Dispersion | "Invalid Axial Dispersion Inputs" | Positive Transport Guard | - **Formula (Bodenstein Axial Dispersion Number Bo = (u * L) / D_ax)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Axial Dispersion Inputs", ROUND((B2 * B3) / B4, 2))` - **Formula (Van der Laan / Levenspiel Closed-Vessel RTD Dimensionless Variance sigma_theta²)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Axial Dispersion Inputs", ROUND(2 / ((B2 * B3) / B4) - (2 / (((B2 * B3) / B4) ^ 2)) * (1 - EXP(-(B2 * B3) / B4)), 5))` ### Mosteller Body Surface Area (BSA) & Cockcroft-Gault Creatinine Clearance (CrCl) - **URL**: https://sheets.arte-soft.com/en/learn/body-surface-area-bsa-mosteller-and-cockcroft-gault-crcl/ - **Summary**: Spreadsheet arithmetic examples for Mosteller BSA and the historical Cockcroft–Gault estimate using fictional adult inputs; not a drug-dosing recommendation. *Table — Two estimation formulas with different purposes and units:* | Clinical Parameter (180 cm, 80 kg, Age 68, SCr 1.25 mg/dL) | Formula | Calculated Value | | --- | --- | --- | | Mosteller BSA (m^2) | SQRT((180 * 80) / 3600) = SQRT(4) | 2.00 m^2 | | Cockcroft-Gault CrCl (Male) | ((140 - 68) * 80) / (72 * 1.25) | 64.0 mL/min | | Cockcroft-Gault CrCl (Female) | 64.0 * 0.85 | 54.4 mL/min | - **Formula (Mosteller Body Surface Area (BSA in m^2))**: `=IF(OR(COUNT(A2:B2)<>2,A2<=0,B2<=0),"Invalid inputs",ROUND(SQRT((A2 * B2) / 3600), 2))` - **Formula (Cockcroft-Gault Creatinine Clearance (CrCl in mL/min))**: `=IF(OR(COUNT(B2:D2)<>3,B2<=0,C2<18,C2>=140,D2<=0,AND(UPPER(TRIM(E2))<>"M",UPPER(TRIM(E2))<>"F")),"Invalid inputs",ROUND(((140 - C2) * B2 / (72 * D2)) * IF(UPPER(TRIM(E2)) = "F", 0.85, 1), 1))` ### Boey Score Formula: Perforated Peptic Ulcer Operative Mortality Risk (0 to 3) - **URL**: https://sheets.arte-soft.com/en/learn/boey-perforated-peptic-ulcer-mortality-risk-score-formula/ - **Summary**: Stratify emergency surgical mortality and laparoscopic Graham-patch candidacy in perforated peptic ulcer using John Boey’s classic 3-factor score (Preoperative Shock, Severe Medical Illness ASA >= III/IV, Perforation > 24 Hours). *Table — Three preoperative emergency-department findings that stratify PPU mortality from < 1% to > 45%!:* | Boey Score (0–3 Factors) | Postoperative Mortality Risk Tier | Emergency Acute-Care Surgery Strategy | | --- | --- | --- | | Boey 0 (No Shock, < 24h, Healthy) | Low Risk (~0%–2% Mortality) | Prime Laparoscopic Omental Patch Candidate | | Boey 1 (Single Risk Factor) | Moderate Risk (~8%–11% Mortality) | Prompt Source Control + Early Sepsis Bundle | | Boey 2–3 (e.g., Shock + > 24h = 2) | High / Critical Risk (> 30% Mortality) | Expedited Damage-Control Repair + Post-Op ICU | - **Formula (Total 3-Factor Boey Perforated Peptic Ulcer Score (0 to 3 Points))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1), "Each Boey Factor Must Be 0 or 1", SUM(B2:B4))` - **Formula (WSES / Boey Operative Mortality & ICU Triage Classification)**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1), "Each Boey Factor Must Be 0 or 1", IF(SUM(B2:B4) >= 2, "High Operative Risk (Boey 2–3 — Expedited Patch & ICU Resuscitation)", IF(SUM(B2:B4) = 1, "Moderate Operative Risk (Boey 1)", "Low Operative Risk (Boey 0 — Laparoscopic Patch Candidate)")))` ### Bohm Diffusion Coefficient Formula: Turbulent Cross-Field Plasma Transport - **URL**: https://sheets.arte-soft.com/en/learn/bohm-anomalous-cross-field-plasma-diffusion-coefficient-formula/ - **Summary**: Calculate David Bohm’s anomalous cross-field plasma diffusivity D_B = T_e_eV / (16 * B) (m^2/s) and cylindrical Bessel radial confinement time τ_B = a^2 / (5.783 * D_B) in Hall thrusters and magnetrons. *Table — Why magnetized plasmas leak across B-fields as 1/B instead of classical 1/B² collisional transport!:* | Magnetic Field B (T_e = 25 eV, Radius a = 0.50 m) | Bohm Diffusivity D_B (m²/s) | Radial Confinement Time τ_B (ms) | Transport Scaling | | --- | --- | --- | --- | | B = 2.50 T (Baseline Magnetron / Thruster) | 0.6250 m²/s | 69.17 ms | Drift-Wave Turbulent Limit | | B = 5.00 T (2× Higher Field) | 0.3125 m²/s | 138.33 ms | Linear 1/B Bohm Improvement | | Invalid T_e <= 0, B <= 0, or a <= 0 | "Invalid Magnetic Confinement Inputs" | Error Guard | Positivity Guard | - **Formula (Bohm Cross-Field Plasma Diffusion Coefficient D_Bohm (m²/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Magnetic Confinement Inputs", ROUND(B2 / (16 * B3), 4))` - **Formula (Cylindrical Fundamental-Mode Bohm Confinement Time τ_B (ms))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Magnetic Confinement Inputs", ROUND((B4 ^ 2) / ((2.4048 ^ 2) * (B2 / (16 * B3))) * 1000, 2))` ### Hydrogenic Bohr Radius (an) & Fine-Structure Relativistic Velocity (vn/c) - **URL**: https://sheets.arte-soft.com/en/learn/bohr-radius-fine-structure-constant-and-orbital-velocity/ - **Summary**: Calculate the quantized orbital radius a_n = a_0 * (n^2 / Z) in picometers (CODATA a_0 = 52.9177 pm) and relativistic electron velocity ratio v_n / c = (Z * alpha) / n (fine-structure constant alpha = 1 / 137.036) for hydrogen-like ions. *Table — See when high-Z inner-shell electrons approach relativistic speeds!:* | Hydrogenic Ion State (Z, n) | Quantized Bohr Radius an (pm) | Velocity Ratio vn / c = Z * alpha / n | Relativistic Regime | | --- | --- | --- | --- | | Ground-State Hydrogen H (Z = 1, n = 1) | 52.918 pm (= a0) | 0.007297 (~1 / 137 c) | Non-relativistic Schrödinger | | Excited Hydrogen n = 2 (Z = 1, n = 2) | 211.671 pm (= 4 * a0) | 0.003649 | Expanded 2s/2p shell | | Singly Ionized Helium He+ (Z = 2, n = 1) | 26.459 pm (= a0 / 2) | 0.014595 (~1.46% c) | Tightly bound inner shell | - **Formula (Hydrogenic Quantized Bohr Orbital Radius an (pm) = 52.9177 * (n^2 / Z))**: `=IF(OR(B2 < 1, B3 < 1), "Invalid Quantum Numbers", ROUND(52.9177 * (B3 ^ 2) / B2, 3))` - **Formula (Relativistic Orbital Speed Fraction vn / c = (Z * 0.00729735) / n)**: `=IF(OR(B2 < 1, B2 > 137, B3 < 1), "Invalid Quantum Numbers", ROUND((B2 * 0.00729735) / B3, 6))` ### Bohr Hydrogen Energy Levels & Rydberg Spectral Wavelength Formula - **URL**: https://sheets.arte-soft.com/en/learn/bohr-rydberg-hydrogen-spectral-wavelength-and-energy-levels/ - **Summary**: Use a consistent approximate hydrogen Rydberg model for vacuum emission wavelengths, photon energies and shell energies, with positive integer level validation. - **Formula (Vacuum wavelength in nm, D2)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric levels and Rydberg constant",IF(OR(B2<1,B3<1,B2<>INT(B2),B3<>INT(B3),B4<=0),"Require positive integer levels and R>0",IF(B3<=B2,"Requires n2 > n1",1/(B4*(1/B2^2-1/B3^2)))))` - **Formula (Photon energy in eV, D3)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric levels and Rydberg constant",IF(OR(B2<1,B3<1,B2<>INT(B2),B3<>INT(B3),B4<=0),"Require positive integer levels and R>0",IF(B3<=B2,"Requires n2 > n1",1239.84*B4*(1/B2^2-1/B3^2))))` - **Formula (Lower-state energy in eV, D4)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric levels and Rydberg constant",IF(OR(B2<1,B3<1,B2<>INT(B2),B3<>INT(B3),B4<=0),"Require positive integer levels and R>0",IF(B3<=B2,"Requires n2 > n1",-1239.84*B4/B2^2)))` - **Formula (Upper-state energy in eV, D5)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric levels and Rydberg constant",IF(OR(B2<1,B3<1,B2<>INT(B2),B3<>INT(B3),B4<=0),"Require positive integer levels and R>0",IF(B3<=B2,"Requires n2 > n1",-1239.84*B4/B3^2)))` ### Boiler Condensate Return Ratio & Fired-Fuel Savings Formula - **URL**: https://sheets.arte-soft.com/en/learn/boiler-condensate-return-ratio-deaerator-steam-and-fuel-savings-formula/ - **Summary**: Calculate Steam Plant Blended Feedwater Temperature (°C), Sensible Enthalpy Power Saved (kWth), Boiler-Efficiency-Adjusted Fired Fuel Saved (kW), and Cold Makeup Demand (kg/hr). *Table — Divide sensible condensate heat recovery by boiler thermal efficiency to get true burner fuel savings!:* | Condensate Recovery KPI (18,000 kg/hr FW, 75% Return @ 90°C vs 18°C, 84% Eff) | Formula | Verified Output | | --- | --- | --- | | Blended Feedwater Temp (°C) | Return_Frac * T_cond + (1 - Return_Frac) * T_makeup | 72.00 °C (54.00 °C @ 50% Ret) | | Sensible Heat Saved (kWth) | (FW_kg_hr / 3600) * Return_Frac * Cp * (T_c - T_m) | 1,134.00 kWth (756.00 @ 50%) | | Fired Burner Fuel Saved (kW) | Sensible_Heat_Saved_kWth / Boiler_Efficiency | 1,350.00 kW (900.00 @ 50%) | | Cold Makeup Water Required (kg/hr) | FW_kg_hr * (1 - Return_Frac) | 4,500.00 kg/hr (9,000.00 @ 50%) | - **Formula (Burner-Adjusted Condensate Fuel-Savings Formula)**: `=LET(fw_m, B2, rt_f, B3, t_cd, B4, t_mk, B5, cp_w, B6, et_b, B7, IF(OR(fw_m <= 0, rt_f < 0, rt_f > 1, t_cd <= t_mk, t_mk < 0, cp_w <= 0, et_b <= 0.5, et_b > 1), "Invalid Condensate Return Input", LET(q_sn, (fw_m / 3600) * rt_f * cp_w * (t_cd - t_mk), ROUND(q_sn / et_b, 2))))` - **Formula (Sewer-Drained Condensate Penalty Check (Set Condensate Return Fraction = 0.50))**: `=IF(ISTEXT(E4), E4, ROUND(B2 * (1 - B3), 2))` ### Bollinger Bands Formula: Upper/Lower Envelope, %B Position & Squeeze Bandwidth - **URL**: https://sheets.arte-soft.com/en/learn/bollinger-bands-bandwidth-and-percent-b-volatility-formula/ - **Summary**: Calculate John Bollinger’s adaptive volatility envelope (SMA +- k*sigma), normalized %B position oscillator (Close - Lower)/(Upper - Lower), and relative Bandwidth %. *Table — Normalize price location and volatility compression with %B and Bandwidth!:* | Price Scenario (SMA = 100, sigma = 5, k = 2 -> [90, 110]) | Bollinger %B | Bandwidth (%) | Regime Interpretation | | --- | --- | --- | --- | | Close = 108 (Near Upper 110) | 0.9000 | 20.00% | Upper quartile strength (90% of band span) | | Close = 114 (Above Upper 110) | 1.2000 | 20.00% | Active upper-band breakout (> 1.00) | | Close = 88 (Below Lower 90) | -0.1000 | 20.00% | Lower-band excursion (< 0.00) | - **Formula (Bollinger %B Relative Band Position Oscillator)**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= 0), "Requires Positive SMA, Sigma, and Multiplier k", ROUND((B2 - (B3 - B5 * B4)) / (2 * B5 * B4), 4))` - **Formula (Bollinger Bandwidth (%) Volatility Width Ratio)**: `=IF(B3 <= 0, 0, ROUND(100 * (2 * B5 * B4) / B3, 2))` ### Bolt Torque Preload Tension, Nut-Factor K & Proof Formula - **URL**: https://sheets.arte-soft.com/en/learn/bolt-torque-preload-tension-nut-factor-k-and-proof-load-margin-formula/ - **Summary**: Calculate ISO Metric Bolt Tensile Proof Load (kN), Achieved Clamp Preload Tension F_i (kN) from Wrench Torque T = K*D*F_i, Proof-Load Utilization (%), and Anti-Seize Yield Gate. *Table — Applying MoS2 anti-seize to a dry-torque spec stretches bolts +67% past proof load!:* | Bolted Preload Assembly KPI (M20 Class 10.9, At=245 mm², Sp=830 MPa, T=600 N·m) | Formula | Verified Output | | --- | --- | --- | | Bolt Tensile Proof Load F_p (kN) | Stress_Area_mm2 * Proof_MPa / 1000 | 203.35 kN | | Achieved Clamp Preload F_i (kN) | Torque_Nm / (Nut_Factor_K * Diam_mm) | 150.00 kN (250.00 kN @ MoS2!) | | Proof-Load Utilization (%) | (Achieved_Preload_kN / Proof_Load_kN) * 100 | 73.76% (122.94% @ MoS2!) | | Assembly Plastic-Yield Gate | IF(Pct_Proof > 100, "OVER PROOF: Bolt Yields!", "SAFE: <=100% Proof") | SAFE: <=100% Proof | - **Formula (Shigley Nut-Factor Preload & Proof-Utilization Formula)**: `=LET(dm_m, B2, at_m, B3, sp_m, B4, tq_n, B5, nf_k, B6, IF(OR(dm_m <= 0, at_m <= 0, sp_m <= 0, tq_n <= 0, nf_k < 0.08, nf_k > 0.35), "Invalid Fastener Input", LET(fp_k, at_m * sp_m / 1000, fi_k, tq_n / (nf_k * dm_m), ROUND((fi_k / fp_k) * 100, 2))))` - **Formula (Unauthorized MoS2 Anti-Seize Over-Torque Yield Check (Set Nut Factor K = 0.12))**: `=IF(ISTEXT(E4), E4, IF(E4 > 100, "OVER PROOF: Bolt Yields!", "SAFE: <=100% Proof"))` ### BOMA Rentable vs Usable Square Feet, Load & Loss Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/boma-office-rentable-vs-usable-square-feet-load-factor-and-loss-factor/ - **Summary**: Calculate ANSI/BOMA Z65.1 Billed Rentable Square Feet RSF = USF * R/U_Load_Ratio, Equivalent Market Loss Factor (RSF - USF) / RSF, Annual Base Rent, and True Effective Cost per Carpetable Usable Square Foot. *Table — Never confuse Add-On Load Factor with Loss Factor when comparing commercial office buildings!:* | BOMA Z65.1 Space Metric (16,000 USF, 1.20 R/U Load Ratio, $45.00/RSF) | Formula | Verified Output | | --- | --- | --- | | Billed Rentable Area (RSF) | Usable_USF * BOMA_RU_Load_Ratio | 19,200.00 RSF (20,000 @ 1.25x) | | Equivalent Building Loss Factor | (Rentable_RSF - Usable_USF) / RSF | 0.1667 (0.2000 @ 1.25x Load) | | Annual Base Lease Rent ($) | Rentable_RSF * Quoted_Rent_RSF | $864,000.00/yr | | Effective Cost per Carpetable USF | Annual_Rent / Usable_USF | $54.00/USF ($56.25 @ 1.25x) | - **Formula (BOMA True Effective Rent per Usable Square Foot Formula)**: `=LET(us_f, B2, ru_l, B3, qt_r, B4, IF(OR(us_f <= 0, ru_l < 1, ru_l >= 2, qt_r <= 0), "Invalid BOMA Lease Area", ROUND((us_f * ru_l * qt_r) / us_f, 2)))` - **Formula (20% Loss-Factor Tower Comparison (Set BOMA R/U Ratio = 1.25))**: `=IF(ISTEXT(E2), E2, ROUND((E2 - B2) / E2, 4))` ### Bond Ball-Mill Work Index Grinding Energy Formula - **URL**: https://sheets.arte-soft.com/en/learn/bond-ball-mill-work-index-vs-kick-and-rittinger-comminution-energy/ - **Summary**: Calculate Fred Bond’s Specific Comminution Energy W = 10 * W_i * (1 / SQRT(P_80) - 1 / SQRT(F_80)) in kWh/t, Size Reduction Ratio F_80 / P_80, Mill Pinion Power, and Drawn Motor Megawatts. *Table — Size concentrator SAG and ball mills accurately—and never feed millimeters into Bond’s micron formula!:* | Ball-Mill Sizing Metric (W_i=15 kWh/t, F80=2,500 um -> P80=100 um, 450 t/h) | Formula | Verified Output | | --- | --- | --- | | 80%-Passing Reduction Ratio | F_80 / P_80 | 25.00x | | Bond Specific Energy W (kWh/t) | 10 * W_i * (1/SQRT(P_80) - 1/SQRT(F_80)) | 12.00 kWh/t (27.00 @ 25 um) | | Mill Pinion Shaft Power (kW) | Throughput_tph * W | 5,400.00 kW (5.40 MW) | | Electrical Motor Draw (kW) | (Throughput_tph * W) / eta_drv | 6,000.00 kW (6.00 MW) | - **Formula (Bond Specific Grinding Work & Drawn Motor Power Formula)**: `=LET(w_ix, B2, f_80, B3, p_80, B4, q_tp, B5, et_d, B6, IF(OR(w_ix <= 0, p_80 <= 0, f_80 <= p_80, q_tp <= 0, et_d <= 0, et_d > 1), "Invalid Comminution Circuit", LET(w_sp, 10 * w_ix * (1 / SQRT(p_80) - 1 / SQRT(f_80)), ROUND((q_tp * w_sp) / et_d, 2))))` - **Formula (Specific Energy Check at Infinite-Feed Reference Size)**: `=IF(ISTEXT(E5), E5, ROUND(10 * B2 * (1 / SQRT(B4) - 1 / SQRT(B3)), 4))` ### Bond’s Third Theory of Comminution Formula: Work Index (Wi) & Ball Mill Power - **URL**: https://sheets.arte-soft.com/en/learn/bond-comminution-work-index-crushing-and-ball-mill-power/ - **Summary**: Calculate specific grinding energy W = 10 * Wi * (1/SQRT(P80) - 1/SQRT(F80)) in kWh/tonne and pinion shaft power (kW) from Fred C. Bond’s Work Index Wi and 80%-passing feed/product sizes in micrometers. *Table — Between Rittinger’s new-surface law (d^-1) and Kick’s volume law (ln d): Bond’s 1952 inverse-square-root law!:* | Grinding Circuit Target (Wi = 14.2 kWh/t, F80 = 12,000 um) | Specific Energy W (kWh/t) | Mill Pinion Power at 240 t/h | Flotation Liberation Trade-off | | --- | --- | --- | --- | | Primary Rougher Grind P80 = 150 um | 10.298 kWh/t | 2,471.5 kW | Standard Rougher Liberation | | Fine Regrind Target P80 = 75 um | 15.100 kWh/t | 3,624.1 kW | +46.6% Power for Fine Sulfide Liberation | | Coarser Product P80 >= Feed F80 | Non-Comminution! | "Invalid Bond Grinding Sizes" | Requires 0 < P80 < F80 | - **Formula (Bond Specific Comminution Energy W (kWh/t) = 10 * Wi * (1/SQRT(P80) - 1/SQRT(F80)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= B3, B5 <= 0), "Invalid Bond Grinding Sizes", ROUND(10 * B2 * (1 / SQRT(B4) - 1 / SQRT(B3)), 3))` - **Formula (Ball Mill Pinion Shaft Power Draw (kW) = Tonnage (t/h) * Specific Energy W)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= B3, B5 <= 0), "Invalid Bond Grinding Sizes", ROUND(B5 * 10 * B2 * (1 / SQRT(B4) - 1 / SQRT(B3)), 1))` ### Bond Convexity & Duration-Convexity second-order price change formula - **URL**: https://sheets.arte-soft.com/en/learn/bond-convexity-and-duration-convexity-price-change/ - **Summary**: Estimate a bond’s full-price sensitivity with modified duration and convexity. The second-order calculation remains an approximation, especially for large yield changes. *Table — Add curvature to a local price-change approximation:* | Bond Risk Input / Scenario | Cell | Value | Price Impact | | --- | --- | --- | --- | | Full (dirty) price & modified duration | B2 = $1,000, B3 = 7.5 | Linear slope = -7.5x | -$150.00 linear drop at +200 bps | | Convexity & Yield Shock dy | B4 = 72, B5 = +0.02 | 0.5 * 72 * (0.02)^2 | +1.44% (+$14.40 cushion!) | | +200 bps Selloff (+0.02) | -0.15 + 0.0144 | -13.56% (-0.1356) | New Price = $864.40 | | -200 bps Rally (-0.02) | +0.15 + 0.0144 | +16.44% (+0.1644) | New Price = $1,164.40 (Asymmetric!) | - **Formula (Duration + Convexity percentage price change formula)**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,B3<0,B4<0),"Invalid inputs",ROUND(-B3 * B5 + 0.5 * B4 * (B5 ^ 2), 4))` - **Formula (Estimated post-shock bond price P * (1 + dP/P))**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,B3<0,B4<0),"Invalid inputs",ROUND(B2 * (1 + (-B3 * B5 + 0.5 * B4 * (B5 ^ 2))), 2))` ### Bond Coupon Schedule & Actual/Actual Day Counts (EDATE & DATEDIF) - **URL**: https://sheets.arte-soft.com/en/learn/bond-coupon-period-day-counts-coupdays-coupdaybs-coupdaysnc/ - **Summary**: Derive previous coupon date (COUPPCD), next coupon date (COUPNCD), accrued days (COUPDAYBS), remaining days (COUPDAYSNC), period length (COUPDAYS), and remaining coupons (COUPNUM). *Table — Anchor coupon schedules backward from maturity using EDATE:* | Bond Schedule Metric | 2026-05-20 Settlement (2028-09-15 Mat, Freq=2) | Formula Identity | | --- | --- | --- | | Previous Coupon (COUPPCD) | 2026-03-15 | Backward EDATE from Maturity | | Next Coupon (COUPNCD) | 2026-09-15 | EDATE(COUPPCD, 12 / Freq) | | Days Accrued (COUPDAYBS) | 66 days | Settlement - COUPPCD | | Days to Next (COUPDAYSNC) | 118 days | COUPNCD - Settlement | | Coupon Period (COUPDAYS) | 184 days | COUPNCD - COUPPCD (66 + 118) | | Remaining Coupons (COUPNUM) | 5 coupons | Months(COUPPCD..Maturity) / stepMo | - **Formula (Accrued Days Since Previous Coupon (Actual/Actual COUPDAYBS))**: `=IF(OR(B2 >= B3, AND(B4 <> 1, B4 <> 2, B4 <> 4)), "Invalid Bond Dates or Freq", LET(stepMo, 12 / B4, wholeMo, DATEDIF(B2, B3, "m"), candPrev, EDATE(B3, -stepMo * INT(wholeMo / stepMo)), prevCpn, IF(candPrev > B2, EDATE(candPrev, -stepMo), candPrev), B2 - prevCpn))` - **Formula (Total Actual/Actual Days in Current Coupon Period (COUPDAYS) & Remaining Coupons)**: `=LET(stepMo, 12 / B4, wholeMo, DATEDIF(B2, B3, "m"), candPrev, EDATE(B3, -stepMo * INT(wholeMo / stepMo)), prevCpn, IF(candPrev > B2, EDATE(candPrev, -stepMo), candPrev), EDATE(prevCpn, stepMo) - prevCpn)` ### Coupon-date bond valuation with PV: par, discount and premium - **URL**: https://sheets.arte-soft.com/en/learn/bond-dirty-clean-price-and-accrued-interest-actual/ - **Summary**: Price a simplified fixed-coupon bond on a coupon date and compare its current yield with yield to maturity. *Table — Discount a regular coupon stream and principal repayment:* | Market YTM ($1,000 Par, 5% Semiannual, 5 Yrs) | Formula | Bond Price | | --- | --- | --- | | 6.0% YTM (> 5% Coupon -> Discount) | =PV(6%/2, 5*2, -25, -1000) | $957.35 | | 5.0% YTM (= 5% Coupon -> Par) | =PV(5%/2, 5*2, -25, -1000) | $1,000.00 | | 4.0% YTM (< 5% Coupon -> Premium) | =PV(4%/2, 5*2, -25, -1000) | $1,044.91 | - **Formula (Coupon bond PV price and Current Yield formulas)**: `=ROUND(PV(C2 / E2, D2 * E2, -(A2 * B2 / E2), -A2), 2)` - **Formula (Current Yield (Annual Coupon $ / Bond Market Price))**: `=ROUND((A2 * B2) / PV(C2 / E2, D2 * E2, -(A2 * B2 / E2), -A2), 4)` ### Bond (Eotvos) Number & Ohnesorge Number for Droplet & Inkjet Physics - **URL**: https://sheets.arte-soft.com/en/learn/bond-number-eotvos-and-ohnesorge-droplet-dimensionless-numbers/ - **Summary**: Calculate Bond, Ohnesorge and inverse-Ohnesorge numbers with separate liquid and ambient densities, explicit length conventions and guarded interactive examples. - **Formula (Calculate Bond number with a declared length)**: `=IF(COUNT(B2:B5,B7)<>5,"Enter numeric densities,g,L,tension",IF(OR(B2<=0,B7<0,B3<0,B4<=0,B5<=0),"Require liquid density,L,tension>0; ambient density,g>=0",ABS(B2-B7)*B3*B4^2/B5))` - **Formula (Calculate Ohnesorge and its reciprocal)**: `=IF(COUNT(B2,B4:B6)<>4,"Enter numeric density,L,tension,viscosity",IF(OR(B2<=0,B4<=0,B5<=0,B6<0),"Require density,L,tension>0; viscosity>=0",B6/SQRT(B2*B5*B4)))` - **Formula (Use Z as guidance, not a printability guarantee)**: `=IF(NOT(ISNUMBER(E3)),E3,IF(E3=0,"Z undefined at zero viscosity",1/E3))` ### Bondi Spherical Accretion Radius (RB) & Black-Hole Gas Capture Formula - **URL**: https://sheets.arte-soft.com/en/learn/bondi-spherical-gas-accretion-radius-and-accretion-rate/ - **Summary**: Calculate the gravitational capture Bondi radius RB = (2 * G * M) / c_s^2 in Astronomical Units (AU) and Bondi-Hoyle-Lyttleton radius R_BHL = (2 * G * M) / (c_s^2 + v_rel^2) for black holes and protostars. *Table — Find the sonic capture sphere where gravity overcomes interstellar gas pressure!:* | Accreting Compact Object (M = 10 M_sun) | Sound Speed c_s & Motion v_rel | Capture Radius (AU) | Physical Regime | | --- | --- | --- | --- | | Stationary Black Hole in H II Gas | c_s = 15 km/s, v_rel = 0 km/s | R_B = 78.86 AU | Pure spherical Bondi capture | | Hotter X-Ray Heated Halo | c_s = 30 km/s, v_rel = 0 km/s | R_B = 19.71 AU (1/4x!) | Inverse-square c_s^-2 sensitivity | | Moving Black Hole (Bondi-Hoyle) | c_s = 15 km/s, v_rel = 20 km/s | R_BHL = 28.39 AU | c_s^2 + v_rel^2 = 625 km^2/s^2 | - **Formula (Stationary Bondi Accretion Radius RB = (2 * G * M) / c_s^2 in Astronomical Units (AU))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Bondi Inputs", ROUND(((2 * 6.6743e-11 * B2 * 1.98847e30) / ((B3 * 1000) ^ 2)) / 149597870000, 2))` - **Formula (Bondi-Hoyle-Lyttleton Moving Capture Radius R_BHL in AU)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Bondi Inputs", ROUND(((2 * 6.6743e-11 * B2 * 1.98847e30) / (((B3 ^ 2) + (B4 ^ 2)) * 1000000)) / 149597870000, 2))` ### Borda Count vs. Condorcet Winner Formula: Ranked Ballot Points & Pairwise Majority - **URL**: https://sheets.arte-soft.com/en/learn/borda-count-and-condorcet-pairwise-head-to-head-winner-matrix/ - **Summary**: Evaluate ranked-choice voter profiles by computing Jean-Charles de Borda’s positional score alongside Marquis de Condorcet’s pairwise head-to-head majority test—exposing when plurality, Borda, and Condorcet winners diverge! *Table — Why a candidate who beats EVERY rival head-to-head (Condorcet Winner) can lose a Borda or plurality vote!:* | Candidate Across 100 Ranked Ballots (51: A>B>C, 2: B>A>C, 47: B>C>A) | Borda Score (1st=2, 2nd=1, 3rd=0) | Pairwise Head-to-Head Record | | --- | --- | --- | | Candidate A | 2*51 + 1*2 + 0*47 = 104 pts | 2-0 (Beats B 51–49 & C 53–47 -> Condorcet Winner!) | | Candidate B | 2*(2+47) + 1*51 = 149 pts (Borda Winner!) | 1-1 (Loses to A 49–51, Beats C 100–0) | | Candidate C | 1*47 = 47 pts | 0-2 (Condorcet Loser) | - **Formula (Candidate B Borda Count Score (2 pts per 1st-Place Rank + 1 pt per 2nd-Place Rank))**: `=IF(SUM(B2:B7) <= 0, "No Ballots Cast", B2 * 1 + B3 * 0 + B4 * 2 + B5 * 2 + B6 * 0 + B7 * 1)` - **Formula (Condorcet Winner Identifier Across All 6 Voter-Bloc Counts (A>B>C, A>C>B, B>A>C, B>C>A, C>A>B, C>B>A))**: `=IF(SUM(B2:B7) <= 0, "No Ballots Cast", IF(AND(B2 + B3 + B6 > (SUM(B2:B7) / 2), B2 + B3 + B4 > (SUM(B2:B7) / 2)), "Candidate A (Condorcet Winner)", IF(AND(B4 + B5 + B7 > (SUM(B2:B7) / 2), B2 + B4 + B5 > (SUM(B2:B7) / 2)), "Candidate B (Condorcet Winner)", IF(AND(B5 + B6 + B7 > (SUM(B2:B7) / 2), B3 + B6 + B7 > (SUM(B2:B7) / 2)), "Candidate C (Condorcet Winner)", "No Condorcet Winner (Tie or Majority Cycle!)"))))` ### Bornhuetter-Ferguson vs Chain-Ladder IBNR Reserve Formula - **URL**: https://sheets.arte-soft.com/en/learn/bornhuetter-ferguson-and-chain-ladder-actuarial-ibnr-reserve/ - **Summary**: Compare Chain-Ladder IBNR = Paid * (CDF - 1) against Bornhuetter-Ferguson IBNR = EP * ELR * (1 - 1 / CDF) to stabilize immature accident years. *Table — Prevent green-year Chain-Ladder swings by anchoring unreported % to a-priori ELR:* | Accident Year (ELR = 65%) | Earned Prem / Paid / CDF | CL IBNR vs BF IBNR | | --- | --- | --- | | AY 2024 (80% Developed) | 10,000 / 5,400 / 1.25 | 1,350.00 vs 1,300.00 | | AY 2025 (50% Developed) | 12,000 / 4,500 / 2.00 | 4,500.00 vs 3,900.00 | | AY 2026 (20% Developed) | 15,000 / 900 / 5.00 | 3,600.00 vs 7,800.00 | | Total Portfolio IBNR | 37,000 / 10,800 / — | 9,450.00 vs 13,000.00 | - **Formula (Bornhuetter-Ferguson Accident-Year IBNR Reserve EP * ELR * (1 - 1 / CDF) Formula)**: `=LET(ep_y, B4, elr_y, C4, paid_y, D4, cdf_y, E4, IF(OR(ep_y <= 0, elr_y <= 0, paid_y < 0, cdf_y < 1), "Invalid Reserve Input (Require CDF >= 1)", ROUND(ep_y * elr_y * (1 - 1 / cdf_y), 2)))` - **Formula (Chain-Ladder Accident-Year IBNR Paid * (CDF - 1) and Portfolio Total Formula)**: `=IF(OR(D4 < 0, E4 < 1), "Invalid Reserve Input (Require CDF >= 1)", ROUND(D4 * (E4 - 1), 2))` ### Bose-Einstein Multi-Mask Critical-Layer Wafer Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/bose-einstein-multi-layer-critical-mask-semiconductor-wafer-yield-formula/ - **Summary**: Calculate Single-Mask Seeds Defect-Clustered Yield (%), n-Mask Bose-Einstein Compound Fab Yield (%), Integer Good Known Dies per Wafer, and Yield-Adjusted Die Cost Multiplier. *Table — Why 25 critical EUV/DUV mask layers compound clustered per-layer defects via 1 / (1 + D0 * A)^n!:* | Bose-Einstein Fab KPI (25 Masks, D0 = 0.04/cm², A = 1.5 cm², 400 Gross Dies) | Formula | Verified Output | | --- | --- | --- | | Single-Mask Clustered Yield (%) | (1 / (1 + D0 * Die_Area)) * 100 | 94.34% (89.29% @ A = 3.0 cm²) | | 25-Mask Bose-Einstein Yield (%) | (1 / ((1 + D0 * Die_Area)^n_masks)) * 100 | 23.30% (5.88% @ A = 3.0 cm²!) | | Good Known Dies per Wafer | INT(Gross_Dies / ((1 + D0 * A)^n)) | 93 dies (23 dies @ A = 3.0 cm²) | | Yield Cost Multiplier (1 / Y_BE) | (1 + D0 * Die_Area)^n_masks | 4.29x (17.00x @ A = 3.0 cm²!) | - **Formula (Bose-Einstein Multi-Layer Foundry Wafer Yield Formula)**: `=LET(nm_k, B2, d0_l, B3, ar_d, B4, gd_w, B5, IF(OR(nm_k < 1, INT(nm_k) <> nm_k, d0_l < 0, ar_d <= 0, gd_w < 1, INT(gd_w) <> gd_w), "Invalid Fab Yield Input", ROUND((1 / ((1 + d0_l * ar_d) ^ nm_k)) * 100, 2)))` - **Formula (Monolithic 300 mm² Large-Die Chiplet Split Motivation Check (Double Die Area A = 3.0 cm²))**: `=IF(ISTEXT(E3), E3, ROUND((1 + B3 * B4) ^ B2, 2))` ### Stapper Negative-Binomial & Bose-Einstein Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/bose-einstein-negative-binomial-clustered-wafer-defect-yield-formula/ - **Summary**: Calculate Charles Stapper’s Negative-Binomial Clustered Wafer Yield Y_NB = (1 + D_0 * A / alpha)^(-alpha), Bose-Einstein Single-Layer Yield (alpha = 1), and Multi-Mask Critical-Layer Bose-Einstein Yield. *Table — Explain why 800 mm^2 AI accelerator dies beat unclustered Poisson yield!:* | VLSI Clustered Yield Model (8.0 cm^2 GPU Die, D_0=0.15/cm^2 -> lambda=1.20) | Formula | Verified Output | | --- | --- | --- | | Unclustered Poisson Yield (alpha->inf) | EXP(-D_0 * A_cm2) | 0.3012 (30.12%) | | Stapper Negative-Binomial (alpha=2) | (1 + D_0 * A_cm2 / alpha)^(-alpha) | 0.3906 (39.06% Exact) | | Bose-Einstein Yield (alpha=1) | 1 / (1 + D_0 * A_cm2) | 0.4545 (45.45%) | | N-Mask Bose-Einstein (N_mask=20) | (1 + D_0 * A_cm2 / N_mask)^(-N_mask) | 0.3118 (31.18%) | - **Formula (Stapper Negative-Binomial Clustered Yield Formula)**: `=LET(a_cm, B2, d_0, B3, al_c, B4, n_mk, B5, IF(OR(a_cm <= 0, d_0 < 0, al_c <= 0, n_mk < 1), "Invalid Defect Model", ROUND((1 + (d_0 * a_cm) / al_c) ^ (-al_c), 4)))` - **Formula (Multi-Mask Bose-Einstein Yield Formula)**: `=IF(ISTEXT(E3), E3, ROUND((1 + (B3 * B2) / B5) ^ (-B5), 4))` ### Boussinesq Point-Load Vertical Soil Stress Increment & Influence Factor - **URL**: https://sheets.arte-soft.com/en/learn/boussinesq-point-load-vertical-soil-stress-bulb-formula/ - **Summary**: Calculate foundation subsurface vertical stress increment Delta_sigma_z = (3 * Q / (2 * PI() * z^2)) * (1 / (1 + (r / z)^2))^2.5 and Boussinesq influence factor I_B at depth z and radial offset r. *Table — Map pressure-bulb stress dissipation beneath column footings and crane outriggers!:* | Subsurface Point (Surface Load Q = 1,000 kN) | Depth z & Offset r (m) | Influence Factor I_B | Vertical Stress Delta_sigma_z (kPa) | | --- | --- | --- | --- | | Centerline at Depth 4 m | z = 4.0 m, r = 0.0 m | 0.4775 | 29.84 kPa | | Radially Offset 3 m at Depth 4 m | z = 4.0 m, r = 3.0 m (r/z = 0.75) | 0.1565 | 9.78 kPa (67% lower!) | | Centerline at Depth 8 m (2x Deeper) | z = 8.0 m, r = 0.0 m | 0.4775 | 7.46 kPa (1/4 by 1/z^2 law!) | - **Formula (Boussinesq Vertical Soil Stress Increment Delta_sigma_z (kPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Load, Depth, or Offset", ROUND(((3 * B2) / (2 * PI() * (B3 ^ 2))) * ((1 / (1 + ((B4 / B3) ^ 2))) ^ 2.5), 2))` - **Formula (Dimensionless Boussinesq Influence Coefficient I_B)**: `=ROUND((3 / (2 * PI())) * ((1 / (1 + ((B4 / B3) ^ 2))) ^ 2.5), 4)` ### Bouwer-Rice Unconfined Aquifer Slug-Test Formula: Hydraulic Conductivity K (m/day) - **URL**: https://sheets.arte-soft.com/en/learn/bouwer-rice-unconfined-slug-test-hydraulic-conductivity-formula/ - **Summary**: Determine in-situ unconfined or partially penetrating monitoring-well hydraulic conductivity K = (r_c^2 * LN(R_e / r_w)) / (2 * L_e * t) * LN(y_0 / y_t) using Herman Bouwer and R. C. Rice’s (1976) slug-recovery method. *Table — Estimate aquifer hydraulic conductivity from a single monitoring well without pumping contaminated groundwater!:* | Bouwer-Rice Slug Parameter | Field Value | Evaluated Contribution | | --- | --- | --- | | Standpipe Casing Radius r_c | 0.050 m | r_c^2 = 0.0025 m^2 | | Dimensionless Radial Geometry Factor LN(R_e / r_w) | 2.65 | From Bouwer-Rice A, B, C curves | | Submerged Screen Length L_e & Time t | L_e = 3.0 m, t = 40 s | 2 * L_e * t = 240 m·s | | Head Recovery Ratio y_0 / y_t (0.80 m -> 0.20 m) | LN(4.0) = 1.3863 | K = 3.3063 m/day | - **Formula (Bouwer-Rice Hydraulic Conductivity K in m/day (86,400 s/day Conversion))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0, B7 >= B6), "Invalid Slug-Test Geometry or Non-Decaying Head (Requires 0 < y_t < y_0)", ROUND(86400 * ((B2 ^ 2) * B3 / (2 * B4 * B5)) * LN(B6 / B7), 4))` - **Formula (Normalized Residual Head Ratio y_t / y_0 (Semi-Log Plot Ordinate))**: `=IF(OR(B6 <= 0, B7 <= 0, B7 >= B6), "Requires 0 < y_t < y_0", ROUND(B7 / B6, 4))` ### Bova Score for Normotensive Acute Pulmonary Embolism (Stage I–III) - **URL**: https://sheets.arte-soft.com/en/learn/bova-score-normotensive-pulmonary-embolism-rv-dysfunction-risk/ - **Summary**: Stratify 30-day PE-related hemodynamic collapse risk across normotensive pulmonary embolism patients (SBP >= 90 mmHg) using Carlo Bova’s 0–7 score (Borderline SBP 90–100, Elevated Troponin, RV Dysfunction, Heart Rate >= 110). *Table — Spot normotensive "submassive" PE patients on the verge of right-ventricular crash!:* | Bova Score Stage (0–7 Points, SBP >= 90) | 30-Day PE Complication Rate | ESC Submassive Risk Tier | Inpatient Monitoring & PERT Action | | --- | --- | --- | --- | | Stage I (0–2 Points) | 3.1–4.2% | Low / Intermediate-Low Risk | Standard Ward Anticoagulation | | Stage II (3–4 Points) | 10.8% | Intermediate Risk | Telemetry & Serial Hemodynamic Checks | | Stage III (5–7 Points, e.g., 7) | 29.2% Collapse/Mortality | Intermediate-High ("Submassive") | ICU / PERT Consult & Reperfusion Readiness | - **Formula (Total 4-Variable Bova Normotensive PE Score (0–7 Points))**: `=IF(B2 < 90, "Massive High-Risk PE (SBP < 90) — Bova Applies Only to SBP >= 90", IF(OR(B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 <= 0), "Invalid Bova Input", IF(B2 <= 100, 2, 0) + 2 * B3 + 2 * B4 + IF(B5 >= 110, 1, 0)))` - **Formula (Bova Stage I–III Stratification & PERT Escalation)**: `=IF(B2 < 90, "Massive High-Risk PE (SBP < 90) — Bova Applies Only to SBP >= 90", IF(OR(B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 <= 0), "Invalid Bova Input", IF((IF(B2 <= 100, 2, 0) + 2 * B3 + 2 * B4 + IF(B5 >= 110, 1, 0)) >= 5, "Bova Stage III (5-7 Pts: ~29.2% Complication Risk) — PERT Activation & ICU Monitoring", IF((IF(B2 <= 100, 2, 0) + 2 * B3 + 2 * B4 + IF(B5 >= 110, 1, 0)) >= 3, "Bova Stage II (3-4 Pts: ~10.8% Complication Risk) — Telemetry Monitoring", "Bova Stage I (0-2 Pts: ~3.1-4.2% Risk) — Standard Anticoagulation"))))` ### Bowker Symmetry and Stuart-Maxwell Marginal Homogeneity on 3x3 Tables - **URL**: https://sheets.arte-soft.com/en/learn/bowker-symmetry-and-stuart-maxwell-marginal-homogeneity-paired-3x3-table/ - **Summary**: Extend McNemar’s paired test to 3x3 ordinal rating tables using Bowker’s 3-df off-diagonal symmetry chi-square and Stuart-Maxwell’s 2-df marginal homogeneity quadratic form. *Table — Calculate exact off-diagonal and marginal shifts on a 3x3 pre-post table:* | Paired 3x3 Statistic | Exact Algebraic Formula | Sample Output | | --- | --- | --- | | Bowker Pair (1,2) + (1,3) + (2,3) | 7.20 + 6.40 + 5.00 (df = 3, crit = 7.815) | 18.60 | | Marginal Shifts d1, d2, d3 | R_i - C_i for Mild, Mod, Severe | +20, -2, -18 (Sums to 0) | | Stuart-Maxwell Covariance Det | v11*v22 - v12^2 = 30*40 - (-20)^2 | 800 | | Stuart-Maxwell X2_SM (df = 2) | (v22*d1^2 - 2*v12*d1*d2 + v11*d2^2) / Det | 18.15 (crit = 5.991) | - **Formula (Bowker 3x3 Off-Diagonal Symmetry Chi-Square Formula)**: `=LET(s_12, B3 + C2, s_13, B4 + D2, s_23, C4 + D3, IF(s_12 + s_13 + s_23 = 0, "No Discordant Shifts", ROUND(IF(s_12 = 0, 0, (B3 - C2)^2 / s_12) + IF(s_13 = 0, 0, (B4 - D2)^2 / s_13) + IF(s_23 = 0, 0, (C4 - D3)^2 / s_23), 4)))` - **Formula (Stuart-Maxwell 2-df Marginal Homogeneity Formula)**: `=LET(s_12, B3 + C2, s_13, B4 + D2, s_23, C4 + D3, d_1, SUM(B2:D2) - SUM(B2:B4), d_2, SUM(B3:D3) - SUM(C2:C4), v_11, s_12 + s_13, v_22, s_12 + s_23, v_12, -s_12, det_v, v_11 * v_22 - v_12^2, IF(det_v <= 0, "Singular Marginals", ROUND((v_22 * d_1^2 - 2 * v_12 * d_1 * d_2 + v_11 * d_2^2) / det_v, 4)))` ### Box-and-Whisker Plot Formula: Stacked Q1 Pedestal, Median Split & Whisker Lengths - **URL**: https://sheets.arte-soft.com/en/learn/box-and-whisker-stacked-chart-hidden-q1-box-splits-and-whisker-bars/ - **Summary**: Construct John Tukey’s 5-Number Summary Box-and-Whisker Plot from any Stacked Column chart using exact formulas for Hidden Q1 Pedestal, Lower Box (Median - Q1), Upper Box (Q3 - Median), and Lower/Upper Whisker Spans. *Table — Turn a 5-number summary into stacked box heights and asymmetric whisker lengths!:* | Stacked Box-and-Whisker Component | Spreadsheet Formula on B2:B10 | Evaluated Value on Sample [12..48] | | --- | --- | --- | | Hidden Pedestal Base (Q1, 25th Pct) | =QUARTILE.INC(B2:B10, 1) | 18.0 | | Lower Box Height (Median - Q1) | =MEDIAN(B2:B10) - QUARTILE.INC(B2:B10, 1) | 25.0 - 18.0 = 7.0 | | Upper Box Height (Q3 - Median) | =QUARTILE.INC(B2:B10, 3) - MEDIAN(B2:B10) | 36.0 - 25.0 = 11.0 (Right-Skewed!) | | Lower / Upper Whisker Spans | Q1 - MIN \| MAX - Q3 | 6.0 below Q1 \| 12.0 above Q3 | - **Formula (Total Interquartile Box Height IQR = Upper_Box + Lower_Box = Q3 - Q1)**: `=IF(COUNT(B2:B10) < 4, "Requires At Least 4 Numeric Observations", ROUND(QUARTILE.INC(B2:B10, 3) - QUARTILE.INC(B2:B10, 1), 2))` - **Formula (Upper Interquartile Box Segment (Q3 - Median) & Upper Whisker Span (MAX - Q3))**: `=IF(COUNT(B2:B10) < 4, "Requires At Least 4 Numeric Observations", ROUND(QUARTILE.INC(B2:B10, 3) - MEDIAN(B2:B10), 2))` ### Braden Scale for Predicting Pressure Ulcer / Injury Risk (6–23 Point Nursing Score) - **URL**: https://sheets.arte-soft.com/en/learn/braden-scale-pressure-injury-ulcer-risk-assessment-formula/ - **Summary**: Calculate the 6–23 point Braden Scale across Sensory Perception, Moisture, Activity, Mobility, Nutrition (1–4 each), and Friction & Shear (1–3) to trigger hospital pressure-injury prevention bundles. *Table — Remember the two critical Braden Scale traps: inverse scoring and the 1–3 Friction cap!:* | Braden Total Score | Pressure Injury Risk Tier | Typical Patient Profile | Prevention Protocol | | --- | --- | --- | --- | | 6–9 points | Very High Risk (<= 9) | Intubated, sedated, moisture-exposed ICU patient | Specialty air-fluidized/low-air-loss surface + q2h offload | | 10–12 points | High Risk (10–12) | Subscores (2, 2, 1, 2, 2, 1) = 10 pts | Foam wedges, heel suspension, moisture barrier, nutrition consult | | 13–18 points | Moderate (13–14) / Mild (15–18) | Post-op limited mobility | Scheduled repositioning & skin inspection | | 19–23 points | Minimal / No Risk (19–23) | Ambulatory, continent, intact sensation (21 pts) | Routine inpatient care | - **Formula (Total Braden Scale Score (6 to 23 Points, Enforcing Friction 1–3 Bound))**: `=IF(OR(MIN(B2:B7) < 1, MAX(B2:B6) > 4, B7 > 3), "Invalid Braden Subscores", SUM(B2:B7))` - **Formula (Braden Pressure-Injury Risk Tier Classification)**: `=IF(OR(MIN(B2:B7) < 1, MAX(B2:B6) > 4, B7 > 3), "Invalid Braden Subscores", IF(SUM(B2:B7) <= 9, "Very High Risk (6-9)", IF(SUM(B2:B7) <= 12, "High Risk (10-12)", IF(SUM(B2:B7) <= 14, "Moderate Risk (13-14)", IF(SUM(B2:B7) <= 18, "Mild / At Risk (15-18)", "Minimal / No Risk (19-23)")))))` ### Bradley-Terry Paired-Comparison Formula: LLM Arena, Sports & Sensory Win Probability - **URL**: https://sheets.arte-soft.com/en/learn/bradley-terry-paired-comparison-win-probability-and-log-worth/ - **Summary**: Compute pairwise head-to-head win probabilities P(i beats j) = EXP(beta_i) / (EXP(beta_i) + EXP(beta_j)) and worth ratios EXP(beta_i - beta_j) using Ralph Bradley & Milton Terry’s 1952 model powering Chatbot Arena LLM leaderboards and NCAA/sports rankings. *Table — From 1952 sensory taste panels to LMSYS Chatbot Arena & Elo ratings: the Bradley-Terry model!:* | Head-to-Head Log-Strengths (beta_A, beta_B) | Win Odds Ratio EXP(beta_A - beta_B) | Bradley-Terry Win Probability P(A > B) | | --- | --- | --- | | Model A = 1.80, Model B = 0.60 (+1.20 gap) | 3.3201 : 1 | 0.7685 (76.85% Win Rate) | | Reversed: Model A = 0.60, Model B = 1.80 | 0.3012 : 1 | 0.2315 (23.15% Win Rate; sums to 1.0000) | | Equal Strength beta_A = beta_B = 1.20 | 1.0000 : 1 | 0.5000 (50.00% Coin Toss) | - **Formula (Bradley-Terry Head-to-Head Win Probability P(A > B) = EXP(beta_A) / (EXP(beta_A) + EXP(beta_B)))**: `=IF(OR(ABS(B2) > 20, ABS(B3) > 20), "Log-Strength Outside [-20, +20] Bounds", ROUND(EXP(B2) / (EXP(B2) + EXP(B3)), 4))` - **Formula (Pairwise Worth / Win-Odds Ratio pi_A / pi_B = EXP(beta_A - beta_B))**: `=IF(OR(ABS(B2) > 20, ABS(B3) > 20), "Log-Strength Outside [-20, +20] Bounds", ROUND(EXP(B2 - B3), 4))` ### Braess’s Paradox & Wardrop Equilibrium Latency Formula - **URL**: https://sheets.arte-soft.com/en/learn/braess-paradox-wardrop-commuter-equilibrium-vs-social-optimum/ - **Summary**: Calculate pre-bridge vs post-bridge Wardrop Nash travel time on a 4-link diamond network and prove when adding a zero-latency shortcut increases EVERY commuter’s travel time! *Table — Prove Dietrich Braess’s (1968) paradox: adding capacity can slow EVERY user down!:* | Demand Flow F_tot (a_1=0.01, b_0=45) | Before Bridge T_before | With Bridge T_after & Braess Change | | --- | --- | --- | | Light Demand (F = 2,000) | 55.00 min | 40.00 min (-15.00 min Faster) | | Classic Braess Regime (F = 4,000) | 65.00 min | 80.00 min (+15.00 min SLOWER!) | | 3-Path Mixed Regime (F = 6,000) | 75.00 min | 90.00 min (+15.00 min SLOWER!) | | Heavy Saturation (F = 10,000) | 95.00 min | 95.00 min (0.00, Bridge Unused) | - **Formula (Post-Bridge Wardrop Nash Equilibrium Travel Time T_after Formula)**: `=LET(f_fl, B2, a_bt, B3, b_hw, B4, IF(OR(f_fl <= 0, a_bt <= 0, b_hw <= 0), "Invalid Network Input", LET(af_v, a_bt * f_fl, t_af, IF(af_v <= b_hw, 2 * af_v, IF(af_v < 2 * b_hw, 2 * b_hw, b_hw + 0.5 * af_v)), ROUND(t_af, 4))))` - **Formula (Braess Paradox Delay Penalty (T_after - T_before) Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E3 - E2, 4))` ### Bray-Curtis Dissimilarity & Sorensen-Dice Ecological Similarity - **URL**: https://sheets.arte-soft.com/en/learn/bray-curtis-dissimilarity-and-sorensen-dice-ecological-indices/ - **Summary**: Compare aligned nonnegative abundance vectors with Bray-Curtis dissimilarity and their binary presence/absence sets with Sorensen-Dice similarity, explicitly handling missing and empty samples. - **Formula (Row-wise shared minimum total, E2)**: `=IF(COUNT(B2:C6)<>10,"Enter all ten numeric abundances",IF(MIN(B2:C6)<0,"Abundances must be nonnegative",SUMPRODUCT((B2:B6<=C2:C6)*B2:B6+(B2:B6>C2:C6)*C2:C6)))` - **Formula (Bray-Curtis dissimilarity, E3)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(SUM(B2:C6)=0,"Both samples empty: undefined",1-2*E2/SUM(B2:C6)))` - **Formula (Binary Sorensen-Dice similarity, E4)**: `=IF(COUNT(B2:C6)<>10,"Enter all ten numeric abundances",IF(MIN(B2:C6)<0,"Abundances must be nonnegative",IF(SUM(B2:C6)=0,"Both samples empty: undefined",2*SUMPRODUCT((B2:B6>0)*(C2:C6>0))/(COUNTIF(B2:B6,">0")+COUNTIF(C2:C6,">0")))))` ### Ideal constant-specific-heat Brayton efficiency and compressor temperature - **URL**: https://sheets.arte-soft.com/en/learn/brayton-gas-turbine-efficiency-and-pressure-ratio-formula/ - **Summary**: Explore the ideal Brayton pressure-ratio expression and isentropic compression temperature, with explicit thermodynamic assumptions. *Table — Use an ideal cycle, not a measured engine efficiency:* | Brayton Turbine Metric | Formula | Illustrative ratio16, T1=288.15 K | Illustrative ratio40, same inlet | | --- | --- | --- | --- | | Isentropic Temp Ratio T2 / T1 | B2 ^ ((B3 - 1) / B3) | 16 ^ (0.4/1.4) = 2.2082 | 40 ^ (0.4/1.4) = 2.8690 | | Ideal Brayton Efficiency eta | 1 - (1 / (B2 ^ ((B3 - 1) / B3))) | 54.71% (0.5471) | 65.14% (0.6514) | | Compressor Exit Temp T2 (K) | B4 * (B2 ^ ((B3 - 1) / B3)) | 636.29 K (363.1 °C) | 826.70 K (553.6 °C) | - **Formula (Ideal Brayton Cycle Thermal Efficiency = 1 - (1 / r_p^((gamma - 1) / gamma)))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<1,B3<=1,B4<=0),"Invalid inputs",ROUND(1 - (1 / (B2 ^ ((B3 - 1) / B3))), 4)))` - **Formula (Isentropic Compressor Discharge Temperature T2 (Kelvin))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<1,B3<=1,B4<=0),"Invalid inputs",ROUND(B4 * (B2 ^ ((B3 - 1) / B3)), 2)))` ### Recuperated Brayton Gas Turbine Effectiveness & Efficiency - **URL**: https://sheets.arte-soft.com/en/learn/brayton-gas-turbine-recuperator-effectiveness-and-fuel-savings-formula/ - **Summary**: Calculate Recuperated Gas Turbine / Microturbine Preheated Combustor-Inlet Temperature Tx (K), Combustor Fuel Heat Input Saved %, Simple Unrecuperated Brayton Efficiency, and Recuperated Thermal Efficiency. *Table — Recover hot turbine exhaust into compressor discharge—only when T4 exceeds T2!:* | Recuperated Brayton Metric (T1=300 K, T2=500 K, T3=1300 K, T4=800 K, ε=0.80) | Formula | Verified Output | | --- | --- | --- | | Preheated Combustor Inlet Tx (K) | T2 + ε * (T4 - T2) | 740.00 K (500.00 K @ ε=0) | | Combustor Fuel Saved Ratio | (ε * (T4 - T2)) / (T3 - T2) | 0.3000 (30.00% Fuel Saved) | | Simple Unrecuperated Efficiency | ((T3 - T4) - (T2 - T1)) / (T3 - T2) | 0.3750 (37.50%) | | Recuperated Cycle Efficiency | ((T3 - T4) - (T2 - T1)) / (T3 - Tx) | 0.5357 (0.3750 @ ε=0) | - **Formula (Recuperated Brayton Cycle Thermal Efficiency Formula)**: `=LET(t_2, B2, t_3, B3, t_4, B4, t_1, B5, ep_r, B6, wn_t, (t_3 - t_4) - (t_2 - t_1), IF(OR(t_1 <= 0, t_2 <= t_1, t_4 <= t_2, t_3 <= t_4, wn_t <= 0, ep_r < 0, ep_r >= 1), "Invalid or Non-Recuperable Cycle (T2 >= T4)", LET(t_x, t_2 + ep_r * (t_4 - t_2), ROUND(wn_t / (t_3 - t_x), 4))))` - **Formula (Bypassed Recuperator Baseline & High-Pressure-Ratio Crossover Guard Checks)**: `=IF(ISTEXT(E5), E5, ROUND((B6 * (B4 - B2)) / (B3 - B2), 4))` ### Break Chart Axis Formula: Piecewise Outlier Compression & Visual Gap Scaling - **URL**: https://sheets.arte-soft.com/en/learn/break-chart-axis-outlier-truncation-and-panel-rescaling-formula/ - **Summary**: Prevent a single 10x outlier bar from crushing normal data series to unreadable slivers by building a piecewise Broken Y-Axis helper series with explicit lower-band fidelity, break-gap buffer, and compressed upper-band slope. *Table — Display $12k–$45k regional branches AND a $480k headquarters outlier clearly without hiding data!:* | Series Observation | True Raw Value ($) | Piecewise Formula Branch (B_low=60k, Gap=5k, B_high=300k, k=0.10) | Plotted Height | | --- | --- | --- | --- | | Austin Branch (Normal) | $42,500 | x <= 60,000 -> Uncompressed x | 42,500 | | Denver Branch (Normal) | $54,000 | x <= 60,000 -> Uncompressed x | 54,000 | | Flagship West Outlier | $350,000 | 60,000 + 5,000 + 0.10 * (350,000 - 300,000) | 70,000 | | Headquarters Outlier | $480,000 | 60,000 + 5,000 + 0.10 * (480,000 - 300,000) | 83,000 | - **Formula (Piecewise Broken-Axis Plotted Coordinate Formula)**: `=IF(OR(B3 <= 0, B4 < 0, B5 <= B3, B6 <= 0, B6 >= 1), "Invalid Break Thresholds or Compression Slope k", IF(B2 <= B3, ROUND(B2, 2), IF(B2 < B5, "Value Inside Excised Break Zone — Lower B_high or Raise B_low", ROUND(B3 + B4 + B6 * (B2 - B5), 2))))` - **Formula (Visual Space Saved (%) Relative to Unbroken Full-Scale Axis)**: `=IF(OR(B2 <= B5, B5 <= B3, B6 <= 0, B6 >= 1), 0, ROUND(100 * (1 - (B3 + B4 + B6 * (B2 - B5)) / B2), 2))` ### Break-even units and contribution margin: solve for zero-loss and target profit volume - **URL**: https://sheets.arte-soft.com/en/learn/break-even-units-formula/ - **Summary**: Calculate unit contribution margin, whole break-even units with ROUNDUP, and required volume for a target operating profit. *Table — Contribution margin pays down fixed overhead first:* | CostDriver (A) | Value (B) | | --- | --- | | Monthly Fixed Costs | 18000 | | Unit Selling Price | 45 | | Unit Variable Cost | 21 | | Target Operating Profit | 6000 | - **Formula (Compute break-even units and target-profit units)**: `=ROUNDUP(B1 / (B2 - B3), 0)` - **Formula (Guard underwater unit economics (Price <= Variable Cost))**: `=IF(B2<=B3, "Unprofitable unit margin", ROUNDUP((B1 + B4) / (B2 - B3), 0))` ### Break ties in RANK: assign unique 1..N ranks with RANK.EQ and COUNTIF - **URL**: https://sheets.arte-soft.com/en/learn/break-ties-with-rank-and-countif/ - **Summary**: Add COUNTIF($B$2:B2, B2) - 1 to RANK.EQ so tied scores receive sequential ranks 1, 2, 3, 4 for clean Top-N lookups. *Table — Why tied ranks break Top-N INDEX/MATCH tables:* | Rep (A) | Score (B) | Raw RANK.EQ | Unique Rank Formula | | --- | --- | --- | --- | | Aria | 90 | 1 | 1 (first 90 -> +0) | | Bram | 85 | 3 | 3 | | Cleo | 90 | 1 | 2 (second 90 -> +1) | | Dion | 80 | 4 | 4 | - **Formula (Compute unique descending rank)**: `=RANK.EQ(B4, $B$2:$B$5) + COUNTIF($B$2:B4, B4) - 1` - **Formula (Look up #2 ranked rep cleanly without #N/A)**: `=XLOOKUP(2, C2:C5, A2:A5)` ### Bredt-Batho Closed Thin-Walled Box Torsion and Shear Flow Formula - **URL**: https://sheets.arte-soft.com/en/learn/bredt-batho-closed-thin-walled-tube-shear-flow-and-torsion-constant/ - **Summary**: Calculate closed-tube shear flow q = T / (2*A_m), thinnest-wall peak shear stress, and Bredt’s torsion constant J_closed vs open-slit stiffness collapse. *Table — See by hand why slitting a closed box girder destroys 99.5% of torsional stiffness:* | Box Torsion Metric | Bredt-Batho Formula | Exact Output | | --- | --- | --- | | Shear Flow q_flow (N/m) | T / (2 * b_m * h_m) | 100,000 N/m (100 N/mm) | | Peak Wall Shear Stress (MPa) | 10^-6 * q_flow / MIN(t_f, t_w) | 20.0000 MPa (in 5 mm web) | | Closed Torsion Constant J_closed | 10^8 * 4 * A_m^2 / (2*b_m/t_f + 2*h_m/t_w) | 1,777.7778 cm^4 | | Open-Slit Torsion Constant J_open | 10^8 * (2*b_m*t_f^3 + 2*h_m*t_w^3) / 3 | 7.6600 cm^4 (232.09x drop!) | - **Formula (Peak Closed-Box Wall Shear Stress (MPa) Formula)**: `=LET(b_med, B2, h_med, B3, t_min, MIN(B4, B5), t_nm, B6, IF(OR(b_med <= 0, h_med <= 0, t_min <= 0, t_nm < 0), "Invalid Tube Input", ROUND((10^-6) * t_nm / (2 * b_med * h_med * t_min), 4)))` - **Formula (Bredt Closed Torsion Constant J_closed (cm^4) Formula)**: `=LET(b_med, B2, h_med, B3, t_fl, B4, t_wb, B5, IF(OR(b_med <= 0, h_med <= 0, t_fl <= 0, t_wb <= 0), "Invalid Tube Input", LET(a_enc, b_med * h_med, s_int, (2 * b_med) / t_fl + (2 * h_med) / t_wb, ROUND((10^8) * 4 * (a_enc^2) / s_int, 4))))` ### Breguet Aircraft Range Equation & Lift-to-Drag (L/D) Glide Distance formulas - **URL**: https://sheets.arte-soft.com/en/learn/breguet-aircraft-range-equation-and-lift-to-drag-glide-ratio/ - **Summary**: Explore an idealized constant-parameter jet cruise segment and a separate steady still-air glide calculation. *Table — Keep the cruise model and glide assumptions separate:* | Flight Performance Metric | Formula / Inputs | Illustrative inputs | Calculated Distance | | --- | --- | --- | --- | | Speed V & Weight-SFC c_T | B2 = 850 km/h, B3 = 0.55 /hr | Propulsive factor V / c_T | 1,545.45 km | | Lift-to-Drag Ratio (L/D) | B4 = 18.0 | Cruise-segment initial mass 75t, final mass 55t | LN(75/55) = 0.3102 | | Breguet Cruise Range | (B2 / B3) * B4 * LN(B5 / B6) | 1,545.45 * 18 * 0.310155 | 8,627.9 km | | Still-Air Glide from 10 km | B7 * B8 (height lost km * glide L/D) | 10 km * 18:1 glide ratio | 180.0 km | - **Formula (Breguet Jet Cruise Range in kilometers (or nautical miles))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0,B6>B5),"Invalid inputs",ROUND((B2 / B3) * B4 * LN(B5 / B6), 1)))` - **Formula (Ideal steady still-air glide distance)**: `=IF(COUNT(B7:B8)<>2,"Invalid inputs",IF(OR(B7<0,B8<=0),"Invalid inputs",ROUND(B7*B8,1)))` ### Breguet Aircraft Cruise Range and Parabolic Polar (L/D)_max Formula - **URL**: https://sheets.arte-soft.com/en/learn/breguet-jet-and-propeller-aircraft-cruise-range-and-oswald-drag/ - **Summary**: Calculate maximum aerodynamic efficiency (L/D)_max = 0.5 * SQRT((PI() * AR * e) / C_D0) and jet Breguet cruise range R_km = (V_kmh / c_hr) * (L/D) * LN(W_init / W_final). *Table — Link wing aspect ratio, Oswald span efficiency, and fuel mass fraction via Breguet’s equation:* | Aerodynamic / Mission Quantity | Formula | Verified Output | | --- | --- | --- | | Max Lift-to-Drag Ratio (L/D)_max | 0.5 * SQRT((PI() * AR * e_osw) / C_D0) | 17.7245 | | Optimal Cruise Lift Coeff C_L* | SQRT(C_D0 * PI() * AR * e_osw) | 0.7090 | | Fuel Mass Ratio LN(W_init / W_final) | LN(75,000 / 50,000) | 0.4055 | | Breguet Cruise Range (R_km) | (V_kmh / c_hr) * (L/D)_max * LN(W_i / W_f) | 12,217.3593 km | - **Formula (Parabolic Drag Polar Maximum Lift-to-Drag Ratio (L/D)_max Formula)**: `=LET(cd_0, B2, ar_w, B3, e_os, B4, IF(OR(cd_0 <= 0, ar_w <= 0, e_os <= 0, e_os > 1), "Invalid Polar Input", ROUND(0.5 * SQRT((PI() * ar_w * e_os) / cd_0), 4)))` - **Formula (Jet Breguet Cruise Range R_km Formula)**: `=LET(cd_0, B2, ar_w, B3, e_os, B4, v_kmh, B5, c_sfc, B6, w_in, B7, w_fn, B8, IF(OR(cd_0 <= 0, ar_w <= 0, e_os <= 0, e_os > 1, v_kmh <= 0, c_sfc <= 0, w_fn <= 0, w_in < w_fn), "Invalid Breguet Input", LET(ld_mx, 0.5 * SQRT((PI() * ar_w * e_os) / cd_0), ROUND((v_kmh / c_sfc) * ld_mx * LN(w_in / w_fn), 4))))` ### Thermal Bremsstrahlung Plasma Radiation Loss & Z_eff Impurity Scaling - **URL**: https://sheets.arte-soft.com/en/learn/bremsstrahlung-plasma-cooling-power-and-gaunt-factor/ - **Summary**: Calculate free-free thermal bremsstrahlung volumetric power loss P_br = 1.42e-40 * g_ff * Z_eff^2 * n_e^2 * SQRT(T_K) (in kW/m^3) for magnetic fusion plasmas and X-ray galaxy clusters. *Table — Why high-Z tungsten or carbon wall impurities quench tokamak fusion plasmas via Z^2 bremsstrahlung!:* | Plasma Species Scenario (ne = ni = 10^20 m^-3, T = 10^8 K, gff = 1.2) | Ion Charge Z | Bremsstrahlung Loss (kW/m^3) | Fusion Energy Balance Impact | | --- | --- | --- | --- | | Clean Hydrogenic D-T Plasma | Z = 1 | 17.04 kW/m^3 | Manageable below alpha-heating power | | Triply Charged Low-Z Plasma | Z = 3 | 153.36 kW/m^3 (9x Higher!) | Quadratic Z^2 radiative cooling surge | | Zero or Negative Density / Temp | Guarded Input | "Invalid Plasma Inputs" | Requires T > 0, ne > 0, ni > 0, Z >= 1 | - **Formula (Volumetric Thermal Bremsstrahlung Power Density P_br (kW/m^3))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 1, B5 <= 0, B6 <= 0), "Invalid Plasma Inputs", ROUND(1.42 * B6 * (B4 ^ 2) * B2 * B3 * SQRT(B5) / 1000, 2))` - **Formula (Equivalent Electron Thermal Energy k_B * T in keV)**: `=IF(B5 <= 0, "Invalid Plasma Inputs", ROUND(B5 * 0.0000000861733, 2))` ### Brennan-Prediger Free-Marginal Kappa and PABAK Formula - **URL**: https://sheets.arte-soft.com/en/learn/brennan-prediger-free-marginal-kappa-prevalence-paradox-fix-formula/ - **Summary**: Diagnose Feinstein and Cicchetti’s skewed-prevalence kappa paradox using Byrt’s Prevalence Index and Brennan-Prediger’s q-category free-marginal kappa_n. *Table — Reproduce why 92% rater agreement collapses to 0.29 Cohen’s kappa on rare defects:* | Reliability Metric (92% Agreement) | Formula Definition | Sample Output | | --- | --- | --- | | Observed Agreement P_o | (n_11 + n_22) / N | 0.9200 | | Byrt Prevalence Index PI | ABS(n_11 - n_22) / N | 0.8800 (Extreme base-rate skew) | | Cohen’s Fixed-Marginal Kappa | (P_o - P_e,Cohen) / (1 - P_e,Cohen) | 0.2908 (Paradoxically low!) | | Brennan-Prediger Free-Marginal kappa_n | (P_o - 1 / q_cat) / (1 - 1 / q_cat) | 0.8400 (Generalizes to q >= 2) | - **Formula (Brennan-Prediger Free-Marginal Kappa (Any Category Count q >= 2) Formula)**: `=LET(n_tot, SUM(B2:C3), q_cat, B5, IF(OR(n_tot <= 0, q_cat < 2), "Invalid Rubric Input", LET(p_obs, (B2 + C3) / n_tot, p_uni, 1 / q_cat, ROUND((p_obs - p_uni) / (1 - p_uni), 4))))` - **Formula (Multi-Class Rubric Generalization Check (q = 4))**: `=ROUND(ABS(B2 - C3) / SUM(B2:C3), 4)` ### Brenner-Subrahmanyam ATM Implied Volatility & Straddle Breakeven Formula - **URL**: https://sheets.arte-soft.com/en/learn/brenner-subrahmanyam-atm-implied-volatility-and-straddle-breakeven/ - **Summary**: Extract At-The-Money implied volatility directly without Goal Seek using Brenner and Subrahmanyam’s (1988) SQRT(2*PI()/T) * (C_ATM / S) approximation, plus straddle breakevens and daily 1-SD move. *Table — Why SQRT(2*PI()/T) * (C/S) inverts Black-Scholes analytically at the money:* | Options Desk Metric (S=100, C_ATM=4.00, T=0.25y) | Formula | Result | | --- | --- | --- | | Brenner-Subrahmanyam ATM IV | SQRT(2 * PI() / T) * (C_ATM / S) | 0.2005 (20.05% annualized) | | Implied 1-Day 1-SD Move | S * (sigma_ATM / SQRT(252)) | 1.26 points | | ATM Straddle Upper / Lower Breakeven | S + 2*C_ATM / S - 2*C_ATM | 108.00 / 92.00 (+/-8.00%) | - **Formula (Brenner-Subrahmanyam Closed-Form ATM Implied Volatility Formula)**: `=IF(OR(B2 <= 0, B4 <= 0), "INVALID_INPUT", ROUND(SQRT((2 * PI()) / B4) * (B3 / B2), 4))` - **Formula (Daily 1-SD Expected Move & Straddle Percentage Breakeven)**: `=ROUND(B2 * (E2 / SQRT(252)), 2)` ### Breslow-Day / Woolf Homogeneity of Odds Ratios Test (Effect Modification Q) - **URL**: https://sheets.arte-soft.com/en/learn/breslow-day-homogeneity-of-odds-ratios-stratified-chi-square/ - **Summary**: Test whether stratified log-odds ratios share a common true effect BEFORE pooling Mantel-Haenszel or Woolf estimates using Q = Σ w_i * (y_i - y_bar)^2 against χ²(k - 1). *Table — Never pool Mantel-Haenszel odds ratios when effect modification reverses risk across strata!:* | 3-Stratum Log-OR Profile (df = 2, Cutoff 5.9915) | Homogeneity Statistic Q | Epidemiological Decision | | --- | --- | --- | | y = [1.10, 1.05, 0.95] (Consistent Direction) | Q = 0.0512 (< 5.9915) | Homogeneous Odds Ratios — Safe to Pool OR | | y = [1.10, 1.05, -0.45] (Qualitative Interaction) | Q = 6.9183 (>= 5.9915) | Significant Effect Modification — Do Not Pool! | | Non-Positive Weight w_i <= 0 | "Invalid Stratum Weights" | Precision Guard | - **Formula (Stratified Log-Odds Homogeneity Chi-Square Statistic Q (df = k - 1))**: `=IF(MIN(C2:C4) <= 0, "Invalid Stratum Weights", ROUND(C2 * ((B2 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C3 * ((B3 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C4 * ((B4 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2), 4))` - **Formula (5%-Level Homogeneity vs. Effect-Modification Decision Rule (df = 2))**: `=IF(MIN(C2:C4) <= 0, "Invalid Stratum Weights", IF(C2 * ((B2 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C3 * ((B3 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C4 * ((B4 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) >= 5.9915, "Significant Effect Modification (p < 0.05 — Report Strata Separately)", "Homogeneous Odds Ratios (Safe to Pool)"))` ### Brewing Plato, Real Attenuation & Balling ABV Formula - **URL**: https://sheets.arte-soft.com/en/learn/brewing-plato-specific-gravity-real-attenuation-and-balling-abv-formula/ - **Summary**: Calculate Apparent Attenuation (P_o - P_a)/P_o, Carl Balling’s Real Extract RE = 0.1808*P_o + 0.8192*P_a, Real Degree of Fermentation (RDF), and Finished Beer Alcohol by Volume (% ABV). *Table — Correct hydrometer ethanol buoyancy distortion with Carl Balling’s Real Extract!:* | ASBC / Balling Cellar QC Metric (P_orig=12.5 °P, P_app=2.5 °P, Final SG=1.010) | Formula | Verified Output | | --- | --- | --- | | Apparent Attenuation (AA) | (P_orig - P_app) / P_orig | 0.8000 (80.00% Hydrometer) | | Balling Real Extract RE (°Plato) | 0.1808 * P_orig + 0.8192 * P_app | 4.308 °P (True Residual Solids) | | Real Attenuation (RDF) | (P_orig - RE) / P_orig | 0.6554 (65.54% True Sugar Drop) | | Finished Alcohol by Volume (% ABV) | ABW_% * (Final_SG / 0.794) | 5.39% ABV (0.00% @ P_app=12.5) | - **Formula (Balling Real Extract & % ABV Stoichiometric Formula)**: `=LET(p_or, B2, p_ap, B3, sg_f, B4, IF(OR(p_or <= 0, p_or > 40, p_ap > p_or, p_ap < -3, sg_f <= 0.98, sg_f > 1.2), "Invalid Wort Gravity", LET(re_p, 0.1808 * p_or + 0.8192 * p_ap, ab_w, (p_or - re_p) / (2.0665 - 0.010665 * p_or), ROUND(ab_w * (sg_f / 0.794), 2))))` - **Formula (Unfermented pitched Wort Identity Check (P_app = 12.5 °P))**: `=IF(ISTEXT(E5), E5, ROUND((B2 - E3) / B2, 4))` ### Brier Score & Binary Log-Loss (Cross-Entropy) probability calibration formulas - **URL**: https://sheets.arte-soft.com/en/learn/brier-score-and-binary-log-loss-cross-entropy-formula/ - **Summary**: Evaluate probabilistic forecasts and ML classifiers using Brier Score AVERAGE((p - y)^2) and Binary Cross-Entropy Log-Loss -AVERAGE(y*LN(p) + (1-y)*LN(1-p)). *Table — Why accuracy % hides overconfident bad probabilities—and how Brier & Log-Loss score them!:* | Forecast p (A) vs Actual y (B) | Squared Error (p - y)^2 (C) | Cross-Entropy Loss (D) | Model Summary | | --- | --- | --- | --- | | p = 0.90, y = 1 | 0.0100 | -LN(0.90) = 0.1054 | Confident hit | | p = 0.80, y = 1 | 0.0400 | -LN(0.80) = 0.2231 | Good hit | | p = 0.30, y = 0 | 0.0900 | -LN(0.70) = 0.3567 | Mild miss | | p = 0.10, y = 0 | 0.0100 (Mean Brier = 0.0375) | -LN(0.90) = 0.1054 (Mean = 0.1976) | Beats 0.25 coin-flip! | - **Formula (Brier Score across probabilistic predictions)**: `=IF(OR(COUNT(A2:B5)<>8,MIN(A2:A5)<0,MAX(A2:A5)>1,AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1)),"Invalid inputs",ROUND(AVERAGE(C2:C5), 4))` - **Formula (Clipped Binary Cross-Entropy (Log-Loss) row & mean formula)**: `=IF(OR(COUNT(A2:B5)<>8,MIN(A2:A5)<0,MAX(A2:A5)>1,AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1)),"Invalid inputs",ROUND(AVERAGE(D2:D5), 4))` ### Brillouin Scattering Acoustic Phonon Frequency Shift (nu_B) in Optical Fiber - **URL**: https://sheets.arte-soft.com/en/learn/brillouin-acoustic-phonon-light-scattering-frequency-shift/ - **Summary**: Calculate the Léon Brillouin inelastic acoustic-phonon frequency shift nu_B = ((2 * n * v_a) / lambda_0) * SIN(RADIANS(theta / 2)) in GHz for distributed fiber-optic BOTDR strain/temperature sensors and SBS power limits. *Table — Why 1,550 nm telecom fibers reflect an ~11.15 GHz downshifted Stimulated Brillouin wave!:* | Scattering Geometry (Silica n = 1.45, va = 5,960 m/s, lambda0 = 1,550 nm) | sin(theta / 2) | Brillouin Shift nuB (GHz) | Photonics Application | | --- | --- | --- | --- | | Backward Fiber Core (theta = 180°) | 1.0000 | 11.151 GHz | SBS Threshold & BOTDR Fiber Sensing | | Right-Angle Bulk Cell (theta = 90°) | 0.7071 | 7.885 GHz | Elastic-Modulus Brillouin Spectroscopy | | Forward Beam (theta = 0°) | 0.0000 | 0.000 GHz | Zero Acoustic Momentum Transfer | - **Formula (Brillouin Acoustic Frequency Shift nu_B (GHz))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 > 180), "Invalid Brillouin Inputs", ROUND(((2 * B2 * B3) / B4) * SIN(RADIANS(B5 / 2)), 3))` - **Formula (Matched Acoustic Phonon Grating Period Lambda_a (nm) = lambda_0 / (2 * n * sin(theta / 2)))**: `=IF(OR(B2 <= 0, B4 <= 0, B5 <= 0, B5 > 180), "Invalid Brillouin Inputs", ROUND(B4 / (2 * B2 * SIN(RADIANS(B5 / 2))), 2))` ### Brillouin Function B_J(x): Quantum Paramagnetic Magnetization Saturation - **URL**: https://sheets.arte-soft.com/en/learn/brillouin-quantum-paramagnetism-function-spin-j-magnetization/ - **Summary**: Calculate fractional quantum paramagnetic magnetization M / M_sat = B_J(x) for discrete angular momentum J across high-field/cryogenic regimes vs. linear Curie-law approximation. *Table — From linear Curie susceptibility at room temperature to full quantum spin alignment near absolute zero!:* | Zeeman Ratio x = g μ_B J B / (k_B T) (J = 2.5) | Brillouin M / M_sat = B_J(x) | Linear Curie Approx ((J+1)/(3J))*x | Physical Regime | | --- | --- | --- | --- | | x = 1.20 (Moderate Cryogenic Field) | 0.4935 | 0.5600 (+13.5% Overestimate) | Onset of Spin Saturation | | x = 5.00 (High-Field 4.2 K SQUID) | 0.9374 | 2.3333 (Unphysical > 1!) | Near-Complete m_J = +J Alignment | | Invalid J <= 0 or x <= 0 | "Invalid Spin or Field Ratio" | Error Guard | Quantum Domain Guard | - **Formula (Exact Quantum Brillouin Fractional Magnetization B_J(x) = M / M_sat)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Spin or Field Ratio", ROUND((((2 * B2 + 1) / (2 * B2)) * ((EXP(2 * ((2 * B2 + 1) * B3 / (2 * B2))) + 1) / (EXP(2 * ((2 * B2 + 1) * B3 / (2 * B2))) - 1))) - ((1 / (2 * B2)) * ((EXP(2 * (B3 / (2 * B2))) + 1) / (EXP(2 * (B3 / (2 * B2))) - 1))), 4))` - **Formula (Low-Field Curie Linear Approximation ((J + 1) / (3 * J)) * x)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Spin or Field Ratio", ROUND(((B2 + 1) / (3 * B2)) * B3, 4))` ### Brinch Hansen (1970) Shape & Depth Factors Formula: Rectangular Footing Bearing Capacity - **URL**: https://sheets.arte-soft.com/en/learn/brinch-hansen-depth-and-shape-factors-shallow-foundation-bearing/ - **Summary**: Upgrade 2D strip-footing bearing capacity to real 3D rectangular and square pads (B <= L) embedded at depth D_f using Jørgen Brinch Hansen’s (1970) shape multipliers (s_q, s_gamma, s_c) and depth factor d_q. *Table — Why 2D strip-footing equations mispredict square and rectangular column pads—and how Brinch Hansen fixes 3D geometry!:* | Brinch Hansen (1970) 3D Multiplier (Square Pad B=2 m, L=2 m, D_f=1.5 m, phi'=32°) | Formula | Factor Value | | --- | --- | --- | | Surcharge Shape Factor s_q | 1 + (B / L) * TAN(phi') | 1.6249 (+62.5% 3D End Confinement!) | | Self-Weight Shape Factor s_gamma | 1 - 0.4 * (B / L) | 0.6000 (-40.0% 3D Wedge Reduction) | | Embedment Depth Factor d_q (D_f / B = 0.75 <= 1) | 1 + 2 * TAN(phi') * (1 - SIN(phi'))^2 * (D_f/B) | 1.2071 (+20.7% Overburden Shear) | - **Formula (Brinch Hansen (1970) Surcharge Depth Factor d_q (Handles Both Shallow D_f/B <= 1 & Deep ATAN(D_f/B)))**: `=IF(OR(B2 <= 0, B2 >= 50, B3 <= 0, B4 < B3, B5 < 0), "Invalid Pad Geometry (Requires 0 < B <= L & 0 < phi < 50)", ROUND(1 + 2 * TAN(RADIANS(B2)) * ((1 - SIN(RADIANS(B2))) ^ 2) * IF(B5 / B3 <= 1, B5 / B3, ATAN(B5 / B3)), 4))` - **Formula (Combined Surcharge Multiplier s_q * d_q for 3D Rectangular Pad (B <= L))**: `=IF(OR(B2 <= 0, B2 >= 50, B3 <= 0, B4 < B3, B5 < 0), "Invalid Pad Geometry (Requires 0 < B <= L & 0 < phi < 50)", ROUND((1 + (B3 / B4) * TAN(RADIANS(B2))) * (1 + 2 * TAN(RADIANS(B2)) * ((1 - SIN(RADIANS(B2))) ^ 2) * IF(B5 / B3 <= 1, B5 / B3, ATAN(B5 / B3))), 4))` ### Brinell Hardness (HBW) Spherical-Cap & Steel UTS Formula - **URL**: https://sheets.arte-soft.com/en/learn/brinell-hardness-hb-spherical-indent-area-and-steel-uts-estimate-formula/ - **Summary**: Calculate ASTM E10 Tungsten-Carbide Brinell Hardness HBW, Naive Projected-Circle Error HB, Estimated Carbon/Alloy Steel Ultimate Tensile Strength UTS (MPa), and d/D Validity Ratio. *Table — Divide by curved spherical-cap area PI()*D*(D - SQRT(D^2 - d^2))/2—never projected circle PI()*d^2/4!:* | ASTM E10 Brinell Inspection KPI (3,000 kgf, D = 10.0 mm Ball, d = 4.20 mm) | Formula | Verified Output | | --- | --- | --- | | Exact Brinell Hardness (HBW) | 2 * F_kgf / (PI() * D * (D - SQRT(D^2 - d^2))) | 206.53 HBW (142.55 @ d = 5.0 mm) | | Naive Flat-Circle Error (kgf/mm²) | F_kgf / (PI() * d^2 / 4) | 216.54 (+10.01 Overstatement!) | | Estimated Steel UTS (MPa) | 3.45 * Exact_Brinell_HBW | 712.51 MPa (491.81 @ d = 5.0 mm) | | ASTM E10 Indent Ratio (d / D) | Impression_d_mm / Ball_D_mm (0.24..0.60) | 0.42 (0.50 @ d = 5.0 mm) | - **Formula (ASTM E10 Exact Spherical-Cap HBW & Validity Formula)**: `=LET(f_kg, B2, dm_b, B3, dm_i, B4, IF(OR(f_kg <= 0, dm_b <= 0, dm_i < 0.24 * dm_b, dm_i > 0.6 * dm_b), "Invalid ASTM E10 Indent", ROUND((2 * f_kg) / (PI() * dm_b * (dm_b - SQRT((dm_b ^ 2) - (dm_i ^ 2)))), 2)))` - **Formula (Normalized Mild-Steel Wider Impression Check (Set Impression d = 5.00 mm))**: `=IF(ISTEXT(E2), E2, ROUND(3.45 * ((2 * B2) / (PI() * B3 * (B3 - SQRT((B3 ^ 2) - (B4 ^ 2))))), 2))` ### Brinson-Fachler Portfolio Attribution: Allocation, Selection & Interaction - **URL**: https://sheets.arte-soft.com/en/learn/brinson-fachler-performance-attribution-allocation-selection/ - **Summary**: Decompose active portfolio excess return into exact Brinson-Fachler Asset Allocation, Security Selection, and Interaction effects across sectors using SUMPRODUCT. *Table — Explain whether active alpha came from sector tilts or stock picking!:* | Attribution Component | Vector Formula | Contribution (% pts) | | --- | --- | --- | | Asset Allocation Effect | SUMPRODUCT(w_p - w_b, R_b - R_B) | +0.3500% | | Security Selection Effect | SUMPRODUCT(w_b, R_p - R_b) | -0.1500% | | Interaction Effect | SUMPRODUCT(w_p - w_b, R_p - R_b) | +0.3500% | | Total Active Return (8.60% - 8.05%) | Allocation + Selection + Interaction | +0.5500% | - **Formula (Brinson-Fachler Sector Allocation Effect (% Points))**: `=IF(OR(ABS(SUM(B2:B4) - 1) > 0.0001, ABS(SUM(C2:C4) - 1) > 0.0001), "Weights Must Sum to 1", LET(rbTot, SUMPRODUCT(C2:C4, E2:E4), ROUND(SUMPRODUCT(B2:B4 - C2:C4, E2:E4 - rbTot), 4)))` - **Formula (Security Selection Effect & Total Active Return Reconciliation)**: `=ROUND(SUMPRODUCT(C2:C4, D2:D4 - E2:E4), 4)` ### Broad-Based Weighted Average vs Full Ratchet Formula - **URL**: https://sheets.arte-soft.com/en/learn/broad-based-weighted-average-vs-full-ratchet-anti-dilution-formula/ - **Summary**: Calculate Down-Round Preferred Conversion Price under Broad-Based Weighted Average CP_new = CP_0 * (A + B) / (A + C), Narrow-Based Weighted Average, and Full Ratchet anti-dilution. *Table — Compare Broad-Based Weighted Average against punitive Full Ratchet down-round repricing!:* | Anti-Dilution Regime ($10M Series A @ $2.00, $6M Down Round @ $1.00) | Formula | Verified Output | | --- | --- | --- | | Broad-Based Conversion Price CP_BB | MIN(CP_0, CP_0 * (A_broad + B) / (A_broad + C)) | $1.6250 / sh (6.1538M sh) | | Narrow-Based Conversion Price CP_NB | MIN(CP_0, CP_0 * (A_narrow + B) / (A_narrow + C)) | $1.6000 / sh (6.2500M sh) | | Broad-Based Bonus Shares Issued (M) | I_A / CP_BB - I_A / CP_0 | +1.1538M shares | | Full Ratchet Bonus Shares Issued (M) | I_A / MIN(CP_0, P_down) - I_A / CP_0 | +5.0000M shares (+3.8462M harsher) | - **Formula (Clamped Broad-Based Weighted Average Conversion Price Formula)**: `=LET(sh_is, B2, sh_pl, B3, inv_a, B4, cp_in, B5, mn_nw, B6, px_dn, B7, IF(OR(sh_is <= 0, sh_pl < 0, inv_a <= 0, cp_in <= 0, mn_nw <= 0, px_dn <= 0), "Invalid Anti-Dilution Input", LET(a_br, sh_is + sh_pl, b_sh, mn_nw / cp_in, c_sh, mn_nw / px_dn, ROUND(MIN(cp_in, cp_in * (a_br + b_sh) / (a_br + c_sh)), 4))))` - **Formula (Full Ratchet vs Broad-Based Incremental Founder Dilution Formula)**: `=IF(ISTEXT(E2), E2, ROUND(B4 / MIN(B5, B7) - B4 / B5, 4))` ### Broad-Crested Weir Discharge & Critical Crest Depth (y_c = 2/3 H_0) Formula - **URL**: https://sheets.arte-soft.com/en/learn/broad-crested-weir-critical-depth-discharge-formula/ - **Summary**: Calculate dam spillway and levee overflow discharge Q = C_d * (2/3)^1.5 * SQRT(g) * b * H_0^1.5 and critical crest flow depth y_c = (2/3) * H_0. *Table — How Froude number Fr = 1 over a flat weir sill locks crest water depth to exactly 2/3 of total energy head!:* | Upstream Total Head H_0 (Width b = 2.4 m, C_d = 0.96) | Critical Crest Depth y_c = 2/3 H_0 | Volumetric Discharge Q (m³/s) | Hydraulic Control | | --- | --- | --- | --- | | H_0 = 0.45 m (Design Flood Stage) | 0.3000 m | 1.1856 m³/s | Critical Fr = 1 control over sill | | H_0 = 0.60 m (100-Yr Peak Stage) | 0.4000 m | 1.8253 m³/s | 1.5-power head scaling | | Invalid b <= 0, H_0 <= 0, or C_d Outside (0, 1] | Error Guard | "Invalid Weir Geometry" | Hydraulic Bounds Guard | - **Formula (Broad-Crested Weir Volumetric Discharge Q (m³/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 > 1), "Invalid Weir Geometry", ROUND(B4 * ((2 / 3) ^ 1.5) * SQRT(9.80665) * B2 * (B3 ^ 1.5), 4))` - **Formula (Critical Flow Depth Atop Sill Crest y_c = (2 / 3) * H_0 (m))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 > 1), "Invalid Weir Geometry", ROUND((2 / 3) * B3, 4))` ### Broadbent Adstock Decay & Hill Saturation Formula - **URL**: https://sheets.arte-soft.com/en/learn/broadbent-advertising-adstock-decay-and-saturation-response-formula/ - **Summary**: Model marketing carryover A_t = X_t + lambda * A_{t-1}, adstock half-life -LN(2) / LN(lambda), steady-state stock X / (1 - lambda), and Hill S-curve diminishing returns. *Table — Separate lagged ad carryover (Adstock) from diminishing marginal returns (Hill saturation)!:* | MMM Adstock & Hill Metric (X=100, lambda=0.60, L_max=50, K=250, s=2) | Formula | Verified Output | | --- | --- | --- | | Carryover Half-Life (Weeks) | -LN(2) / LN(lambda) | 1.3569 weeks | | Steady-State Adstock Pool (A_ss) | X / (1 - lambda) | 250.00 (vs 100 Weekly Spend) | | Steady-State Hill Incremental Lift | L_max * A_ss^s / (K^s + A_ss^s) | 25.00 ($k — Exact Half-Max!) | | Single-Burst Week-1 Lift (A_1 = 100) | 50 * 100^2 / (250^2 + 100^2) | 6.90 ($k Before Carryover Builds) | - **Formula (Broadbent Adstock Half-Life & Sustained Steady-State Pool Formula)**: `=IF(OR(B3 <= 0, B3 >= 1), "Require 0 < lambda < 1", ROUND(-LN(2) / LN(B3), 4))` - **Formula (Hill Saturation Incremental Lift at Steady-State Adstock Formula)**: `=LET(x_sp, B2, lm_d, B3, l_mx, B4, k_hs, B5, s_hl, B6, IF(OR(x_sp < 0, lm_d < 0, lm_d >= 1, l_mx <= 0, k_hs <= 0, s_hl <= 0), "Invalid MMM Input", LET(a_ss, x_sp / (1 - lm_d), ROUND(l_mx * (a_ss ^ s_hl) / ((k_hs ^ s_hl) + (a_ss ^ s_hl)), 2))))` ### Brokaw Gas Mixture Viscosity Formula: Polar & Nonpolar Binary Interaction - **URL**: https://sheets.arte-soft.com/en/learn/brokaw-polar-gas-mixture-viscosity-interaction-formula/ - **Summary**: Calculate low-pressure polar gas mixture viscosity μ_m = y_1*μ_1/(y_1 + y_2*φ_12) + y_2*μ_2/(y_2 + y_1*φ_21) using Brokaw dipole-corrected interaction factors. *Table — Why linear mole-fraction averaging fails badly for polar–nonpolar gas mixtures like NH3–N2 or H2O–Air!:* | Binary Gas Composition (NH3 / N2) | Pure Viscosities (μ_1, μ_2 μP) | Brokaw Factors (φ_12, φ_21) | Mixture Viscosity μ_m (μP) | | --- | --- | --- | --- | | y_1 = 0.40 NH3, y_2 = 0.60 N2 | 108.5 / 182.4 μP | 1.184 / 0.812 | 157.42 μP | | y_1 = 0.70 NH3, y_2 = 0.30 N2 | 108.5 / 182.4 μP | 1.184 / 0.812 | 134.99 μP | | Mole Fractions y_1 + y_2 <> 1 or μ <= 0 | Error Guard | Error Guard | "Invalid Mixture Inputs" | - **Formula (Brokaw Binary Polar Gas Mixture Viscosity μ_m (Micropoise, μP))**: `=IF(OR(B2 < 0, B3 < 0, ABS(B2 + B3 - 1) > 0.0001, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Mixture Inputs", ROUND((B2 * B4) / (B2 + B3 * B6) + (B3 * B5) / (B3 + B2 * B7), 2))` - **Formula (Nonlinear Deviation from Naive Mole-Fraction Weighted Average (μP))**: `=IF(OR(B2 < 0, B3 < 0, ABS(B2 + B3 - 1) > 0.0001, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Mixture Inputs", ROUND(((B2 * B4) / (B2 + B3 * B6) + (B3 * B5) / (B3 + B2 * B7)) - (B2 * B4 + B3 * B5), 2))` ### Bromley Film Boiling Correlation Formula: Horizontal Tube Vapor-Blanket Heat Transfer - **URL**: https://sheets.arte-soft.com/en/learn/bromley-horizontal-tube-film-boiling-heat-transfer-formula/ - **Summary**: Calculate stable film-boiling convective heat transfer above the Leidenfrost point on horizontal tubes using LeRoy A. Bromley’s 1950 Nusselt-analogue equation h_co = 0.62 * [k_v³ * rho_v * (rho_l - rho_v) * g * (h_fg + 0.4 * c_pv * deltaT_e) / (mu_v * D * deltaT_e)]^0.25. *Table — Nusselt falling-film physics turned upside down: buoyant vapor blanketing above the Leidenfrost temperature!:* | Quench / Reboiler Wall Superheat deltaT_e | Bromley Conductive Vapor-Film h_co | Convective Heat Flux h_co * deltaT_e | | --- | --- | --- | | deltaT_e = 220 K on D = 15 mm tube | 158.87 W/(m²·K) | 34.95 kW/m² | | Higher Superheat deltaT_e = 320 K | 146.14 W/(m²·K) | 46.76 kW/m² (thicker vapor blanket lowers h_co) | | Invalid rho_l <= rho_v or D <= 0 | Non-Buoyant Film | "Invalid Bromley Film Boiling Inputs" | - **Formula (Bromley Horizontal-Tube Film Boiling Coefficient h_co (W/m²·K))**: `=IF(OR(MIN(B2:B9) <= 0, B4 <= B3), "Invalid Bromley Film Boiling Inputs", ROUND(0.62 * ((((B2 ^ 3) * B3 * (B4 - B3) * 9.81 * (B5 + 0.4 * B9 * B8)) / (B6 * B7 * B8)) ^ 0.25), 2))` - **Formula (Modified Latent-Plus-Vapor-Superheat Enthalpy h_fg’ = h_fg + 0.4 * c_pv * deltaT_e (J/kg))**: `=IF(OR(MIN(B2:B9) <= 0, B4 <= B3), "Invalid Bromley Film Boiling Inputs", ROUND(B5 + 0.4 * B9 * B8, 0))` ### Broms Lateral Pile Capacity Formula: Short Rigid Free-Head Piles in Sand (Cohesionless) - **URL**: https://sheets.arte-soft.com/en/learn/broms-short-rigid-free-head-pile-lateral-capacity-cohesive-cohesionless/ - **Summary**: Calculate ultimate lateral soil resistance H_ult (kN) and maximum pile bending moment M_max (kN·m) for short rigid free-head piles in cohesionless sand using Bengt B. Broms’s (1964, ASCE) 3 * K_p passive wedge solution. *Table — Why 3D passive arching triples Rankine K_p in Broms’s lateral pile design!:* | Broms Cohesionless Pile Quantity (B = 0.60 m, L = 4.5 m, e = 1.5 m, gamma = 18 kN/m^3, phi = 34°) | Formula | Evaluated Value | | --- | --- | --- | | Rankine Passive Coefficient K_p | (1 + SIN(34°)) / (1 - SIN(34°)) | 3.5371 | | Ultimate Lateral Soil Load H_ult | 0.5 * gamma * B * L^3 * K_p / (e + L) | 290.09 kN | | Depth to Zero Shear / Peak Moment f | 0.82 * SQRT(H_ult / (gamma * B * K_p)) | 2.26 m (< L = 4.5 m) | | Maximum Shaft Bending Moment M_max | H_ult * (e + (2/3) * f) | 870.3 kN·m | - **Formula (Broms (1964) Short Rigid Free-Head Pile Ultimate Lateral Load H_ult (kN) in Sand)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 15, B6 >= 50), "Invalid Pile Geometry, Soil Unit Weight, or Friction Angle phi (15–50 deg)", ROUND((0.5 * B5 * B2 * (B3 ^ 3) * ((1 + SIN(RADIANS(B6))) / (1 - SIN(RADIANS(B6))))) / (B4 + B3), 2))` - **Formula (Maximum Pile Bending Moment M_max (kN·m) = H_ult * (e + (2/3) * f))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 15, B6 >= 50), "Invalid Pile Geometry, Soil Unit Weight, or Friction Angle phi (15–50 deg)", ROUND(((0.5 * B5 * B2 * (B3 ^ 3) * ((1 + SIN(RADIANS(B6))) / (1 - SIN(RADIANS(B6))))) / (B4 + B3)) * (B4 + (2 / 3) * SQRT((2 * ((0.5 * B5 * B2 * (B3 ^ 3) * ((1 + SIN(RADIANS(B6))) / (1 - SIN(RADIANS(B6))))) / (B4 + B3))) / (3 * B5 * B2 * ((1 + SIN(RADIANS(B6))) / (1 - SIN(RADIANS(B6))))))), 1))` ### Brooks-Herring Screened Ionized Impurity Scattering Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/brooks-herring-screened-ionized-impurity-mobility-screening-factor/ - **Summary**: Compute the Debye-screened Brooks-Herring parameter b = 1.2925E14 * ε_r * (m*/m_0) * T^2 / n and Coulomb scattering function f_BH(b) = LN(1 + b) - b / (1 + b) in doped semiconductors. *Table — How mobile carriers screen Coulomb impurity potentials via Debye screening!:* | n-Si Carrier Density n (300 K, εr=11.7, m*=0.26) | Screening Ratio b | Brooks-Herring Factor f_BH(b) | Physical Screening Regime | | --- | --- | --- | --- | | 1.0 × 10^17 cm^-3 (Moderate Doping) | 353.86 | 4.8745 | Weak Screening (Long Debye Tail) | | 1.0 × 10^18 cm^-3 (Heavy Doping) | 35.39 | 2.6217 | Strong Free-Carrier Screening | | Invalid n <= 0 or T <= 0 | Undefined | "Invalid Semiconductor Inputs" | Physical Positivity Guard | - **Formula (Brooks-Herring Coulomb Scattering Integral f_BH(b) = LN(1 + b) - b / (1 + b))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Semiconductor Inputs", ROUND(LN(1 + (1.2925E14 * B2 * B3 * (B4 ^ 2) / B5)) - (1.2925E14 * B2 * B3 * (B4 ^ 2) / B5) / (1 + (1.2925E14 * B2 * B3 * (B4 ^ 2) / B5)), 4))` - **Formula (Dimensionless Debye Screening Parameter b)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Semiconductor Inputs", ROUND(1.2925E14 * B2 * B3 * (B4 ^ 2) / B5, 2))` ### Brunauer-Emmett-Teller (BET) Multilayer Adsorption & Specific Surface Area - **URL**: https://sheets.arte-soft.com/en/learn/brunauer-emmett-teller-bet-multilayer-adsorption-isotherm/ - **Summary**: Calculate multilayer nitrogen physisorption uptake v = (v_m * c * x) / ((1 - x) * (1 + (c - 1) * x)) (cm^3 STP/g) across relative pressure x = P / P_0 and specific BET catalyst surface area S_BET (m^2/g). *Table — Turn 77 K nitrogen physisorption monolayers into catalyst m^2/g surface area!:* | Relative Pressure x = P / P0 (vm = 125 cm^3/g, c = 80) | BET Adsorbed Gas v (cm^3 STP/g) | Coverage Ratio v / vm | Adsorption Regime | | --- | --- | --- | --- | | Low BET Window (x = 0.05) | 106.33 cm^3/g | 0.851 Monolayers | Sub-Monolayer Filling | | Mid BET Window (x = 0.20) | 148.81 cm^3/g | 1.190 Monolayers | Multilayer Stacking Active | | Saturation Singularity (x >= 1.0) | Capillary Condensation Guard | "Invalid Relative Pressure (0-1)" | Requires 0 <= P/P0 < 1 | - **Formula (BET Multilayer Adsorbed Volume v (cm^3 STP/g) at x = P / P_0)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 1), "Invalid Relative Pressure (0-1)", ROUND((B2 * B3 * B4) / ((1 - B4) * (1 + (B3 - 1) * B4)), 2))` - **Formula (Specific Catalyst BET Surface Area S_BET (m^2/g) for 77 K N2 (0.162 nm^2))**: `=IF(B2 <= 0, "Invalid Monolayer Volume", ROUND(4.3525 * B2, 1))` ### Brunner-Munzel Heteroscedastic Rank Test and Stochastic Superiority - **URL**: https://sheets.arte-soft.com/en/learn/brunner-munzel-generalized-wilcoxon-behrens-fisher-stochastic-superiority/ - **Summary**: Solve the nonparametric Behrens-Fisher unequal-variance problem using Brunner and Munzel’s (2000) placement-variance rank statistic W_BM and Satterthwaite degrees of freedom. *Table — Understand why unequal group spread invalidates Mann-Whitney for median/dominance claims:* | Brunner-Munzel Quantity | Formula Expression | Sample Output | | --- | --- | --- | | Stochastic Superiority p_hat | (AVERAGE(R_2) - AVERAGE(R_1)) / N + 0.5 | 0.8400 (vs 0.5000 null) | | Placement Variances s_1^2, s_2^2 | VAR(R_1 - G_1) vs VAR(R_2 - G_2) | 0.2000 vs 3.2000 (16x ratio!) | | Brunner-Munzel Statistic W_BM | n_1*n_2*(R_bar_2 - R_bar_1) / (N * SQRT(n_1*s_1^2 + n_2*s_2^2)) | 2.0616 | | Satterthwaite Degrees of Freedom | (n_1*s_1^2 + n_2*s_2^2)^2 / ((n_1*s_1^2)^2/(n_1-1) + (n_2*s_2^2)^2/(n_2-1)) | 4.4981 | - **Formula (Stochastic Superiority (Relative Effect) p_hat Formula)**: `=ROUND((AVERAGE(C7:C11) - AVERAGE(C2:C6)) / ROWS(B2:B11) + 0.5, 4)` - **Formula (Brunner-Munzel W_BM Statistic Formula (Guarding Complete Separation))**: `=LET(cnt_a, ROWS(B2:B6), cnt_b, ROWS(B7:B11), v_a, VAR(E2:E6), v_b, VAR(E7:E11), pool_v, cnt_a * v_a + cnt_b * v_b, IF(pool_v <= 0.0000001, "Complete Separation (p=1)", ROUND((cnt_a * cnt_b * (AVERAGE(C7:C11) - AVERAGE(C2:C6))) / ((cnt_a + cnt_b) * SQRT(pool_v)), 4)))` ### BLDC Motor Kv Constant, Torque Kt & Shaft Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/brushless-dc-bldc-motor-kv-constant-back-emf-kt-torque-and-no-load-speed-formula/ - **Summary**: Calculate Exact SI Torque Constant Kt = 60 / (2*PI()*Kv) (N·m/A), Electromagnetic Torque (N·m), Resistive Voltage-Drop Loaded Speed (RPM), and Mechanical Shaft Power (kW). *Table — Higher Kv NEVER means "more powerful"—by Lorentz-Faraday reciprocity, doubling BLDC Kv cuts torque per amp Kt in HALF!:* | BLDC Drivetrain KPI (420 Kv, 48 V Bus, R=0.065 Ohm: 55 A Cruise vs 160 A Climb Burst) | Formula | Verified Output | | --- | --- | --- | | SI Torque Constant Kt (N·m/A) | 60 / (2 * PI() * Motor_Kv_RPM_V) | 0.02274 N·m/A (exact 9.5493 / Kv!) | | Electromagnetic Torque (N·m) | Kt_Nm_A * Motor_Current_A | 1.25 N·m (3.64 N·m @ 160 A burst) | | Loaded Shaft Speed N (RPM) | Motor_Kv * (Bus_V - Current_A * Resist_Ohm) | 18,658.5 RPM (15,792.0 RPM @ 160 A droop!) | | Mechanical Shaft Power (kW) | (Torque_Nm * Loaded_RPM * 2*PI()/60) / 1000 | 2.44 kW (6.02 kW + 1.66 kW I²R copper heat!) | - **Formula (Lorentz-Faraday BLDC Kv-to-Kt Reciprocity, Speed Droop & Shaft Power Formula)**: `=LET(kv_r, B2, vb_v, B3, rl_o, B4, im_a, B5, kt_n, 60 / (2 * PI() * kv_r), tq_n, kt_n * im_a, nr_p, kv_r * (vb_v - im_a * rl_o), IF(OR(kv_r < 10, kv_r > 15000, vb_v < 3, vb_v > 1000, rl_o <= 0, im_a < 0, im_a * rl_o >= vb_v), "Invalid BLDC Input", ROUND((tq_n * nr_p * 2 * PI() / 60) / 1000, 2)))` - **Formula (160 A Full-Throttle Climb Burst Copper Droop Check (Set Current B5 = 160 A))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * (B3 - B5 * B4), 1))` ### Bubble Chart Size Formula: Area-Proportional Radius SQRT(Z / Z_max) vs Diameter Distortion - **URL**: https://sheets.arte-soft.com/en/learn/bubble-chart-area-proportional-radius-and-z-size-scaling-formula/ - **Summary**: Encode a third quantitative variable Z accurately in Bubble Charts by scaling circle radius as R_i = R_max * SQRT(Z_i / MAX(Z)) so visual disk area PI * R_i^2 stays strictly proportional to magnitude Z_i. *Table — Avoid Tufte’s "Lie Factor" — scale bubble RADIUS by SQRT(Z), never linearly by Z!:* | Market Segment | Revenue Z ($M) | Area Share Z / Z_max | True Area-Scaled Radius (R_max = 20 pt) | Distorted Linear Radius Error | | --- | --- | --- | --- | --- | | Enterprise | $160M | 1.0000 (100% of Max) | 20.00 pt | 20.00 pt (1.0x area) | | Mid-Market | $40M | 0.2500 (1/4 of Max) | 10.00 pt (Area = 1/4!) | 5.00 pt -> 1/16 area (4x too tiny!) | | SMB Self-Serve | $10M | 0.0625 (1/16 of Max) | 5.00 pt (Area = 1/16!) | 1.25 pt -> 1/256 area (invisible!) | - **Formula (Area-Proportional Bubble Radius R_i = R_max * SQRT(Z_i / MAX(Z_range)))**: `=IF(OR(C3 < 0, MAX($C$2:$C$5) <= 0, $E$2 <= 0), "Requires Non-Negative Z, Positive Max Z, and R_max > 0", ROUND($E$2 * SQRT(C3 / MAX($C$2:$C$5)), 2))` - **Formula (Visual Area Verification Ratio (R_i / R_max)^2 = Z_i / Z_max)**: `=IF(OR(C3 < 0, MAX($C$2:$C$5) <= 0), "Invalid Z Values", ROUND(C3 / MAX($C$2:$C$5), 4))` ### Buchanan Club Goods Optimal Membership Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/buchanan-economic-theory-of-clubs-optimal-membership-size-formula/ - **Summary**: Calculate James Buchanan’s Optimal Club Membership N* = SQRT(F / c_cong), Optimal Cost-Sharing Dues F / N*, Marginal Congestion Externality, and Per-Member Net Club Surplus. *Table — Balance cost-sharing economies against crowding externalities in excludable club goods!:* | Buchanan Club Good Metric (F=$90,000, B_0=$5,000, c_cong=$25) | Formula | Verified Output | | --- | --- | --- | | Optimal Club Membership N* | SQRT(F / c_cong) | 60 members | | Optimal Member Dues (= Crowding Cost) | F / N* = SQRT(F * c_cong) | $1,500.00 / member | | Net Surplus per Club Member ($) | B_0 - 2 * SQRT(F * c_cong) | $2,000.00 / member | | Aggregate Club Total Welfare ($) | N* * (B_0 - 2 * SQRT(F * c_cong)) | $120,000.00 | - **Formula (Viability-Guarded Optimal Club Membership & Net Surplus Formula)**: `=LET(fx_c, B2, bn_g, B3, cg_s, B4, IF(OR(fx_c <= 0, bn_g <= 0, cg_s <= 0), "Invalid Club Input", LET(du_op, SQRT(fx_c * cg_s), IF(bn_g < 2 * du_op, "Unviable Club (Cost > Benefit)", ROUND(bn_g - 2 * du_op, 2)))))` - **Formula (Aggregate Club Welfare Formula)**: `=IF(ISTEXT(E4), E4, ROUND(SQRT(B2 / B4) * E4, 2))` ### Bucket Elevator Critical RPM, Pole Distance & Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/bucket-elevator-centrifugal-discharge-critical-rpm-pole-distance-and-capacity/ - **Summary**: Calculate Centrifugal Pole Distance hp = g / omega² (m), Critical Zero-Throw Pulley Speed Ncrit (RPM), Linear Belt/Chain Speed (m/s), and Mass Elevating Capacity Qm (t/h). *Table — Run a centrifugal bucket elevator above its critical pole-distance RPM and grain pins to the bucket wall—dumping back down the return leg!:* | Centrifugal Grain Leg KPI (R=0.35 m, 42 RPM, 4.5 L Buckets @ 0.25 m, 75% Fill) | Formula | Verified Output | | --- | --- | --- | | Centrifugal Pole Distance hp (m) | 9.80665 / (((2 * PI() * RPM) / 60) ^ 2) | 0.507 m (0.358 m near-critical @ 50 RPM!) | | Critical Pinning Speed Ncrit (RPM) | (60 / (2 * PI())) * SQRT(9.80665 / R_m) | 50.55 RPM | | Linear Belt Speed v (m/s) | ((2 * PI() * RPM) / 60) * R_m | 1.54 m/s (1.83 m/s @ 50 RPM) | | Vertical Mass Capacity Qm (t/h) | 3600*(v/Spacing)*(Vol_L/1000)*Fill*rho | 59.85 t/h (71.25 t/h @ 50 RPM) | - **Formula (Pole-Distance Kinematics & Centrifugal Bucket Elevator Capacity Formula)**: `=LET(rd_m, B2, nr_m, B3, vl_l, B4, sp_m, B5, fl_f, B6, rb_t, B7, IF(OR(rd_m <= 0.1, nr_m <= 0, vl_l <= 0, sp_m <= 0.05, fl_f <= 0, fl_f > 1, rb_t <= 0), "Invalid Elevator Input", LET(nc_r, (60 / (2 * PI())) * SQRT(9.80665 / rd_m), IF(nr_m >= nc_r, "OVER CRITICAL RPM (BACK-LEGGING)", LET(vb_s, ((2 * PI() * nr_m) / 60) * rd_m, ROUND(3600 * (vb_s / sp_m) * (vl_l / 1000) * fl_f * rb_t, 2))))))` - **Formula (High-Speed 50.0 RPM Near-Critical Pole Approach Check (Set Speed N = 50.0 RPM vs 52.0 RPM Pinning))**: `=IF(ISTEXT(E5), E5, ROUND(9.80665 / (((2 * PI() * B3) / 60) ^ 2), 3))` ### Bühlmann-Straub Credibility Factor Z and Pure Premium Formula - **URL**: https://sheets.arte-soft.com/en/learn/buhlmann-straub-empirical-bayes-credibility-z-weight-and-premium/ - **Summary**: Blend policyholder loss experience X_bar with manual class rate mu using Bühlmann-Straub credibility weight Z = (m * a) / (m * a + v) without division-by-zero traps. *Table — Balance noisy small-fleet claim experience against collective class heterogeneity:* | Bühlmann-Straub Metric (m=150, v=100k, a=1k) | Formula | Verified Output | | --- | --- | --- | | Bühlmann Half-Credibility Exposure (k) | IF(a = 0, "Infinite (Z=0)", v / a) | 100.00 exposures | | Credibility Factor (Z) | (m_exp * a) / (m_exp * a + v) | 0.6000 (60.00%) | | Complement of Credibility (1 - Z) | v / (m_exp * a + v) | 0.4000 (40.00%) | | Credibility Pure Premium (P_cred) | Z * X_bar + (1 - Z) * mu_manual | 632.00 | - **Formula (Singularity-Free Bühlmann-Straub Credibility Factor Z = (m * a) / (m * a + v) Formula)**: `=LET(m_ex, B2, v_epv, B5, a_vhm, B6, IF(OR(m_ex <= 0, v_epv < 0, a_vhm < 0, v_epv + a_vhm <= 0), "Invalid Credibility Input", ROUND((m_ex * a_vhm) / (m_ex * a_vhm + v_epv), 4)))` - **Formula (Credibility-Weighted Pure Premium Z * X_bar + (1 - Z) * mu_manual Formula)**: `=LET(m_ex, B2, x_br, B3, mu_m, B4, v_epv, B5, a_vhm, B6, IF(OR(m_ex <= 0, x_br < 0, mu_m <= 0, v_epv < 0, a_vhm < 0, v_epv + a_vhm <= 0), "Invalid Credibility Input", LET(z_cr, (m_ex * a_vhm) / (m_ex * a_vhm + v_epv), ROUND(z_cr * x_br + (1 - z_cr) * mu_m, 2))))` ### Build Dynamic mailto: Email Links With Subject, CC & URL-Encoded Body - **URL**: https://sheets.arte-soft.com/en/learn/build-mailto-email-uri-subject-and-body-substitute/ - **Summary**: Assemble RFC-6068 mailto: URIs from spreadsheet recipient, CC, subject, and body cells—replacing spaces with %20 via SUBSTITUTE so mail clients never truncate subjects at the first space. *Table — Prevent broken mailto: subjects by encoding spaces as %20!:* | Email Field | Spreadsheet Cell Input | RFC-6068 Encoded Component | | --- | --- | --- | | Recipient To (B2) | ap@northwind.io | mailto:ap@northwind.io? | | Optional CC (B3) | cfo@northwind.io (or blank) | cc=cfo@northwind.io& (omitted if blank) | | Subject Line (B4) | Invoice 1042 Past Due | subject=Invoice%201042%20Past%20Due | | Short Body (B5) | Please remit balance | &body=Please%20remit%20balance | - **Formula (RFC-6068 mailto: URI Builder With Optional CC & %20 Encoding)**: `=IF(ISERROR(FIND("@", B2)), "Invalid Recipient Email", "mailto:" & TRIM(B2) & "?" & IF(OR(ISBLANK(B3), TRIM(B3) = ""), "", "cc=" & TRIM(B3) & "&") & "subject=" & SUBSTITUTE(TRIM(B4), " ", "%20") & "&body=" & SUBSTITUTE(TRIM(B5), " ", "%20"))` - **Formula (Verify Total URI Length Against Excel's 255-Character HYPERLINK Limit)**: `=LEN("mailto:" & TRIM(B2) & "?" & IF(OR(ISBLANK(B3), TRIM(B3) = ""), "", "cc=" & TRIM(B3) & "&") & "subject=" & SUBSTITUTE(TRIM(B4), " ", "%20") & "&body=" & SUBSTITUTE(TRIM(B5), " ", "%20"))` ### Bulk Carrier Stowage Factor & Full-and-Down Formula - **URL**: https://sheets.arte-soft.com/en/learn/bulk-carrier-stowage-factor-grain-cubic-and-full-and-down-draft-cap/ - **Summary**: Calculate Vessel Ideal Stowage Factor V_hold / DWT_cargo, Maximum Loadable Tonnage MIN(DWT_cargo, V_hold / (SF * (1 + bs))), Deadweight Utilization, and Cube-Out vs Weigh-Out status. *Table — Determine whether a dry-bulk vessel cubes out in the holds or weighs out at Plimsoll draft!:* | Dry-Bulk Stowage Metric (50,000 MT Cargo DWT, 63,000 m^3 Hold, SF=1.40) | Formula | Verified Output | | --- | --- | --- | | Vessel Ideal Stowage Factor (m^3/MT) | V_hold / DWT_cargo | 1.2600 m^3/MT | | Maximum Loadable Cargo (MT) | MIN(DWT_cargo, V_hold / (SF * (1 + bs))) | 45,000.00 MT | | Deadweight Draft Utilization | Loadable_Cargo / DWT_cargo | 0.9000 (90.00% DWT Used) | | Naval Stowage Limitation | SF_eff vs SF_vessel | Cube-Out: Hold Volume Full | - **Formula (Maximum Loadable Cargo Tonnage Formula)**: `=LET(dw_c, B2, vl_h, B3, sf_c, B4, bs_p, B5, IF(OR(dw_c <= 0, vl_h <= 0, sf_c <= 0, bs_p < 0), "Invalid Stowage Plan", ROUND(MIN(dw_c, vl_h / (sf_c * (1 + bs_p))), 2)))` - **Formula (Cube-Out vs Weigh-Out vs Full-and-Down Classifier Formula)**: `=LET(sf_ef, B4 * (1 + B5), sf_vs, B3 / B2, IF(ISTEXT(E3), E3, IF(ABS(sf_ef - sf_vs) < 0.0001, "Full and Down Optimal", IF(sf_ef > sf_vs, "Cube-Out: Hold Volume Full", "Weigh-Out: Summer Draft Reached"))))` ### Bullet Graph Formula: Stacked Qualitative Range Deltas, Actual Bar & Target Variance - **URL**: https://sheets.arte-soft.com/en/learn/bullet-graph-qualitative-band-deltas-and-target-marker-formula/ - **Summary**: Build Stephen Few’s compact dashboard Bullet Graph using incremental stacked qualitative bands (Poor, Satisfactory - Poor, Good - Satisfactory), Actual Performance % of Target, and Target Gap. *Table — Replace bloated radial speedometer gauges with Stephen Few’s linear Bullet Graph!:* | Bullet Graph Series (Thresholds 60 / 85 / 100; Actual = 88; Target = 90) | Worksheet Formula | Plotted Value | | --- | --- | --- | | Band 1: Poor Range [0..60] | =B2 | 60 | | Band 2: Satisfactory Incremental Width [60..85] | =B3 - B2 | 25 | | Band 3: Good Incremental Width [85..100] | =B4 - B3 | 15 | | Actual % of Comparative Target | =ROUND(100 * B5 / B6, 2) | 97.78% (-2.00 vs Target) | - **Formula (Incremental Qualitative Band Widths (Satisfactory = Q_2 - Q_1, Good = Q_3 - Q_2))**: `=IF(OR(B2 <= 0, B3 <= B2, B4 <= B3), "Thresholds Must Satisfy 0 < Poor < Satisfactory < Good", B3 - B2)` - **Formula (Actual Attainment % Against Comparative Bullet Target)**: `=IF(OR(B5 < 0, B6 <= 0), "Requires Actual >= 0 and Target > 0", ROUND(100 * B5 / B6, 2))` ### Supply Chain Bullwhip Effect Ratio: order variance amplification & lead-time bound - **URL**: https://sheets.arte-soft.com/en/learn/bullwhip-effect-ratio-order-variance-amplification/ - **Summary**: Measure supply-chain order distortion via Bullwhip Variance Ratio VAR.S(Orders) / VAR.S(Demand), CV Ratio, and Chen-Simchi-Levi moving-average lower bound. *Table — Compare observed order variance with demand variance:* | Week | POS Retail Demand (A) | Distributor Orders (B) | Supply Chain Diagnostic | | --- | --- | --- | --- | | Weeks 1–2 | 98, 102 | 90, 110 | Same mean = 100 units/wk | | Weeks 3–5 | 100, 99, 101 | 100, 95, 105 | POS VAR.S = 2.5 \| Orders VAR.S = 62.5 | | Empirical Bullwhip | VAR.S(B) / VAR.S(A) | 62.5 / 2.5 = 25.00x | CV ratio5; squared CV ratio25 | | Uncorrelated-demand benchmark (L2,p4) | 1 + 2L/p + 2L^2/p^2 | 1 + 1.0 + 0.5 | Model benchmark2.50 | - **Formula (Empirical Bullwhip Variance Ratio VAR.S(Orders) / VAR.S(POS_Demand))**: `=IF(OR(COUNT(A2:B6)<>10,MIN(A2:B6)<0),"Invalid inputs",IF(VAR.S(A2:A6)=0,"Undefined ratio",ROUND(VAR.S(B2:B6) / VAR.S(A2:A6), 2)))` - **Formula (Model-specific uncorrelated-demand benchmark)**: `=IF(COUNT(D2:D3)<>2,"Invalid inputs",IF(OR(D2<0,D3<1,D2<>INT(D2),D3<>INT(D3)),"Invalid inputs",ROUND(1 + (2 * D2) / D3 + (2 * (D2 ^ 2)) / (D3 ^ 2), 4)))` ### Bulow-Coase Durable Monopoly Selling vs Leasing Formula - **URL**: https://sheets.arte-soft.com/en/learn/bulow-coase-durable-goods-monopoly-time-inconsistency-vs-leasing/ - **Summary**: Quantify Ronald Coase’s (1972) and Jeremy Bulow’s (1982) two-period durable-goods monopoly price erosion and compare subgame-perfect outright selling profit against credible leasing. *Table — Why Xerox, IBM, and SaaS vendors lease instead of selling perpetual ownership!:* | Durable Monopoly Regime (a = 100, b = 1, delta = 1.0) | Formula | Verified Output | | --- | --- | --- | | Credible Leasing / Subscription PV Profit | (1 + delta) * (a^2 / (4 * b)) | 5,000.00 (Full Commitment) | | Outright Sale Period-1 Price (P_1_Sell) | a * (2 + delta)^2 / (2 * (4 + delta)) | 90.00 (vs 100 Committed Sale) | | Subgame-Perfect Outright Selling PV Profit | (a^2 / (4 * b)) * ((2 + delta)^2 / (4 + delta)) | 4,500.00 | | Coase Commitment Value of Leasing | Pi_Lease - Pi_Sell | 500.00 (10.00% Gain from Leasing!) | - **Formula (Credible Two-Period Leasing vs Subgame-Perfect Selling PV Profit Formula)**: `=LET(a_in, B2, b_sl, B3, dl_f, B4, IF(OR(a_in <= 0, b_sl <= 0, dl_f < 0, dl_f > 1), "Invalid Durable Input", ROUND(((a_in ^ 2) / (4 * b_sl)) * (((2 + dl_f) ^ 2) / (4 + dl_f)), 2)))` - **Formula (Coase Time-Inconsistency Profit Erosion % Formula)**: `=LET(dl_f, B4, IF(OR(B2 <= 0, B3 <= 0, dl_f < 0, dl_f > 1), "Invalid Durable Input", ROUND(1 - (((2 + dl_f) ^ 2) / ((1 + dl_f) * (4 + dl_f))), 4)))` ### Bulow-Klemperer Extra-Bidder Auction Revenue Formula - **URL**: https://sheets.arte-soft.com/en/learn/bulow-klemperer-auctions-vs-negotiations-extra-bidder-theorem/ - **Summary**: Verify Jeremy Bulow & Paul Klemperer’s (1996) theorem that an (N + 1)-bidder zero-reserve auction (N/(N + 2))*V_max strictly beats an N-bidder Myerson optimal-reserve auction! *Table — Why M&A advisors should recruit ONE extra buyer rather than haggling over clever reserve prices!:* | Seller Mechanism (Uniform [0, 120], Current N = 2) | Formula | Expected Revenue | | --- | --- | --- | | N-Bidder Zero-Reserve Auction (N = 2) | ((N - 1) / (N + 1)) * V_max | 40.00 | | N-Bidder Myerson Optimal Reserve (r* = 60) | V_max * ((N - 1)/(N + 1) + 1/((N + 1)*2^N)) | 50.00 | | (N + 1)-Bidder Zero-Reserve Auction (3 Bidders) | (N / (N + 2)) * V_max | 60.00 (+10.00 Bulow-Klemperer Gain!) | | Single-Buyer Case (N = 1: Monopoly vs 2-Bidder) | 40.00 vs 30.00 | +10.00 Gain Over Monopoly Pricing! | - **Formula (N-Bidder Myerson Optimal-Reserve Expected Revenue Formula)**: `=LET(v_mx, B2, n_bd, B3, IF(OR(v_mx <= 0, n_bd < 1, INT(n_bd) <> n_bd), "Require V_max > 0 and Integer N >= 1", ROUND(v_mx * (((n_bd - 1) / (n_bd + 1)) + (1 / ((n_bd + 1) * (2^n_bd)))), 4)))` - **Formula (Bulow-Klemperer Extra-Bidder Revenue Advantage Formula)**: `=LET(v_mx, B2, n_bd, B3, IF(OR(v_mx <= 0, n_bd < 1, INT(n_bd) <> n_bd), "Require V_max > 0 and Integer N >= 1", LET(rv_n1, (n_bd / (n_bd + 2)) * v_mx, rv_op, v_mx * (((n_bd - 1) / (n_bd + 1)) + (1 / ((n_bd + 1) * (2^n_bd)))), ROUND(rv_n1 - rv_op, 4))))` ### Bundle and quote pricing with SUMPRODUCT (quantities, unit prices, and discounts) - **URL**: https://sheets.arte-soft.com/en/learn/bundle-pricing-dot-product-sumproduct/ - **Summary**: Compute gross subtotals, line-discounted net totals, and total savings in a single cell with SUMPRODUCT—no line-extension column required. *Table — Multiply Qty * UnitPrice * (1 - DiscPct) row-by-row in memory:* | Item (A) | Qty (B) | UnitPrice (C) | DiscPct (D) | Net Line Value | | --- | --- | --- | --- | --- | | Seat | 10 | 25 | 0.1 | 225 | | Addon | 4 | 50 | 0.2 | 160 | | Onboarding | 1 | 300 | 0 | 300 | - **Formula (Net bundle total, gross subtotal, and total dollar discount)**: `=ROUND(SUMPRODUCT(B2:B4 * C2:C4 * (1 - D2:D4)), 2)` - **Formula (Gross subtotal before discounts)**: `=SUMPRODUCT(B2:B4, C2:C4)` ### Burch-Wartofsky Point Scale (BWPS) Calculator: Thyroid Storm Diagnostic Criteria - **URL**: https://sheets.arte-soft.com/en/learn/burch-wartofsky-point-scale-bwps-thyroid-storm-diagnostic-score/ - **Summary**: Calculate Henry B. Burch and Leonard Wartofsky’s (1993) Thyroid Storm Point Scale (0–140 points) across Thermoregulatory Dysfunction, CNS Effects, GI-Hepatic Dysfunction, Tachycardia, Heart Failure, Atrial Fibrillation, and Precipitant History. *Table — Why thyroid storm is a CLINICAL bedside diagnosis — never wait for free-T4 lab turnaround!:* | BWPS Total Score Range (0 to 140) | ATA / Burch-Wartofsky Diagnostic Tier | Immediate Clinical Management | | --- | --- | --- | | < 25 Points | Thyroid Storm Unlikely | Treat thyrotoxicosis; monitor serial vitals | | 25 to 44 Points | Impending Thyroid Storm | Close step-down/ICU observation; early aggressive therapy if deteriorating | | >= 45 Points | Highly Suggestive of Thyroid Storm | Full ICU multi-modal thyroid storm protocol + treat precipitant | - **Formula (Total Burch-Wartofsky Point Scale (BWPS) Score)**: `=IF(OR(B2 < 35, B2 > 43, B3 < 0, B3 > 3, B4 < 0, B4 > 2, B5 < 30, B5 > 260, B6 < 0, B6 > 3, B7 < 0, B7 > 2), "Invalid BWPS Clinical Inputs", IF(B2 >= 40, 30, IF(B2 >= 39.4, 25, IF(B2 >= 38.9, 20, IF(B2 >= 38.3, 15, IF(B2 >= 37.8, 10, IF(B2 >= 37.2, 5, 0)))))) + B3 * 10 + B4 * 10 + IF(B5 >= 140, 25, IF(B5 >= 130, 20, IF(B5 >= 120, 15, IF(B5 >= 110, 10, IF(B5 >= 99, 5, 0))))) + B6 * 5 + B7 * 10)` - **Formula (Burch-Wartofsky Diagnostic Classification (< 25, 25–44, >= 45))**: `=IF(OR(B2 < 35, B2 > 43, B3 < 0, B3 > 3, B4 < 0, B4 > 2, B5 < 30, B5 > 260, B6 < 0, B6 > 3, B7 < 0, B7 > 2), "Invalid BWPS Clinical Inputs", IF((IF(B2 >= 40, 30, IF(B2 >= 39.4, 25, IF(B2 >= 38.9, 20, IF(B2 >= 38.3, 15, IF(B2 >= 37.8, 10, IF(B2 >= 37.2, 5, 0)))))) + B3 * 10 + B4 * 10 + IF(B5 >= 140, 25, IF(B5 >= 130, 20, IF(B5 >= 120, 15, IF(B5 >= 110, 10, IF(B5 >= 99, 5, 0))))) + B6 * 5 + B7 * 10) >= 45, "BWPS >= 45: Highly Suggestive of Thyroid Storm", IF((IF(B2 >= 40, 30, IF(B2 >= 39.4, 25, IF(B2 >= 38.9, 20, IF(B2 >= 38.3, 15, IF(B2 >= 37.8, 10, IF(B2 >= 37.2, 5, 0)))))) + B3 * 10 + B4 * 10 + IF(B5 >= 140, 25, IF(B5 >= 130, 20, IF(B5 >= 120, 15, IF(B5 >= 110, 10, IF(B5 >= 99, 5, 0))))) + B6 * 5 + B7 * 10) >= 25, "BWPS 25–44: Suggestive of Impending Thyroid Storm", "BWPS < 25: Thyroid Storm Unlikely")))` ### Burkhardt Wellbore Surge & Swab Tripping Pressure Formula - **URL**: https://sheets.arte-soft.com/en/learn/burkhardt-wellbore-tripping-pipe-surge-and-swab-clinging-pressure-margin-formula/ - **Summary**: Calculate Burkhardt Effective Annular Fluid Velocity Veff (m/s), Laminar Annular Surge/Swab Pressure Change (kPa), Running-In Surge EMW (SG), and Pulling-Out Swab EMW (SG). *Table — Over-65% of oilfield gas blowouts start NOT while drilling, but when pulling drillpipe too fast swabs bottomhole pressure below pore pressure!:* | Burkhardt Surge/Swab KPI (Dp=127 mm, K=0.45, TVD=2,800 m, Static Mud=1.340 SG) | Formula | Verified Output | | --- | --- | --- | | Effective Fluid Velocity Veff (m/s) | Vp * ((Dp^2 / (Dh^2 - Dp^2)) + Cling_K) | 0.441 m/s (2.247 m/s fast pull in slim hole!) | | Surge / Swab Friction dP (kPa) | ((12 * (mu/1000) * Veff) / ((Dh-Dp)/2000)^2)*L/1000 | 209.8 kPa (5,489.5 kPa = 796 psi swab!) | | Running-In Surge EMW (SG) | Static_SG + Trip_dP_kPa / (9.80665 * TVD_m) | 1.348 SG (1.540 SG lost-returns fracture!) | | Pulling-Out Swab EMW (SG) | Static_SG - Trip_dP_kPa / (9.80665 * TVD_m) | 1.332 SG (1.140 SG SWABBED GAS KICK!) | - **Formula (Burkhardt (1961) Closed-End Piston Displacement + Clinging Drag Formula)**: `=LET(dp_m, B2, dh_m, B3, kc_f, B4, vp_s, B5, mu_c, B6, lv_m, B7, sg_m, B8, ve_s, vp_s * (((dp_m ^ 2) / ((dh_m ^ 2) - (dp_m ^ 2))) + kc_f), hs_m, (dh_m - dp_m) / 2000, pt_k, ((12 * (mu_c / 1000) * ve_s) / (hs_m ^ 2)) * (lv_m / 1000), IF(OR(dp_m < 50, dh_m < dp_m + 25, kc_f < 0.3, kc_f > 0.55, vp_s <= 0, vp_s > 3, mu_c < 1, mu_c > 150, lv_m < 100, sg_m < 0.85, sg_m > 2.5), "Invalid Trip Input", ROUND(sg_m - (pt_k / (9.80665 * lv_m)), 3)))` - **Formula (Fast Hoisting Across Tight BHA/Slim Hole (`D_h = 171.5` mm, `V_p = 1.35` m/s, `mu = 36` cP) Swab-Kick Check)**: `=IF(ISTEXT(E5), E5, LET(ve_s, B5 * (((B2 ^ 2) / ((B3 ^ 2) - (B2 ^ 2))) + B4), hs_m, (B3 - B2) / 2000, ROUND(((12 * (B6 / 1000) * ve_s) / (hs_m ^ 2)) * (B7 / 1000), 1)))` ### Burmister Two-Layer Pavement & Odemark Equivalent Thickness Formula: Deflection Factor F_2 - **URL**: https://sheets.arte-soft.com/en/learn/burmister-two-layer-elastic-pavement-surface-deflection-factor-formula/ - **Summary**: Calculate two-layer elastic pavement surface deflection w_0 = F_2 * (1.5 * q * a / E_2) and Odemark’s Method of Equivalent Thickness h_e = f * h_1 * (E_1 / E_2)^(1/3) for stiff asphalt or base courses over soft subgrade. *Table — Why Boussinesq fails on layered roads — and how Burmister (1943) & Odemark (1949) quantify load-spreading!:* | Two-Layer System (q = 80 psi, a = 6 in, h_1 = 8 in, E_2 = 10,000 psi, mu = 0.35) | Odemark Equivalent h_e (f = 0.9) | Deflection Factor F_2 | Center Deflection w_0 | | --- | --- | --- | --- | | Unreinforced Subgrade Half-Space (E_1 = E_2 = 10k psi) | 7.20 in | 1.0000 | 0.0720 in (72.0 mils) | | Granular Base Over Subgrade (E_1 = 40,000 psi, Ratio = 4) | 11.43 in | 0.5986 | 0.0431 in (43.1 mils) | | Stiff Asphalt Over Subgrade (E_1 = 350,000 psi, Ratio = 35) | 23.55 in | 0.2684 | 0.0193 in (19.3 mils) | - **Formula (Odemark (1949) Transformed Equivalent Subgrade Thickness h_e (in or mm))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B3 < B4), "Requires h_1 > 0 and Stiff Upper Layer E_1 >= Subgrade E_2 > 0", ROUND(0.9 * B2 * ((B3 / B4) ^ (1 / 3)), 2))` - **Formula (Burmister-Odemark Two-Layer Dimensionless Deflection Factor F_2 (0 < F_2 <= 1))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B3 < B4, B5 <= 0), "Invalid Two-Layer Inputs", ROUND((1 / SQRT(1 + ((0.9 * B2 * ((B3 / B4) ^ (1 / 3))) / B5) ^ 2)) + (B4 / B3) * (1 - (1 / SQRT(1 + ((0.9 * B2 * ((B3 / B4) ^ (1 / 3))) / B5) ^ 2))), 4))` ### Burstein-Moss Shift: Degenerate Doping Optical Bandgap Widening - **URL**: https://sheets.arte-soft.com/en/learn/burstein-moss-degenerate-doping-optical-bandgap-blue-shift/ - **Summary**: Calculate the conduction-band Pauli-blocking blue-shift ΔE_BM = 3.64645E-15 * n^(2/3) / m_eh^* (eV) and apparent optical bandgap E_g,opt = E_g0 + ΔE_BM in ITO and AZO transparent conducting oxides. *Table — How heavy tin doping makes Indium Tin Oxide (ITO) BOTH metallic and UV-transparent!:* | ITO Degenerate Carrier Density n (Eg0 = 3.55 eV, m_eh* = 0.30) | Burstein-Moss ΔE_BM (eV) | Apparent Optical Eg,opt (eV) | UV Cutoff Wavelength | | --- | --- | --- | --- | | Undoped In2O3 Limit (n -> 0) | 0.000 eV | 3.550 eV | 349 nm (Near-UV Edge) | | Moderate TCO Film (n = 1.0 × 10^20 cm^-3) | +0.262 eV | 3.812 eV | 325 nm | | Heavy Degenerate ITO (n = 1.0 × 10^21 cm^-3) | +1.215 eV | 4.765 eV | 260 nm (Deep UV Window!) | - **Formula (Burstein-Moss Conduction-Band Filling Blue-Shift ΔE_BM (eV))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid TCO Inputs", ROUND(3.64645E-15 * (B4 ^ (2 / 3)) / B3, 3))` - **Formula (Apparent Widened Optical Bandgap E_g,opt = E_g0 + ΔE_BM (eV))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid TCO Inputs", ROUND(B2 + 3.64645E-15 * (B4 ^ (2 / 3)) / B3, 3))` ### Butterworth Filter Gain, dB Roll-Off Attenuation & Bandpass Q-Factor - **URL**: https://sheets.arte-soft.com/en/learn/butterworth-filter-attenuation-q-factor-and-roll-off-formula/ - **Summary**: Calculate the magnitude and signed dB gain of an ideal analog Butterworth low-pass filter, distinguish finite-frequency gain from asymptotic roll-off, and calculate a separate bandpass Q. - **Formula (Signed dB gain in D2)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric order and frequencies",IF(OR(B2<1,B2<>INT(B2),B3<=0,B4<0),"Require integer order >=1, cutoff >0 and frequency >=0",IF(B4=0,0,LET(logPower,2*B2*(LOG10(B4)-LOG10(B3)),-10*(MAX(logPower,0)+LOG10(1+10^(-ABS(logPower))))))))` - **Formula (Amplitude ratio in D3)**: `=IF(ISNUMBER(D2),10^(D2/20),D2)` - **Formula (Independent bandpass quality factor in D4)**: `=IF(COUNT(B5:B6)<>2,"Enter numeric center frequency and bandwidth",IF(MIN(B5:B6)<=0,"Center frequency and bandwidth must be positive",B6/B5))` - **Formula (Asymptotic dB change per octave in D5)**: `=IF(COUNT(B2)<>1,"Enter numeric order",IF(OR(B2<1,B2<>INT(B2)),"Order must be a positive integer",-20*B2*LOG10(2)))` ### BVAS v3 (Birmingham Vasculitis Activity Score, 0–63 Organ-Capped Scale) - **URL**: https://sheets.arte-soft.com/en/learn/bvas-v3-birmingham-vasculitis-activity-score-anca-remission/ - **Summary**: Calculate the EULAR/FDA gold-standard ANCA-associated vasculitis trial endpoint BVAS v3 (0–63) by enforcing per-organ domain ceilings MIN(Max_Organ, Raw_Pts) and BVAS = 0 remission. *Table — Enforcing per-organ BVAS v3 ceilings so multi-item ENT symptoms never outweigh renal glomerulonephritis!:* | Vasculitis Organ Domain | BVAS v3 Organ Cap (B) | Uncapped Item Sum (C) | Capped Organ Contribution MIN(B, C) | | --- | --- | --- | --- | | ENT Sinonasal / Hearing | 6 pts max | 8 raw pts | 6 pts (Organ Cap Applied!) | | Renal (Hematuria + Rising Cr) | 12 pts max | 10 raw pts | 10 pts | | General + Skin + Chest + Neuro | 3 / 6 / 6 / 9 max | 2 + 4 + 6 + 0 | 12 pts (Total BVAS v3 = 28) | | Post-Rituximab Trial Endpoint | All 0 | All 0 | 0 pts — Complete BVAS Remission | - **Formula (Total Organ-Capped BVAS v3 Score (0–63 Ceiling))**: `=IF(MIN(C2:C7) < 0, "Raw Organ Points Cannot Be Negative", MIN(63, SUM(D2:D7)))` - **Formula (ANCA Vasculitis Remission vs. Active Flare Trial Status)**: `=IF(MIN(C2:C7) < 0, "Raw Organ Points Cannot Be Negative", IF(MIN(63, SUM(D2:D7)) = 0, "Complete Vasculitis Remission (BVAS = 0)", IF(MIN(63, SUM(D2:D7)) <= 5, "Minor / Grumbling Vasculitis Activity (1–5)", "Active Major Vasculitis Flare (BVAS >= 6)")))` ### PABAK (Prevalence-Adjusted Bias-Adjusted Kappa), PI & BI Formula - **URL**: https://sheets.arte-soft.com/en/learn/byrt-pabak-prevalence-and-bias-adjusted-kappa-formula/ - **Summary**: Report Ted Byrt’s (1993) clinical diagnostic trio—PABAK = 2 * p_o - 1, Prevalence Index PI = |a - d| / N, and Bias Index BI = |b - c| / N—on 2×2 observer reliability studies. *Table — Why reporting Cohen’s κ alone without Byrt’s PABAK, PI, and BI misleads clinical reviewers!:* | 2×2 Observer Table [a, b, c, d] | Observed Agreement p_o | PABAK (2*p_o - 1) | Prevalence Index PI | | --- | --- | --- | --- | | [82, 6, 4, 8] (N = 100) | 0.9000 | 0.8000 | 0.7400 (High Skew Disclosed) | | [82, 15, 15, 8] (N = 120, Higher Disagreement) | 0.7500 | 0.5000 | 0.6167 | | Negative or Zero Total Count | Undefined | "Invalid 2x2 Counts" | Input Guard | - **Formula (Prevalence-Adjusted Bias-Adjusted Kappa (PABAK = 2 * p_o - 1))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) <= 0), "Invalid 2x2 Counts", ROUND(2 * ((B2 + B5) / SUM(B2:B5)) - 1, 4))` - **Formula (Byrt Prevalence Index PI = |a - d| / N)**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) <= 0), "Invalid 2x2 Counts", ROUND(ABS(B2 - B5) / SUM(B2:B5), 4))` ### Cagan Seigniorage Revenue & Peak Inflation Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/cagan-money-demand-seigniorage-laffer-peak-inflation-formula/ - **Summary**: Calculate steady-state real seigniorage (pi + g_Y) * m_0 * EXP(-alpha * pi), Cagan’s revenue-maximizing inflation rate pi* = 1/alpha - g_Y, and maximum monetizable deficit. *Table — Pinpoint the exact monetization ceiling beyond which money printing triggers hyperinflation:* | Cagan Monetization Metric (m_0=25%, alpha=2.0, g_Y=2%) | Formula | Verified Output | | --- | --- | --- | | Current Seigniorage at pi = 20% | (pi + g_Y) * m_0 * EXP(-alpha * pi) | 0.0369 (3.69% of GDP) | | Revenue-Maximizing Inflation (pi*) | (1 / alpha) - g_Y | 0.4800 (48.00%/yr) | | Maximum Monetizable Deficit (S_max*) | (m_0 / alpha) * EXP(-(1 - alpha * g_Y)) | 0.0479 (4.79% of GDP) | | Wrong-Side Seigniorage at pi = 100% | 1.02 * 0.25 * EXP(-2.0) | 0.0345 (< S(20%)!) | - **Formula (Steady-State Real Seigniorage Revenue (% of GDP) Formula)**: `=LET(m_bs, B2, alp_c, B3, g_rl, B4, pi_in, B5, IF(OR(m_bs <= 0, alp_c <= 0, g_rl < 0, pi_in + g_rl < 0), "Invalid Cagan Input", ROUND((pi_in + g_rl) * m_bs * EXP(-alp_c * pi_in), 4)))` - **Formula (Maximum Sustainable Seigniorage Ceiling S_max* Formula)**: `=LET(m_bs, B2, alp_c, B3, g_rl, B4, IF(OR(m_bs <= 0, alp_c <= 0, g_rl < 0), "Invalid Cagan Input", ROUND((m_bs / alp_c) * EXP(-(1 - alp_c * g_rl)), 4)))` ### CAGE & CAGE-AID Alcohol / Substance Screening Score Calculator - **URL**: https://sheets.arte-soft.com/en/learn/cage-and-cage-aid-substance-use-screening-score-formula/ - **Summary**: Score John Ewing’s 4-item CAGE / CAGE-AID bedside screening questionnaire (Cut down, Annoyed, Guilty, Eye-opener; 0–4 points) with clinically significant threshold >= 2 or positive morning Eye-opener. *Table — Rapid 4-question primary-care and trauma screening for lifetime alcohol or drug dependence!:* | CAGE / CAGE-AID Score (0–4) | Morning Eye-Opener (E) | Screening Interpretation | Recommended Clinical Action | | --- | --- | --- | --- | | Score >= 2 (e.g., C=1, G=1 -> 2) | E = 0 or 1 | Positive CAGE Screen | Full AUDIT / DSM-5 & Withdrawal Check | | Score = 1 With Morning Eye-Opener | E = 1 | Positive Physiological Flag | Assess Dependence & CIWA-Ar Risk | | Score = 1 (Non-E) / Score = 0 | E = 0 | Borderline / Negative Screen | Brief Inquiry / Routine Preventive Care | - **Formula (Total 4-Item CAGE / CAGE-AID Score (0–4))**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 1), "Invalid CAGE Binary Flag (0/1)", SUM(B2:B5))` - **Formula (CAGE / CAGE-AID Clinical Triage & Eye-Opener Escalation)**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 1), "Invalid CAGE Binary Flag (0/1)", IF(OR(SUM(B2:B5) >= 2, B5 = 1), "Positive CAGE Screen (Score >= 2 or Eye-Opener) — Full AUDIT / DSM-5 Assessment", IF(SUM(B2:B5) = 1, "Borderline Single-Item Flag (Score 1) — Brief Clinical Inquiry", "Negative CAGE Screen (Score 0)")))` ### CAGR formula: calculate Compound Annual Growth Rate over multiple years - **URL**: https://sheets.arte-soft.com/en/learn/cagr-compound-annual-growth-rate/ - **Summary**: Compute the smoothed annualized growth rate with (EndValue / StartValue) ^ (1 / Years) - 1 and verify multi-year compounding. *Table — Why arithmetic average growth misstates multi-year performance:* | StartRev (A) | EndRev (B) | Years (C) | Total Ratio (B/A) | CAGR | | --- | --- | --- | --- | --- | | 500000 | 864000 | 3 | 1.728 | 0.20 (20.0%) | | 500000 | 605000 | 2 | 1.210 | 0.10 (10.0%) | - **Formula (CAGR formula and forward compounding check)**: `=ROUND((B2 / A2) ^ (1 / C2) - 1, 4)` - **Formula (Zero starting value boundary (#DIV/0!))**: `=ROUND(A2 * ((1 + 0.2) ^ C2), 2)` ### Caine Sand-Casting Riser Freezing-Ratio & Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/caine-sand-casting-riser-freezing-ratio-volume-shrinkage-and-feeding-efficiency/ - **Summary**: Calculate Actual Riser-to-Casting Modulus Freezing Ratio x = Mr/Mc, Volume Ratio y = Vr/Vc, Caine Hyperbolic Minimum Soundness Ratio xmin, and Mold Casting Yield (%). *Table — Passing Chvorinov’s modulus rule (Mr > Mc) is NOT enough—if riser liquid volume cannot feed 3.5% steel solidification shrinkage, Caine’s hyperbola exposes a pipe cavity!:* | AFS Caine Riser Soundness KPI (Steel Vc=4,200 cm³, Ac=1,680 cm² -> Mc=2.50 cm, b=0.035) | Formula | Verified Output | | --- | --- | --- | | Actual Freezing Ratio x (Mr / Mc) | (Vr / (PI()*Dr*Hr + PI()/4*Dr^2)) / (Vc / Ac) | 1.172 (0.793 freezes EARLY @ Dr=9.5 cm!) | | Riser Volume Ratio y (Vr / Vc) | ((PI()/4) * Dr^2 * Hr) / Casting_Vc_cm3 | 0.660 (0.203 starved feed metal) | | Caine Min Soundness Ratio xmin | (Caine_a / (Volume_Ratio_y - Shrink_b)) + 1.0 | 1.160 PASS (x=1.172>=1.160 vs 1.597 FAIL!) | | Net Mold Casting Yield (%) | (Vc / (Vc + Vr)) * 100 | 60.3% sound (83.2% SCRAPPED BY PIPE!) | - **Formula (J. B. Caine (1948) AFS Hyperbolic Freezing-vs-Volume Soundness Formula)**: `=LET(vc_c, B2, ac_c, B3, dr_c, B4, hr_c, B5, sb_f, B6, ca_k, B7, vr_c, (PI() / 4) * (dr_c ^ 2) * hr_c, yv_r, vr_c / vc_c, IF(OR(vc_c <= 10, ac_c <= 10, dr_c <= 1, hr_c <= 1, sb_f < 0.005, sb_f > 0.1, yv_r <= sb_f + 0.02, ca_k < 0.01, ca_k > 0.5), "Invalid Caine Riser Input", ROUND((vc_c / (vc_c + vr_c)) * 100, 1)))` - **Formula (Undersized Greedy-Yield Riser (`D_r = 9.5` cm, `H_r = 12` cm) Centerline Shrinkage Cavity Check)**: `=IF(ISTEXT(E5), E5, LET(vr_c, (PI() / 4) * (B4 ^ 2) * B5, yv_r, vr_c / B2, ROUND((B7 / (yv_r - B6)) + 1, 3)))` ### Calculate age from birthdate: exact years and months as of any date - **URL**: https://sheets.arte-soft.com/en/learn/calculate-age-from-birthdate/ - **Summary**: Compute completed age in whole years and remaining months from a date of birth without off-by-one rounding errors. *Table — Why dividing days by 365.25 gets birthdays wrong:* | BirthDate (A) | AsOfDate (B) | Completed Years ("Y") | Extra Months ("YM") | | --- | --- | --- | --- | | 1994-08-20 | 2026-04-15 | 31 | 7 | | 1994-08-20 | 2026-08-20 | 32 | 0 | - **Formula (Combine years and months into a readable age label)**: `=DATEDIF(A2, B2, "Y")` - **Formula (Guard future birthdates (#NUM!))**: `=DATEDIF(A2, B2, "Y") & "y " & DATEDIF(A2, B2, "YM") & "m"` ### Calculate Coast FI number: invested balance needed to coast to retirement - **URL**: https://sheets.arte-soft.com/en/learn/calculate-coast-fi-retirement-target/ - **Summary**: Divide annual retirement spending by a chosen withdrawal-rate assumption and discount back to today using PV or (1 + RealReturn)^Years. *Table — Full FI target vs Coast FI milestone:* | AnnualSpend (A) | SWR (B) | RealReturn (C) | Years (D) | Coast FI Target | | --- | --- | --- | --- | --- | | 48000 | 0.04 | 0.07 | 25 | 1,200,000 / 1.07^25 = 221,099 | - **Formula (Coast FI formula (algebraic and PV forms))**: `=ROUND((A2 / B2) / (1 + C2)^D2, 0)` - **Formula (Check Coast FI milestone status)**: `=IF(E2 >= (A2 / B2) / (1 + C2)^D2, "Scenario threshold reached", "Saving")` ### Calculate date overlap in days: find shared days between two bookings or projects - **URL**: https://sheets.arte-soft.com/en/learn/calculate-date-overlap-in-days/ - **Summary**: Count inclusive overlapping days between any two date ranges in one line using MAX(0, MIN(End1, End2) - MAX(Start1, Start2) + 1). *Table — One formula handles partial, nested, touching, and disjoint ranges:* | Start1 (A) | End1 (B) | Start2 (C) | End2 (D) | Inclusive Overlap | | --- | --- | --- | --- | --- | | 2026-06-10 | 2026-06-20 | 2026-06-15 | 2026-06-25 | 6 days (Jun 15..20) | | 2026-06-10 | 2026-06-20 | 2026-06-22 | 2026-06-28 | 0 days (disjoint) | - **Formula (Inclusive vs hotel-night overlap)**: `=MAX(0, MIN(B2, D2) - MAX(A2, C2) + 1)` - **Formula (Boolean overlap flag for conflict detection)**: `=AND(A2 <= D2, C2 <= B2)` ### Calculate expiration dates and days remaining (days, months, or month-end) - **URL**: https://sheets.arte-soft.com/en/learn/calculate-expiration-date-and-days-left/ - **Summary**: Add fixed shelf-life days, calendar warranty months (EDATE), or end-of-month expirations (EOMONTH), and flag expired items. *Table — Three standard expiration rules in inventory and contracts:* | ProdDate (A) | Rule | Formula | Expiration Date | | --- | --- | --- | --- | | 2026-03-15 | +90 shelf days | A2 + B2 | 2026-06-13 | | 2026-03-15 | +12 warranty months | EDATE(A2, C2) | 2027-03-15 | | 2026-03-15 | End of 12th month | EOMONTH(A2, C2) | 2027-03-31 | - **Formula (Shelf-life expiry and remaining-days countdown)**: `=IF((A2 + B2) < D2, "Expired", (A2 + B2) - D2)` - **Formula (Formatted ISO expiration dates)**: `=TEXT(EOMONTH(A2, C2), "yyyy-mm-dd")` ### Calculate hours between two times (including overnight night shifts) - **URL**: https://sheets.arte-soft.com/en/learn/calculate-hours-between-two-times-overnight/ - **Summary**: Wrap EndTime - StartTime in MOD(..., 1) * 24 so shifts crossing midnight return 8.5 positive hours instead of -15.5. *Table — Why EndTime - StartTime turns negative on night shifts:* | ShiftStart (A) | ShiftEnd (B) | Naive (B-A)*24 | MOD(B-A, 1)*24 | | --- | --- | --- | --- | | 22:00 | 06:30 | -15.5 (wrong!) | 8.5 | | 09:15 | 17:45 | 8.5 | 8.5 | - **Formula (Overnight-safe elapsed hours formula)**: `=ROUND(MOD(B2 - A2, 1) * 24, 2)` - **Formula (Compare daytime shift and naive subtraction)**: `=ROUND((B2 - A2) * 24, 2)` ### Calculate Original Loan Amount & Borrowing Limit from Monthly Payment (PV) - **URL**: https://sheets.arte-soft.com/en/learn/calculate-original-loan-principal-from-payment-pv/ - **Summary**: Back-solve the original loan principal or maximum affordable loan balance from a fixed periodic payment, annual interest rate, and term in months using PV. *Table — Reverse-engineer initial principal when you know the payment, APR, and term:* | Monthly Payment | Annual APR | Term (Months) | Original Principal (-PV) | Total Interest Paid | | --- | --- | --- | --- | --- | | $650.00 | 6.00% (0.50%/mo) | 60 | $33,621.61 | $5,378.39 | | $650.00 | 0.00% (Promo) | 60 | $39,000.00 | $0.00 | | $650.00 | 7.20% (0.60%/mo) | 48 | $27,039.23 | $4,160.77 | - **Formula (Original Loan Principal Back-Solved via PV)**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 1), "Invalid Loan Inputs", ROUND(-PV(B3 / 12, B4, B2), 2))` - **Formula (Implied Total Interest Over Full Amortization Term)**: `=ROUND(B2 * B4 - (-PV(B3 / 12, B4, B2)), 2)` ### Calculate Percent Absent & Attendance Rate Ignoring Unmarked Days - **URL**: https://sheets.arte-soft.com/en/learn/calculate-percent-absent-and-attendance-rate-countif-counta/ - **Summary**: Compute exact student or employee absence percentage COUNTIF(B2:G2, "A") / COUNTA(B2:G2) and present/excused attendance rate while ignoring blank unrecorded future sessions. *Table — Why dividing by total columns penalizes students for future unrecorded classes!:* | Student Attendance Row (6 Columns) | Recorded Sessions COUNTA | Unexcused "A" Count | Absence % & Attendance % | | --- | --- | --- | --- | | P, A, P, P, A, [Blank Future] | 5 recorded days | 2 absences | 40.0% Absent / 60.0% Present | | P, P, E, P, P, P (1 Excused) | 6 recorded days | 0 unexcused "A" | 0.0% Unexcused Absent | | All 6 Blank (New Transfer) | 0 recorded days | 0 | "No Recorded Sessions" | - **Formula (Unexcused Absence Percentage Across Recorded Sessions (%))**: `=IF(COUNTA(B2:G2) = 0, "No Recorded Sessions", ROUND(100 * COUNTIF(B2:G2, "A") / COUNTA(B2:G2), 1))` - **Formula (Present + Excused Attendance Rate (%))**: `=IF(COUNTA(B2:G2) = 0, "No Recorded Sessions", ROUND(100 * (COUNTIF(B2:G2, "P") + COUNTIF(B2:G2, "E")) / COUNTA(B2:G2), 1))` ### Calculate quintiles (20%, 40%, 60%, 80%) and assign 1–5 quintile buckets - **URL**: https://sheets.arte-soft.com/en/learn/calculate-quintiles-and-deciles-percentile/ - **Summary**: Compute percentile cutoffs and assign values to five threshold-based bands. *Table — How quintile cutoffs divide a distribution into five 20% bands:* | Quintile Band | Percentile Cut | Cutoff on [10,20,30,50,70,90] | | --- | --- | --- | | Quintile 1 (Bottom 20%) | <= PERCENTILE.INC(valuesRange, 0.2) | <= 20 | | Quintile 2 (20%–40%) | <= PERCENTILE.INC(valuesRange, 0.4) | >20 and <=30 | | Quintile 3 (40%–60%) | <= PERCENTILE.INC(valuesRange, 0.6) | >30 and <=50 | | Quintile 4 (60%–80%) | <= PERCENTILE.INC(valuesRange, 0.8) | >50 and <=70 | | Quintile 5 (Top 20%) | > PERCENTILE.INC(valuesRange, 0.8) | > 70 (e.g. 90) | - **Formula (Quintile threshold and 1–5 bucket assignment formulas)**: `=LET(valuesRange, $A$2:$A$7, IFS(A6<=PERCENTILE.INC(valuesRange,0.2), 1, A6<=PERCENTILE.INC(valuesRange,0.4), 2, A6<=PERCENTILE.INC(valuesRange,0.6), 3, A6<=PERCENTILE.INC(valuesRange,0.8), 4, TRUE, 5))` - **Formula (Extract any k-th quintile cutoff directly)**: `=PERCENTILE.INC(A2:A7, 0.8)` ### Calculate a ratio from two numbers: simplified whole-number (16:9) and N:1 - **URL**: https://sheets.arte-soft.com/en/learn/calculate-ratio-from-two-numbers-gcd/ - **Summary**: Reduce positive integer dimensions to lowest ratio terms with GCD, or express a ratio with a nonzero denominator in N:1 form. *Table — Simplify integer ratios with Greatest Common Divisor (GCD):* | WidthPx (A) | HeightPx (B) | GCD(A, B) | Simplified Ratio | Unit N:1 Ratio | | --- | --- | --- | --- | --- | | 1920 | 1080 | 120 | 16:9 | 1.78:1 | | 2560 | 1600 | 320 | 8:5 | 1.6:1 | - **Formula (Simplified whole-number ratio formula)**: `=IF(OR(A2=0, B2=0), "Undefined", (A2 / GCD(A2, B2)) & ":" & (B2 / GCD(A2, B2)))` - **Formula (Unit N:1 ratio formula)**: `=ROUND(A2 / B2, 2) & ":1"` ### Calculate retirement, benefit eligibility, and equity cliff dates (EDATE & EOMONTH) - **URL**: https://sheets.arte-soft.com/en/learn/calculate-retirement-and-vesting-date-edate/ - **Summary**: Calculate illustrative age milestones and month-based waiting dates with explicit calendar conventions. *Table — Three classic HR milestone rules solved cleanly with EDATE and EOMONTH:* | HR Rule | Input Date | Formula | Milestone Date | | --- | --- | --- | --- | | Age 65 Retirement | DOB 1964-08-15 | =EDATE(DOB, 65*12) | 2029-08-15 | | 1-Year Equity Cliff | Hire 2025-03-10 | =EDATE(Hire, 12) | 2026-03-10 | | 1st of Month After 2 Mos | Hire 2026-03-10 | =EOMONTH(Hire, 2) + 1 | 2026-06-01 | - **Formula (Target retirement year and benefit-start formulas)**: `=TEXT(EDATE(A2,B2*12),"yyyy-mm-dd")` - **Formula (First of the month following N calendar months of service)**: `=TEXT(EOMONTH(C2,2)+1,"yyyy-mm-dd")` ### Calculate a running total (cumulative balance) that skips blank rows - **URL**: https://sheets.arte-soft.com/en/learn/calculate-running-total-cumulative-balance/ - **Summary**: Use an expanding SUM range for cumulative balances and suppress output on truly empty rows. *Table — An expanding SUM avoids chaining each balance to the preceding balance:* | Row | Entry (A) | Amount (B) | Expanding Range | Running Balance | | --- | --- | --- | --- | --- | | 2 | Opening | 500 | $B$2:B2 | 500 | | 3 | Sale | 240 | $B$2:B3 | 740 | | 4 | Refund | -90 | $B$2:B4 | 650 | | 5 | Sale | 350 | $B$2:B5 | 1000 | - **Formula (Expanding running-total and blank-row guard)**: `=SUM($B$2:B4)` - **Formula (Blank-row check on pre-allocated rows)**: `=IF(ISBLANK(B6), "", SUM($B$2:B6))` ### Calculate Carrier Shipping Cost by Weight Ceiling & Zone (2D XLOOKUP Mode 1) - **URL**: https://sheets.arte-soft.com/en/learn/calculate-shipping-cost-by-weight-bracket-and-zone-xlookup/ - **Summary**: Look up parcel shipping rates from a carrier Zone x Max-Weight rate card using nested XLOOKUP with match_mode = 1 (exact match or next larger weight ceiling)—fixing VLOOKUP's next-smaller bracket bug! *Table — Why approximate VLOOKUP undercharges every 6.2 lb parcel—and XLOOKUP Mode 1 fixes it!:* | Weight Not Over (Col A) | Zone_2 (Regional) | Zone_5 (Mid-Country) | Zone_8 (Coast-to-Coast) | | --- | --- | --- | --- | | Up to 1 lb | $7.50 | $9.00 | $11.50 | | Up to 5 lb | $9.50 | $12.50 | $16.00 | | Up to 10 lb (7 lb lands here!) | $12.00 | $16.50 | $22.00 | | Up to 25 lb | $18.00 | $25.00 | $34.00 | - **Formula (Two-Way Carrier Rate Lookup (Exact or Next-Larger Weight Ceiling + Zone))**: `=IF(G2 <= 0, "Invalid Weight", XLOOKUP(G2, A2:A5, XLOOKUP(G3, B1:D1, B2:D5), "LTL Freight Quote", 1))` - **Formula (Effective Shipping Cost per Pound ($ / lb))**: `=IF(OR(G2 <= 0, G2 > MAX(A2:A5)), "Out of Parcel Range", ROUND(XLOOKUP(G2, A2:A5, XLOOKUP(G3, B1:D1, B2:D5), 0, 1) / G2, 2))` ### Calculate stopped dwell time from a fleet GPS timestamp & milepost log - **URL**: https://sheets.arte-soft.com/en/learn/calculate-stopped-dwell-time-from-gps-log/ - **Summary**: Estimate time in unchanged-location intervals from an ordered timestamp and milepost log, with explicit sampling assumptions. *Table — Estimate unchanged-location intervals from sampled pings:* | GPS Ping Time (A) | Milepost (B) | Leg Activity | Estimated unchanged-location minutes (C) | | --- | --- | --- | --- | | 08:00 | 12.0 | Depart origin depot | — | | 08:15 | 28.5 | Highway transit (+16.5 mi) | 0 min | | 08:40 | 28.5 (Unchanged) | Stopped at Milepost 28.5 | 25 min | | 09:05 | 28.5 (Unchanged) | Still stopped at Milepost 28.5 | 25 min (50 min total!) | | 09:20 | 44.0 | Resumed transit (+15.5 mi) | 0 min (80 min total trip) | - **Formula (Per-interval stopped minutes when location B3 equals prior location B2)**: `=IF(COUNT(A2:B3)<>4,"Invalid inputs",IF(OR(A2<0,A3<=A2),"Invalid inputs",IF(B3=B2,(A3-A2)*1440,0)))` - **Formula (Total estimated unchanged-location minutes)**: `=IF(COUNT(C3:C6)<>4,"Invalid inputs",ROUND(SUM(C3:C6),6))` ### Calculate VAT or sales tax: add tax to net and reverse gross to net - **URL**: https://sheets.arte-soft.com/en/learn/calculate-vat-and-sales-tax-gross-net/ - **Summary**: Compute tax-inclusive gross prices from net amounts and extract exact embedded VAT and net revenue from tax-inclusive totals. *Table — Adding VAT vs reversing VAT from a tax-inclusive price:* | Calculation | Formula | Result (20% VAT) | | --- | --- | --- | | Gross from Net (250) | =ROUND(A2 * (1 + B2), 2) | 300 | | Net from Gross (300) | =ROUND(C2 / (1 + B2), 2) | 250 | | Embedded VAT in Gross | =ROUND(C2 - ROUND(C2 / (1 + B2), 2), 2) | 50 | - **Formula (Gross, reverse net, and embedded tax formulas)**: `=ROUND(C2 / (1 + B2), 2)` - **Formula (Extract embedded VAT directly from gross)**: `=ROUND(C2 - ROUND(C2 / (1 + B2), 2), 2)` ### California Bearing Ratio (CBR) & Subgrade Resilient Modulus M_R Formula (ASTM D1883) - **URL**: https://sheets.arte-soft.com/en/learn/california-bearing-ratio-cbr-and-resilient-modulus-subgrade-formula/ - **Summary**: Calculate ASTM D1883 California Bearing Ratio CBR (%) at 0.10-in (1,000 psi standard crushed rock) and 0.20-in (1,500 psi) piston penetrations, and convert CBR into AASHTO MEPDG Subgrade Resilient Modulus M_R = 2555 * CBR^0.64. *Table — Benchmark compacted roadbed soil against California standard crushed limestone (1,000 psi at 0.10 in)!:* | Compacted Subgrade / Base Layer | Piston Load at 0.10 in (3.0 in^2 Piston) | Evaluated CBR (%) | AASHTO MEPDG M_R = 2555 * CBR^0.64 | | --- | --- | --- | --- | | Soft Silty Clay Subgrade | 180 lb (60 psi) | 6.0% CBR | 8,043 psi (55.5 MPa) | | Compacted Sandy Gravel Subbase | 900 lb (300 psi) | 30.0% CBR | 22,529 psi (155.3 MPa) | | Crushed Aggregate Road Base | 2,400 lb (800 psi) | 80.0% CBR | 42,197 psi (290.9 MPa) | - **Formula (ASTM D1883 Governing CBR (%) from 3.00-in^2 Piston Loads (lb))**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Positive 0.10-in and 0.20-in Piston Forces (lb)", ROUND(MAX(100 * ((B2 / 3) / 1000), 100 * ((B3 / 3) / 1500)), 2))` - **Formula (AASHTO MEPDG Subgrade Resilient Modulus M_R (psi) = 2555 * CBR^0.64)**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Positive 0.10-in and 0.20-in Piston Forces (lb)", ROUND(2555 * (MAX(100 * ((B2 / 3) / 1000), 100 * ((B3 / 3) / 1500)) ^ 0.64), 0))` ### Callendar-Van Dusen Pt100 RTD Resistance Formula - **URL**: https://sheets.arte-soft.com/en/learn/callendar-van-dusen-pt100-rtd-quadratic-resistance-temperature-formula/ - **Summary**: Calculate IEC 60751 Platinum RTD Resistance R(T) = R_0 * (1 + A*T + B*T^2) for T >= 0 °C, compare against Naive Linear Alpha (0.00385/°C) Approximation, and quantify Uncalibrated Temperature Drift (°C). *Table — Eliminate +3 °C process-control bias above 100 °C with IEC 60751 Callendar-Van Dusen!:* | IEC 60751 Pt100 RTD Metric (R0=100 Ohm, T=200 °C, A=3.9083e-3, B=-5.775e-7) | Formula | Verified Output | | --- | --- | --- | | Exact Callendar-Van Dusen R (Ohm) | R_0 * (1 + A * T + B * T^2) | 175.856 Ohm (247.092 @ 400 °C) | | Naive 0.00385 Linear R_lin (Ohm) | R_0 * (1 + 0.00385 * T) | 177.000 Ohm (254.000 @ 400 °C) | | Linearization Resistance Bias | R_lin - R_CVD | +1.144 Ohm (0.000 @ 0 °C) | | Approximate Temperature Error (°C) | (R_lin - R_CVD) / (0.00385 * R_0) | +2.97 °C Uncalibrated Drift | - **Formula (IEC 60751 Callendar-Van Dusen RTD Resistance (0 to 850 °C) Formula)**: `=LET(r_0, B2, tp_c, B3, cf_a, B4, cf_b, B5, IF(OR(r_0 <= 0, tp_c < 0, tp_c > 850, cf_a <= 0, cf_b >= 0), "Out of Positive CVD Range (0-850C)", ROUND(r_0 * (1 + cf_a * tp_c + cf_b * (tp_c ^ 2)), 3)))` - **Formula (400 °C Quadratic Curvature Growth & 0 °C Ice-Point Identity Checks)**: `=IF(ISTEXT(E2), E2, ROUND((E3 - E2) / (0.00385 * B2), 2))` ### Calmar-style return/drawdown ratio and a CAPM excess-return worksheet - **URL**: https://sheets.arte-soft.com/en/learn/calmar-ratio-and-jensens-alpha-risk-adjusted-return/ - **Summary**: Compare a supplied annualized return with observed maximum drawdown and calculate a same-period return residual against a supplied CAPM beta. *Table — Separate historical drawdown ratios from model-relative return residuals:* | Portfolio Attribution Metric | Formula | Fund Result | | --- | --- | --- | | Calmar Ratio (18% CAGR, -12% MaxDD) | CAGR / ABS(MaxDrawdown) | 1.50 | | CAPM Benchmark Hurdle Return | 4.0% + 1.20 * (14.0% - 4.0%) | 16.00% | | Single-period CAPM residual | 18.0% - 16.0% | +0.0200 (2 percentage points) | - **Formula (Calculate Calmar Ratio (CAGR / |Max Drawdown|))**: `=IF(OR(COUNT(A2:B2)<>2,A2< -1,ABS(B2)>1),"Invalid inputs",IF(B2 = 0, "Undefined (zero drawdown)", ROUND(A2 / ABS(B2), 2)))` - **Formula (Same-period return residual against supplied CAPM beta)**: `=IF(COUNT(C2:F2)<>4,"Invalid inputs",ROUND(F2 - (C2 + D2 * (E2 - C2)), 4))` ### Calvert Carboplatin AUC & Capped GFR Dose Formula - **URL**: https://sheets.arte-soft.com/en/learn/calvert-carboplatin-auc-dosing-and-capped-gfr-oncology-formula/ - **Summary**: Calculate Total Carboplatin Dose (mg, NOT mg/m^2!) via A.H. Calvert’s Formula Target_AUC * (MIN(125, GFR) + 25), Pharmacy Vial Volume (mL), and Overdose Milligrams Prevented by the FDA/CTEP 125 mL/min GFR Cap. *Table — Enforce the FDA 125 mL/min GFR cap—and never multiply Calvert carboplatin mg by BSA!:* | Calvert Oncology Metric (Target AUC=6, GFR=95 mL/min, 10 mg/mL Stock Vial) | Formula | Verified Output | | --- | --- | --- | | FDA / NCI Capped GFR (mL/min) | MIN(125, Estimated_GFR_mL_min) | 95 mL/min (125 Cap @ GFR=155) | | Total Carboplatin Dose (mg) | Target_AUC * (Capped_GFR + 25) | 720.00 mg (900.00 mg Max @ AUC 6) | | Infusion Draw Volume (mL) | Total_Dose_mg / Vial_Conc_mg_mL | 72.00 mL | | Overdose Avoided by 125 Cap (mg) | MAX(0, Target_AUC * (GFR - 125)) | 0.00 mg (180.00 mg Saved @ 155!) | - **Formula (FDA-Capped Calvert Carboplatin Total Dose (mg) Formula)**: `=LET(au_c, B2, gf_r, B3, cn_v, B4, IF(OR(au_c < 1, au_c > 10, gf_r <= 0, cn_v <= 0), "Invalid Oncology Dosing Input", LET(gf_c, MIN(125, gf_r), ROUND(au_c * (gf_c + 25), 2))))` - **Formula (FDA 125 mL/min Ceiling Guard Verification (Set GFR = 155 mL/min))**: `=IF(ISTEXT(E3), E3, ROUND(MAX(0, B2 * (B3 - 125)), 2))` ### Calvo Staggered Pricing & New Keynesian Phillips Curve Slope - **URL**: https://sheets.arte-soft.com/en/learn/calvo-staggered-pricing-new-keynesian-phillips-curve-kappa-slope/ - **Summary**: Derive mean price duration 1/(1 - theta), structural NKPC marginal-cost slope kappa = (1 - theta)*(1 - beta*theta)/theta, and quarterly inflation pi_t. *Table — Connect microeconomic price-spell frequency directly to macroeconomic Phillips curve flattening:* | Calvo NKPC Metric (beta = 0.99) | theta = 0.75 (4 Quarters) | theta = 0.80 (5 Quarters) | | --- | --- | --- | | Expected Price Duration 1/(1 - theta) | 4.0000 quarters | 5.0000 quarters | | Structural NKPC Slope (kappa) | 0.0858 | 0.0520 (-39.4% Flatter!) | | Quarterly Inflation pi_t (pi_e=0.5%, mc=4%) | 0.0084 (0.84%) | 0.0070 (0.70%) | - **Formula (Structural Calvo NKPC Marginal-Cost Slope kappa Formula)**: `=LET(th_cv, B2, bt_ds, B3, IF(OR(th_cv <= 0, th_cv >= 1, bt_ds <= 0, bt_ds > 1), "Require 0 < theta < 1 and 0 < beta <= 1", ROUND(((1 - th_cv) * (1 - bt_ds * th_cv)) / th_cv, 4)))` - **Formula (Forward-Looking New Keynesian Phillips Curve Quarterly Inflation pi_t Formula)**: `=LET(th_cv, B2, bt_ds, B3, pi_ex, B4, mc_gp, B5, IF(OR(th_cv <= 0, th_cv >= 1, bt_ds <= 0, bt_ds > 1), "Require 0 < theta < 1 and 0 < beta <= 1", LET(kp_sl, ((1 - th_cv) * (1 - bt_ds * th_cv)) / th_cv, ROUND(bt_ds * pi_ex + kp_sl * mc_gp, 4))))` ### Calvo Sudden-Stop Absorption Cut & RER Jump Formula - **URL**: https://sheets.arte-soft.com/en/learn/calvo-sudden-stop-tradable-absorption-collapse-and-rer-depreciation/ - **Summary**: Calculate Guillermo Calvo’s (1998, 2004) sudden-stop Tradable Absorption Contraction CAD / omega_T and required Real Exchange Rate Depreciation (1 - CAD / omega_T)^(-1 / xi) - 1. *Table — See why a 6% current-account deficit forces a 77.8% real currency crash in closed economies!:* | Calvo Sudden-Stop Metric (CAD=6% GDP, omega_T=24% GDP, xi=0.50) | Formula | Verified Output | | --- | --- | --- | | Tradable Absorption Collapse (Cut_T) | CAD_gdp / omega_T | 0.2500 (25.00% Drop) | | Calvo Openness Leverage Factor | 1 / omega_T | 4.1667x | | Required RER Depreciation (Delta P_T/P_N) | ((1 - CAD_gdp / omega_T) ^ (-1 / xi)) - 1 | +0.7778 (+77.78% Jump) | | Open-Economy Comparison (omega_T = 0.60) | Cut_T = 10.0%; (0.90)^(-2) - 1 | +0.2346 (+23.46% Jump) | - **Formula (Calvo-Izquierdo-Mejia (2004) Required Real Exchange Rate Jump Formula)**: `=LET(cd_gd, B2, om_tr, B3, xi_sb, B4, IF(OR(cd_gd < 0, om_tr <= 0, om_tr > 1, cd_gd >= om_tr, xi_sb <= 0), "Invalid Sudden-Stop Input", ROUND(((1 - cd_gd / om_tr) ^ (-1 / xi_sb)) - 1, 4)))` - **Formula (Tradable Absorption Cut & Cobb-Douglas (xi = 1) Check Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B2 / B3, 4))` ### Camp-Stein Velocity Gradient (G) & Camp Number (Gt) Formula - **URL**: https://sheets.arte-soft.com/en/learn/camp-stein-velocity-gradient-g-and-gt-tapered-flocculation-power-formula/ - **Summary**: Calculate Flocculation Basin RMS Velocity Gradient G (s^-1), Detention Time t (seconds), Dimensionless Camp Number G*t, and Specific Mixing Power Input (W/m³). *Table — Cold winter water boosts viscosity mu—requiring VFD paddle speed increases to hold G = SQRT(P/(mu*V))!:* | Camp-Stein Flocculator KPI (P = 450 W, mu = 0.001 Pa·s, V = 500 m³, Q = 25 m³/min) | Formula | Verified Output | | --- | --- | --- | | RMS Velocity Gradient G (s^-1) | SQRT(Power_W / (Viscosity_Pa_s * Vol_m3)) | 30.00 s^-1 (25.00 @ 7°C Winter) | | Basin Residence Time t (sec) | (Basin_Volume_m3 / Flow_m3_min) * 60 | 1,200.00 s | | Dimensionless Camp Number (G*t) | Velocity_Gradient_G * Residence_Time_s | 36,000.00 (30,000.00 @ 7°C) | | Specific Mixing Power (W/m³) | Fluid_Power_W / Basin_Volume_m3 | 0.90 W/m³ | - **Formula (Camp-Stein Velocity Gradient & Camp Number Formula)**: `=LET(pw_w, B2, mu_w, B3, vl_m, B4, q_mn, B5, IF(OR(pw_w <= 0, mu_w < 0.0002, mu_w > 0.01, vl_m <= 0, q_mn <= 0), "Invalid Flocculator Input", LET(g_sc, SQRT(pw_w / (mu_w * vl_m)), t_sc, (vl_m / q_mn) * 60, ROUND(g_sc * t_sc, 2))))` - **Formula (Winter Cold-Water Viscosity Drop Check (Set Viscosity mu = 0.00144 Pa·s))**: `=IF(ISTEXT(E4), E4, ROUND(B2 / B4, 2))` ### Campbell-Shiller CAPE Ratio & Excess CAPE Yield (ECY) Formula - **URL**: https://sheets.arte-soft.com/en/learn/campbell-shiller-cape-cyclically-adjusted-pe-and-excess-yield/ - **Summary**: Calculate the 10-year inflation-adjusted Cyclically Adjusted P/E ratio CAPE = Real_Price / AVERAGE(Real_EPS_10y) and Shiller’s Excess CAPE Yield ECY = (1 / CAPE) - Real_10Y_Bond_Yield. *Table — Smooth business-cycle profit spikes and recessions over 10 real years!:* | Real Index Price (10y Avg Real EPS = $127) | CAPE Multiple | Cyclical Earnings Yield (1/CAPE) | Excess CAPE Yield (r_real = 1.75%) | | --- | --- | --- | --- | | 3,810 | 30.00x | 3.3333% | +1.5833% | | 2,540 | 20.00x | 5.0000% | +3.2500% | | 1,905 | 15.00x | 6.6667% | +4.9167% | - **Formula (Campbell-Shiller 10-Year CAPE Multiple)**: `=IF(OR(B12 <= 0, COUNT(B2:B11) < 10, AVERAGE(B2:B11) <= 0), "Invalid Price or Earnings", ROUND(B12 / AVERAGE(B2:B11), 4))` - **Formula (Excess CAPE Yield (% ECY = Cyclical Earnings Yield - Real 10Y Yield))**: `=IF(OR(B12 <= 0, COUNT(B2:B11) < 10, AVERAGE(B2:B11) <= 0), "Invalid Price or Earnings", ROUND(((AVERAGE(B2:B11) / B12) - B13) * 100, 4))` ### Campbell-Thompson Out-of-Sample R-Squared and Truncated Forecast - **URL**: https://sheets.arte-soft.com/en/learn/campbell-thompson-out-of-sample-r2-and-truncated-cer-utility-gain/ - **Summary**: Compute Campbell and Thompson’s (2008) out-of-sample R^2_OS = 1 - SSE_model / SSE_hist and verify how zero-truncating negative risk-premium forecasts MAX(0, r_hat) turns negative R^2_OS positive. *Table — Why unconstrained equity-premium regressions lose out-of-sample — and how MAX(0, r_hat) fixes them:* | Forecast Specification | Sum of Squared Forecast Errors (SSE) | Out-of-Sample R^2_OS | | --- | --- | --- | | Prevailing Historical Mean Benchmark | SSE_hist = 0.0016 | 0.0000 (Baseline) | | Unconstrained Linear Predictor | SSE_raw = 0.0019 | -0.1875 (Underperforms Mean) | | Campbell-Thompson MAX(0, r_hat) | SSE_trunc = 0.0006 | +0.6250 (Beats Benchmark) | - **Formula (Campbell-Thompson Out-of-Sample R^2_OS = 1 - SSE_model / SSE_hist Formula)**: `=LET(r_act, B2:B6, r_bmk, C2:C6, r_mod, E2:E6, sse_b, SUMPRODUCT(r_act, r_act) - 2 * SUMPRODUCT(r_act, r_bmk) + SUMPRODUCT(r_bmk, r_bmk), IF(sse_b <= 1E-12, "Zero Benchmark Error", LET(sse_m, SUMPRODUCT(r_act, r_act) - 2 * SUMPRODUCT(r_act, r_mod) + SUMPRODUCT(r_mod, r_mod), ROUND(1 - sse_m / sse_b, 4))))` - **Formula (Truncated vs Unconstrained R^2_OS Improvement Gain Formula)**: `=IF(OR(ISTEXT(H2), ISTEXT(H3)), "Zero Benchmark Error", ROUND(H3 - H2, 4))` ### Canadian C-Spine Rule (CCR): 3-Step Cervical Spine Imaging Decision Formula - **URL**: https://sheets.arte-soft.com/en/learn/canadian-c-spine-rule-cervical-radiography-decision-formula/ - **Summary**: Evaluate Ian Stiell's 3-step Canadian C-Spine Rule (High-Risk Factor -> Low-Risk Factor Allowing Assessment -> Active 45-Degree Left/Right Neck Rotation) for alert, stable blunt trauma patients (GCS = 15). *Table — Achieve 99.4% sensitivity with 3.5x higher specificity than NEXUS!:* | Step 1: High-Risk Factor? | Step 2: Any Safe Low-Risk Factor? | Step 3: Active 45° Rotation L & R? | Canadian C-Spine Rule Disposition | | --- | --- | --- | --- | | Yes (1: e.g., Age >= 65) | Not Reached | Do NOT Test ROM! | "Step 1 High Risk: C-Spine Imaging Indicated" | | No (0) | No (0: Midline tender + high-speed) | Do NOT Test ROM! | "Step 2 No Low-Risk Factor: Imaging Indicated" | | No (0) | Yes (1: Ambulatory / Sitting in ED) | No (0: Pain stops < 45°) | "Step 3 Failed 45° Rotation: Imaging Indicated" | | No (0) | Yes (1: Ambulatory / Sitting in ED) | Yes (1: Rotates 45° L & R) | "Clinically Cleared: No C-Spine Radiography Needed" | - **Formula (3-Step Sequential Canadian C-Spine Rule (CCR) Decision Formula)**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1), "Invalid Binary Flag (0 or 1)", IF(B2 = 1, "Step 1 High Risk: C-Spine Imaging Indicated", IF(B3 = 0, "Step 2 No Low-Risk Factor: Imaging Indicated", IF(B4 = 0, "Step 3 Failed 45 deg Rotation: Imaging Indicated", "Clinically Cleared: No C-Spine Radiography Needed"))))` - **Formula (Safe to Assess Active 45° Neck Range of Motion? (Gatekeeper Check))**: `=IF(AND(B2 = 0, B3 = 1), "Safe to Assess Active 45 deg Rotation", "Do NOT Assess ROM — Immobilize & Image")` ### Canadian CT Head Rule (CCHR) Minor Head Injury Decision Formula - **URL**: https://sheets.arte-soft.com/en/learn/canadian-ct-head-rule-cchr-minor-head-injury-formula/ - **Summary**: Evaluate Ian Stiell’s validated Canadian CT Head Rule across 5 High-Risk neurosurgical criteria and 2 Medium-Risk brain-injury criteria for adults (GCS 13–15) with witnessed LOC, amnesia, or disorientation. *Table — Achieve 100% sensitivity for neurosurgical intervention while safely avoiding unnecessary head CTs!:* | CCHR Tier (Eligible GCS 13–15 Adult, Non-Anticoagulated) | Clinical Criteria Checked | Head CT Recommendation | | --- | --- | --- | | Exclusions Present (Age < 16, Anticoagulated, Seizure, GCS < 13) | Outside CCHR Validation Scope | "Rule Not Applicable (Exclusion)" | | >= 1 High-Risk Criterion (5 items) | 2h GCS<15, Skull/Basal Fx, >=2 Vomits, Age>=65 | "Head CT Indicated (High Risk: Neurosurgical)" | | 0 High-Risk, >= 1 Medium-Risk (2 items) | Retrograde Amnesia >=30m, Dangerous Mechanism | "Head CT Indicated (Medium Risk: Brain Injury)" | | 0 High-Risk and 0 Medium-Risk | All 7 Criteria Negative | "No Head CT Required (CCHR Cleared)" | - **Formula (Count of High-Risk Neurosurgical Criteria Present (0 to 5))**: `=IF(B3 < 15, 1, 0) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 >= 2, 1, 0) + IF(B2 >= 65, 1, 0)` - **Formula (Complete Canadian CT Head Rule Triage Decision)**: `=IF(OR(B2 < 16, B3 < 13, B3 > 15, B9 = 1), "Rule Not Applicable (Exclusion)", IF((IF(B3 < 15, 1, 0) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 >= 2, 1, 0) + IF(B2 >= 65, 1, 0)) >= 1, "Head CT Indicated (High Risk: Neurosurgical)", IF(OR(B7 >= 30, B8 = 1), "Head CT Indicated (Medium Risk: Brain Injury)", "No Head CT Required (CCHR Cleared)")))` ### Canadian Humidex Vapor Pressure & Thermal Discomfort Formula - **URL**: https://sheets.arte-soft.com/en/learn/canadian-humidex-dewpoint-vapor-pressure-and-thermal-discomfort/ - **Summary**: Calculate Environment and Climate Change Canada (MSC) Actual Water Vapor Pressure e (hPa) from Dew Point via Clausius-Clapeyron, Humidex Increment h = 0.5555*(e - 10), Total Humidex Score, and MSC Public Heat-Advisory Tier. *Table — Compute Environment Canada’s Clausius-Clapeyron Humidex directly from Dew Point!:* | Canadian MSC Humidex Metric (T_air = 32°C, T_dew = 24°C) | Formula | Verified Output | | --- | --- | --- | | Vapor Pressure e (hPa) | 6.11 * EXP(5417.753 * (1/273.16 - 1/(Td+273.15))) | 30.30 hPa (12.30 @ Td=10°C) | | Humidity Increment h | 0.5555 * (e - 10) | +11.28 (+1.28 @ Td=10°C) | | MSC Humidex Index | T_air_C + 0.5555 * (e - 10) | 43.28 (33.28 @ Td=10°C) | | MSC Discomfort Advisory | 40–44.99 Great Discomfort; >=45 Dangerous | Great Discomfort: Avoid Exertion (40-44.99) | - **Formula (Environment Canada Clausius-Clapeyron Humidex Formula)**: `=LET(ta_c, B2, td_c, B3, IF(OR(ta_c < -40, ta_c > 60, td_c < -50, td_c > ta_c), "Invalid Temp / Dew Point", LET(vp_e, 6.11 * EXP(5417.753 * ((1 / 273.16) - (1 / (td_c + 273.15)))), ROUND(ta_c + 0.5555 * (vp_e - 10), 2))))` - **Formula (Dry Continental Air-Mass Check (Set Dew Point = 10.0°C at Same 32.0°C Air Temp))**: `=IF(ISTEXT(E4), E4, IF(E4 >= 45, "Dangerous: Heat Stroke Risk (>=45)", IF(E4 >= 40, "Great Discomfort: Avoid Exertion (40-44.99)", IF(E4 >= 30, "Some Discomfort (30-39.99)", "Little to No Discomfort (<30)"))))` ### Candlestick (OHLC) Chart Formula: Real Body, Upper & Lower Wicks & Doji Body Ratio - **URL**: https://sheets.arte-soft.com/en/learn/candlestick-ohlc-chart-body-upper-and-lower-wick-formula/ - **Summary**: Validate Open-High-Low-Close (OHLC) price bars and compute Candlestick Real Body = Close - Open, Upper Shadow = High - MAX(Open, Close), Lower Shadow = MIN(Open, Close) - Low, and Body-to-Range ratio. *Table — Every Japanese candlestick decomposes into 3 exact non-negative geometry segments plus direction!:* | Candlestick Component (Open=142.5, High=148.2, Low=140.1, Close=146.5) | Worksheet Formula | Value & Pattern | | --- | --- | --- | | Signed Real Body (Close - Open) | =E2 - B2 | +4.00 (Bullish Hollow/Green Body) | | Upper Wick / Shadow | =C2 - MAX(B2, E2) | 1.70 (148.20 - 146.50) | | Lower Wick / Tail | =MIN(B2, E2) - D2 | 2.40 (142.50 - 140.10) | | Body-to-Range Ratio | =ABS(E2 - B2) / (C2 - D2) | 0.4938 (4.00 / 8.10 Directional Bar) | - **Formula (Validated Upper Shadow (Wick) Height = High - MAX(Open, Close))**: `=IF(OR(C2 < MAX(B2, E2), D2 > MIN(B2, E2), C2 <= D2), "Invalid OHLC Bar", ROUND(C2 - MAX(B2, E2), 4))` - **Formula (Candlestick Body-to-Range Ratio & Doji Classifier = ABS(Close - Open) / (High - Low))**: `=IF(OR(C2 < MAX(B2, E2), D2 > MIN(B2, E2), C2 <= D2), "Invalid OHLC Bar", ROUND(ABS(E2 - B2) / (C2 - D2), 4))` ### Cantilever Beam Tip Deflection, Rotation Angle & Root Bending Stress - **URL**: https://sheets.arte-soft.com/en/learn/cantilever-beam-tip-deflection-slope-and-root-bending-stress/ - **Summary**: Calculate Euler-Bernoulli cantilever beam tip deflection delta = F*L^3 / (3*E*I), end slope theta = F*L^2 / (2*E*I), and fixed-wall bending stress sigma = F*L*c / I. *Table — An ideal uniform cantilever with a transverse tip load:* | Cantilever Structural Metric | Formula | 2 m Steel Beam (6 kN Tip Load) | Doubled Span L = 4 m | | --- | --- | --- | --- | | Tip Deflection delta (mm) | ((F * L^3) / (3 * E * I)) * 1000 | 2.00 mm | 16.00 mm (8x sag!) | | Fixed-Root Stress sigma (MPa) | ((F * L * c) / I) / 1e6 | 30.00 MPa | 60.00 MPa (2x stress) | | Tip Rotation Slope (degrees) | DEGREES((F * L^2) / (2 * E * I)) | 0.0859 degrees | 0.3438 degrees (4x slope) | - **Formula (Cantilever Free-End Tip Deflection delta_max in Millimeters)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(((B2 * (B3 ^ 3)) / (3 * B4 * B5)) * 1000, 2)))` - **Formula (Clamped-Root Maximum Bending Stress sigma_max in MPa)**: `=IF(COUNT(B2:B3,B5:B6)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B5<=0,B6<=0),"Invalid inputs",ROUND(((B2 * B3 * B6) / B5) / 1000000, 2)))` - **Formula (Small-angle tip rotation in degrees)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(DEGREES((B2 * (B3 ^ 2)) / (2 * B4 * B5)), 4)))` ### Cantilever Sheet-Pile Zero-Pressure Depth & Moment Formula - **URL**: https://sheets.arte-soft.com/en/learn/cantilever-sheet-pile-embedment-depth-rankine-net-passive-minus-active-earth-formula/ - **Summary**: Calculate Rankine Active Ka & Passive Kp Earth Coefficients, Zero-Net-Pressure Depth z0 Below Dredge Line (m), and Active Wedge Overturning Moment at z0 (kN·m/m). *Table — Below the excavation dredge line, active earth pressure does NOT vanish—passive resistance has to out-climb gamma*Ka*(H + z) first!:* | USACE Cantilever Sheet-Pile KPI (H=4.20 m, gamma=18.5 kN/m³, phi=32° vs 25°) | Formula | Verified Output | | --- | --- | --- | | Rankine Active Coefficient Ka | (1 - SIN(phi_rad)) / (1 + SIN(phi_rad)) | 0.307 (0.406 @ loose sand 25°) | | Rankine Passive Coefficient Kp | (1 + SIN(phi_rad)) / (1 - SIN(phi_rad)) | 3.255 (2.464 @ loose sand 25°) | | Zero-Net-Pressure Depth z0 (m) | (Ka * Cut_Height_H) / (Kp - Ka) | 0.438 m (0.828 m deeper @ 25°!) | | Overturning Moment at z0 (kN·m/m) | (0.5*gamma*Ka*H*(H+z0)) * ((H+2*z0)/3) | 93.7 kN·m/m (154.8 kN·m/m = +65% jump!) | - **Formula (Rankine Active-Passive Pressure Crossover Depth z0 & Bending Moment Formula)**: `=LET(hc_m, B2, gm_k, B3, ph_r, B4 * (PI() / 180), ka_c, (1 - SIN(ph_r)) / (1 + SIN(ph_r)), kp_c, (1 + SIN(ph_r)) / (1 - SIN(ph_r)), zz_m, (ka_c * hc_m) / (kp_c - ka_c), ra_k, 0.5 * gm_k * ka_c * hc_m * (hc_m + zz_m), IF(OR(hc_m < 0.5, hc_m > 12, gm_k < 13, gm_k > 24, B4 < 18, B4 > 45), "Invalid Sheet-Pile Input", ROUND(ra_k * ((hc_m + 2 * zz_m) / 3), 1)))` - **Formula (Loose Silty Sand (phi = 25°) +65% Bending-Moment Escalation Check (Set Friction Angle B4 = 25°))**: `=IF(ISTEXT(E5), E5, LET(ph_r, B4 * (PI() / 180), ka_c, (1 - SIN(ph_r)) / (1 + SIN(ph_r)), kp_c, (1 + SIN(ph_r)) / (1 - SIN(ph_r)), ROUND((ka_c * B2) / (kp_c - ka_c), 3)))` ### Cap & Floor Collar: Clamp Numbers Between Min & Max Bounds (MIN & MAX) - **URL**: https://sheets.arte-soft.com/en/learn/cap-and-floor-collar-clamp-between-min-and-max-bounds/ - **Summary**: Clamp a numeric value to an ordered lower and upper bound using MIN/MAX or MEDIAN, with the same validation for both methods. - **Formula (Keep units consistent)**: `=IF(COUNT(B2,D2,E2)<>3,"Enter three numeric values",IF(D2>E2,"Invalid bounds",MAX(D2,MIN(E2,B2))))` - **Formula (Validate before comparing methods)**: `=IF(COUNT(B2,D2,E2)<>3,"Enter three numeric values",IF(D2>E2,"Invalid bounds",MEDIAN(D2,B2,E2)))` ### Cap percentages between 0% and 100% (clamping with MEDIAN) - **URL**: https://sheets.arte-soft.com/en/learn/cap-percentage-between-0-and-100/ - **Summary**: Clamp attainment and completion ratios cleanly between a lower floor and upper cap in one readable formula with MEDIAN(0, 1, Ratio). *Table — Why MEDIAN(Floor, Cap, Value) replaces nested MIN(Cap, MAX(Floor, Value)):* | Actual (A) | Quota (B) | Raw Ratio | Clamped [0, 1] | | --- | --- | --- | --- | | 135 | 100 | 1.35 (135%) | 1 (100%) | | 78 | 100 | 0.78 (78%) | 0.78 (78%) | | -15 | 100 | -0.15 (-15%) | 0 (0%) | - **Formula (MEDIAN clamp and custom bonus caps)**: `=MEDIAN(0, 1, ROUND(A2 / B2, 4))` - **Formula (Equivalent MIN + MAX clamp)**: `=MIN(1.25, MAX(0, ROUND(A2 / B2, 4)))` ### Cap Rate, Net Operating Income (NOI) & Gross Rent Multiplier (GRM) - **URL**: https://sheets.arte-soft.com/en/learn/cap-rate-noi-and-gross-rent-multiplier-real-estate/ - **Summary**: Calculate simplified annual rental NOI, cap rate, gross rent multiplier, expense ratio and a direct-capitalization scenario from consistent assumptions. *Table — Separate operating income, financing and valuation assumptions:* | Real Estate Underwriting Metric | Formula | $1.2M Property ($150k Gross, 5% Vac, $52.5k OpEx) | At 6.0% Market Cap Rate | | --- | --- | --- | --- | | Effective Gross Income (EGI) | B3 * (1 - B4) | $142,500 | $142,500 | | Net Operating Income (NOI) | (B3 * (1 - B4)) - B5 | $90,000 / yr | $90,000 / yr | | Capitalization Rate (Cap Rate) | NOI / B2 | 7.50% (0.0750) | Implied Value = $1,500,000! | | Gross Rent Multiplier (GRM) | B2 / B3 | 8.00x gross rent | 10.00x at $1.5M | - **Formula (Property Capitalization Rate = ((GrossRent * (1 - Vacancy)) - OpEx) / Price)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B6<=0),"Invalid inputs",ROUND(((B3 * (1 - B4)) - B5) / B2, 4)))` - **Formula (Gross rent multiplier)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B6<=0),"Invalid inputs",ROUND(B2 / B3, 2)))` - **Formula (Effective gross income)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B6<=0),"Invalid inputs",B3*(1-B4)))` - **Formula (Net operating income)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B6<=0),"Invalid inputs",ROUND((B3 * (1 - B4)) - B5, 2)))` - **Formula (Direct-capitalization scenario)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B6<=0),"Invalid inputs",IF(B3*(1-B4)-B5<=0,"Not applicable",ROUND((B3*(1-B4)-B5)/B6,2))))` - **Formula (Operating expense ratio)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B6<=0),"Invalid inputs",IF(B3*(1-B4)=0,"Not applicable",B5/(B3*(1-B4)))))` ### Capillary Brazing Joint Overlap & Wicking Rise Formula - **URL**: https://sheets.arte-soft.com/en/learn/capillary-furnace-brazing-joint-overlap-length-wicking-height-and-shear-safety/ - **Summary**: Calculate AWS Required Braze Overlap Length (mm), Overlap-to-Thickness Ratio (L/t), Molten Filler Capillary Suction Pressure (kPa), and Vertical Wicking Height (mm). *Table — Widen a furnace-braze joint clearance from 0.06 mm to a sloppy 0.45 mm and molten silver/copper filler loses 87% of its vertical capillary climb!:* | AWS Furnace Brazing KPI (t=2.0 mm, UTS=420, tau=175 MPa, FS=3.0, Gap w=0.06 vs 0.45 mm) | Formula | Verified Output | | --- | --- | --- | | Required Braze Overlap L_lap (mm) | (FS * Base_UTS_MPa * Thick_mm) / Braze_Shear | 14.40 mm | | Overlap-to-Thickness Ratio (L/t) | Required_Overlap_mm / Sheet_Thick_t_mm | 7.20 x sheet thickness | | Capillary Suction Pressure (kPa) | ((2 * gamma * COS(rad)) / (w_mm / 1000)) / 1000 | 33.29 kPa (4.44 kPa @ sloppy 0.45 mm gap!) | | Vertical Wicking Rise h_wick (mm) | ((2*gamma*COS(rad))/(rho*9.80665*(w/1000)))*1e3 | 394.7 mm (52.6 mm void starvation @ 0.45 mm!) | - **Formula (AWS Lap-Shear Strength Balance & Parallel-Slot Capillary Wicking Formula)**: `=LET(ts_m, B2, ut_m, B3, tb_m, B4, fs_j, B5, wg_m, B6 / 1000, gm_n, B7, th_r, B8 * (PI() / 180), rm_k, B9, IF(OR(ts_m <= 0.1, ut_m <= 50, tb_m <= 20, fs_j < 1, B6 < 0.01, B6 > 2, gm_n < 0.2, gm_n > 2.5, B8 < 0, B8 > 75, rm_k < 2000, rm_k > 18000), "Invalid Braze Joint", ROUND(((2 * gm_n * COS(th_r)) / (rm_k * 9.80665 * wg_m)) * 1000, 1)))` - **Formula (Out-of-Tolerance 0.45 mm Machined Socket Gap Void Starvation Check (Set Gap w B6 = 0.45 mm))**: `=IF(ISTEXT(E5), E5, ROUND((B5 * B3 * B2) / B4, 2))` ### Capillary Number (Ca) & Bond / Eötvös Number (Bo) Interfacial Scaling - **URL**: https://sheets.arte-soft.com/en/learn/capillary-number-ca-and-bond-eotvos-number-interfacial-flow/ - **Summary**: Calculate the viscous-to-interfacial Capillary Number Ca = (mu * U) / sigma and buoyancy-to-capillary Bond (Eötvös) Number Bo = (delta_rho * g * L^2) / sigma for microfluidics, droplets, and enhanced oil recovery. *Table — Diagnose whether surface tension traps droplets—or viscous and buoyancy forces mobilize them!:* | Interfacial Regime (mu = 1 mPa*s, U = 0.02 m/s, d_rho = 250 kg/m^3, L = 2 mm) | Capillary Number Ca | Bond / Eötvös Number Bo | Physical Meniscus Behavior | | --- | --- | --- | --- | | Untreated Oil-Water Interface (sigma = 0.030 N/m) | 0.000667 (<< 1) | 0.3269 (< 1) | Capillary pinning & spherical drops | | Surfactant-Flooded Interface (sigma = 0.0003 N/m) | 0.066667 | 32.6888 (>> 1) | Ganglia mobilized & gravity-deformed | | Zero or Negative Surface Tension sigma <= 0 | Guarded Singularity | "Invalid Interfacial Inputs" | Requires sigma > 0, mu > 0, L > 0 | - **Formula (Dimensionless Capillary Number Ca = (mu * U) / sigma)**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0), "Invalid Interfacial Inputs", ROUND((B2 * B3) / B4, 6))` - **Formula (Dimensionless Bond / Eötvös Number Bo = (delta_rho * 9.80665 * L^2) / sigma)**: `=IF(OR(B4 <= 0, B5 < 0, B6 <= 0), "Invalid Interfacial Inputs", ROUND((B5 * 9.80665 * (B6 ^ 2)) / B4, 4))` ### Capitalize only the first letter of a cell (sentence case) - **URL**: https://sheets.arte-soft.com/en/learn/capitalize-first-letter-sentence-case/ - **Summary**: Capitalize the first character and lowercase the rest of a short text label; preserve empty inputs with a blank guard. *Table — Sentence case vs PROPER title case:* | RawHeadline (A) | Sentence Case | PROPER Case | | --- | --- | --- | | urgent SHIPMENT for client | Urgent shipment for client | Urgent Shipment For Client | | api token expired | Api token expired | Api Token Expired | - **Formula (Sentence-case formula with LET and TRIM)**: `=IF(COUNTBLANK(A2:A2)=1,"",LET(t, TRIM(A2), UPPER(LEFT(t, 1)) & LOWER(MID(t, 2, LEN(t)))))` - **Formula (Preserve uppercase acronyms in the rest of the text)**: `=LET(t, TRIM("export CSV to ERP"), UPPER(LEFT(t, 1)) & MID(t, 2, LEN(t)))` ### UCSF-CAPRA Score Formula: Preoperative Prostate Cancer Risk Assessment (0 to 10) - **URL**: https://sheets.arte-soft.com/en/learn/capra-prostate-cancer-risk-assessment-ucsf-preoperative-score/ - **Summary**: Stratify biochemical recurrence-free and metastasis-free survival in localized prostate cancer using Matthew Cooperberg’s 5-variable UCSF-CAPRA score (0–10 points). *Table — Moving beyond coarse D’Amico Low/Intermediate/High buckets by weighting biopsy core burden and PSA!:* | UCSF-CAPRA Total Score (0–10) | 5-Year Recurrence-Free Tier | Oncologic Multidisciplinary Pathway | | --- | --- | --- | | CAPRA 0–2 (Low Risk) | ~85%–95% 5-Yr RFS | Active Surveillance Candidate vs Monotherapy | | CAPRA 3–5 (Intermediate Risk) | ~65%–80% 5-Yr RFS | Definitive Local Therapy ± Pelvic Staging | | CAPRA 6–10 (High Risk, e.g., 7) | < 50% RFS Monotherapy | Multimodal Therapy / PSMA PET Staging | - **Formula (Total 5-Variable UCSF-CAPRA Preoperative Score (0 to 10 Points))**: `=IF(OR(MIN(B2:B6) < 0, B2 > 4, B3 = 2, B3 > 3, B4 > 1, B5 > 1, B6 > 1), "Invalid UCSF-CAPRA Item", SUM(B2:B6))` - **Formula (UCSF-CAPRA Three-Group Recurrence Risk Classification)**: `=IF(OR(MIN(B2:B6) < 0, B2 > 4, B3 = 2, B3 > 3, B4 > 1, B5 > 1, B6 > 1), "Invalid UCSF-CAPRA Item", IF(SUM(B2:B6) >= 6, "High Risk (CAPRA 6–10 — Multimodal / Staging Workup)", IF(SUM(B2:B6) >= 3, "Intermediate Risk (CAPRA 3–5)", "Low Risk (CAPRA 0–2 — Active Surveillance Candidate)")))` ### Caprini Score for Perioperative Venous Thromboembolism (VTE) Surgical Risk - **URL**: https://sheets.arte-soft.com/en/learn/caprini-venous-thromboembolism-vte-surgical-score-formula/ - **Summary**: Calculate the weighted Joseph Caprini VTE Risk Score (1*Count_1pt + 2*Count_2pt + 3*Count_3pt + 5*Count_5pt + Age_Points) and stratify surgical DVT/PE prophylaxis from Very Low (0) to High (>= 5). *Table — Weight 1-point, 2-point, 3-point, and 5-point surgical thrombosis risk factors accurately!:* | Caprini Total Score | 30-Day VTE Incidence | ACCP Surgical Risk Tier | Recommended Prophylaxis | | --- | --- | --- | --- | | 0 points | < 0.5% | Very Low Risk (0) | Early frequent ambulation | | 1–2 points | ~1.5% | Low Risk (1–2) | Mechanical prophylaxis (IPC) | | 3–4 points | ~3.0% | Moderate Risk (3–4) | Pharmacologic (LMWH/UFH) or IPC | | >= 5 points | >= 6.0% | High Risk (>= 5) | Dual Pharmacologic + Mechanical IPC | - **Formula (Total Weighted Caprini VTE Score)**: `=IF(OR(B2 <= 0, MIN(B3:B6) < 0), "Invalid Caprini Inputs", IF(B2 >= 75, 3, IF(B2 >= 61, 2, IF(B2 >= 41, 1, 0))) + B3 + (2 * B4) + (3 * B5) + (5 * B6))` - **Formula (ACCP Perioperative VTE Risk & Prophylaxis Stratum)**: `=IF((IF(B2 >= 75, 3, IF(B2 >= 61, 2, IF(B2 >= 41, 1, 0))) + B3 + (2 * B4) + (3 * B5) + (5 * B6)) >= 5, "High VTE Risk (>= 5: LMWH/UFH + Mechanical IPC)", IF((IF(B2 >= 75, 3, IF(B2 >= 61, 2, IF(B2 >= 41, 1, 0))) + B3 + (2 * B4) + (3 * B5) + (5 * B6)) >= 3, "Moderate VTE Risk (3-4: LMWH/UFH or IPC)", IF((IF(B2 >= 75, 3, IF(B2 >= 61, 2, IF(B2 >= 41, 1, 0))) + B3 + (2 * B4) + (3 * B5) + (5 * B6)) >= 1, "Low VTE Risk (1-2: Mechanical IPC)", "Very Low VTE Risk (0: Early Ambulation)")))` ### Capstan and Flat-Belt Friction Formula (Euler-Eytelwein Equation) - **URL**: https://sheets.arte-soft.com/en/learn/capstan-euler-eytelwein-belt-friction-tension-ratio-and-power/ - **Summary**: Calculate exponential capstan holding-force multiplication EXP(mu * theta_rad) and maximum slip-free flat-belt transmitted power P_kW = (T_1 - T_2) * v / 1000. *Table — Catch the degrees-vs-radians bug inside EXP(mu * theta_rad)!:* | Wrap Scenario (mu = 0.35) | Wrap Angle in Radians | Tension Ratio EXP(mu * theta) | | --- | --- | --- | | Half-Wrap Drive Pulley (180 deg) | RADIANS(180) = 3.1416 rad | 3.0028x (T_1 = 1,201.13 N) | | Single Full Turn Winch (360 deg) | RADIANS(360) = 6.2832 rad | 9.0170x (3.0028^2) | | Three-Turn Marine Capstan (1080 deg) | RADIANS(1080) = 18.8496 rad | 733.1458x (3.0028^6!) | - **Formula (Euler-Eytelwein Tension Amplification Ratio EXP(mu * RADIANS(theta_deg)) Formula)**: `=LET(mu_f, B2, deg_w, B3, IF(OR(mu_f < 0, deg_w <= 0), "Invalid Wrap Input", ROUND(EXP(mu_f * RADIANS(deg_w)), 4)))` - **Formula (Maximum Slip-Free Belt Power P_kW = T_2 * (EXP(mu * theta) - 1) * v / 1000 Formula)**: `=LET(mu_f, B2, deg_w, B3, t_slk, B4, v_blt, B5, IF(OR(mu_f < 0, deg_w <= 0, t_slk <= 0, v_blt < 0), "Invalid Wrap Input", LET(t_rat, EXP(mu_f * RADIANS(deg_w)), ROUND((t_slk * (t_rat - 1) * v_blt) / 1000, 4))))` ### Caquot-Kerisel Log-Spiral Passive Earth Pressure (K_p) Formula vs Planar Coulomb Error - **URL**: https://sheets.arte-soft.com/en/learn/caquot-kerisel-log-spiral-passive-earth-pressure-wall-friction-formula/ - **Summary**: Calculate safe horizontal passive earth pressure coefficient K_p,h under wall-soil interface friction delta using Albert Caquot & Jean Kerisel’s (1948) / Eurocode 7 curved logarithmic-spiral slip surface, avoiding Coulomb’s dangerous overprediction. *Table — Why planar Coulomb K_p overpredicts passive resistance by > 60% when wall friction delta > phi / 2!:* | Sand Friction phi = 35° & Wall Friction Ratio delta / phi | Smooth Rankine K_p (delta = 0) | Curved Log-Spiral K_p,h (Eurocode 7 / Caquot-Kerisel) | Unsafe Planar Coulomb K_p,h | | --- | --- | --- | --- | | Smooth Wall (delta = 0°) | 3.690 | 3.690 (Identical) | 3.690 | | Moderate Roughness (delta = 17.5° = 0.5*phi) | 3.690 | 6.120 | 6.619 (+8.2% High) | | Full Roughness (delta = 35.0° = 1.0*phi) | 3.690 | 8.324 (Safe Curved Wedge) | 26.66 (+220% UNSAFE!) | - **Formula (Curved Log-Spiral Horizontal Passive Coefficient K_p,h (Caquot-Kerisel / Lancellotta EC7))**: `=IF(OR(B2 < 15, B2 > 45, B3 < 0, B3 > B2), "Requires 15 <= phi <= 45 deg and 0 <= delta <= phi", ROUND((COS(RADIANS(B3)) / (1 - SIN(RADIANS(B2)))) * (COS(RADIANS(B3)) + SQRT(MAX(0, (SIN(RADIANS(B2)) ^ 2) - (SIN(RADIANS(B3)) ^ 2)))) * EXP((ASIN(MIN(1, SIN(RADIANS(B3)) / SIN(RADIANS(B2)))) + RADIANS(B3)) * TAN(RADIANS(B2))), 3))` - **Formula (Planar Coulomb Horizontal Passive Coefficient K_p,h (Shown to Quantify Overprediction))**: `=IF(OR(B2 < 15, B2 > 45, B3 < 0, B3 > B2), "Requires 15 <= phi <= 45 deg and 0 <= delta <= phi", ROUND((COS(RADIANS(B2)) ^ 2) / ((1 - SQRT((SIN(RADIANS(B2 + B3)) * SIN(RADIANS(B2))) / COS(RADIANS(B3)))) ^ 2), 3))` ### Carberry Number (Ca) Formula: Observable External Film Mass-Transfer Check in Catalysis - **URL**: https://sheets.arte-soft.com/en/learn/carberry-number-external-mass-transfer-catalytic-pellet-check/ - **Summary**: Diagnose external boundary-layer film diffusion falsification in packed-bed catalytic reactors using James J. Carberry’s observable number Ca = R_obs / (k_g * a_p * C_b) and Mears’s < 5% criterion n * Ca < 0.05. *Table — Why you cannot measure intrinsic catalyst kinetics until Carberry’s number passes n * Ca < 0.05!:* | Carberry Number Ca & Reaction Order n | Surface-to-Bulk Ratio C_s / C_b = 1 - Ca | External Effectiveness (1 - Ca)^n & Regime | | --- | --- | --- | | Ca = 0.015, Order n = 1 (n*Ca = 0.015 < 0.05) | 0.9850 (1.5% Film Drop) | 0.9850 — Intrinsic Kinetic Regime (<5% Bias) | | Ca = 0.120, Order n = 2 (n*Ca = 0.240 >= 0.05) | 0.8800 (12% Film Drop) | 0.7744 — Film-Disguised Rate (-22.6% Bias!) | | Ca -> 1.000 (Mass-Transfer Limiting Ceiling) | 0.0000 (C_s -> 0 at Surface) | External Diffusion Controlled (Apparent E_a -> ~5 kJ/mol) | - **Formula (Observable Carberry Number Ca = R_obs / (k_g * (6 / d_p) * C_b) for Spherical Pellets)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Catalyst Film Parameters", IF(B2 / (B3 * (6 / B4) * B5) >= 1, "Unphysical Rate >= Max Film Flux (Ca >= 1)", ROUND(B2 / (B3 * (6 / B4) * B5), 4)))` - **Formula (Mears-Carberry External Mass-Transfer Diagnostic (n * Ca < 0.05 Criterion))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Catalyst Film Parameters", IF(B2 / (B3 * (6 / B4) * B5) >= 1, "Unphysical Rate >= Max Film Flux (Ca >= 1)", IF(B6 * (B2 / (B3 * (6 / B4) * B5)) < 0.05, "Negligible External Film Resistance (n*Ca < 0.05)", "External Film Limitation Present (Increase Linear Velocity u!)")))` ### Carnot Efficiency & Stefan-Boltzmann Thermal Radiation formulas (Kelvin) - **URL**: https://sheets.arte-soft.com/en/learn/carnot-efficiency-and-stefan-boltzmann-thermal-radiation/ - **Summary**: Calculate a two-reservoir Carnot bound and gray-surface radiation to large isothermal surroundings using absolute temperatures. *Table — Never plug Celsius directly into Carnot or T^4 radiation—convert to Kelvin (+273.15) first!:* | Thermodynamic Input | Cell | Value | Kelvin & Output | | --- | --- | --- | --- | | Hot Surface / Reservoir (T_H) | B2 | 127 C | 400.15 K | | Cold Ambient Sink (T_C) | B3 | 27 C | 300.15 K -> Carnot = 0.2499 (24.99%) | | Surface Emissivity (eps) | B4 | 0.90 | Oxidized steel / painted casing | | Radiating Area (m^2) | B5 | 2.0 m^2 | Emitted = 2,616.83 W \| Net = 1,788.43 W | - **Formula (Carnot maximum thermodynamic efficiency 1 - (T_C + 273.15) / (T_H + 273.15))**: `=IF(OR(COUNT(B2:B3)<>2,B2<=-273.15,B3<=-273.15,B24,B2<=-273.15,B3<=-273.15,B4<0,B4>1,B5<0),"Invalid inputs",ROUND(B4 * 5.670374419E-8 * B5 * (((B2 + 273.15) ^ 4) - ((B3 + 273.15) ^ 4)), 2))` ### Carothers Equation: Step-Growth Polymerization Degree (Xn, Xw) & Stoichiometric Ratio (r) - **URL**: https://sheets.arte-soft.com/en/learn/carothers-step-growth-polymerization-dp-and-pdi-formula/ - **Summary**: Calculate number-average degree of polymerization Xn = (1 + r) / (1 + r - 2*r*p), weight-average Xw = (1 + p) / (1 - p), and Flory polydispersity PDI = 1 + p in nylon and polyester synthesis. *Table — See why 99% conversion and exact 1:1 stoichiometry are mandatory in step-growth polymers!:* | Reactor Feed Condition | Stoichiometry r & Conversion p | Number-Avg Xn | Equimolar Weight-Avg Xw | | --- | --- | --- | --- | | Balanced Nylon-6,6 Salt | r = 1.00, p = 0.99 | Xn = 100.0 units | Xw = 199.0 (PDI = 1.99) | | 2% Monomer Imbalance / Capper | r = 0.98, p = 0.99 | Xn = 50.0 units (Halved!) | Capped by excess end-groups | | Invalid r > 1 or Gel/Complete p >= 1 | r > 1 or (1+r-2rp) <= 0 | Guarded Input Error | "Invalid Carothers Inputs" | - **Formula (General Carothers Number-Average Degree of Polymerization Xn(r, p))**: `=IF(OR(B2 <= 0, B2 > 1, B3 < 0, B3 >= 1), "Invalid Carothers Inputs", ROUND((1 + B2) / (1 + B2 - (2 * B2 * B3)), 2))` - **Formula (Equimolar Weight-Average Degree of Polymerization Xw = (1 + p) / (1 - p))**: `=IF(OR(B3 < 0, B3 >= 1), "Invalid Carothers Inputs", ROUND((1 + B3) / (1 - B3), 2))` ### Check Baggage Dimensions: Inches to Centimeters and Configurable Limits - **URL**: https://sheets.arte-soft.com/en/learn/carry-on-baggage-linear-dimensions-inches-to-cm-check/ - **Summary**: Build a spreadsheet dimension check using configurable per-axis and total limits. Convert inches to centimeters and compare unrounded totals without claiming airline approval. - **Formula (Display the linear total in centimeters)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric dimensions",IF(MIN(B2:B4)<=0,"Enter positive dimensions",ROUND(SUM(B2:B4)*2.54,1)))` - **Formula (Check each dimension and the unrounded total)**: `=IF(OR(COUNT(B2:B5)<>4,COUNT(C2:C4)<>3),"Enter numeric dimensions and limits",IF(OR(MIN(B2:B5)<=0,MIN(C2:C4)<=0),"Enter positive dimensions and limits",IF(AND(B2<=C2,B3<=C3,B4<=C4,SUM(B2:B4)*2.54<=B5),"Within configured dimensions","Exceeds configured dimensions")))` ### Casagrande Electro-Osmotic Clay Dewatering & Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/casagrande-electroosmotic-clay-dewatering-flow-rate-and-cathode-well-power-formula/ - **Summary**: Calculate Electric Voltage Gradient ie = V/L (V/m), Electro-Osmotic Cathode Water Flow Qe (L/h), DC Rectifier Ohmic Power (kW), and Specific Dewatering Energy (kWh/m³). *Table — Vacuum wellpoints fail completely in fat marine clay (`k_h = 10^-10` m/s)—yet a 50 V/m DC electric field pumps pore water 10,000x faster!:* | Casagrande Electro-Osmosis KPI (L=1.8 m, ke=5.0e-9, A=24 m², sigma=0.085 S/m, V=90 vs 140 V) | Formula | Verified Output | | --- | --- | --- | | Electric Field Gradient ie (V/m) | DC_Voltage_V / Electrode_Spacing_L_m | 50.0 V/m (77.8 V/m desiccation risk @ 140 V!) | | Cathode Water Extraction Qe (L/h) | (ke_e9 * 1e-9) * ie * Area_m2 * 3,600,000 | 21.60 L/h (33.60 L/h @ 140 V) | | DC Rectifier Load P_DC (kW) | (sigma_S_m * (V^2 / L_m) * Area_m2) / 1000 | 9.18 kW (22.21 kW = V^2 Ohmic heating!) | | Specific Dewatering Energy (kWh/m³) | DC_Power_kW / (Water_Flow_L_h / 1000) | 425.0 kWh/m³ (661.1 kWh/m³ @ 140 V) | - **Formula (Casagrande Electro-Osmotic Seepage Law & Ohmic Soil Heating Power Formula)**: `=LET(vd_c, B2, ls_m, B3, ke_n, B4 * 0.000000001, ac_m, B5, sg_s, B6, ie_v, vd_c / ls_m, qe_m, ke_n * ie_v * ac_m * 3600, pk_w, (sg_s * (vd_c ^ 2) * ac_m) / (ls_m * 1000), IF(OR(vd_c < 10, vd_c > 250, ls_m < 0.5, ls_m > 6, B4 < 0.5, B4 > 15, ac_m <= 1, sg_s < 0.005, sg_s > 1.5), "Invalid EO Input", ROUND(pk_w / qe_m, 1)))` - **Formula (Excessive 140 V Anode Heating & V^2 Power Penalty Check (Set DC Voltage B2 = 140 V))**: `=IF(ISTEXT(E5), E5, ROUND((B6 * (B2 ^ 2) * B5) / (B3 * 1000), 2))` ### Casagrande Plasticity Chart (USCS) Formula: Atterberg Plasticity Index & A-Line Soil Symbol - **URL**: https://sheets.arte-soft.com/en/learn/casagrande-plasticity-chart-a-line-and-atterberg-plasticity-index/ - **Summary**: Classify fine-grained soils into USCS Clay vs. Silt (CL, CH, ML, MH) using Arthur Casagrande’s Plasticity Index PI = LL - PL, A-line PI_A = 0.73 * (LL - 20), and LL = 50% compressibility boundary. *Table — How Arthur Casagrande’s 1948 A-Line separates inorganic clays (CL/CH) from silts & organic soils (ML/MH)!:* | Atterberg Limits (LL %, PL %) | Soil PI = LL - PL | Casagrande A-Line 0.73*(LL - 20) | ASTM D2487 USCS Fine Soil Group | | --- | --- | --- | --- | | LL = 54%, PL = 24% | PI = 30% | 24.82% (PI >= A-Line) | CH — High-Plasticity (Fat) Clay | | LL = 38%, PL = 18% | PI = 20% | 13.14% (PI >= A-Line) | CL — Low-Plasticity (Lean) Clay | | LL = 54%, PL = 36% | PI = 18% | 24.82% (PI < A-Line) | MH — High-Plasticity Elastic Silt | - **Formula (ASTM D2487 / Casagrande USCS Fine-Grained Soil Group Classifier (CH, CL, CL-ML, MH, ML))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > B2), "Invalid Atterberg Limits (Requires LL >= PL > 0)", IF(B2 >= 50, IF(B2 - B3 >= 0.73 * (B2 - 20), "CH (High-Plasticity Fat Clay)", "MH (High-Plasticity Elastic Silt)"), IF(AND(B2 - B3 >= 4, B2 - B3 <= 7, B2 - B3 >= 0.73 * (B2 - 20)), "CL-ML (Silty Clay Dual Zone)", IF(AND(B2 - B3 > 7, B2 - B3 >= 0.73 * (B2 - 20)), "CL (Low-Plasticity Lean Clay)", "ML (Low-Plasticity Silt)"))))` - **Formula (Casagrande A-Line Reference Plasticity Index PI_A = MAX(0, 0.73 * (LL - 20)))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > B2), "Invalid Atterberg Limits (Requires LL >= PL > 0)", ROUND(MAX(0, 0.73 * (B2 - 20)), 2))` ### Case-Sensitive Cell Count & Substring Count (EXACT & FIND) - **URL**: https://sheets.arte-soft.com/en/learn/case-sensitive-count-and-contain-exact-find-helper/ - **Summary**: Count exact uppercase/lowercase matches and case-sensitive substrings where COUNTIF ignores letter case, using row-level --EXACT(A2, $E$2) and --ISNUMBER(FIND($E$3, A2)) helper columns. *Table — Why COUNTIF treats "ID-a" and "ID-A" as identical—and how to separate them!:* | Code (A) | Exact "SKU-a" Helper (B) | Contains "-PRO" Helper (C) | Why It Matches or Fails | | --- | --- | --- | --- | | SKU-a | 1 | 0 | Exact lowercase "-a" match | | SKU-A | 0 | 0 | Uppercase "-A" rejected by EXACT! | | SKU-a-PRO | 0 | 1 | Uppercase "-PRO" matched by FIND | | SKU-a-pro | 0 | 0 | Lowercase "-pro" rejected by FIND! | | SKU-a | 1 | 0 | Second exact "SKU-a" (SUM = 2) | - **Formula (Row-Level Case-Sensitive Exact Match Flag & Total Count)**: `=SUM(B2:B6)` - **Formula (Case-Sensitive Substring Check with ISNUMBER(FIND(...)))**: `=--(ISNUMBER(FIND($E$3, A4)))` ### Case-sensitive FILTER, SUM & COUNT using an EXACT helper flag - **URL**: https://sheets.arte-soft.com/en/learn/case-sensitive-filter-and-count-exact-helper/ - **Summary**: Use per-row EXACT flags to distinguish case variants, count matching records and sum their numeric amounts. *Table — Why FILTER(B2:B6, A2:A6 = "SAVE20") leaks lowercase rows—and how EXACT locks it down!:* | Coupon Code (A) | Redemption $ (B) | EXACT vs "SAVE20" (C) | Included in Case-Sensitive Filter? | | --- | --- | --- | --- | | SAVE20 | $40 | 1 (Exact match) | Included ($40) | | save20 | $15 | 0 (Lowercase) | Excluded (leaks into SUMIF!) | | Save20 | $20 | 0 (Title case) | Excluded (leaks into SUMIF!) | | SAVE20 | $60 | 1 (Exact match) | Included ($40 + $60 = $100) | | VIP50 | $100 | 0 | Excluded (SUMIF gave $135!) | - **Formula (Sum case-sensitive filtered rows via EXACT helper flag C2:C6)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",SUM(FILTER(B2:B6, C2:C6 = 1, 0)))` - **Formula (Case-sensitive match count vs case-insensitive SUMIF comparison)**: `=SUM(C2:C6)` - **Formula (Display the matching amounts)**: `=FILTER(B2:B6,C2:C6=1,"No matches")` ### Case-sensitive sum and count with EXACT helper flags - **URL**: https://sheets.arte-soft.com/en/learn/case-sensitive-sum-and-count-exact-sumproduct/ - **Summary**: Prevent SUMIF and COUNTIF from merging case-distinct IDs like "001XyzAB" and "001Xyzab" by pairing EXACT with SUMPRODUCT. *Table — Use exact case when it is part of an identifier:* | CRM Account ID (A) | ARR $ (B) | EXACT vs "001XyzAB" (C) | Case-insensitive vs exact-case sum | | --- | --- | --- | --- | | "001XyzAB" (Rows 2 & 4) | $12,000 + $18,000 | 1 (True Match) | Exact Sum = $30,000 (2 rows) | | "001Xyzab" (Rows 3 & 6) | $45,000 + $15,000 | 0 (Different case!) | Case-insensitive sum includes both variants: $90,000 | | "001XyzCD" (Row 5) | $9,000 | 0 | Excluded by both | - **Formula (Case-sensitive conditional sum)**: `=IF(OR(COUNTBLANK(E2)>0,COUNT(B2:B6)<>5),"Invalid inputs",SUMPRODUCT(C2:C6, B2:B6))` - **Formula (Count exact-case matches)**: `=IF(OR(COUNTBLANK(E2)>0,COUNT(B2:B6)<>5),"Invalid inputs",SUM(C2:C6))` ### Case-sensitive lookup with EXACT, XLOOKUP and INDEX/MATCH - **URL**: https://sheets.arte-soft.com/en/learn/case-sensitive-xlookup-and-index-match-exact/ - **Summary**: Use a per-row EXACT helper to distinguish letter case in text identifiers, with explicit blank and missing-match handling. *Table — Standard XLOOKUP, VLOOKUP, and MATCH ignore uppercase vs lowercase!:* | Code (Col A) | Price (Col B) | EXACT Flag vs "TX-10" | Lookup Behavior for "TX-10" | | --- | --- | --- | --- | | tx-10 | $120 | 0 (case mismatch) | Ordinary case-insensitive lookup returns the first matching row (120) | | TX-10 | $275 | 1 (strict case match!) | Case-sensitive XLOOKUP(1, C2:C4, ...) -> $275! | | Tx-10 | $410 | 0 (case mismatch) | Matched only when E2 = "Tx-10" | - **Formula (Case-Sensitive XLOOKUP Against an EXACT Helper Column)**: `=XLOOKUP(1, C2:C4, B2:B4, "No Exact-Case Match")` - **Formula (INDEX/MATCH with an explicit missing-position guard)**: `=IF(IFNA(MATCH(1,C2:C4,0),0)=0,"No Exact-Case Match",INDEX(B2:B4,MATCH(1,C2:C4,0)))` ### Cash denomination calculator: break amounts into $100, $50, $20, $10, $5, $1 bills - **URL**: https://sheets.arte-soft.com/en/learn/cash-denomination-bill-breakdown/ - **Summary**: Compute the minimum number of banknotes for cash envelopes and register drawers using INT and sequential MOD remainders. *Table — Watch out for the $50-to-$20 remainder trap:* | CashPayout (A) | $100 Bills | $50 Bills | $20 Bills | $10 / $5 / $1 | | --- | --- | --- | --- | --- | | 387 | 3 | 1 | 1 | 1 / 1 / 2 (Total = $387) | | 245 | 2 | 0 | 2 | 0 / 1 / 0 (Total = $245) | - **Formula (Sequential denomination formulas)**: `=INT(A2 / 100)` - **Formula ($20-bill count after $100 and $50 bills)**: `=INT(MOD(MOD(A2, 100), 50) / 20)` - **Formula (Complete the $10 and $5 bill counts)**: `=INT(MOD(MOD(MOD(A2,100),50),20)/10)` - **Formula (Five-dollar bills)**: `=INT(MOD(MOD(MOD(MOD(A2,100),50),20),10)/5)` ### Cash-on-Cash Return & Equity Multiple (EMx) formulas in Real Estate - **URL**: https://sheets.arte-soft.com/en/learn/cash-on-cash-return-and-equity-multiple-real-estate/ - **Summary**: Compute a simplified annual pre-tax cash-on-cash ratio and a realized full-cycle distributions-to-equity multiple, without confusing either with annualized return. *Table — Keep annual cash flow separate from full-cycle distributions:* | Metric | Formula | Annual debt 62,000 | Annual debt 93,500 | | --- | --- | --- | --- | | Pre-Tax Cash Flow | B2 - B3 (NOI - DebtService) | $90,000 - $62,000 = $28,000 | $90,000 - $93,500 = -$3,500 | | Cash-on-Cash Return (CoC) | (B2 - B3) / B4 ($350k Cash In) | 8.00% (0.0800) | -1.00% (-0.0100 Cash Deficit!) | | Full-Cycle Equity Multiple | B5 / B4 ($665k Total Returned) | 1.90x ($315k net profit) | Unchanged input; lifetime cash flows must be remodeled | - **Formula (Annual Leveraged Cash-on-Cash Return = (NOI - DebtService) / CashInvested)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B3<0,B4<=0),"Invalid inputs",ROUND((B2 - B3) / B4, 4)))` - **Formula (Deal Equity Multiple (EMx) = TotalCashDistributions / TotalEquityInvested)**: `=IF(COUNT(B4:B5)<>2,"Invalid inputs",IF(OR(B4<=0,B5<0),"Invalid inputs",ROUND(B5 / B4, 2)))` - **Formula (Annual pre-tax cash flow in this model)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B3<0,B4<=0),"Invalid inputs",B2 - B3))` ### Casimir Effect Quantum Vacuum Pressure (1/d^4) & MEMS Plate Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/casimir-vacuum-quantum-pressure-and-plate-force-formula/ - **Summary**: Calculate the attractive quantum-electrodynamic Casimir pressure P_C = (PI()^2 * hbar * c) / (240 * d^4) in Pascals and stiction force F_C in microNewtons between parallel uncharged conducting plates separated by d nanometers. *Table — Feel empty space push two uncharged mirrors together with 1/d^4 MEMS stiction!:* | Parallel Plate Gap d (nm) | 1 / d^4 Scaling Jump | Casimir Pressure P_C (Pascals) | Force on 100x100 um^2 Pad (uN) | | --- | --- | --- | --- | | d = 100 nm (Sub-micron MEMS) | Baseline 1x | 13.001 Pa | 0.1300 uN | | d = 50 nm (Half Gap) | 2^4 = 16x Jump! | 208.020 Pa | 2.0802 uN | | d = 10 nm (NEMS Contact) | 10^4 = 10,000x Jump! | 130,012.577 Pa (~1.28 atm!) | 1,300.1258 uN | - **Formula (Attractive Quantum Vacuum Casimir Pressure Magnitude P_C (Pascals))**: `=IF(B2 <= 0, "Invalid Gap Separation", ROUND(((PI() ^ 2) * 1.054571817e-34 * 299792458) / (240 * ((B2 * 1e-9) ^ 4)), 3))` - **Formula (Attractive Casimir Force F_C in MicroNewtons (uN) on Pad Area B3 (um^2))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Gap Separation", ROUND((((PI() ^ 2) * 1.054571817e-34 * 299792458) / (240 * ((B2 * 1e-9) ^ 4))) * B3 * 0.000001, 4))` ### Casson Chocolate Yield Stress & Plastic Viscosity Formula - **URL**: https://sheets.arte-soft.com/en/learn/casson-chocolate-yield-stress-plastic-viscosity-and-enrobing-shear-stress-formula/ - **Summary**: Calculate IOCCC Casson High-Shear Stress tau (Pa), Apparent Pumping Viscosity (Pa·s), Low-Shear 2 s⁻¹ Gravity-Drain Stress (Pa), and Low-Shear Coating Viscosity (Pa·s). *Table — Adding 0.4% soy lecithin slashes chocolate yield stress by 66% without expensive cocoa butter—thinning biscuit enrobing shells on command!:* | ICA Casson Chocolate Rheology KPI (gamma=40 s⁻¹: Un-Lecithinated 12.5 Pa vs +0.4% Lecithin 4.2 Pa) | Formula | Verified Output | | --- | --- | --- | | High-Shear Stress tau (Pa) | (SQRT(tau_CA) + SQRT(eta_CA * gamma)) ^ 2 | 147.33 Pa (103.50 Pa @ +0.4% lecithin) | | Apparent Viscosity @ gamma (Pa·s) | High_Shear_Stress_Pa / Shear_Rate_inv_s | 3.683 Pa·s (2.587 Pa·s @ +0.4% lecithin) | | Gravity-Drain Stress @ 2 s⁻¹ (Pa) | (SQRT(tau_CA) + SQRT(eta_CA * 2)) ^ 2 | 29.80 Pa (14.95 Pa = -50% thinner coat!) | | Low-Shear Viscosity @ 2 s⁻¹ (Pa·s) | Gravity_Drain_Stress_2s_Pa / 2 | 14.90 Pa·s (7.47 Pa·s crisp biscuit shell!) | - **Formula (IOCCC / ICA Casson Square-Root Constitutive Viscometry Formula)**: `=LET(tc_p, B2, ec_p, B3, gd_s, B4, tl_p, (SQRT(tc_p) + SQRT(ec_p * 2)) ^ 2, IF(OR(tc_p < 0.1, tc_p > 80, ec_p < 0.2, ec_p > 15, gd_s < 1, gd_s > 200), "Invalid Casson Input", ROUND(tl_p / 2, 2)))` - **Formula (0.4% Soy Lecithin Addition (tau_CA = 4.2 Pa, eta_CA = 1.65 Pa·s) Thin-Shell Enrobing Check)**: `=IF(ISTEXT(E5), E5, LET(th_p, (SQRT(B2) + SQRT(B3 * B4)) ^ 2, ROUND(th_p / B4, 3)))` ### Catastrophe Bond Spread Multiple & Layer Payout Formula - **URL**: https://sheets.arte-soft.com/en/learn/catastrophe-bond-expected-loss-coupon-multiple-and-attachment-exhaustion-payout/ - **Summary**: Calculate ILS Catastrophe Bond Risk-Spread-to-Expected-Loss Multiple, Actuarial Net Excess Spread (bps), Proportional Layer Principal Write-Down Principal * MIN(1, MAX(0, (Loss - Attach)/(Exhaust - Attach))), and Surviving Investor Principal. *Table — Price collateralized Catastrophe Bond tranches from Attachment, Exhaustion, and Expected Loss!:* | ILS Cat Bond Metric ($100M xs $400M–$500M, EL=2.50%, Spread=7.50%, Loss=$460M) | Formula | Verified Output | | --- | --- | --- | | Spread-to-Expected-Loss Multiple | Risk_Spread / Expected_Loss | 3.00x | | Net Excess Risk Spread (bps) | 10000 * (Risk_Spread - Expected_Loss) | 500.00 bps | | Triggered Principal Write-Down | Prin * MIN(1, MAX(0, (L - A)/(X - A))) | $60.00M ($0 @ $350M; $100M @ $650M) | | Surviving Investor Principal | Principal - Triggered_Write_Down | $40.00M ($100M @ $350M; $0 @ $650M) | - **Formula (Catastrophe Bond Proportional Layer Write-Down Formula)**: `=LET(pr_n, B2, at_p, B3, ex_p, B4, el_r, B5, sp_r, B6, ls_e, B7, IF(OR(pr_n <= 0, at_p < 0, ex_p <= at_p, el_r <= 0, el_r >= 1, sp_r < 0, ls_e < 0), "Invalid Cat Bond Terms", ROUND(pr_n * MIN(1, MAX(0, (ls_e - at_p) / (ex_p - at_p))), 2)))` - **Formula (Sub-Attachment Intact Principal ($350M) & Total Exhaustion ($650M) Checks)**: `=IF(ISTEXT(E4), E4, ROUND(B2 - E4, 2))` ### CATCH Rule (Canadian Assessment of Tomography for Childhood Head Injury) - **URL**: https://sheets.arte-soft.com/en/learn/catch-canadian-assessment-of-tomography-for-childhood-head-injury/ - **Summary**: Evaluate Martin Osmond’s 7-item pediatric CATCH head CT rule (0–16 years, GCS 13–15) across 4 High-Risk neurosurgical intervention criteria and 3 Medium-Risk brain-injury-on-CT criteria. *Table — Protect developing children from unnecessary cranial CT radiation while catching 100% of neurosurgical emergencies!:* | CATCH Pediatric Tier (Ages 0–16, GCS 13–15) | Clinical Factors Checked | Pediatric Cranial CT Action | | --- | --- | --- | | >= 1 High-Risk Factor (4 items) | 2h GCS<15, Open/Depressed Fx, Worsening HA, Irritable Exam | "Urgent Head CT (High Risk: Neurosurgical)" | | 0 High-Risk, >= 1 Medium-Risk (3 items) | Basal Skull Fx, Large Boggy Hematoma, Dangerous Mech | "Head CT Indicated (Medium Risk: CT Lesion)" | | 0 High-Risk and 0 Medium-Risk | All 7 CATCH Factors Negative | "No Head CT Required (CATCH Cleared)" | - **Formula (Count of Positive High-Risk CATCH Neurosurgical Factors (0 to 4))**: `=IF(B3 < 15, 1, 0) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 = 1, 1, 0)` - **Formula (Complete Pediatric CATCH Cranial CT Triage Recommendation)**: `=IF(OR(B2 < 0, B2 > 16, B3 < 13, B3 > 15), "Outside CATCH Pediatric GCS 13-15 Scope", IF((IF(B3 < 15, 1, 0) + SUM(B4:B6)) >= 1, "Urgent Head CT (High Risk: Neurosurgical)", IF(SUM(B7:B9) >= 1, "Head CT Indicated (Medium Risk: Brain Injury)", "No Head CT Required (CATCH Cleared)")))` ### Categorize bank or expense descriptions by keyword rules - **URL**: https://sheets.arte-soft.com/en/learn/categorize-text-by-keyword-table/ - **Summary**: Map noisy merchant strings like "Card #44 UBER *TRIP" into clean accounting categories using IFS, ISNUMBER, and SEARCH. *Table — Substring keyword matching with ISNUMBER(SEARCH(...)):* | Description (A) | Matched Keyword | Assigned Category | | --- | --- | --- | | Card #44 UBER *TRIP | UBER | Travel | | Monthly AWS Cloud Services | AWS | Hosting | | Local Bakery Catering | (none) | Uncategorized | - **Formula (Ordered keyword-rule formula)**: `=IFS(ISNUMBER(SEARCH($B$2, A2)), $C$2, ISNUMBER(SEARCH($D$2, A2)), $E$2, ISNUMBER(SEARCH($F$2, A2)), $G$2, TRUE, "Uncategorized")` - **Formula (Verify fallback and new merchant match)**: `=IFS(ISNUMBER(SEARCH($B$2, A4)), $C$2, ISNUMBER(SEARCH($D$2, A4)), $E$2, ISNUMBER(SEARCH($F$2, A4)), $G$2, TRUE, "Uncategorized")` ### Count category labels and calculate their share of nonblank responses - **URL**: https://sheets.arte-soft.com/en/learn/category-summary-count-and-percent-of-total-breakdown/ - **Summary**: Build a literal-label frequency summary with an explicit blank policy and unrounded percentage values. *Table — Turn a raw log of category tags into frequency counts and % shares!:* | Ticket Category | Count Formula | Tickets (out of 8) | Percent Share | | --- | --- | --- | --- | | Billing | COUNTIF($A$2:$A$9, "Billing") | 4 | 50.00% (0.5000) | | Bug | COUNTIF($A$2:$A$9, "Bug") | 2 | 25.00% (0.2500) | | Feature | COUNTIF($A$2:$A$9, "Feature") | 1 | 12.50% (0.1250) | | Docs | COUNTIF($A$2:$A$9, "Docs") | 1 | 12.50% (0.1250) | - **Formula (Prepare the validation helpers)**: `=IF(COUNTBLANK(A2)>0,0,IF(ISTEXT(A2),1,-1))` - **Formula (Category Share of Total Responses (Decimal %))**: `=IF(OR(NOT(ISTEXT(C2)),COUNTBLANK(C2)>0),"Enter category",IF(COUNTIF($B$2:$B$9,-1)>0,"Invalid inputs",IF(SUM($B$2:$B$9)=0,0,COUNTIF($A$2:$A$9,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(C2,"~","~~"),"*","~*"),"?","~?"))/SUM($B$2:$B$9))))` - **Formula (Category Frequency Count)**: `=IF(OR(NOT(ISTEXT(C2)),COUNTBLANK(C2)>0),"Enter category",IF(COUNTIF($B$2:$B$9,-1)>0,"Invalid inputs",COUNTIF($A$2:$A$9,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(C2,"~","~~"),"*","~*"),"?","~?"))))` ### Cauchy Dispersion Equation: Phase Refractive Index n(λ) & Group Index ng(λ) - **URL**: https://sheets.arte-soft.com/en/learn/cauchy-optical-dispersion-refractive-index-and-group-index-formula/ - **Summary**: Calculate visible/near-IR optical phase refractive index n(λ) = A + B/λ^2 + C/λ^4 and ultrafast pulse group index n_g(λ) = n - λ*(dn/dλ) = A + 3B/λ^2 + 5C/λ^4 across wavelength λ (μm). *Table — Why femtosecond laser pulses travel slower than c / n(λ) inside crown glass!:* | Optical Wavelength λ (A=1.5046, B=0.0042, C=0.00005) | Phase Index n(λ) | Group Index ng(λ) | Group-Phase Walk-Off (ng - n) | | --- | --- | --- | --- | | Violet Diode Laser (λ = 0.400 μm) | 1.53280 | 1.59288 | +0.06008 (Strong UV-Edge Dispersion) | | Green Peak Eye Response (λ = 0.550 μm) | 1.51903 | 1.54898 | +0.02995 | | Invalid Wavelength (λ <= 0 μm) | Pole Guard | "Invalid Cauchy Inputs" | Requires λ > 0 μm and A >= 1 | - **Formula (Cauchy Phase Refractive Index n(λ) = A + B / λ^2 + C / λ^4)**: `=IF(OR(B2 < 1, B5 <= 0), "Invalid Cauchy Inputs", ROUND(B2 + B3 / (B5 ^ 2) + B4 / (B5 ^ 4), 5))` - **Formula (Ultrafast Pulse Group Refractive Index n_g(λ) = A + 3B / λ^2 + 5C / λ^4)**: `=IF(OR(B2 < 1, B5 <= 0), "Invalid Cauchy Inputs", ROUND(B2 + 3 * B3 / (B5 ^ 2) + 5 * B4 / (B5 ^ 4), 5))` ### Caughey-Thomas Doping-Dependent Mobility & Wafer Resistivity (Si) - **URL**: https://sheets.arte-soft.com/en/learn/caughey-thomas-doping-dependent-carrier-mobility-silicon-formula/ - **Summary**: Calculate semiconductor carrier mobility μ(N) = μ_min + (μ_max - μ_min) / (1 + (N / N_ref)^α) (cm^2/(V·s)) and doped wafer resistivity ρ = 1 / (q * N * μ) across five orders of dopant concentration. *Table — Why heavily doping silicon 10,000x does NOT boost conductivity 10,000x!:* | n-Silicon Donor Concentration N (cm^-3) | Caughey-Thomas Mobility μ (cm^2/V·s) | Wafer Resistivity ρ (Ω·cm) | CMOS Device Region | | --- | --- | --- | --- | | Light Epi / Substrate (1.0 × 10^15) | 1,280.4 | 4.8747 Ω·cm | Phonon-Limited Drift Region | | Half-Mobility Pivot N_ref (8.5 × 10^16) | 697.5 | 0.1053 Ω·cm | LDD / Well Implant Transition | | Heavy N+ Source/Drain (1.0 × 10^19) | 104.6 | 0.0006 Ω·cm | Ionized-Impurity Plateau | - **Formula (Caughey-Thomas Doping-Dependent Carrier Mobility μ(N) (cm^2/(V·s)))**: `=IF(OR(B2 <= 0, B3 <= B2, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Mobility Inputs", ROUND(B2 + (B3 - B2) / (1 + (B6 / B4) ^ B5), 1))` - **Formula (Extrinsic Wafer Electrical Resistivity ρ = 1 / (q * N * μ(N)) (Ω·cm))**: `=IF(OR(B2 <= 0, B3 <= B2, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Mobility Inputs", ROUND(1 / (1.60217663E-19 * B6 * (B2 + (B3 - B2) / (1 + (B6 / B4) ^ B5))), 4))` ### CDAI & SDAI Rheumatoid Arthritis Disease Activity Calculator - **URL**: https://sheets.arte-soft.com/en/learn/cdai-and-sdai-rheumatoid-arthritis-clinical-disease-activity-index/ - **Summary**: Calculate ACR/EULAR Clinical Disease Activity Index CDAI = TJC28 + SJC28 + PtGA + PhGA (0–76) and Simplified Disease Activity Index SDAI = CDAI + CRP_mg_dL for treat-to-target RA remission. *Table — Immediate clinic-visit RA treat-to-target scoring—with or without waiting for lab CRP!:* | RA Treat-to-Target State | CDAI Cutoff (0–76) | SDAI Cutoff (CDAI + CRP mg/dL) | DMARD / Biologic Action | | --- | --- | --- | --- | | ACR/EULAR Remission | <= 2.8 | <= 3.3 | Maintain Current Regimen; Consider Taper if Sustained | | Low / Moderate Activity | 2.9 – 10.0 / 10.1 – 22.0 | 3.4 – 11.0 / 11.1 – 26.0 | Optimize MTX / Add or Switch bDMARD / tsDMARD | | High Disease Activity | > 22.0 | > 26.0 | Escalate Therapy; Re-Evaluate in 1–3 Months | - **Formula (Lab-Free Clinical Disease Activity Index (CDAI, 0 to 76))**: `=IF(OR(B2 < 0, B2 > 28, B3 < 0, B3 > 28, B4 < 0, B4 > 10, B5 < 0, B5 > 10), "Invalid Joint / VAS Range", ROUND(B2 + B3 + B4 + B5, 1))` - **Formula (Simplified Disease Activity Index (SDAI = CDAI + CRP in mg/dL))**: `=IF(OR(B2 < 0, B2 > 28, B3 < 0, B3 > 28, B4 < 0, B4 > 10, B5 < 0, B5 > 10, B6 < 0), "Invalid Joint / CRP Inputs", ROUND(B2 + B3 + B4 + B5 + B6, 1))` ### CEILING.MATH, FLOOR.MATH, and ROUNDDOWN: round to multiples and full units - **URL**: https://sheets.arte-soft.com/en/learn/ceiling-math-floor-math-rounddown/ - **Summary**: Round billable minutes up to 15-minute blocks with CEILING.MATH, round stock down to whole pallet multiples with FLOOR.MATH, and count complete dozens with ROUNDDOWN. *Table — Decimal places vs custom step multiples:* | Task | Input | Formula | Result | | --- | --- | --- | --- | | Billable 15-min block | 37 mins (A2) | =CEILING.MATH(A2, 15) | 45 | | Exact 15-min boundary | 30 mins (A3) | =CEILING.MATH(A3, 15) | 30 | | Full 20-unit pallets units | 94 units (B2) | =FLOOR.MATH(B2, 20) | 80 | | Complete 12-unit cartons | 53 items (C2) | =ROUNDDOWN(C2/12, 0) | 4 | - **Formula (Round up to billing increments with CEILING.MATH)**: `=CEILING.MATH(A2,15)` - **Formula (Shippable multiples (FLOOR.MATH) and complete cartons (ROUNDDOWN))**: `=FLOOR.MATH(B2,20)` ### Sign-Independent Directed Rounding Toward +Infinity and -Infinity (CEILING.PRECISE & FLOOR.PRECISE) - **URL**: https://sheets.arte-soft.com/en/learn/ceiling-precise-and-floor-precise-sign-independent-rounding/ - **Summary**: Round positive and negative numbers strictly toward +infinity or -infinity using ABS(significance) and INT identities that never fail with #NUM! when value and step have opposite signs. *Table — Why legacy CEILING and FLOOR break or flip direction on negative values:* | Input x | Step s | Toward +Infinity (CEILING.PRECISE) | Toward -Infinity (FLOOR.PRECISE) | | --- | --- | --- | --- | | 4.3 | 2 or -2 | 6 | 4 | | -4.3 | 2 or -2 | -4 | -6 | | -6.0 | 2 | -6 | -6 | | 4.3 | 0 | 0 | 0 | - **Formula (Portable CEILING.PRECISE Formula (Toward +Infinity))**: `=IF(B2 = 0, 0, -INT(-A2 / ABS(B2)) * ABS(B2))` - **Formula (Portable FLOOR.PRECISE Formula (Toward -Infinity))**: `=IF(B2 = 0, 0, INT(A2 / ABS(B2)) * ABS(B2))` ### Return Cell Address of Highest Value or Lookup Match (ADDRESS + MATCH) - **URL**: https://sheets.arte-soft.com/en/learn/cell-address-of-lookup-result-and-max-value/ - **Summary**: Return address text for the first maximum, minimum or matching reading ID, with explicit validation and missing-match handling. *Table — Find WHERE the peak reading occurred—not just its numeric value!:* | Cell Coordinate | Sensor kW | Offset in B2:B6 | ADDRESS Output | | --- | --- | --- | --- | | B2 | 42.5 kW (MIN) | MATCH = 1 -> Row 2 | "$B$2" (Min Location) | | B3 | 51.0 kW | MATCH = 2 -> Row 3 | "$B$3" | | B4 | 68.4 kW (MAX) | MATCH = 3 -> Row 4 | "$B$4" or "B4" (Max Location!) | | B5:B6 | 59.2, 47.8 kW | Offsets 4, 5 | Updates dynamically if B6 spikes! | - **Formula (Absolute Cell Address ("$B$4") of Maximum Value in Range)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",ADDRESS(ROW(B2) + MATCH(MAX(B2:B6), B2:B6, 0) - 1, COLUMN(B2)))` - **Formula (Plain Relative Cell Address ("B4") Using abs_num = 4)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",ADDRESS(ROW(B2) + MATCH(MAX(B2:B6), B2:B6, 0) - 1, COLUMN(B2), 4))` - **Formula (Address of the first minimum)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",ADDRESS(ROW(B2) + MATCH(MIN(B2:B6), B2:B6, 0) - 1, COLUMN(B2)))` - **Formula (Address of a matched ID's measurement)**: `=IF(COUNTBLANK(D2)>0,"Enter ID",IF(IFNA(MATCH(D2,A2:A6,0),0)=0,"No match",ADDRESS(ROW(B2)+MATCH(D2,A2:A6,0)-1,COLUMN(B2))))` ### Check if a cell begins or ends with specific text (prefix and suffix) - **URL**: https://sheets.arte-soft.com/en/learn/cell-begins-or-ends-with-prefix-suffix/ - **Summary**: Test dynamic prefixes with LEFT(text, LEN(prefix)) and suffixes with RIGHT(text, LEN(suffix)), with optional EXACT case sensitivity. *Table — Dynamic prefix and suffix checks without hardcoded lengths:* | InvoiceRef (A) | Prefix (B) | Suffix (C) | Prefix (= / EXACT) | Suffix Match | | --- | --- | --- | --- | --- | | INV-2026-EU | INV- | -EU | TRUE / TRUE | TRUE | | inv-2026-US | INV- | -EU | TRUE / FALSE | FALSE | - **Formula (Prefix, case-sensitive prefix, and suffix formulas)**: `=LEFT(A2, LEN(B2)) = B2` - **Formula (Case-sensitive EXACT prefix and RIGHT suffix checks)**: `=EXACT(LEFT(A3, LEN(B3)), B3)` ### Check if cell contains specific words but NOT others (SEARCH, ISNUMBER & NOT) - **URL**: https://sheets.arte-soft.com/en/learn/cell-contains-some-words-but-not-others-search/ - **Summary**: Match product SKUs, support tickets, or billing descriptions that include required keywords while excluding disqualifying terms like "Trial" or "Refund". *Table — Combine positive keyword inclusion and negative keyword exclusion in one clean test!:* | Billing Line Description (A) | Has "Cloud"? | Excludes "Trial" & "Refund"? | Matches text rule? | | --- | --- | --- | --- | | Enterprise Cloud Annual Plan | TRUE (pos 12) | TRUE (neither found) | TRUE (1) | | Enterprise Cloud Free Trial | TRUE (pos 12) | FALSE ("Trial" found!) | FALSE (0) | | Starter Desktop Annual Plan | FALSE (no "Cloud") | TRUE | FALSE (0) | | Cloud Refund Credit Memo | TRUE (pos 1) | FALSE ("Refund" found!) | FALSE (0) | - **Formula (Case-insensitive include + exclude test with AND, ISNUMBER & SEARCH)**: `=IF(OR(COUNTBLANK(A2)>0,COUNTBLANK(C2:E2)>0),"Invalid inputs",AND(ISNUMBER(SEARCH($C$2, A2)), NOT(ISNUMBER(SEARCH($D$2, A2))), NOT(ISNUMBER(SEARCH($E$2, A2)))))` - **Formula (Count qualified rows across a helper flag column)**: `=IF(OR(COUNTBLANK(A2:A5)>0,COUNTBLANK(C2:E2)>0,COUNT(B2:B5)<>4),"Invalid inputs",SUM(B2:B5))` ### Cell Equals, Count, or Sum One of Many Values (Allowlist COUNTIF + SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/cell-equals-count-or-sum-one-of-many-values-countif-sumif/ - **Summary**: Replace brittle 10-way OR chains with a range-driven COUNTIF allowlist flag to test, count, and sum rows matching any value in an editable lookup list. *Table — Why hardcoding OR(B2="North", B2="West", B2="LATAM") breaks the moment regions change!:* | Allowlist Range F2:F4 | Matching Orders SUM(D2:D7) | Allowlist Revenue SUMPRODUCT(D2:D7, C2:C7) | Operational Benefit | | --- | --- | --- | --- | | North, West, LATAM | 4 orders | $5,200 | Zero hardcoded text inside formulas | | North, West, East (swap LATAM -> East) | 4 orders | $5,550 | Updates instantly from cell F4 | | APAC, MEA, ANZ (0 matches) | 0 orders | $0 | Clean zero without #N/A errors | - **Formula (Sum Amounts Where Category Equals Any Value in Allowlist)**: `=SUMPRODUCT(D2:D7, C2:C7)` - **Formula (Count Rows Matching Any Value in Allowlist)**: `=SUM(D2:D7)` ### Celsius to Fahrenheit and Kelvin conversion formulas (and back) - **URL**: https://sheets.arte-soft.com/en/learn/celsius-to-fahrenheit-kelvin-formula/ - **Summary**: Convert temperatures accurately between °C, °F, and Kelvin with exact 9/5 and 5/9 affine formulas. *Table — Exact temperature conversion equations:* | Benchmark | Celsius (°C) | Fahrenheit (°F) | Kelvin (K) | | --- | --- | --- | --- | | Scale crossover | -40 | -40 | 233.15 | | Room temp | 25 | 77 | 298.15 | | Body temp | 37 | 98.6 | 310.15 | | Water boiling | 100 | 212 | 373.15 | - **Formula (°C to °F, °F to °C, and Kelvin checks)**: `=ROUND(A2 * 9 / 5 + 32, 2)` - **Formula (Reverse Fahrenheit-to-Celsius formula)**: `=ROUND((B2 - 32) * 5 / 9, 2)` ### McIsaac and Alvarado Scores: Validated Spreadsheet Arithmetic - **URL**: https://sheets.arte-soft.com/en/learn/centor-mcisaac-strep-score-and-alvarado-appendicitis-score/ - **Summary**: Practice binary-input validation, age bands and weighted sums using fictional McIsaac and Alvarado components. Return numerical totals without diagnosis or treatment instructions. - **Formula (McIsaac inputs and age limits)**: `=IF(COUNT(B2:B6)<>5,"Complete numeric inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1)),"Use flags 0 or 1",IF(OR(B6<3,B6<>INT(B6)),"Use completed age of at least 3",SUM(B2:B5)+IFS(B6<15,1,B6<45,0,TRUE,-1))))` - **Formula (Alvarado weighted total)**: `=IF(COUNT(B7:B9)<>3,"Complete numeric inputs",IF(OR(B7<0,B7>6,B7<>INT(B7),AND(B8<>0,B8<>1),AND(B9<>0,B9<>1)),"Invalid component counts",B7+2*B8+2*B9))` ### Centrifugal Fan Affinity Laws & VFD Cubic Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/centrifugal-fan-affinity-laws-airflow-static-pressure-and-vfd-cubic-power/ - **Summary**: Calculate VFD Turndown Airflow Q2 (m³/h), Quadratic Static Pressure Delta_P2 (Pa), Cubic Shaft Power P2 (kW), and Annual Fan Energy Savings (kWh/yr). *Table — Slowing an AHU supply fan to 80% speed via VFD cuts airflow 20%—but slashes shaft power by nearly 49%!:* | Fan Affinity Law KPI (24,000 m³/h, 750 Pa, 6.80 kW @ 1,450 -> 1,160 RPM) | Formula | Verified Output | | --- | --- | --- | | VFD Turndown Airflow Q2 (m³/h) | Q1 * (RPM2 / RPM1) | 19,200.0 m³/h (14,400.0 @ 870 RPM) | | VFD Static Pressure dP2 (Pa) | dP1 * ((RPM2 / RPM1) ^ 2) | 480.00 Pa (270.00 Pa @ 870 RPM) | | VFD Cubic Shaft Power P2 (kW) | P1 * ((RPM2 / RPM1) ^ 3) | 3.48 kW (1.47 kW @ 60% speed!) | | Annual Electricity Saved (kWh/yr) | (P1 - P1 * ((RPM2/RPM1)^3)) * Hours | 19,910.4 kWh (31,987.2 kWh @ 870 RPM) | - **Formula (Linear-Quadratic-Cubic Fan Affinity Laws & Annual VFD kWh Savings Formula)**: `=LET(qf_r, B2, dp_r, B3, pw_r, B4, nr_p, B5, nv_p, B6, hr_y, B7, IF(OR(qf_r <= 0, dp_r <= 0, pw_r <= 0, nr_p <= 0, nv_p <= 0, nv_p > 1.2 * nr_p, hr_y <= 0, hr_y > 8760), "Invalid Fan Law Input", LET(sr_t, nv_p / nr_p, ROUND((pw_r - (pw_r * (sr_t ^ 3))) * hr_y, 1))))` - **Formula (Part-Load 60% Night/Off-Peak Setback Check (Set VFD Speed N2 = 870 RPM))**: `=IF(ISTEXT(E5), E5, ROUND(B4 * ((B6 / B5) ^ 3), 2))` ### Centrifuge RCF (x g) to RPM Conversion Formula & Rotor Scaling - **URL**: https://sheets.arte-soft.com/en/learn/centrifuge-rcf-relative-centrifugal-force-and-rpm-formula/ - **Summary**: Convert RPM and relative centrifugal force using a specified radius in centimeters. Keep the inverse result unrounded and distinguish a numerical conversion from a permitted instrument setting. - **Formula (Calculate RCF from RPM)**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER(B3))),"Enter numeric inputs",IF(B2<=0,"Invalid rotor radius",IF(B3<0,"Use nonnegative speed or RCF",0.00001118*B2*B3^2)))` - **Formula (Calculate RPM from a target RCF)**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER(B4))),"Enter numeric inputs",IF(B2<=0,"Invalid rotor radius",IF(B4<0,"Use nonnegative speed or RCF",SQRT(B4/(0.00001118*B2)))))` ### Ceramic Slip Casting Parabolic Wall-Buildup Formula - **URL**: https://sheets.arte-soft.com/en/learn/ceramic-slip-casting-plaster-mold-capillary-wall-buildup-parabolic-root-time-formula/ - **Summary**: Calculate Wet Cast Green Wall Thickness L = SQRT(2*K*t) (mm), Instantaneous Buildup Rate dL/dt (mm/min), Fired Ceramic Wall Thickness (mm), and Dwell Time for 8 mm Cast (min). *Table — Doubling plaster-mold dwell time NEVER doubles ceramic cast thickness—because consolidated clay cake chokes capillary suction as SQRT(t)!:* | Ceramic Slip-Casting KPI (t=48 min, Shrinkage=11.5%: Fresh Mold K=0.42 vs Wet Mold K=0.18) | Formula | Verified Output | | --- | --- | --- | | Wet Cast Green Wall L (mm) | SQRT(2 * Casting_K_mm2_min * Dwell_min) | 6.35 mm (4.16 mm thin wall @ wet mold!) | | Instantaneous Growth Rate (mm/min) | Casting_K_mm2_min / SQRT(2 * K * t) | 0.066 mm/min (0.043 mm/min @ K=0.18) | | Fired Sintered Wall Thickness (mm) | Wet_Green_Wall_mm * (1 - Shrink_Pct / 100) | 5.62 mm (3.68 mm slumping risk!) | | Dwell Time for 8.0 mm Wet Wall (min) | 64 / (2 * Casting_K_mm2_min) | 76.2 min (177.8 min = ~3 hr bottleneck!) | - **Formula (Darcy-Washburn Parabolic Slip-Casting Cake Buildup & Fired Shrinkage Formula)**: `=LET(kc_r, B2, td_m, B3, sh_p, B4, IF(OR(kc_r < 0.01, kc_r > 5, td_m < 1, td_m > 600, sh_p < 0, sh_p > 35), "Invalid Slip Cast Input", ROUND(64 / (2 * kc_r), 1)))` - **Formula (Water-Logged / Sodium-Silicate Blinded Plaster Mold (`K = 0.18` mm²/min) Thin-Cast Check (Set K B2 = 0.18))**: `=IF(ISTEXT(E5), E5, ROUND(SQRT(2 * B2 * B3), 2))` ### Ceramic Thermal-Shock Resistance R & R-Prime Formula - **URL**: https://sheets.arte-soft.com/en/learn/ceramic-thermal-shock-resistance-r-parameter-and-quench-delta-t-formula/ - **Summary**: Calculate Hasselman/Kingery Severe-Quench Critical Delta-T Parameter R (K), Conduction-Weighted Parameter R-Prime (W/m), Biaxial Quench Surface Stress (MPa), and Thermal-Shock Safety Factor. *Table — High stiffness E and high expansion alpha shatter strong ceramics—R = sigma_f*(1-nu)/(E*alpha) rules quenches!:* | Hasselman Ceramic Quench KPI (Si3N4: 720 MPa, nu=0.25, 300 GPa, 3.0 ppm/K) | Formula | Verified Output | | --- | --- | --- | | Critical Quench Delta-T R (K) | sigma_f * (1 - nu) / (E_GPa * alpha_ppm / 1000) | 600.00 K (95.00 K Alumina) | | Mild-Quench Parameter R' (W/m) | Critical_R_K * Conductivity_W_mK | 18,000.00 W/m (2,850.00 Al2O3) | | Biaxial Surface Stress (MPa) | (E_GPa * alpha_ppm / 1000) * dT / (1 - nu) | 480.00 MPa (1,600.00 Al2O3!) | | Thermal-Shock Safety Factor | Critical_R_K / Actual_Quench_dT_K | 1.50x (0.24x Shatter!) | - **Formula (Kingery-Hasselman Ceramic Critical Quench Delta-T Formula)**: `=LET(sg_f, B2, nu_p, B3, md_g, B4, al_p, B5, kc_w, B6, dt_q, B7, IF(OR(sg_f <= 0, nu_p <= 0, nu_p >= 0.5, md_g <= 0, al_p <= 0, kc_w <= 0, dt_q <= 0), "Invalid Ceramic Quench Input", ROUND((sg_f * (1 - nu_p)) / (md_g * al_p / 1000), 2)))` - **Formula (Sintered Alumina (Al2O3) Thermal-Shock Shatter Check (380 MPa, nu=0.24, 380 GPa, 8.0 ppm/K))**: `=IF(ISTEXT(E2), E2, ROUND(E2 / B7, 2))` ### CHA2DS2-VASc score arithmetic with validated flags and age bands - **URL**: https://sheets.arte-soft.com/en/learn/cha2ds2-vasc-atrial-fibrillation-stroke-risk-score/ - **Summary**: Practice weighted binary flags and mutually exclusive age bands using a fictional CHA2DS2-VASc example; distinguish it from the newer ESC CHA2DS2-VA approach. - **Formula (Calculate the VASc total)**: `=IF(AND(B8<>"M",B8<>"F"),"Invalid inputs",IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B4<18,B4<>INT(B4),AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1)),"Invalid inputs",B2+B3+IF(B4>=75,2,IF(B4>=65,1,0))+B5+2*B6+B7+IF(B8="F",1,0))))` - **Formula (Inspect the age contribution independently)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B4<18,B4<>INT(B4),AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1)),"Invalid inputs",IF(B4>=75,2,IF(B4>=65,1,0))))` ### Chaikin Money Flow (CMF) Formula: Close Location Value Multiplier & Flat-Bar Guard - **URL**: https://sheets.arte-soft.com/en/learn/chaikin-money-flow-cmf-close-location-value-multiplier-formula/ - **Summary**: Calculate Marc Chaikin’s Close Location Value (Money Flow Multiplier) ((C - L) - (H - C)) / (H - L), Money Flow Volume, and 20-period CMF ratio with a halted/flat-bar zero-range guard. *Table — Weight trading volume by where price closes inside the High-Low bar!:* | Bar Scenario (Volume = 250,000) | High / Low / Close | Money Flow Multiplier | Money Flow Volume (MFV) | | --- | --- | --- | --- | | Upper-Range Accumulation | 54 / 44 / 52 | +0.6000 | +150,000 | | Midpoint Equilibrium | 54 / 44 / 49 | 0.0000 | 0 | | Halted / Limit-Locked Flat Bar | 50 / 50 / 50 | 0.0000 (Guarded!) | 0 (Avoids #DIV/0!) | - **Formula (Flat-Bar-Safe Money Flow Multiplier (Close Location Value) in [-1, +1])**: `=IF(OR(B2 < B3, B4 < B3, B4 > B2, B5 < 0), "Close Must Lie Within [Low, High]", IF(B2 = B3, 0, ROUND(((B4 - B3) - (B2 - B4)) / (B2 - B3), 4)))` - **Formula (Single-Bar Signed Money Flow Volume (MFV))**: `=IF(OR(B2 < B3, B4 < B3, B4 > B2, B5 < 0), 0, IF(B2 = B3, 0, ROUND((((B4 - B3) - (B2 - B4)) / (B2 - B3)) * B5, 0)))` ### Chained / Nested Two-Step Lookup Across Mapping Tables (XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/chained-two-step-lookup-across-mapping-tables-xlookup/ - **Summary**: Bridge normalized relational tables (such as Employee -> Job Band -> Bonus Target %) in a single formula by nesting one XLOOKUP or VLOOKUP as the lookup_value of a second. *Table — Look up an intermediate key, then its mapped value:* | Lookup Stage for G2 = "Emp-102" | Table Searched | Intermediate / Final Output | | --- | --- | --- | | 1. Inner XLOOKUP(G2, A2:A4, B2:B4) | Employee Roster (A2:B4) | Returns "Band-L6" | | 2. Outer XLOOKUP("Band-L6", D2:D4, E2:E4) | Compensation Policy (D2:E4) | Returns 0.25 (25% Bonus) | | Missing employee ID | First lookup returns #N/A | Outer IFNA returns Unmapped without looking up a text marker | - **Formula (Chained Two-Hop Relational XLOOKUP)**: `=IF(OR(NOT(ISTEXT(G2)),COUNTBLANK(G2)>0),"Enter employee ID",IF(OR(COUNTBLANK(B2:B4)>0,COUNTBLANK(D2:D4)>0,COUNT(E2:E4)<>3),"Invalid mapping",IF(OR(MIN(E2:E4)<0,MAX(E2:E4)>1),"Invalid mapping",IFNA(XLOOKUP(XLOOKUP(G2,A2:A4,B2:B4),D2:D4,E2:E4),"Unmapped"))))` - **Formula (Legacy Nested VLOOKUP Equivalent)**: `=IF(OR(NOT(ISTEXT(G2)),COUNTBLANK(G2)>0),"Enter employee ID",IF(OR(COUNTBLANK(B2:B4)>0,COUNTBLANK(D2:D4)>0,COUNT(E2:E4)<>3),"Invalid mapping",IF(OR(MIN(E2:E4)<0,MAX(E2:E4)>1),"Invalid mapping",IFNA(VLOOKUP(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(VLOOKUP(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?"),A2:B4,2,FALSE),"~","~~"),"*","~*"),"?","~?"),D2:E4,2,FALSE),"Unmapped"))))` ### CHALICE Pediatric Head Injury CT Rule (UK NICE Age-Stratified Formula) - **URL**: https://sheets.arte-soft.com/en/learn/chalice-children-head-injury-algorithm-ct-decision-rule/ - **Summary**: Evaluate Joel Dunning’s 22,772-child UK CHALICE rule—checking age-specific Infant (< 1 yr: GCS < 15 or scalp swelling > 5 cm) vs. Child (1–15 yr: GCS < 14) thresholds alongside History, Exam, and High-Energy Mechanism triggers. *Table — Apply all-comer pediatric head trauma triage—including age < 1 yr infant fontanelle & > 5 cm scalp thresholds!:* | CHALICE Domain (< 16 Years All-Comer Head Trauma) | Specific Clinical Triggers | Age-Specific Threshold Note | | --- | --- | --- | | Infant-Sensitive Exam | GCS Cutoff & Scalp Swelling/Laceration Size | Age < 1y: GCS < 15 or Swelling > 5 cm; Age >= 1y: GCS < 14 | | History Domain (6 items) | LOC > 5m, Amnesia > 5m, Drowsy, >= 3 Vomits, NAI, Seizure | Any 1 Present -> Cranial CT Required | | Exam & Mechanism (6 items) | Tense Fontanelle/Depressed, Basal Fx, Focal Neuro, >40mph/Fall>3m | All Negative -> Low Risk Discharge / Observation | - **Formula (Age-Stratified CHALICE Positive Trigger Count)**: `=IF(IF(B2 < 1, B3 < 15, B3 < 14), 1, 0) + IF(AND(B2 < 1, B4 > 5), 1, 0) + IF(B5 >= 3, 1, 0) + IF(B6 = 1, 1, 0) + IF(B7 = 1, 1, 0) + IF(B8 = 1, 1, 0)` - **Formula (CHALICE Cranial CT Clinical Decision)**: `=IF(OR(B2 < 0, B2 >= 16, B3 < 3, B3 > 15), "Outside Pediatric CHALICE (<16y) Scope", IF((IF(IF(B2 < 1, B3 < 15, B3 < 14), 1, 0) + IF(AND(B2 < 1, B4 > 5), 1, 0) + IF(B5 >= 3, 1, 0) + B6 + B7 + B8) >= 1, "Cranial CT Indicated (CHALICE Positive)", "No Cranial CT Required (CHALICE Low Risk)"))` ### Chandrasekhar Mass Limit & White-Dwarf Radius in a Spreadsheet - **URL**: https://sheets.arte-soft.com/en/learn/chandrasekhar-white-dwarf-mass-limit-and-mass-radius-relation/ - **Summary**: Calculate a composition-dependent limiting mass and a Nauenberg-style zero-temperature radius. Keep solar and Earth units explicit, validate the model domain, and avoid treating the limit as a supernova prediction. - **Formula (Set up the inputs and derived limiting mass)**: `=IF(NOT(ISNUMBER(B4)),"Enter numeric mu_e",IF(B4<=0,"mu_e must be positive",5.816/B4^2))` - **Formula (Validate the domain before evaluating the square root)**: `=IF(COUNT(B2,B4,B5,B6)<>4,"Enter numeric mass, mu_e and radii",IF(MIN(B2,B4,B5,B6)<=0,"Inputs must be positive",IF(B2>=B3,"Outside model: M must be below M_Ch","OK")))` - **Formula (Compute the radius in solar units)**: `=IF(C2<>"OK",C2,(0.0225/B4)*SQRT((B3/B2)^(2/3)-(B2/B3)^(2/3)))` - **Formula (Convert to Earth radii and kilometres)**: `=IF(C2<>"OK",C2,C3*B5/B6)` ### Chao1 & Bias-Corrected Unseen Species Richness Formula: Singletons & Doubletons - **URL**: https://sheets.arte-soft.com/en/learn/chao1-and-chao2-unseen-species-richness-lower-bound-estimator/ - **Summary**: Estimate true total assemblage richness (including undetected rare species, software bugs, or vocabulary words) using Anne Chao’s (1984) bias-corrected lower bound S_Chao1 = S_obs + f_1 * (f_1 - 1) / (2 * (f_2 + 1)) and Sample Inventory Completeness %. *Table — How singletons (f_1) and doubletons (f_2) reveal how many unseen species — or hidden software bugs — remain!:* | Survey Scenario | Observed S_obs | Singletons f_1 | Doubletons f_2 | Bias-Corrected S_Chao1 | Inventory Completeness | | --- | --- | --- | --- | --- | --- | | Under-Sampled Rainforest Plot | 85 | 24 | 5 | 131.00 species | 64.89% | | Zero-Doubleton Edge Case | 40 | 10 | 0 | 85.00 species | 47.06% | | Exhaustively Sampled Plot (f_1 = 1) | 120 | 1 | 8 | 120.00 species | 100.00% | - **Formula (Bias-Corrected Chao1 Asymptotic Species Richness Estimator S_Chao1)**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B3 + B4 > B2), "Invalid Counts (f_1 + f_2 Cannot Exceed S_obs)", ROUND(B2 + (B3 * (B3 - 1)) / (2 * (B4 + 1)), 2))` - **Formula (Estimated Sample Inventory Completeness (%) = 100 * S_obs / S_Chao1)**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B3 + B4 > B2), "Invalid Counts (f_1 + f_2 Cannot Exceed S_obs)", ROUND(100 * B2 / (B2 + (B3 * (B3 - 1)) / (2 * (B4 + 1))), 2))` ### Chapman-Enskog Low-Pressure Gas Viscosity Formula (Lennard-Jones) - **URL**: https://sheets.arte-soft.com/en/learn/chapman-enskog-kinetic-theory-low-pressure-gas-viscosity-formula/ - **Summary**: Calculate dilute gas dynamic viscosity μ = 2.6693 * SQRT(M * T) / (σ^2 * Ω_μ) (μPa·s) from molecular weight, absolute temperature, Lennard-Jones collision diameter σ (Å), and collision integral Ω_μ. *Table — Why gas viscosity INCREASES with temperature—and is independent of pressure!:* | Nitrogen N2 State (M = 28.0134, σ = 3.798 Å) | Collision Integral Ω_μ | Chapman-Enskog Viscosity μ (μPa·s) | Viscosity in Centipoise (cP) | | --- | --- | --- | --- | | 300 K Ambient Feed | 1.074 | 15.80 μPa·s | 0.01580 cP | | 500 K Reactor Preheat | 0.955 | 22.93 μPa·s (+45.2%) | 0.02293 cP | | Invalid σ <= 0 or T <= 0 | Undefined | "Invalid Kinetic Inputs" | Positivity Guard | - **Formula (Chapman-Enskog Dynamic Gas Viscosity μ (μPa·s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Kinetic Inputs", ROUND(2.6693 * SQRT(B2 * B3) / ((B4 ^ 2) * B5), 2))` - **Formula (Gas Viscosity Converted to Centipoise (cP = mPa·s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Kinetic Inputs", ROUND(0.0026693 * SQRT(B2 * B3) / ((B4 ^ 2) * B5), 5))` ### CHAR and CODE: insert line breaks CHAR(10) and inspect hidden character codes - **URL**: https://sheets.arte-soft.com/en/learn/char-and-code-functions/ - **Summary**: Generate non-keyboard characters like CHAR(10) line feeds or increment letter sequences with CHAR and CODE. *Table — Inspect exact character codes when strings refuse to match:* | Sample (A) | CODE(A) | Next Letter CHAR(CODE(A)+1) | | --- | --- | --- | | A | 65 | B | | a | 97 | b | - **Formula (Step letter codes and build multi-line labels)**: `=CHAR(CODE(A2) + 1)` - **Formula (Guard empty cells before calling CODE)**: `=IF(OR(ISBLANK(C2), LEN(C2)=0), "Empty", CODE(C2))` ### Age-Adjusted Charlson Comorbidity Index (CCI) & 10-Year Survival Formula - **URL**: https://sheets.arte-soft.com/en/learn/charlson-comorbidity-index-cci-age-adjusted-10-year-survival/ - **Summary**: Calculate the Age-Adjusted Charlson Comorbidity Index (adding +1 point per decade from age 50 up to +4 at age >= 80, plus 1-, 2-, 3-, and 6-point comorbidity weights) and estimated 10-year survival 100 * (0.983 ^ EXP(CCI * 0.9)). *Table — Quantify longitudinal comorbidity burden in clinical trials, surgery, and oncology!:* | Total Age-Adjusted CCI Score | Relative Hazard Multiplier EXP(0.9 * CCI) | Estimated 10-Year Survival (%) | Clinical Risk Profile | | --- | --- | --- | --- | | CCI = 0 points (Age < 50, No Comorbidities) | 1.00x | 98.30% | Baseline healthy cohort | | CCI = 2 points (e.g., Age 55 [+1] + CHF [+1]) | 6.05x | 90.15% | Mild longitudinal burden | | CCI = 4 points (e.g., Age 65 [+2] + CKD [+2]) | 36.60x | 53.39% | Substantial competing mortality | | CCI = 6 points (e.g., Metastatic Tumor [+6]) | 221.41x | 2.25% | Dominant comorbidity mortality | - **Formula (Age-Adjusted Charlson Comorbidity Index (CCI Total Points))**: `=IF(OR(B2 < 18, MIN(B3:B6) < 0), "Invalid Patient Inputs", MIN(4, MAX(0, INT((B2 - 40) / 10))) + B3 + (2 * B4) + (3 * B5) + (6 * B6))` - **Formula (Charlson Estimated 10-Year Survival Percentage: 100 * (0.983 ^ EXP(CCI * 0.9)))**: `=IF(OR(B2 < 18, MIN(B3:B6) < 0), "Invalid Patient Inputs", ROUND(100 * (0.983 ^ EXP((MIN(4, MAX(0, INT((B2 - 40) / 10))) + B3 + (2 * B4) + (3 * B5) + (6 * B6)) * 0.9)), 2))` ### Chart Error Bars Formula: Standard Error of the Mean (SEM) vs. SD & 95% CI Bounds - **URL**: https://sheets.arte-soft.com/en/learn/chart-error-bars-standard-error-of-mean-and-95-ci-bounds/ - **Summary**: Avoid Excel’s default fixed-value "Standard Error" chart trap by calculating true replicate Standard Error SEM = STDEV(B2:B6) / SQRT(COUNT(B2:B6)) and custom 95% confidence bounds Mean ± 1.96 * SEM. *Table — Beware Excel’s built-in "Standard Error" chart option—it computes SE ACROSS bar means, not within replicates!:* | Error Bar Metric on Replicates [102, 98, 105, 101, 104] | Worksheet Formula | Value & Scientific Meaning | | --- | --- | --- | | Sample Standard Deviation (SD) | =ROUND(STDEV(B2:B6), 4) | 2.7386 (Spread of individual observations) | | Standard Error of the Mean (SEM) | =ROUND(STDEV(B2:B6) / SQRT(COUNT(B2:B6)), 4) | 1.2247 (Precision of sample mean) | | Upper Asymptotic 95% Bound (Mean + 1.96*SEM) | =ROUND(AVERAGE(B2:B6) + 1.96 * SEM, 4) | 104.4005 | - **Formula (True Within-Group Standard Error of the Mean SEM = STDEV(Replicates) / SQRT(COUNT(Replicates)))**: `=IF(COUNT(B2:B6) < 2, "Requires >= 2 Replicates for SEM", ROUND(STDEV(B2:B6) / SQRT(COUNT(B2:B6)), 4))` - **Formula (Upper 95% Error-Bar Endpoint = AVERAGE(B2:B6) + 1.96 * (STDEV(B2:B6) / SQRT(COUNT(B2:B6))))**: `=IF(COUNT(B2:B6) < 2, "Requires >= 2 Replicates for SEM", ROUND(AVERAGE(B2:B6) + 1.96 * (STDEV(B2:B6) / SQRT(COUNT(B2:B6))), 4))` ### Add an Average Line to a Chart: Constant Helper Column, Variance & +1 SD Control Band - **URL**: https://sheets.arte-soft.com/en/learn/chart-target-and-average-benchmark-line-variance-band-formula/ - **Summary**: Plot a horizontal mean benchmark line across any column or line chart by anchoring =AVERAGE($B$2:$B$7) in a helper series, plus compute point-vs-mean variance and +1 SD upper control limits. *Table — Why a locked =AVERAGE($B$2:$B$7) helper column is the cleanest way to plot a horizontal mean line!:* | Combo Chart Helper Column (B2:B7 = [118, 132, 121, 145, 109, 125]) | Anchored Worksheet Formula | Result | | --- | --- | --- | | Horizontal Mean Benchmark Series | =ROUND(AVERAGE($B$2:$B$7), 2) | 125.00 across every row | | Month 4 Variance vs. Series Mean | =ROUND(B5 - AVERAGE($B$2:$B$7), 2) | +20.00 (145 - 125) | | Upper +1 SD Benchmark Line | =ROUND(AVERAGE($B$2:$B$7) + STDEV($B$2:$B$7), 2) | 137.41 (Month 4 = 145 exceeds +1 SD!) | - **Formula (Anchored Chart Average-Line Series =ROUND(AVERAGE($B$2:$B$7), 2))**: `=IF(COUNT($B$2:$B$7) = 0, "No Data", ROUND(AVERAGE($B$2:$B$7), 2))` - **Formula (Count of Periods Exceeding the +1 SD Upper Benchmark Band)**: `=IF(COUNT($B$2:$B$7) < 2, "Need >= 2 Points", COUNTIF($B$2:$B$7, ">" & (AVERAGE($B$2:$B$7) + STDEV($B$2:$B$7))))` ### Audit a Capped Partner Rebate Formula from Chat to a Live Shared Workbook - **URL**: https://sheets.arte-soft.com/en/learn/chatgpt-connector-to-shared-workbook-handoff-revision-audit-and-peer-suggestions/ - **Summary**: Practise catching an uncapped 8% rebate bug, test MIN(Cap, Billings * Rate) with a changed cap in a live sheet, and understand how peer suggestions, in-app Pro credits, and the submitted ChatGPT connector differ. *Table — Calculate the partner cap by hand before trusting any generated formula:* | Partner | Quarterly Billings | Uncapped 8% (D2:D5) | Capped MIN($F$3, B*$F$2) (C2:C5) | | --- | --- | --- | --- | | NorthStar | 18,000 | 1,440 | 1,440 | | BluePeak | 32,000 | 2,560 (Exceeds cap by 60) | 2,500 (Capped) | | CedarLab | 12,000 | 960 | 960 | | ApexGrid | 45,000 | 3,600 (Exceeds cap by 1,100) | 2,500 (Total = 7,400 vs 8,560) | - **Formula (Row-Level Capped Rebate & Overpayment Variance Formulas)**: `=MIN($F$3, ROUND(B2 * $F$2, 2))` - **Formula (Ask for a hint, review peer suggestions, and test a changed cap)**: `=SUM(D2:D5) - SUM(C2:C5)` ### Check an AI forecast in a live workbook before sharing it - **URL**: https://sheets.arte-soft.com/en/learn/check-an-ai-forecast-in-a-shared-workbook/ - **Summary**: Turn a short sales example into a formula-based forecast, label its assumptions and test a changed month. Keep the workbook as the result, not only the chat answer. ### Check & Count Exact Multiples of a Specific Pack or Lot Size (MOD = 0) - **URL**: https://sheets.arte-soft.com/en/learn/check-and-count-exact-multiples-of-pack-size-mod-formula/ - **Summary**: Test whether order quantities are exact multiples of case pack size N using MOD(qty, N) = 0, flag broken-case remainders, and count full-case orders across a table. *Table — Catching broken-case order quantities before warehouse fulfillment rejects the PO!:* | Order Qty (Pack Size = 12) | Remainder MOD(Qty, 12) | Full-Case Check | Units Needed for Next Full Case | | --- | --- | --- | --- | | 48 units (4 Cases) | 0 | "Exact Pack Multiple" | 0 units | | 50 units (4 Cases + 2) | 2 | "Broken Case (+2 Loose)" | 10 units (to reach 60) | | Pack Size <= 0 | Divide-by-Zero Guard | "Invalid Pack Size" | Guard Before MOD | - **Formula (Exact Pack-Multiple Validator (MOD = 0))**: `=IF(OR($E$2 <= 0, B2 <= 0), "Invalid Pack or Qty", IF(MOD(B2, $E$2) = 0, "Exact Pack Multiple", "Broken Case"))` - **Formula (Count Orders That Are Exact Multiples of Pack Size Across Range)**: `=COUNTIF(C2:C6, 0)` ### Check if a cell contains all required keywords (and no excluded words) - **URL**: https://sheets.arte-soft.com/en/learn/check-cell-contains-all-or-any-keywords/ - **Summary**: Screen resumes, logs, or SKUs for ALL required terms, ANY optional term, and ZERO excluded terms using AND, OR, ISNUMBER, ISERROR, and SEARCH. *Table — Combine inclusion (ISNUMBER) and exclusion (ISERROR) rules:* | ProfileText (A) | Has SQL & Python? | Excludes Intern? | Qualified? | | --- | --- | --- | --- | | Senior SQL and Python Engineer | TRUE | TRUE | TRUE | | Summer SQL & Python Intern | TRUE | FALSE | FALSE | | Senior SQL Analyst | FALSE | TRUE | FALSE | - **Formula (Contains ALL required terms and NO excluded term)**: `=AND(ISNUMBER(SEARCH(B2, A2)), ISNUMBER(SEARCH(C2, A2)), ISERROR(SEARCH(D2, A2)))` - **Formula (Contains AT LEAST ONE keyword (OR rule))**: `=OR(ISNUMBER(SEARCH(B2, A2)), ISNUMBER(SEARCH(C2, A2)))` ### Check if a cell contains any number (0–9) and count digits - **URL**: https://sheets.arte-soft.com/en/learn/check-cell-contains-any-digit/ - **Summary**: Detect embedded numeric digits inside alphanumeric codes or passwords—where ISNUMBER returns FALSE—by stripping digits 0–9. *Table — Why ISNUMBER("Suite 204B") returns FALSE:* | InputCode (A) | Stripped Text | Digit Count | Contains Digit? | | --- | --- | --- | --- | | Pass9word! | Password! | 1 | TRUE | | AdminOnly | AdminOnly | 0 | FALSE | | Suite 204B | Suite B | 3 | TRUE | - **Formula (Boolean digit-presence check and exact digit count)**: `=IF(COUNTBLANK(A2:A2)=1,FALSE,LEN(A2) > LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9","")))` - **Formula (Count total embedded digits)**: `=IF(COUNTBLANK(A4:A4)=1,0,LEN(A4) - LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A4,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9","")))` ### Check if All Cells in a Range Are Blank (COUNTBLANK vs COUNTA) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-all-cells-in-range-are-blank-or-populated-countblank/ - **Summary**: Test whether an entire row or multi-column block is completely blank using COUNTBLANK(B2:E2) = COLUMNS(B2:E2) (including formula empty strings "") vs strict COUNTA(B2:E2) = 0. *Table — Why COUNTA = 0 fails when upstream formulas return ""—and COUNTBLANK succeeds!:* | Row State Across B2:E2 (4 Quarters) | COUNTA(B2:E2) = 0 | COUNTBLANK(B2:E2) = 4 | Invoice Print Action | | --- | --- | --- | --- | | All 4 Cells Truly Empty | TRUE | TRUE (4 = 4) | All Blank — Suppress Row | | Formula ="" in B2, Others Empty | FALSE (Counts "")! | TRUE (4 = 4) | Visually Blank — Suppress Row | | Q3 = 0 or $450, Others Empty | FALSE | FALSE (3 < 4) | Active Row — Include | - **Formula (Test Whether Every Cell in a Row Range Is Visually Blank)**: `=IF(COUNTBLANK(B2:E2) = ROWS(B2:E2) * COLUMNS(B2:E2), "All Blank", "Has Data")` - **Formula (Count Populated (Non-Blank) Entries Across the Range)**: `=ROWS(B2:E2) * COLUMNS(B2:E2) - COUNTBLANK(B2:E2)` ### Check If a Date Is a Workday (Exclude Weekends & Holidays) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-date-is-workday-excluding-weekends-and-holidays/ - **Summary**: Check a Monday–Friday work calendar against an explicit list of organization closure dates, with validation for missing dates and timestamp handling. - **Formula (Define the calendar)**: `=IF(COUNT(A2,D2:D3)<>3,"Enter three numeric dates",IF(OR(A2<1,D2<1,D3<1,D2<>INT(D2),D3<>INT(D3)),"Use positive dates and whole-day closures",NETWORKDAYS(INT(A2),INT(A2),D2:D3)=1))` - **Formula (Classify the result)**: `=IF(COUNT(A2,D2:D3)<>3,"Enter three numeric dates",IF(OR(A2<1,D2<1,D3<1,D2<>INT(D2),D3<>INT(D3)),"Use positive dates and whole-day closures",IF(WEEKDAY(INT(A2),2)>5,"Weekend",IF(COUNTIF(D2:D3,INT(A2))>0,"Listed closure","Workday"))))` ### Check if a row is completely blank, complete, or partially filled - **URL**: https://sheets.arte-soft.com/en/learn/check-if-entire-row-or-range-is-blank/ - **Summary**: Classify rows as blank, Complete or Incomplete with COUNTBLANK and COLUMNS. *Table — Three distinct row states: Empty, Complete, and Incomplete:* | Name (A) | Email (B) | Dept (C) | Role (D) | Row Status | | --- | --- | --- | --- | --- | | Elena | e@co.com | Eng | Lead | Complete (0 blanks) | | Marcus | m@co.com | (blank) | PM | Incomplete (1 blank) | | (blank) | (blank) | (blank) | (blank) | Blank Row (4 blanks) | - **Formula (3-state form completeness audit formula)**: `=LET(b, COUNTBLANK(A2:D2), IF(b=COLUMNS(A2:D2), "", IF(b=0, "Complete", "Incomplete")))` - **Formula (Boolean test: entire row or block is completely blank)**: `=COUNTBLANK(A4:D4) = COLUMNS(A4:D4)` ### Check if multiple cells have the exact same value (Standard vs Case-Sensitive EXACT) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-multiple-cells-have-same-value-case-sensitive/ - **Summary**: Compare three text codes with direct equality or case-sensitive EXACT, without treating literal wildcard characters as search patterns. *Table — Why A2 = B2 = C2 fails in spreadsheets—and how to test N cells with or without case!:* | Row Values (B : C : D) | Case-insensitive literal comparison | Strict Case-Sensitive EXACT | Audit Diagnosis | | --- | --- | --- | --- | | PROD-A \| PROD-A \| PROD-A | TRUE (3 of 3 match) | TRUE (same text) | 100% Identical | | PROD-A \| Prod-a \| PROD-A | TRUE (Case ignored!) | FALSE ("Prod-a" differs!) | Casing Drift Caught! | | PROD-A \| PROD-B \| PROD-A | FALSE (Only 2 of 3) | FALSE | Value Mismatch | - **Formula (Strict case-sensitive equality across multiple cells with EXACT)**: `=IF(AND(ISTEXT(B3),ISTEXT(C3),ISTEXT(D3)),AND(EXACT(B3,C3),EXACT(B3,D3)),"Invalid inputs")` - **Formula (Case-insensitive literal equality)**: `=IF(AND(ISTEXT(B3),ISTEXT(C3),ISTEXT(D3)),AND(B3=C3,B3=D3),"Invalid inputs")` ### Check if Multiple Columns Are Equal (Row Audit & SUMPRODUCT Count) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-multiple-columns-are-equal-row-audit-and-sumproduct/ - **Summary**: Verify whether three or more system export columns agree on every row using chained pairwise AND(B2=C2, B2=D2) tests and count fully synchronized rows across a table with SUMPRODUCT. *Table — Why B2=C2=D2 fails in Excel—and how transitive pairwise equality works!:* | SKU Code | ERP Qty (Col B) | WMS Qty (Col C) | Storefront Qty (Col D) | AND(B=C, B=D) Audit | | --- | --- | --- | --- | --- | | SKU-101 | 140 | 140 | 140 | Match (All 3 Equal) | | SKU-102 | 85 | 85 | 82 | Mismatch (Storefront Drift) | | SKU-103 | 210 | 205 | 210 | Mismatch (WMS Drift) | - **Formula (Row-Level Multi-Column Agreement Check)**: `=IF(AND(B2 = C2, B2 = D2), "Match", "Mismatch")` - **Formula (Total Count of Rows Where All Three Columns Match)**: `=SUMPRODUCT((B2:B6 = C2:C6) * (B2:B6 = D2:D6))` ### Check If a Cell Contains a Whole Integer vs. Decimal (ISNUMBER, INT & MOD) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-number-is-whole-integer-vs-decimal-int-mod/ - **Summary**: Validate discrete carton quantities, headcount, and serial IDs using AND(ISNUMBER(B2), B2 = INT(B2))—rejecting fractional decimals (4.25), text strings ("12"), and blank cells cleanly. *Table — Catch fractional carton orders and text-formatted numbers before ERP import!:* | Cell Input Value | ISNUMBER(B2) | Whole-Integer Test AND(NOT(ISBLANK), ISNUMBER, B2=INT(B2)) | | --- | --- | --- | | 48 (Whole Carton Count) | TRUE | TRUE (Valid Whole Integer) | | -12 (Signed Adjustment) | TRUE | TRUE (Valid Negative Integer) | | 14.25 (Fractional Split) or "48" (Text) | TRUE / FALSE | FALSE (Rejected Non-Integer) | - **Formula (Strict Whole-Integer Validation Formula (Positive, Zero, or Negative))**: `=IF(OR(ISBLANK(B2), NOT(ISNUMBER(B2))), FALSE, B2 = INT(B2))` - **Formula (Alternative Remainder Check & Fractional Split Audit Using MOD(cell, 1) = 0)**: `=IF(OR(ISBLANK(B4), NOT(ISNUMBER(B4))), "Non-Numeric Entry", IF(MOD(B4, 1) = 0, "Valid Whole Integer", "Fractional Decimal Reject"))` ### Check if a range contains duplicates (single-cell audit gate) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-range-contains-duplicates/ - **Summary**: Compare total non-blank entries against distinct UNIQUE values to trigger a sheet-level duplicate warning and count excess repeat rows. *Table — Sheet-level duplicate gate before database import:* | SerialID (A) | Non-Blank Rows | Distinct UNIQUE Rows | Excess Duplicates | | --- | --- | --- | --- | | SN-101 | 4 total | 3 distinct | 1 duplicate ("SN-102") | | SN-102 | | | | | (blank) | | | | | SN-102 | | | | | SN-103 | | | | - **Formula (Single-cell duplicate check and excess duplicate count)**: `=IF(SUMPRODUCT(--((ISNUMBER(A2:A6) + (ISTEXT(A2:A6) * (A2:A6 <> ""))) > 0))=0, FALSE, LET(v, FILTER(A2:A6, (ISNUMBER(A2:A6) + (ISTEXT(A2:A6) * (A2:A6 <> ""))) > 0), ROWS(v) > ROWS(UNIQUE(v))))` - **Formula (Count how many excess duplicate entries exist)**: `=IF(SUMPRODUCT(--((ISNUMBER(A2:A6) + (ISTEXT(A2:A6) * (A2:A6 <> ""))) > 0))=0, 0, LET(v, FILTER(A2:A6, (ISNUMBER(A2:A6) + (ISTEXT(A2:A6) * (A2:A6 <> ""))) > 0), ROWS(v) - ROWS(UNIQUE(v))))` ### Check submitted codes against a master list with literal comparisons - **URL**: https://sheets.arte-soft.com/en/learn/check-if-range-contains-value-not-in-approved-list/ - **Summary**: Flag missing codes and list unmatched entries without treating wildcard characters as search patterns. *Table — Check membership without masking data errors:* | Submitted Code (A) | Approved Master List (D2:D5) | Match Count (B) | Audit Status | | --- | --- | --- | --- | | CC-100 | CC-100 | 1 | Approved | | CC-200 | CC-200 | 1 | Approved | | CC-999 | CC-300 | 0 (Missing!) | Unauthorized code! | | CC-300 | CC-400 | 1 | Approved | | CC-888 | — | 0 (Missing!) | 2 rogue codes: "CC-999, CC-888" | - **Formula (Boolean check: does the range contain ANY unapproved value?)**: `=IF(OR(COUNTBLANK(A2:A6)>0,COUNTBLANK(D2:D5)>0),"Invalid inputs",COUNTIF(B2:B6, 0) > 0)` - **Formula (Extract comma-separated list of unauthorized values)**: `=IF(OR(COUNTBLANK(A2:A6)>0,COUNTBLANK(D2:D5)>0),"Invalid inputs",IF(COUNTIF(B2:B6,0)=0,"All Valid",TEXTJOIN(", ",TRUE,FILTER(A2:A6,B2:B6=0))))` ### Check If a Value Exists in a Range (COUNTIF & XMATCH Membership Test) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-value-exists-in-range-countif-xmatch/ - **Summary**: Check a nonblank ID against an approved list, distinguish literal matching from COUNTIF criteria, and test whether either of two watch-list IDs is present. - **Formula (Check a literal ID)**: `=IF(E2="",FALSE,ISNUMBER(XMATCH(E2,A2:A6,0)))` - **Formula (When COUNTIF is appropriate)**: `=COUNTIF(A2:A6,E2)>0` - **Formula (Check either watch-list ID)**: `=OR(IF(D2="",FALSE,ISNUMBER(XMATCH(D2,A2:A6,0))),IF(D3="",FALSE,ISNUMBER(XMATCH(D3,A2:A6,0))))` ### Check if a year is a leap year (4 / 100 / 400 Gregorian rule) - **URL**: https://sheets.arte-soft.com/en/learn/check-if-year-is-leap-year/ - **Summary**: Test any year or date for 366-day leap years accurately—including century exceptions like 1900 vs 2000—using MOD or DATE(yr, 2, 29). *Table — Why dividing by 4 alone fails on century years:* | Year | MOD 4 | MOD 100 | MOD 400 | Leap Year? | | --- | --- | --- | --- | --- | | 2024 | 0 | 24 | 24 | TRUE (366 days) | | 2026 | 2 | 26 | 26 | FALSE (365 days) | | 1900 | 0 | 0 | 300 | FALSE (365 days) | | 2000 | 0 | 0 | 0 | TRUE (366 days) | - **Formula (Exact Gregorian leap-year test and days-in-year)**: `=OR(MOD(A2, 400)=0, AND(MOD(A2, 4)=0, MOD(A2, 100)<>0))` - **Formula (Return the Gregorian number of days in the year)**: `=IF(OR(MOD(A2, 400)=0, AND(MOD(A2, 4)=0, MOD(A2, 100)<>0)), 366, 365)` ### Check if multiple cells are all equal (unanimous approval check) - **URL**: https://sheets.arte-soft.com/en/learn/check-multiple-cells-all-equal/ - **Summary**: Verify every cell across a row holds the same non-blank value with COUNTIF and COUNTA, or enforce exact casing with EXACT. *Table — Scale beyond A2=B2 across 4, 10, or 50 columns:* | Rev1 (A) | Rev2 (B) | Rev3 (C) | Rev4 (D) | Case-Insensitive / Exact | | --- | --- | --- | --- | --- | | Approved | Approved | Approved | Approved | TRUE / TRUE | | Approved | Approved | Approved | approved | TRUE / FALSE | | Approved | Approved | Approved | (blank) | FALSE / FALSE | - **Formula (Blank-safe unanimous equality formula)**: `=AND(COUNTBLANK(A2:D2)=0, SUMPRODUCT(--(A2:D2=A2))=COLUMNS(A2:D2))` - **Formula (Case-sensitive unanimous check with EXACT)**: `=AND(COUNTBLANK(A2:D2)=0, EXACT(A2, B2), EXACT(A2, C2), EXACT(A2, D2))` ### Chen Flow-Boiling Correlation: Reynolds Factor (F) & Suppression Factor (S) - **URL**: https://sheets.arte-soft.com/en/learn/chen-two-phase-convective-flow-boiling-suppression-reynolds/ - **Summary**: Calculate John C. Chen’s (1966) two-phase convective enhancement factor F = (1 / X_tt + 0.213)^0.736 and nucleate-boiling suppression factor S = 1 / (1 + 2.53E-6 * Re_TP^1.17) in vertical evaporators. *Table — Why high-velocity flow boiling ENHANCES forced convection (F > 1) while SUPPRESSING bubble nucleation (S < 1)!:* | Martinelli Parameter X_tt (Re_L = 12,000) | Convective Reynolds Factor F | Nucleate Suppression Factor S | Dominant Heat-Transfer Mechanism | | --- | --- | --- | --- | | X_tt = 0.25 (Mid-Tube Boiling) | 2.882× | 0.5866 (41.3% Nucleation Suppressed) | Balanced Convective + Nucleate | | X_tt = 0.10 (High-Quality Annular) | 5.530× | 0.3512 (64.9% Nucleation Suppressed) | Forced Annular Evaporation | | Invalid X_tt <= 0 or Re_L <= 0 | Undefined | "Invalid Flow-Boiling Inputs" | Positivity Guard | - **Formula (Chen Two-Phase Convective Enhancement Factor F)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Flow-Boiling Inputs", ROUND(IF(1 / B2 > 0.1, (1 / B2 + 0.213) ^ 0.736, 1), 3))` - **Formula (Chen Nucleate-Boiling Suppression Factor S (0 < S <= 1))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Flow-Boiling Inputs", ROUND(1 / (1 + 0.00000253 * ((B3 * ((IF(1 / B2 > 0.1, (1 / B2 + 0.213) ^ 0.736, 1)) ^ 1.25)) ^ 1.17)), 4))` ### Cheng-Prusoff Competitive K_i from IC50 Formula - **URL**: https://sheets.arte-soft.com/en/learn/cheng-prusoff-competitive-inhibition-ki-from-ic50-and-radioligand-kd/ - **Summary**: Convert assay-dependent half-maximal inhibitory concentration IC_50 into intrinsic competitive inhibitor affinity K_i = IC_50 / (1 + [L] / K_d) and compute uncompeted vs competed target receptor occupancy. *Table — Never compare raw IC50 values across labs running different substrate or radioligand loads!:* | Lead-Optimization Pharmacology Metric (IC50=120 nM, [L]=30 nM, Kd=10 nM, [I]=90 nM) | Formula | Verified Output | | --- | --- | --- | | Cheng-Prusoff Shift Factor | 1 + [L] / K_d | 4.0000x | | Intrinsic Inhibitor Constant K_i (nM) | IC_50 / (1 + [L] / K_d) | 30.00 nM | | Uncompeted Receptor Occupancy | [I] / ([I] + K_i) | 0.7500 (75.00%) | | Competed Occupancy @ [L] = 30 nM | [I] / ([I] + IC_50) | 0.4286 (42.86%) | - **Formula (Cheng-Prusoff Intrinsic K_i Formula)**: `=LET(ic_50, B2, lg_c, B3, kd_l, B4, dr_i, B5, IF(OR(ic_50 <= 0, lg_c < 0, kd_l <= 0, dr_i < 0), "Invalid Assay Input", ROUND(ic_50 / (1 + lg_c / kd_l), 2)))` - **Formula (Uncompeted vs Competed Fractional Target Occupancy Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B5 / (B5 + B2), 4))` ### Cherenkov Radiation Cone Angle (theta_C) & Relativistic Threshold Kinetic Energy - **URL**: https://sheets.arte-soft.com/en/learn/cherenkov-radiation-cone-angle-and-threshold-energy/ - **Summary**: Calculate the Cherenkov light-cone half-angle theta_C = DEGREES(ACOS(1 / (n * beta))) and minimum relativistic particle kinetic energy KE_min = m0_c2 * ((1 / SQRT(1 - 1 / n^2)) - 1) in water, ice, and glass. *Table — Decode the eerie blue reactor glow and neutrino rings in Super-Kamiokande!:* | Dielectric Medium & Electron Speed | n * beta Product | Cherenkov Cone Half-Angle theta_C | Electron Threshold KE_min | | --- | --- | --- | --- | | Water Pool (n = 1.333), beta = 0.70 | 0.9331 (<= 1!) | "Below Cherenkov Threshold (v <= c/n)" | 0.2618 MeV | | Water Pool (n = 1.333), beta = 0.90 | 1.1997 (> 1) | 33.54° | 0.2618 MeV | | Water Pool (n = 1.333), beta = 0.999 | 1.3317 (> 1) | 41.33° (Ultra-relativistic ring) | 0.2618 MeV | | Lead-Glass Calorimeter (n = 1.500), beta = 0.90 | 1.3500 (> 1) | 42.21° | 0.1746 MeV | - **Formula (Cherenkov Cone Half-Angle theta_C = ACOS(1 / (n * beta)) in Degrees)**: `=IF(OR(B2 <= 1, B3 <= 0, B3 >= 1), "Invalid Medium/Beta", IF((B2 * B3) <= 1, "Below Cherenkov Threshold (v <= c/n)", ROUND(DEGREES(ACOS(1 / (B2 * B3))), 2)))` - **Formula (Relativistic Threshold Kinetic Energy KE_min (MeV))**: `=IF(OR(B2 <= 1, B4 <= 0), "Invalid Medium/Mass", ROUND(B4 * ((1 / SQRT(1 - (1 / (B2 ^ 2)))) - 1), 4))` ### Chezy Open-Channel Velocity, Critical Depth (y_c) & Specific Energy - **URL**: https://sheets.arte-soft.com/en/learn/chezy-open-channel-velocity-and-froude-critical-depth-formula/ - **Summary**: Compute Chezy velocity for uniform flow, then explore rectangular-channel critical depth, minimum specific energy and Froude number using explicit SI inputs. - **Formula (Chezy velocity in D2)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric Chezy inputs",IF(OR(B2<=0,B3<=0,B4<0),"Require C>0, radius>0 and slope>=0",B2*SQRT(B3*B4)))` - **Formula (Rectangular critical depth in D3)**: `=IF(COUNT(B5:B6)<>2,"Enter numeric discharge and gravity",IF(OR(B5<0,B6<=0),"Require q>=0 and gravity>0",IF(B5=0,"No positive-flow critical depth",(B5^2/B6)^(1/3))))` - **Formula (Minimum specific energy in D4)**: `=IF(ISNUMBER(D3),1.5*D3,D3)` - **Formula (Froude number at depth B7, in D5)**: `=IF(COUNT(B5:B7)<>3,"Enter numeric q, gravity and depth",IF(OR(B5<0,B6<=0,B7<=0),"Require q>=0, gravity>0 and depth>0",B5/(B7*SQRT(B6*B7))))` - **Formula (Specific energy at depth B7, in D6)**: `=IF(COUNT(B5:B7)<>3,"Enter numeric q, gravity and depth",IF(OR(B5<0,B6<=0,B7<=0),"Require q>=0, gravity>0 and depth>0",B7+B5^2/(2*B6*B7^2)))` - **Formula (Regime label in D7)**: `=IF(NOT(ISNUMBER(D5)),D5,IF(B5=0,"No flow",IF(ABS(D5-1)<0.000000001,"Critical",IF(D5<1,"Subcritical","Supercritical"))))` ### Chi-Square Test of Independence: 2x2 contingency table and Phi effect size - **URL**: https://sheets.arte-soft.com/en/learn/chi-square-contingency-table-independence/ - **Summary**: Test whether two categorical variables are independent in a 2x2 table using N*(ad - bc)^2 / (R1*R2*C1*C2) and calculate expected counts and Phi. *Table — Expected counts and the Pearson statistic:* | Segment (A) | Converted (B) | Did Not Convert (C) | Row Total | | --- | --- | --- | --- | | Guided Onboarding | 60 | 40 | 100 | | Self-Serve Only | 30 | 70 | 100 | | Column Total | 90 | 110 | N = 200 (Chi^2 = 18.18) | - **Formula (2x2 Chi-Square statistic and Phi association coefficient)**: `=LET(a, B2, b, C2, cellC, B3, d, C3, n, a+b+cellC+d, ROUND(n * (a*d - b*cellC)^2 / ((a+b)*(cellC+d)*(a+cellC)*(b+d)), 2))` - **Formula (Expected count for top-left cell (Row1 * Col1 / GrandTotal))**: `=(SUM(B2:C2) * SUM(B2:B3)) / SUM(B2:C3)` - **Formula (Magnitude of Phi)**: `=LET(a, B2, b, C2, cellC, B3, d, C3, chi, (a+b+cellC+d) * (a*d - b*cellC)^2 / ((a+b)*(cellC+d)*(a+cellC)*(b+d)), ROUND(SQRT(chi / (a+b+cellC+d)), 4))` ### Chi-Square Goodness-of-Fit statistic formula: Observed vs Expected counts - **URL**: https://sheets.arte-soft.com/en/learn/chi-square-goodness-of-fit-statistic/ - **Summary**: Compute the Chi-Square Goodness-of-Fit test statistic SUMPRODUCT((O - E)^2 / E), degrees of freedom, and critical-value hypothesis decision. *Table — Test whether observed category counts match expected shares:* | Variant (A) | Observed (B) | Expected (C) | (O - E)^2 / E | | --- | --- | --- | --- | | Plan A | 58 | 50 | 64 / 50 = 1.28 | | Plan B | 42 | 50 | 64 / 50 = 1.28 | | Plan C | 65 | 50 | 225 / 50 = 4.50 | | Plan D | 35 | 50 | 225 / 50 = 4.50 (Total Chi^2 = 11.56) | - **Formula (Single-cell Chi-Square statistic and critical-value gate)**: `=ROUND(SUMPRODUCT((B2:B5 - C2:C5)^2 / C2:C5), 2)` - **Formula (Decision rule against critical threshold)**: `=IF(SUMPRODUCT((B2:B5 - C2:C5)^2 / C2:C5) > D2, "Reject Null", "Fail to Reject")` ### Chiang Life-Table q_x & Sullivan DFLE Formula - **URL**: https://sheets.arte-soft.com/en/learn/chiang-abridged-life-table-mortality-qx-and-sullivan-dfle-formula/ - **Summary**: Convert observed age-group mortality rates n_m_x into exact interval death probabilities n_q_x = (n*n_m_x)/(1 + n*(1 - n_a_x)*n_m_x) via Chiang (1968) and compute Sullivan healthy person-years. *Table — Convert central death rates n_m_x into exact interval probabilities n_q_x without >100% overflow!:* | Abridged Life-Table Metric (n=5, m=0.012, a=0.50, l_x=103k, pi=15%) | Formula | Verified Output | | --- | --- | --- | | Chiang Interval Death Prob (n_q_x) | (n * m) / (1 + n * (1 - a) * m) | 0.058252 (vs Naive 0.060000) | | Cohort Deaths in Interval (n_d_x) | l_x * n_q_x | 6,000.00 deaths | | Interval Person-Years Lived (n_L_x) | n*(l_x - d_x) + n*a*d_x | 500,000.00 person-years | | Sullivan Disability-Free Years (n_DF_x) | n_L_x * (1 - pi_x) | 425,000.00 healthy years | - **Formula (Chiang (1968) Exact Interval Mortality Probability n_q_x Formula)**: `=LET(n_wd, B2, m_rt, B3, a_fr, B4, IF(OR(n_wd <= 0, m_rt < 0, a_fr <= 0, a_fr >= 1), "Invalid Life-Table Input", ROUND(MIN(1, (n_wd * m_rt) / (1 + n_wd * (1 - a_fr) * m_rt)), 6)))` - **Formula (Sullivan (1971) Disability-Free Person-Years n_DF_x Formula)**: `=LET(n_wd, B2, m_rt, B3, a_fr, B4, l_in, B5, pi_d, B6, IF(OR(n_wd <= 0, m_rt < 0, a_fr <= 0, a_fr >= 1, l_in <= 0, pi_d < 0, pi_d > 1), "Invalid Life-Table Input", LET(q_ch, MIN(1, (n_wd * m_rt) / (1 + n_wd * (1 - a_fr) * m_rt)), d_iv, l_in * q_ch, l_py, n_wd * (l_in - d_iv) + n_wd * a_fr * d_iv, ROUND(l_py * (1 - pi_d), 2))))` ### Disinfection CT Inactivation, Baffling Factor & Log Formula - **URL**: https://sheets.arte-soft.com/en/learn/chick-watson-disinfection-ct-inactivation-baffling-factor-and-log-removal/ - **Summary**: Calculate Clearwell Theoretical Hydraulic Residence Time HRT (min), Tracer T10 Effective Contact Time (min), Effective Disinfection CT (mg·min/L), and Pathogen Log-Inactivation Credit. *Table — Never use theoretical V / Q for regulatory CT—hydraulic short-circuiting mandates T10 = HRT * BF!:* | EPA SWTR Clearwell CT KPI (1,500 m³, 25 m³/min, BF = 0.50, 1.6 mg/L Cl2) | Formula | Verified Output | | --- | --- | --- | | Theoretical Detention HRT (min) | Clearwell_Volume_m3 / Peak_Flow_m3_min | 60.00 min | | Effective Tracer Contact T10 (min) | Theoretical_HRT_min * Baffling_Factor | 30.00 min (6.00 min Unbaffled) | | Effective Disinfection CT (mg·min/L) | Free_Chlorine_mg_L * Effective_T10_min | 48.00 mg·min/L (9.60 Unbaffled) | | Giardia Log-Inactivation Credit | Effective_CT / Required_CT_Per_Log | 1.50 logs (0.30 logs Unbaffled!) | - **Formula (Baffling-Adjusted CT & Pathogen Log-Inactivation Formula)**: `=LET(vl_c, B2, q_pk, B3, bf_t, B4, cl_r, B5, ct_q, B6, IF(OR(vl_c <= 0, q_pk <= 0, bf_t <= 0, bf_t > 1, cl_r <= 0, ct_q <= 0), "Invalid Clearwell CT Input", LET(t_10, (vl_c / q_pk) * bf_t, ct_e, cl_r * t_10, ROUND(ct_e / ct_q, 2))))` - **Formula (Unbaffled Tank Short-Circuiting Compliance Failure Check (Set BF = 0.10))**: `=IF(ISTEXT(E5), E5, ROUND((B2 / B3) * B4 * B5, 2))` ### Child-Langmuir Three-Halves (V^3/2) Space-Charge Current Limit & Perveance - **URL**: https://sheets.arte-soft.com/en/learn/child-langmuir-space-charge-vacuum-diode-3-2-power-law/ - **Summary**: Calculate space-charge-limited electron current density J = 0.002334 * (V^1.5) / (d^2) in mA/cm^2 and diode perveance P = I / V^1.5 for vacuum tubes, X-ray anodes, and ion thruster grids. *Table — Why vacuum diodes and ion-thruster accelerator grids obey V^1.5—NOT Ohm's Law!:* | Anode Voltage & Gap (Electron Diode) | Scaling Factor | Space-Charge Density J (mA/cm^2) | Microperveance (uA / V^1.5) | | --- | --- | --- | --- | | V = 1,000 V, d = 0.50 cm (A = 2 cm^2) | Baseline V^1.5 / d^2 | 295.23 mA/cm^2 (I = 590.46 mA) | 18.67 uP (Geometry invariant!) | | V = 4,000 V (4x Voltage), d = 0.50 cm | 4^1.5 = 8.0x Current! | 2,361.84 mA/cm^2 | 18.67 uP (Unchanged!) | | Invalid Zero/Negative Gap d <= 0 | Division by d^2 Guard | Guarded Input Error | "Invalid Diode Geometry" | - **Formula (Child-Langmuir Electron Space-Charge Current Density J (mA/cm^2))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Diode Geometry", ROUND(0.002334 * (B2 ^ 1.5) / (B3 ^ 2), 2))` - **Formula (Planar Diode Microperveance (uA / V^1.5 = 2.334 * Area / d^2))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Diode Geometry", ROUND((2.334 * B4) / (B3 ^ 2), 2))` ### Child-Pugh spreadsheet arithmetic with validated inputs and class boundaries - **URL**: https://sheets.arte-soft.com/en/learn/child-pugh-cirrhosis-score-and-class-a-b-c-formula/ - **Summary**: Practice nested IF with a conventional non-cholestatic Child-Pugh scoring example using fictional data and explicit units. *Table — Define the scoring convention and units:* | Child-Pugh Parameter | 1 pt / 2 pts / 3 pts Cutoffs | Fictional input | Points Awarded | | --- | --- | --- | --- | | Total Bilirubin (B2) | <2.0 \| 2.0–3.0 \| >3.0 mg/dL | 2.5 mg/dL | 2 pts | | Serum Albumin (B3) | >3.5 \| 2.8–3.5 \| <2.8 g/dL | 3.0 g/dL (Inverted!) | 2 pts | | INR (B4) | <1.7 \| 1.7–2.3 \| >2.3 | 1.9 | 2 pts | | Ascites (B5) & Enceph (B6) | Pre-assessed component points:1,2or3 | Mild Ascites (2), No Enc (1) | 3 pts -> Total 9 (Class B) | - **Formula (Total Child-Pugh Score (5 to 15 points))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(MIN(B2:B4)<=0,B5<1,B5>3,B6<1,B6>3,B5<>INT(B5),B6<>INT(B6)),"Invalid inputs",IF(B2 < 2, 1, IF(B2 <= 3, 2, 3)) + IF(B3 > 3.5, 1, IF(B3 >= 2.8, 2, 3)) + IF(B4 < 1.7, 1, IF(B4 <= 2.3, 2, 3)) + B5 + B6))` - **Formula (Child-Pugh Hepatic Impairment Class (A, B, or C))**: `=IF(COUNT(B7)<>1,"Invalid inputs",IF(OR(B7<5,B7>15,B7<>INT(B7)),"Invalid inputs",IF(B7<=6,"Class A (5-6)",IF(B7<=9,"Class B (7-9)","Class C (10-15)"))))` ### Chirikov Resonance-Overlap Criterion: Hamiltonian Chaos & Standard Map Parameter - **URL**: https://sheets.arte-soft.com/en/learn/chirikov-resonance-overlap-chaos-parameter-pendulum-map/ - **Summary**: Evaluate Boris Chirikov’s resonance-overlap parameter s = (Δω_1 + Δω_2) / Ω_12 and Chirikov-Taylor standard-map stochasticity threshold K_c ≈ 0.9716. *Table — When adjacent nonlinear pendulum separatrices touch (s >= 1), global Hamiltonian chaos erupts!:* | Resonance Configuration | Chirikov Overlap Ratio s | Standard Map K vs K_c = 0.9716 | Phase-Space Transport | | --- | --- | --- | --- | | Δω_1 = 1.4, Δω_2 = 1.2, Ω_12 = 2.0 (K = 1.25) | s = 1.300 (Overlap!) | s_map = 0.7118 (K > 0.9716) | Global Stochastic Sea / Fast Loss | | Δω_1 = 0.6, Δω_2 = 0.5, Ω_12 = 2.0 (K = 0.50) | s = 0.550 (Separated) | K < 0.9716 | Bounded KAM Tori Confinement | | Invalid Ω_12 <= 0 or Negative Width | Error Guard | Error Guard | "Invalid Resonance Parameters" | - **Formula (Two-Resonance Chirikov Separatrix Overlap Ratio s = (Δω_1 + Δω_2) / Ω_12)**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0, B5 < 0), "Invalid Resonance Parameters", ROUND((B2 + B3) / B4, 3))` - **Formula (Chirikov-Taylor Standard Map Primary Overlap s_map = (2 / π) * SQRT(K))**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0, B5 < 0), "Invalid Resonance Parameters", ROUND((2 / PI()) * SQRT(B5), 4))` ### Chlor-Alkali Membrane Cell NaOH, Cl2 ECU & kWh/Ton Formula - **URL**: https://sheets.arte-soft.com/en/learn/chlor-alkali-membrane-electrolysis-caustic-soda-chlorine-and-kwh-ton-formula/ - **Summary**: Calculate Daily 100%-Basis Caustic Soda NaOH Production (t/d), Co-Product Chlorine Gas Cl2 (t/d at 0.886 ECU Ratio), Rectifier DC Load (MW), and Specific DC Energy (kWh/t NaOH). *Table — Every 1.00 ton of dry NaOH electrolyzed co-produces an inescapable 0.886 tons of Cl2—the Electrochemical Unit (ECU)!:* | Chlor-Alkali Cellroom KPI (18 kA, 100 Cells, 96% Eff, 3.10 V/cell) | Formula | Verified Output | | --- | --- | --- | | Dry 100% NaOH Produced (t/d) | (I_A * N * 86400 * eta / 96485) * 40 / 1e6 | 61.90 t/d | | Co-Product Chlorine Cl2 (t/d) | (I_A * N * 86400 * eta / 96485) * 35.453 / 1e6 | 54.86 t/d (0.886 ECU ratio) | | Cellroom DC Rectifier Load (MW) | (Current_kA * N_Cells * Cell_V) / 1000 | 5.58 MW (6.12 MW @ 3.40 V) | | Specific DC Energy (kWh/t NaOH) | (Current_kA * N * Cell_V * 24) / NaOH_t_d | 2,163.65 kWh/t (2,373.04 @ 3.40 V) | - **Formula (Faradaic Membrane Chlor-Alkali Specific Energy & NaOH Tonnage Formula)**: `=LET(ik_a, B2, nc_l, B3, ef_f, B4, vc_l, B5, IF(OR(ik_a <= 0, nc_l < 1, INT(nc_l) <> nc_l, ef_f <= 0.75, ef_f > 1, vc_l < 2.2), "Invalid Electrolyzer Input", LET(ml_d, (ik_a * 1000 * nc_l * 86400 * ef_f) / 96485, na_t, (ml_d * 40) / 1000000, ROUND((ik_a * nc_l * vc_l * 24) / na_t, 2))))` - **Formula (Aged Membrane Voltage Creep Energy Penalty Check (Set Cell Voltage = 3.40 V))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * B3 * B5) / 1000, 2))` ### CHOOSE function: switch forecast scenarios with a 1-based selector - **URL**: https://sheets.arte-soft.com/en/learn/choose-function-scenario-selector/ - **Summary**: Pick the 1st, 2nd, or 3rd assumption cell from a numbered scenario input, and catch out-of-range selector numbers that trigger #VALUE!. *Table — Three growth assumptions controlled by one selector cell:* | Selector value | Scenario | Growth rate | | --- | --- | --- | | 1 | Conservative (B2) | 0.03 | | 2 | Base (B3) | 0.06 | | 3 | Stretch (B4) | 0.1 | - **Formula (Pick the Nth argument with CHOOSE)**: `=CHOOSE(E2,B2,B3,B4)` ### CHOOSECOLS function: extract, reorder, and pull last columns dynamically - **URL**: https://sheets.arte-soft.com/en/learn/choosecols-function-extract-columns/ - **Summary**: Select non-adjacent columns in any order or reference columns from the right with negative indexes using CHOOSECOLS. *Table — Build lean client views without deleting middle columns:* | Item (A) | UnitCost (B) | Margin (C) | ListPrice (D) | | --- | --- | --- | --- | | Desk | 180 | 0.35 | 277 | | Chair | 95 | 0.4 | 158 | | Lamp | 42 | 0.5 | 84 | - **Formula (Read specific columns or sum the trailing column (-1))**: `=INDEX(CHOOSECOLS(A2:D4, 1, 4), 2, 2)` - **Formula (Invalid column index boundaries (#VALUE!))**: `=SUM(CHOOSECOLS(A2:D4, -1))` ### CHOOSEROWS function: pull specific rows or the latest entry from the bottom - **URL**: https://sheets.arte-soft.com/en/learn/chooserows-function-extract-rows/ - **Summary**: Extract milestone rows by position or fetch the last row of a growing log with CHOOSEROWS and negative row indexes. *Table — Compare first and latest periods without rewriting ranges:* | Quarter (A) | Leads (B) | Closed (C) | | --- | --- | --- | | Q1 | 140 | 28 | | Q2 | 165 | 35 | | Q3 | 150 | 31 | | Q4 | 190 | 44 | - **Formula (Read the latest row (-1) or sum selected milestones)**: `=INDEX(CHOOSEROWS(A2:C5, -1), 1, 3)` - **Formula (Out-of-bounds row numbers return #VALUE!)**: `=SUM(CHOOSECOLS(CHOOSEROWS(A2:C5, 1, 4), 3))` ### Christaller K=3, 4, 7 & Beckmann City-Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/christaller-central-place-k3-k4-k7-hierarchy-and-beckmann-city-size/ - **Summary**: Calculate Walter Christaller’s (1933) hexagonal Central Place market-area hierarchy K^(m - 1) and Martin Beckmann’s (1958) recursive urban system population T_m = (R_1 / (1 - k_srv)) * (K / (1 - k_srv))^(m - 1). *Table — Model hexagonal retail, transport, and administrative urban hierarchies!:* | Central Place Metric (K=3 Marketing, Tier m=3, R_1=4,000, k_srv=0.20) | Formula | Verified Output | | --- | --- | --- | | Lowest-Order Market Areas Subsumed | K ^ (m - 1) | 9 hexagons (16 at K=4; 49 at K=7) | | Tier-1 Market Town Population (P_1) | (k_srv / (1 - k_srv)) * R_1 | 1,000.00 (System T_1 = 5,000) | | Tier-m Total System Population (T_m) | (R_1 / (1 - k_srv)) * (K / (1 - k_srv))^(m - 1) | 70,312.50 residents | | Christaller Nesting Geometry | K = 3, 4, or 7 | Marketing Principle (K = 3) | - **Formula (Beckmann (1958) Hierarchical System Population T_m Formula)**: `=LET(k_ch, B2, m_tr, B3, r_bs, B4, ks_r, B5, IF(OR(NOT(OR(k_ch = 3, k_ch = 4, k_ch = 7)), m_tr < 1, INT(m_tr) <> m_tr, r_bs <= 0, ks_r <= 0, ks_r >= 1), "Invalid Central Place Input", ROUND((r_bs / (1 - ks_r)) * ((k_ch / (1 - ks_r)) ^ (m_tr - 1)), 2)))` - **Formula (Christaller Principle Classification Formula)**: `=IF(ISTEXT(E4), E4, IF(B2 = 3, "Marketing Principle (K = 3)", IF(B2 = 4, "Transport Principle (K = 4)", "Administrative Principle (K = 7)")))` ### Chun-Seban Falling-Film Evaporator Nusselt Correlation (Wavy vs. Turbulent) - **URL**: https://sheets.arte-soft.com/en/learn/chun-seban-falling-liquid-film-evaporation-nusselt-formula/ - **Summary**: Calculate vertical falling-film evaporator dimensionless Nusselt number Nu_f across wavy-laminar (0.821 * Re_f^-0.22) and turbulent (0.0038 * Re_f^0.4 * Pr^0.65) regimes. *Table — Why falling-film heat transfer FIRST drops as films thicken—then surges once turbulence kicks in!:* | Film Reynolds Number Re_f (Water Pr_l = 1.75, Re_tr = 3,205) | Dominant Regime | Chun-Seban Nu_f | Physical Mechanism | | --- | --- | --- | --- | | Re_f = 1,200 (< 3,205) | Wavy-Laminar (0.821 * Re^-0.22) | 0.1726 | Capillary wave thinning vs conduction | | Re_f = 8,000 (> 3,205) | Turbulent Film (0.0038 * Re^0.4 * Pr^0.65) | 0.1991 | Turbulent eddy transport across film | | Invalid Re_f <= 0 or Pr_l <= 0 | Error Guard | "Invalid Film Parameters" | Positivity Guard | - **Formula (Composite Chun-Seban Falling-Film Nusselt Number Nu_f)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Film Parameters", ROUND(MAX(0.821 * (B2 ^ (-0.22)), 0.0038 * (B2 ^ 0.4) * (B3 ^ 0.65)), 4))` - **Formula (Wavy-to-Turbulent Transition Reynolds Number Re_tr = 5800 * Pr_l^(-1.06))**: `=IF(B3 <= 0, "Invalid Film Parameters", ROUND(5800 * (B3 ^ (-1.06)), 0))` ### Chung-Lee-Starling Polar & Acentric Gas Viscosity Formula (F_c Shape Factor) - **URL**: https://sheets.arte-soft.com/en/learn/chung-lee-starling-acentric-polar-gas-viscosity-correlation/ - **Summary**: Calculate dilute gas viscosity η = 4.0785 * F_c * SQRT(M * T) / (V_c^(2/3) * Ω_v) (µPa·s) accounting for Pitzer acentricity ω, reduced dipole μ_r, and hydrogen-bonding κ! *Table — Extending kinetic-theory gas viscosity to non-spherical hydrocarbons, polar refrigerants, and alcohols!:* | Molecular Polarity & Acentric Profile | Chung Factor F_c | Dilute Viscosity η (µPa·s) | Physical Correction | | --- | --- | --- | --- | | Linear Non-Polar CO₂ (ω = 0.225, μ_r = 0, κ = 0) | 0.9380 | 19.38 µPa·s | Acentric non-sphericity reduces F_c | | Associated Polar Vapor (ω = 0.344, κ = 0.068) | 0.9732 | 20.11 µPa·s | H-bonding κ offsets acentricity | | Invalid T <= 0, M <= 0, V_c <= 0, or Ω_v <= 0 | Undefined | "Invalid Chung-Lee-Starling Inputs" | Positivity Guard | - **Formula (Chung-Lee-Starling Dilute Gas Viscosity η (µPa·s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B8 <= 0), "Invalid Chung-Lee-Starling Inputs", ROUND(4.0785 * (1 - 0.2756 * B5 + 0.059035 * (B6 ^ 4) + B7) * SQRT(B3 * B2) / ((B4 ^ (2 / 3)) * B8), 2))` - **Formula (Chung Molecular Shape, Polarity & Association Factor F_c)**: `=ROUND(1 - 0.2756 * B5 + 0.059035 * (B6 ^ 4) + B7, 4)` ### Churchill-Bernstein Cylinder Crossflow Nusselt Number Formula - **URL**: https://sheets.arte-soft.com/en/learn/churchill-bernstein-cylinder-crossflow-nusselt-number/ - **Summary**: Estimate average Nusselt number and external convection coefficient for a circular cylinder in crossflow, using validated inputs and unrounded intermediate results. - **Formula (Compute raw average Nu in B7)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric Re and Pr",IF(OR(B2<=0,B3<=0),"Re and Pr must be positive",IF(B2*B3<=0.2,"Outside adopted RePr > 0.2 range",0.3+(0.62*B2^0.5*B3^(1/3)/(1+(0.4/B3)^(2/3))^0.25)*(1+(B2/282000)^(5/8))^(4/5))))` - **Formula (Compute h from the validated Nu in B8)**: `=IF(ISNUMBER(B7),IF(COUNT(B4:B5)<>2,"Enter numeric k and D",IF(OR(B4<=0,B5<=0),"k and D must be positive",B7*B4/B5)),B7)` ### Churchill-Chu Vertical Plate Natural Convection Formula (All Rayleigh Numbers) - **URL**: https://sheets.arte-soft.com/en/learn/churchill-chu-vertical-plate-natural-convection-nusselt-formula/ - **Summary**: Calculate free-convection heat transfer Nu_L = [0.825 + 0.387*Ra^(1/6) / (1 + (0.492/Pr)^(9/16))^(8/27)]^2 across laminar and turbulent buoyancy boundary layers. *Table — One unified correlation spanning 13 orders of magnitude of Rayleigh number (10^-1 < Ra_L < 10^12)!:* | Vertical Wall Rayleigh Number Ra_L (Air Pr = 0.71) | Boundary-Layer Regime | Churchill-Chu Nu_L | Engineering Application | | --- | --- | --- | --- | | Ra_L = 2.5×10^8 (0.6 m Cabinet Panel) | Upper Laminar (< 10^9) | 80.42 | Passive heatsink / enclosure cooling | | Ra_L = 1.0×10^10 (2.2 m Tank Wall) | Turbulent Plume (> 10^9) | 252.28 | Storage tank ambient heat loss | | Invalid Ra_L <= 0 or Pr <= 0 | Error Guard | "Invalid Rayleigh or Prandtl" | Thermophysical Bounds Guard | - **Formula (Churchill-Chu All-Rayleigh Vertical Plate Nusselt Number Nu_L)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Rayleigh or Prandtl", ROUND((0.825 + (0.387 * (B2 ^ (1 / 6))) / ((1 + ((0.492 / B3) ^ (9 / 16))) ^ (8 / 27))) ^ 2, 2))` - **Formula (Prandtl Universal Damping Function ψ(Pr) = [1 + (0.492 / Pr)^(9/16)]^(-8/27))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Rayleigh or Prandtl", ROUND((1 + ((0.492 / B3) ^ (9 / 16))) ^ (-8 / 27), 4))` ### Chvorinov Sand-Casting Modulus & Riser Sizing Formula - **URL**: https://sheets.arte-soft.com/en/learn/chvorinov-rule-sand-casting-modulus-solidification-time-and-riser-sizing/ - **Summary**: Calculate Casting Cooling Modulus M_c = V/A (cm), Chvorinov Solidification Time t_s = B*(V/A)^n (min), Minimum Blind Cylindrical Riser Diameter D_r = H_r (cm), and Riser Feed Volume (cm³). *Table — If a sand-casting riser freezes BEFORE the heavy boss it feeds, shrinkage cavities form straight inside the casting!:* | Chvorinov Foundry KPI (Vc=3,600 cm³, Ac=1,500 cm², B=2.10 min/cm², n=2.0, k=1.20) | Formula | Verified Output | | --- | --- | --- | | Casting Cooling Modulus Mc (cm) | Casting_Volume_cm3 / Surface_Area_cm2 | 2.40 cm | | Casting Solidification Time (min) | Mold_Const_B * (Modulus_Mc ^ Exp_n) | 12.10 min (4.90 min @ B=0.85 chill!) | | Min Blind Riser Diameter Dr=Hr (cm) | 6 * (Safety_k * Modulus_Mc) | 17.28 cm | | Cylindrical Riser Volume (cm³) | (PI() / 4) * (Riser_Diam_Dr ^ 3) | 4,052.5 cm³ | - **Formula (Chvorinov Cooling Modulus & H=D Cylindrical Riser Sizing Formula)**: `=LET(vc_c, B2, ac_s, B3, bm_c, B4, ex_n, B5, ks_f, B6, IF(OR(vc_c <= 0, ac_s <= 0, bm_c <= 0, ex_n < 1.5, ex_n > 2.5, ks_f < 1.05), "Invalid Foundry Input", LET(mc_m, vc_c / ac_s, dr_c, 6 * ks_f * mc_m, ROUND((PI() / 4) * (dr_c ^ 3), 1))))` - **Formula (Metal Chill Rapid Directional Freeze Check (Set Mold Constant B = 0.85 min/cm²))**: `=IF(ISTEXT(E5), E5, ROUND(B4 * ((B2 / B3) ^ B5), 2))` ### CIE Unified Glare Rating (UGR) Discomfort Formula - **URL**: https://sheets.arte-soft.com/en/learn/cie-unified-glare-rating-ugr-luminaire-luminance-background-cd-m2-and-solid-angle/ - **Summary**: Calculate Single-Luminaire Guth Glare Term (L²*omega/p²), Cumulative Multi-Fixture Glare Sum, CIE 117 Unified Glare Rating UGR, and EN 12464-1 <=19 Office Compliance. *Table — Paint an open-office ceiling matte black for "industrial aesthetics" while installing bare-diffuser LED panels and UGR jumps +9.5 points into painful visual glare!:* | CIE 117 UGR Glare KPI (omega=0.0018 sr, Guth p=2.40, N=12 Fixtures) | Formula | Verified Output | | --- | --- | --- | | Single-Fixture Glare Term | (Luminaire_L_cd_m2 ^ 2 * Solid_Angle_sr) / (Guth_p ^ 2) | 2,450.0 (16,200.0 @ bare 7,200 cd/m²) | | Multi-Fixture Glare Sum | Visible_Fixtures_N * Single_Fixture_Term | 29,400.0 (194,400.0 @ bare lens) | | CIE 117 Unified Glare Rating | 8 * LOG10((0.25 / Background_Lb) * Glare_Sum) | 18.58 comfortable (28.08 PAINFUL GLARE!) | | EN 12464-1 Office Glare Gate | UGR <= 19.0 Reading / VDT Screen Spec | EN 12464-1 OFFICE PASS (<=19) | - **Formula (CIE 117 Logarithmic Luminance-Contrast UGR & Guth Position Formula)**: `=LET(ll_c, B2, lb_c, B3, om_s, B4, gp_i, B5, nf_c, B6, st_g, ((ll_c ^ 2) * om_s) / (gp_i ^ 2), ug_r, 8 * LOG10((0.25 / lb_c) * nf_c * st_g), IF(OR(ll_c < 200, ll_c > 100000, lb_c < 2, lb_c > 500, om_s < 0.0001, om_s > 0.1, gp_i < 1, gp_i > 16, nf_c < 1, nf_c > 200), "Invalid UGR Input", IF(ug_r <= 19, "EN 12464-1 OFFICE PASS (<=19)", "EXCESSIVE DISCOMFORT GLARE (>19)")))` - **Formula (Bare Opal Diffuser (`L = 7,200` cd/m²) Against Dark Exposed Ceiling (`L_b = 15` cd/m²) Check)**: `=IF(ISTEXT(E2), E2, LET(st_g, ((B2 ^ 2) * B4) / (B5 ^ 2), ROUND(8 * LOG10((0.25 / B3) * B6 * st_g), 2)))` ### Cinelli-Hazlett Partial R-Squared and Robustness Value (RV) Formula - **URL**: https://sheets.arte-soft.com/en/learn/cinelli-hazlett-omitted-variable-bias-partial-r2-robustness-value/ - **Summary**: Convert any regression t-statistic and degrees of freedom into partial R^2_{Y~D|X} and Cinelli & Hazlett’s (2020) omitted-variable Robustness Value RV_q. *Table — Compute omitted-variable sensitivity directly from published t-statistics and df:* | Cinelli-Hazlett Metric (t=4, df=84) | Exact Algebraic Formula | Sample Output | | --- | --- | --- | | Partial R^2_{Y~D\|X} (Extreme Bound) | t_obs^2 / (t_obs^2 + df) = 16 / 100 | 0.1600 (16.00%) | | Point-Zero Robustness Value RV_{q=1} | 0.5 * (SQRT(f^4 + 4*f^2) - f^2) | 0.3515 (35.15% in D & Y) | | Adjusted f_{alpha=0.05} vs Hurdle 1.96 | MAX(0, (\|t_obs\| - 1.96) / SQRT(df)) | 0.2226 | | Alpha-0.05 Significance RV_{q,a=0.05} | 0.5 * (SQRT(f_a^4 + 4*f_a^2) - f_a^2) | 0.1992 (19.92% to lose p<0.05) | - **Formula (Exact Partial R-Squared R^2_{Y~D|X} from t-Statistic Formula)**: `=IF(B3 < 1, "Invalid Degrees of Freedom", ROUND((B2^2) / ((B2^2) + B3), 4))` - **Formula (Robustness Value RV_q (Point-Zero & Critical-t Significance) Formula)**: `=LET(t_val, ABS(B2), df_v, B3, t_cr, B4, IF(OR(df_v < 1, t_cr < 0), "Invalid Degrees of Freedom", IF(t_val <= t_cr, 0, LET(fq_sq, ((t_val - t_cr)^2) / df_v, ROUND(0.5 * (SQRT((fq_sq^2) + 4 * fq_sq) - fq_sq), 4)))))` ### Cipolletti Trapezoidal Weir & Parshall Flume Free-Flow Discharge Formulas - **URL**: https://sheets.arte-soft.com/en/learn/cipolletti-trapezoidal-and-parshall-flume-weir-discharge/ - **Summary**: Measure irrigation canal and wastewater plant flow rates (m³/s) with Cesare Cipolletti’s 1H:4V end-contraction-compensated weir Q = 1.859*L*H^1.5 and Ralph Parshall’s throat flume Q = C*H_a^n. *Table — Why flaring weir side walls at 1H:4V eliminates Francis end-contraction corrections!:* | Open-Channel Flowmeter & Head H | Governing SI Equation | Volumetric Flow Rate Q (m³/s) | Primary Field Use | | --- | --- | --- | --- | | Cipolletti Weir (L = 1.8 m, H = 0.32 m) | 1.859 * L * H^1.5 (H <= L/3) | 0.6057 m³/s (605.7 L/s) | Clean irrigation canals | | Cipolletti Weir (L = 1.8 m, H = 0.50 m) | 1.859 * 1.8 * 0.50^1.5 | 1.1831 m³/s | High-stage canal turnout | | 1-ft Parshall Flume (H_a = 0.32 m) | 0.679 * H_a^1.522 | 0.1199 m³/s (119.9 L/s) | Sediment-laden / WWTP influent | - **Formula (Cipolletti 1:4 Trapezoidal Sharp-Crested Weir Discharge Q_cip (m³/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > B2 / 3), "Head Outside Cipolletti H <= L/3 Limit", ROUND(1.859 * B2 * (B3 ^ 1.5), 4))` - **Formula (Parshall Throat Flume Free-Flow Discharge Q_par = C * H_a^n (m³/s))**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Flume Parameters", ROUND(B4 * (B3 ^ B5), 4))` ### CISNE Score Calculator: Stable Solid-Tumor Febrile Neutropenia (0–8) - **URL**: https://sheets.arte-soft.com/en/learn/cisne-clinical-index-of-stable-febrile-neutropenia-oncology-score/ - **Summary**: Calculate the ASCO/IDSA-endorsed Clinical Index of Stable Febrile Neutropenia (CISNE, 0–8 points) to catch occult decompensation missed by MASCC in solid-tumor chemotherapy outpatients. *Table — Why ASCO guidelines pair CISNE with MASCC before discharging solid-tumor febrile neutropenia!:* | CISNE Risk Class (0–8 Points) | Serious Complication Rate | ASCO / IDSA Management Recommendation | | --- | --- | --- | | Class I (0 points) | 1.1% | Candidate for Oral Outpatient Empiric Antibiotics | | Class II (1 – 2 points) | 6.2% | Observation / Individualized Inpatient vs Close Outpatient | | Class III (>= 3 points) | 36.0% | Mandatory Inpatient Admission & IV Anti-Pseudomonal Beta-Lactam | - **Formula (Total CISNE Febrile Neutropenia Score (0 to 8 Points))**: `=IF(OR(COUNT(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 1), "Invalid CISNE Binary Flags (0 or 1)", SUMPRODUCT(B2:B7, C2:C7))` - **Formula (CISNE Risk Class I / II / III Outpatient Eligibility Tier)**: `=IF(OR(COUNT(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 1), "Invalid CISNE Binary Flags (0 or 1)", IF(SUMPRODUCT(B2:B7, C2:C7) = 0, "Class I (0 pts — 1.1% Risk, Outpatient Eligible)", IF(SUMPRODUCT(B2:B7, C2:C7) <= 2, "Class II (1-2 pts — 6.2% Intermediate Risk)", "Class III (>=3 pts — 36% Risk, Admit for IV Therapy)")))` ### 2021 CKD-EPI Creatinine eGFR and GFR Categories in Excel - **URL**: https://sheets.arte-soft.com/en/learn/ckd-epi-2021-race-free-egfr-and-mdrd-kidney-filtration-formula/ - **Summary**: Practice the adult 2021 race-free creatinine equation, validate units and inputs, and classify the unrounded estimate without treating it as a CKD diagnosis. - **Formula (Inputs and equation)**: `=IF(OR(COUNT(B2:B3)<>2,B2<=0,B3<18,AND(B4<>"F",B4<>"M")),"Use numeric Scr > 0, adult age >= 18 and sex F or M",LET(kap,IF(B4="F",0.7,0.9),alp,IF(B4="F",-0.241,-0.302),sexf,IF(B4="F",1.012,1),142*MIN(B2/kap,1)^alp*MAX(B2/kap,1)^(-1.2)*0.9938^B3*sexf))` - **Formula (GFR category, not a standalone diagnosis)**: `=IF(ISNUMBER(B6),IFS(B6>=90,"G1",B6>=60,"G2",B6>=45,"G3a",B6>=30,"G3b",B6>=15,"G4",TRUE,"G5"),B6)` ### Convert negative numbers to zero (and clamp values between Min and Max) - **URL**: https://sheets.arte-soft.com/en/learn/convert-negative-numbers-to-zero/ - **Summary**: Replace verbose IF(x<0, 0, x) formulas with MAX(0, x) for zero floors and MEDIAN(Min, x, Max) for two-sided caps. *Table — Use MAX when the calculation explicitly requires a zero floor:* | RawBonus (A) | Floor (B) | Cap (C) | MAX(0, A) | MEDIAN(B, A, C) Clamp | | --- | --- | --- | --- | --- | | -35 | 0 | 500 | 0 | 0 | | 240 | 0 | 500 | 240 | 240 | | 680 | 0 | 500 | 680 | 500 | - **Formula (Two-sided clamping with MEDIAN(Min, Value, Max))**: `=MAX(0, A2)` - **Formula (Verify upper cap with MEDIAN)**: `=MEDIAN(B4, A4, C4)` ### Clarifier Surface Overflow Rate (SOR) & Weir Loading Formula - **URL**: https://sheets.arte-soft.com/en/learn/clarifier-surface-overflow-rate-weir-loading-and-detention-time-formula/ - **Summary**: Calculate Circular Clarifier Settling Plan Area (ft²), Camp-Hazen Surface Overflow Rate SOR (GPD/ft²), Hydraulic Detention Time HRT (hrs), and Peripheral Weir Overflow Rate (GPD/ft). *Table — Camp-Hazen law: discrete particle capture depends on Surface Area (Q / A)—not tank depth!:* | Ten-States Clarifier Sizing KPI (4.00 MGD, D = 80 ft, SWD = 12 ft) | Formula | Verified Output | | --- | --- | --- | | Clarifier Plan Area (ft²) | PI() * (Diameter_ft ^ 2) / 4 | 5,026.55 ft² | | Surface Overflow Rate SOR (GPD/ft²) | (Flow_MGD * 10^6) / Plan_Area_ft2 | 795.77 GPD/ft² (1,591.55 @ 8 MGD) | | Hydraulic Detention Time HRT (hrs) | Plan_Area * Depth_ft * 7.48 * 24 / Flow_GPD | 2.71 hrs (1.35 hrs @ 8 MGD) | | Peripheral Weir Loading (GPD/ft) | (Flow_MGD * 10^6) / (PI() * Diameter_ft) | 15,915.49 GPD/ft | - **Formula (Camp-Hazen Surface Overflow Rate & Detention Formula)**: `=LET(qm_g, B2, dm_f, B3, sw_d, B4, IF(OR(qm_g <= 0, dm_f < 10, sw_d < 7), "Invalid Clarifier Input", LET(ar_f, PI() * (dm_f ^ 2) / 4, ROUND((qm_g * 1000000) / ar_f, 2))))` - **Formula (2x Peak Wet-Weather Storm-Flow Check (Set Flow = 8.00 MGD))**: `=IF(ISTEXT(E3), E3, ROUND((B2 * 1000000) / (PI() * B3), 2))` ### Clark-Evans Nearest-Neighbor Dispersion Index (R) and Z-Score - **URL**: https://sheets.arte-soft.com/en/learn/clark-evans-nearest-neighbor-spatial-dispersion-r-index/ - **Summary**: Classify point patterns as Clustered (R < 1), Random Poisson CSR (R = 1), or Regular Lattice (up to R = 2.1491) using Clark and Evans’s (1954) nearest-neighbor formula. *Table — Benchmark observed nearest-neighbor distances against Complete Spatial Randomness:* | Point-Pattern Regime | Index Value R = r_obs / r_exp | Ecological / Retail Interpretation | | --- | --- | --- | | Complete Coincidence | R = 0.0000 | All points stacked on identical coordinates | | Clustered Aggregation | 0 < R < 1.0000 (e.g., 0.6500) | Contagion, habitat patches, or retail agglomeration | | Complete Spatial Randomness (CSR) | R = 1.0000 (Z = 0) | Independent 2D Poisson point process | | Hexagonal Lattice Ceiling | R = 2.1491 | Maximum territorial or plantation spacing | - **Formula (Clark-Evans Dispersion Ratio R = 2 * r_obs * SQRT(N / A) Formula)**: `=LET(n_pts, B2, area_a, B3, r_obs, B4, IF(OR(n_pts < 2, area_a <= 0, r_obs < 0), "Invalid Spatial Input", LET(lam_d, n_pts / area_a, r_exp, 1 / (2 * SQRT(lam_d)), ROUND(r_obs / r_exp, 4))))` - **Formula (CSR Hypothesis Test Z-Score = (r_obs - r_exp) / (0.26136 / SQRT(N * lambda_d)) Formula)**: `=LET(n_pts, B2, area_a, B3, r_obs, B4, IF(OR(n_pts < 2, area_a <= 0, r_obs < 0), "Invalid Spatial Input", LET(lam_d, n_pts / area_a, r_exp, 1 / (2 * SQRT(lam_d)), se_r, 0.26136 / SQRT(n_pts * lam_d), ROUND((r_obs - r_exp) / se_r, 4))))` ### Clark-Scarf Echelon Stock & Square-Root Risk-Pooling Formula - **URL**: https://sheets.arte-soft.com/en/learn/clark-scarf-multi-echelon-serial-inventory-echelon-stock-formula/ - **Summary**: Calculate Clark-Scarf Multi-Echelon System Inventory Position (DC_OnHand + In_Transit + Downstream_Store_Stock), Decentralized Store Safety Stock N*z*sigma, Echelon-Pooled Safety Stock SQRT(N)*z*sigma, and Centralization Buffer Savings. *Table — Prevent double-buffering by managing upstream DCs on Echelon Stock—not local installation stock!:* | Multi-Echelon Metric (DC=600, Transit=200, Stores=400, SD=50, N=4, z=1.65) | Formula | Verified Output | | --- | --- | --- | | Clark-Scarf DC Echelon Stock | DC_OnHand + In_Transit + Store_OnHand | 1,200.00 units | | Decentralized Store Safety Stock | N * z * Store_Demand_SD | 330.00 units | | Pooled Central Safety Stock | SQRT(N) * z * Store_Demand_SD | 165.00 units (247.50 @ N=9) | | Risk-Pooling Buffer Savings | (N - SQRT(N)) * z * Store_Demand_SD | 165.00 units (0.00 @ N=1) | - **Formula (Multi-Echelon Square-Root Risk-Pooling Buffer Savings Formula)**: `=LET(dc_h, B2, tr_u, B3, st_h, B4, sd_s, B5, n_st, B6, z_sv, B7, IF(OR(dc_h < 0, tr_u < 0, st_h < 0, sd_s <= 0, n_st < 1, z_sv <= 0), "Invalid Multi-Echelon Input", ROUND((n_st - SQRT(n_st)) * z_sv * sd_s, 2)))` - **Formula (9-Store Expansion & Single-Store Degenerate Boundary Checks)**: `=IF(ISTEXT(E2), E2, ROUND(SQRT(B6) * B7 * B5, 2))` ### Clark-West Nested MSPE-Adjusted Test and Out-of-Sample R-Squared - **URL**: https://sheets.arte-soft.com/en/learn/clark-west-nested-model-mspe-adjusted-out-of-sample-forecast-test/ - **Summary**: Evaluate nested predictive regressions against a historical-mean or random-walk benchmark using Campbell-Thompson R^2_OS and Clark & West’s (2007) noise-adjusted f_t statistic. *Table — Understand why raw out-of-sample MSE unfairly penalizes nested factor models!:* | Out-of-Sample Metric (P = 6) | Formula Expression | Sample Output | | --- | --- | --- | | Benchmark MSPE_1 vs Nested MSPE_2 | AVERAGE(e_1t^2) vs AVERAGE(e_2t^2) | 9.3333 vs 4.3333 | | Campbell-Thompson Out-of-Sample R^2_OS | 1 - SUM(e_2t^2) / SUM(e_1t^2) | 0.5357 (+53.57% MSE reduction) | | Mean Clark-West Adjusted f_bar | AVERAGE(e_1t^2 - e_2t^2 + (y_hat1 - y_hat2)^2) | +7.0000 (vs +5.0000 unadjusted) | | Clark-West One-Sided t_CW Statistic | AVERAGE(f_t) / (STDEV(f_t) / SQRT(P)) | +2.5281 (> 1.645 critical!) | - **Formula (Period Clark-West MSPE-Adjusted Differential f_t Formula)**: `=(B2 - C2)^2 - (B2 - D2)^2 + (C2 - D2)^2` - **Formula (Campbell-Thompson Out-of-Sample R^2_OS & Clark-West t_CW Formula)**: `=LET(ss_bm, SUMPRODUCT((B2:B7 - C2:C7)^2), ss_md, SUMPRODUCT((B2:B7 - D2:D7)^2), IF(ss_bm <= 0, "Zero Benchmark Error", ROUND(1 - ss_md / ss_bm, 4)))` ### Clarke-Wright VRP Route Savings s_ij Formula - **URL**: https://sheets.arte-soft.com/en/learn/clarke-wright-vehicle-routing-parallel-savings-sij-consolidation-formula/ - **Summary**: Calculate Geoff Clarke and John Wright’s (1964) pairwise route-consolidation distance savings s_ij = MAX(0, d_0i + d_0j - d_ij) gated by truck payload capacity Q_veh. *Table — Rank customer route merges by triangle-inequality depot savings and truck capacity!:* | Candidate Pair | d_0i + d_0j - d_ij (Raw km) | Combined Load (vs 20 Cap) | Feasible Savings (km) | | --- | --- | --- | --- | | Pair_A_B | 25 + 30 - 15 = 40 | 18 pallets (Feasible) | 40 km (Rank #1 at Q=20) | | Pair_C_D | 40 + 35 - 20 = 55 | 24 pallets (Over Capacity!) | 0 km (55 km at Q=25) | | Pair_E_F | 22 + 28 - 18 = 32 | 16 pallets (Feasible) | 32 km | | Pair_G_H | 15 + 15 - 30 = 0 | 12 pallets (180-deg Opposite) | 0 km | - **Formula (Capacity-Gated Clarke-Wright Savings s_ij Formula)**: `=IF($B$7 <= 0, "Invalid Truck Cap", IF(E2 <= $B$7, MAX(0, B2 + C2 - D2), 0))` - **Formula (Top Priority Merge Pair & Consolidated Fleet Distance Formula)**: `=IF($B$7 <= 0, "Invalid Truck Cap", INDEX(A2:A5, MATCH(MAX(F2:F5), F2:F5, 0)))` ### Classify and Count Formula Error Codes (#N/A vs. #DIV/0! and #VALUE!) for Workbook QA - **URL**: https://sheets.arte-soft.com/en/learn/classify-and-audit-formula-error-codes-isna-iserr-error-type/ - **Summary**: Separate benign missing-lookup #N/A flags from severe arithmetic or data-type faults (#DIV/0!, #VALUE!) using ISNA and ISERROR priority triage. *Table — Why blanket IFERROR hides two very different failure modes:* | Row Calc | Evaluated Result | ISNA? | ISERROR? | QA Triage Class | | --- | --- | --- | --- | --- | | Row 2: 240 / 4 | 60 | FALSE | FALSE | Clean | | Row 3: XLOOKUP("SKU-99", ...) | #N/A | TRUE | TRUE | Missing Key (#N/A) | | Row 4: 180 / 0 | #DIV/0! | FALSE | TRUE | Math/Type Fault | | Row 5: "abc" + 10 | #VALUE! | FALSE | TRUE | Math/Type Fault | | Row 6: 150 / 3 | 50 | FALSE | FALSE | Clean | - **Formula (Row-Level Error Classification Formula (ERROR.TYPE Triage))**: `=IF(ISNA(B3), "Missing Key (#N/A)", IF(ISERROR(B3), "Math/Type Fault", "Clean"))` - **Formula (Total Workbook Error Count & Severe Fault Count)**: `=COUNTIF(C2:C6, "Math/Type Fault")` ### Classify & Flag Scores by Quartile Tier (QUARTILE.INC & IQR) - **URL**: https://sheets.arte-soft.com/en/learn/classify-and-flag-values-by-quartile-tier-quartile-inc/ - **Summary**: Calculate inclusive quartile cutoffs and IQR, then classify scores into threshold bands with an explicit policy for ties. Bands do not necessarily contain equal numbers of observations. - **Formula (Classify the candidate score)**: `=IF(COUNT($B$2:$B$10)<>9,"Complete numeric dataset",IF(NOT(ISNUMBER(D2)),"Enter numeric score",IFS(D2>=QUARTILE.INC($B$2:$B$10,3),"Band 4",D2>=QUARTILE.INC($B$2:$B$10,2),"Band 3",D2>=QUARTILE.INC($B$2:$B$10,1),"Band 2",TRUE,"Band 1")))` - **Formula (Calculate each cutoff)**: `=IF(COUNT($B$2:$B$10)<>9,"Complete numeric dataset",QUARTILE.INC($B$2:$B$10,1))` - **Formula (Measure interquartile spread)**: `=IF(COUNT($B$2:$B$10)<>9,"Complete numeric dataset",QUARTILE.INC($B$2:$B$10,3)-QUARTILE.INC($B$2:$B$10,1))` - **Formula (Return a threshold flag)**: `=IF(COUNT($B$2:$B$10)<>9,"Complete numeric dataset",IF(NOT(ISNUMBER(D2)),"Enter numeric score",D2>=QUARTILE.INC($B$2:$B$10,3)))` ### Claus Sulfur Recovery Unit (SRU) 1/3 Air Split & Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/claus-sulfur-recovery-unit-sru-h2s-combustion-split-and-elemental-yield/ - **Summary**: Calculate Exact One-Third H2S Combustion O2 Demand (kmol/hr), Reaction-Furnace Dry Air Rate (kmol/hr), Recovered Liquid Elemental Sulfur (t/d), and Tail-Gas Incinerator SO2 (t/d). *Table — Burn ONLY ONE-THIRD of acid-gas H2S in the Claus furnace—burning all H2S makes SO2 instead of elemental sulfur!:* | Claus SRU KPI (500 kmol/hr Acid Gas, 80% H2S, 97.0% 3-Bed Recovery) | Formula | Verified Output | | --- | --- | --- | | 1/3-Burn Stoich O2 (kmol/hr) | (Acid_Gas * y_H2S / 3) * 1.5 = 0.5 * H2S | 200.00 kmol/hr | | Furnace Dry Air Rate (kmol/hr) | Stoich_O2_kmol_hr / 0.21 | 952.38 kmol/hr | | Recovered Molten Sulfur (t/d) | (H2S_kmol_hr * Rec * 32.06 * 24) / 1000 | 298.54 t/d (307.16 @ 99.8% SCOT) | | Tail-Gas Incinerator SO2 (t/d) | (H2S_kmol_hr * (1-Rec) * 64.06 * 24)/1000 | 18.45 t/d (1.23 t/d @ 99.8% SCOT!) | - **Formula (Modified Claus 2:1 Stoichiometric Air & Molten Sulfur Tonnage Formula)**: `=LET(ag_f, B2, yh_s, B3, sr_c, B4, IF(OR(ag_f <= 0, yh_s < 0.15, yh_s > 1, sr_c < 0.9, sr_c > 0.9999), "Invalid Claus SRU Input", LET(h2_s, ag_f * yh_s, ROUND((h2_s * sr_c * 32.06 * 24) / 1000, 2))))` - **Formula (SCOT Tail-Gas Treating Unit (TGTU) 99.8% Upgrade Check (Set Recovery = 0.998))**: `=IF(ISTEXT(E4), E4, ROUND((B2 * B3 * (1 - B4) * 64.06 * 24) / 1000, 2))` ### Clausius-Clapeyron Vapor Pressure & Raoult's Law binary mixture formulas - **URL**: https://sheets.arte-soft.com/en/learn/clausius-clapeyron-vapor-pressure-and-raoults-law/ - **Summary**: Predict pure-component vapor pressure across temperature via P2 = P1 * EXP((-dHvap/R) * (1/T2 - 1/T1)) and ideal mixture bubble pressure via Raoult's Law. *Table — Approximate vapor pressure and a separate ideal-mixture example:* | Thermodynamic Input | Cell | Distillation Example | Calculated Pressure / Composition | | --- | --- | --- | --- | | Water Ref (T1, P1, dH_vap) | B2=373.15 K, B3=101.325 kPa | B4 = 40,650 J/mol | 1 atm normal boiling point | | Target Temp T2 | B5 = 353.15 K (80 C) | Clausius-Clapeyron EXP | P2 = 48.25 kPa | | Raoult Binary Mix (x_A = 0.40) | B6=0.40, PA*=100, PB*=40 kPa | 0.40*100 + 0.60*40 | P_total = 64.00 kPa | | Vapor Enrichment y_A | (0.40 * 100) / 64.00 | 40 / 64 | y_A = 0.6250 (62.5% A in vapor!) | - **Formula (Clausius-Clapeyron vapor pressure P2 at temperature T2 (Kelvin))**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<=0),"Invalid inputs",ROUND(B3 * EXP((-B4 / 8.3144626) * (1 / B5 - 1 / B2)), 2))` - **Formula (Raoult's Law total mixture pressure & Dalton vapor mole fraction y_A)**: `=IF(OR(COUNT(B6:B8)<>3,B6<0,B6>1,MIN(B7:B8)<0),"Invalid inputs",ROUND(B6 * B7 + (1 - B6) * B8, 2))` - **Formula (Equilibrium vapor mole fraction of A)**: `=IF(OR(COUNT(B6:B8)<>3,B6<0,B6>1,MIN(B7:B8)<0),"Invalid inputs",IF(B6*B7+(1-B6)*B8=0,"No vapor pressure",ROUND((B6 * B7) / (B6 * B7 + (1 - B6) * B8), 4)))` ### Clay Primary Consolidation Settlement (Sc) & Terzaghi Time Factor (Tv) - **URL**: https://sheets.arte-soft.com/en/learn/clay-primary-consolidation-settlement-and-terzaghi-time-factor/ - **Summary**: Calculate normally consolidated clay ultimate settlement Sc = (Cc * H0 / (1 + e0)) * LOG10((sigma0 + dsigma) / sigma0) in mm and Terzaghi dimensionless time factor Tv = (cv * t) / Hdr^2. *Table — Predict both how far a saturated clay layer settles—and how fast pore water drains!:* | Geotechnical Drainage Scenario (H0 = 6 m, Cc = 0.35, e0 = 0.95) | Ultimate Settlement Sc (mm) | Drainage Path Hdr (m) | Terzaghi Time Factor Tv (at 1.5 yr) | | --- | --- | --- | --- | | Two-Way Top & Bottom Drainage | 428.6 mm | 3.0 m (= H0 / 2) | 0.4167 (~71% U) | | Halved Drainage Path (Sub-Layer / Drains) | 428.6 mm | 1.5 m | 1.6667 (> 98% U) | | Zero or Negative Initial Effective Stress | Logarithm Guard | Invalid Stress State | "Invalid Soil Parameters" | - **Formula (Normally Consolidated Clay Settlement Sc (mm) = ((Cc * H0) / (1 + e0)) * LOG10((sig0 + dsig) / sig0) * 1000)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0), "Invalid Soil Parameters", ROUND(((B2 * B3) / (1 + B4)) * LOG10((B5 + B6) / B5) * 1000, 1))` - **Formula (Terzaghi Dimensionless Consolidation Time Factor Tv = (cv * t) / Hdr^2)**: `=IF(OR(B7 <= 0, B8 < 0, B9 <= 0), "Invalid Soil Parameters", ROUND((B7 * B8) / (B9 ^ 2), 4))` ### Clean and format 10-digit phone numbers with formulas - **URL**: https://sheets.arte-soft.com/en/learn/clean-and-reformat-phone-numbers/ - **Summary**: Strip spaces, parentheses, hyphens, and dots from imported phone strings, validate 10-digit length, and format uniformly. *Table — Strip formatting punctuation down to raw digits first:* | RawPhone (A) | Cleaned Digits | Digit Count | Standardized Output | | --- | --- | --- | --- | | (415) 555-0198 | 4155550198 | 10 | (415) 555-0198 | | 206.555.0144 | 2065550144 | 10 | (206) 555-0144 | | 555-0199 | 5550199 | 7 | Check digits | - **Formula (10-digit sanitizer and formatter)**: `=LET(d, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, " ", ""), "(", ""), ")", ""), "-", ""), ".", ""), IF(OR(LEN(d)<>10, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(d,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9","")<>""), "Check digits", "(" & LEFT(d, 3) & ") " & MID(d, 4, 3) & "-" & RIGHT(d, 4)))` - **Formula (Invalid 7-digit number check)**: `=LET(d, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A4, " ", ""), "(", ""), ")", ""), "-", ""), ".", ""), IF(OR(LEN(d)<>10, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(d,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9","")<>""), "Check digits", "(" & LEFT(d, 3) & ") " & MID(d, 4, 3) & "-" & RIGHT(d, 4)))` ### CLEAN function: strip line breaks and control characters without fusing words - **URL**: https://sheets.arte-soft.com/en/learn/clean-function-remove-line-breaks/ - **Summary**: Remove non-printable ASCII 0-31 characters such as CHAR(10) line feeds with CLEAN, and avoid accidentally joining words across wrapped lines. *Table — What CLEAN removes—and the word-joining trap:* | Expression | Output | Character Count | | --- | --- | --- | | ="Suite 400" & CHAR(10) & "North Wing" | Two-line string with hidden LF | 20 | | =CLEAN(A2) | Suite 400North Wing | 19 (words fused) | | =TRIM(CLEAN(SUBSTITUTE(A2, CHAR(10), " "))) | Suite 400 North Wing | 20 (clean single space) | - **Formula (Safe single-line cleanup pattern)**: `=TRIM(CLEAN(SUBSTITUTE(A2, CHAR(10), " ")))` - **Formula (Why non-breaking spaces (CHAR(160)) survive CLEAN)**: `=LEN(CLEAN(A3))` ### Clean Spark Spread, Clean Dark Spread & Fuel-Switch Formula - **URL**: https://sheets.arte-soft.com/en/learn/clean-spark-spread-and-clean-dark-spread-power-merit-order-formula/ - **Summary**: Calculate Wholesale Power Gross Spark Spread, Carbon-Adjusted Clean Spark Spread (Gas CCGT) vs Clean Dark Spread (Coal), and the Breakeven Carbon Allowance Fuel-Switching Price. *Table — Model coal-to-gas merit-order dispatch switching using thermal efficiency and carbon intensity!:* | Power Merit-Order Metric (Power=110, Gas=35@50%, Coal=16@40%, CO2=80 EUR/t) | Formula | Verified Output | | --- | --- | --- | | Gross Spark Spread (Uncarbonized) | P_power - (P_gas / eta_gas) | 40.00 EUR/MWh | | Clean Spark Spread (CCGT Gas) | Gross_Spark - P_CO2 * (0.20 / eta_gas) | 8.00 EUR/MWh (32.00 @ CO2=20) | | Clean Dark Spread (Hard Coal) | P_power - P_coal/eta_c - P_CO2*(0.34/eta_c) | 2.00 EUR/MWh (53.00 @ CO2=20) | | Fuel-Switch Carbon Price (EUR/t) | (Gas_Cost - Coal_Cost) / (e_coal - e_gas) | 66.67 EUR/tCO2 | - **Formula (Clean Spark Spread, Clean Dark Spread & Carbon Fuel-Switch Formula)**: `=LET(p_pw, B2, p_gs, B3, et_g, B4, p_cl, B5, et_c, B6, p_co, B7, IF(OR(p_pw <= 0, p_gs <= 0, et_g < 0.2, et_g > 0.75, p_cl <= 0, et_c < 0.2, et_c > 0.75, p_co < 0, (0.34 / et_c) <= (0.2 / et_g)), "Invalid Dispatch Input", ROUND((p_gs / et_g - p_cl / et_c) / ((0.34 / et_c) - (0.2 / et_g)), 2)))` - **Formula (Low-Carbon-Price Coal Reversal Check (Set Carbon Price = 20 EUR/tCO2))**: `=IF(ISTEXT(E5), E5, ROUND((B2 - B5 / B6) - B7 * (0.34 / B6), 2))` ### CLIF-C ACLF Score (Acute-on-Chronic Liver Failure 28-Day Mortality) - **URL**: https://sheets.arte-soft.com/en/learn/clif-c-aclf-acute-on-chronic-liver-failure-mortality-score/ - **Summary**: Calculate Jalan et al.’s (2014) EASL-CLIF Consortium ACLF prognostic score = 10 * (0.33 * CLIF-OF + 0.04 * Age + 0.63 * LN(WBC_10^9_L) - 2) from CLIF-Organ Failure subscore (6–18), age, and leukocyte count. *Table — Outperforming MELD and MELD-Na in Acute-on-Chronic Liver Failure by combining 6-organ failure with systemic inflammation!:* | Clinical Trajectory (Age = 56 y) | CLIF-OF (6–18) | WBC (× 10^9/L) | CLIF-C ACLF Score & Prognosis | | --- | --- | --- | --- | | Stabilized Early ACLF-1 | 8 | 8.2 | 42.1 (Lower Risk < 45 — Medical Stabilization) | | Active Multi-Organ ACLF-2 | 11 | 14.5 | 55.5 (High 28-Day Mortality — Urgent Transplant Eval) | | Refractory ACLF-3 (>= 65 Threshold) | 16 | 22.0 | 74.7 (Critical >= 65 — Assess Day 3–7 ICU Futility) | - **Formula (CLIF-C ACLF Prognostic Score (EASL-CLIF Equation))**: `=IF(OR(B2 < 6, B2 > 18, B3 <= 0, B4 <= 0), "Invalid CLIF-C ACLF Inputs", ROUND(10 * (0.33 * B2 + 0.04 * B3 + 0.63 * LN(B4) - 2), 1))` - **Formula (CLIF-C ACLF Risk & Transplant-Urgency Stratification)**: `=IF(OR(B2 < 6, B2 > 18, B3 <= 0, B4 <= 0), "Invalid CLIF-C ACLF Inputs", IF(10 * (0.33 * B2 + 0.04 * B3 + 0.63 * LN(B4) - 2) >= 65, "Critical Mortality Risk (CLIF-C ACLF >= 65)", IF(10 * (0.33 * B2 + 0.04 * B3 + 0.63 * LN(B4) - 2) >= 45, "High 28-Day Mortality Risk (45–64.9 — Urgent Transplant Eval)", "Lower ACLF Mortality Tier (< 45)")))` ### CLIF-C AD Score: Acute Decompensation of Cirrhosis (Non-ACLF 90-Day Risk) - **URL**: https://sheets.arte-soft.com/en/learn/clif-c-ad-acute-decompensation-cirrhosis-non-aclf-mortality/ - **Summary**: Calculate Rajiv Jalan et al.’s (2015) EASL-CLIF Acute Decompensation score = 10 * (0.03*Age + 0.66*LN(Cr) + 1.71*LN(INR) + 0.88*LN(WBC) - 0.05*Na + 8) for hospitalized cirrhotic patients without ACLF. *Table — Stratifying hospitalized cirrhosis WITHOUT organ failure—catching the >= 60 high-mortality group early!:* | Hospitalized Non-ACLF Cirrhosis Profile (Age = 62) | CLIF-C AD Score | EASL 90-Day Prognostic Tier | | --- | --- | --- | | Cr 0.9, INR 1.1, WBC 5.5, Na 139 | 45.0 (<= 45) | Low 90-Day Mortality Risk (<= 45 — < 2% Mortality) | | Cr 1.4, INR 1.6, WBC 9.8, Na 132 | 62.9 (>= 60) | High 90-Day Mortality Risk (>= 60 — ~30% Mortality) | | Zero/Negative Lab Input | "Invalid CLIF-C AD Inputs" | Logarithm Domain Guard | - **Formula (CLIF-C AD Continuous Prognostic Score (EASL-CLIF Equation))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid CLIF-C AD Inputs", ROUND(10 * (0.03 * B2 + 0.66 * LN(B3) + 1.71 * LN(B4) + 0.88 * LN(B5) - 0.05 * B6 + 8), 1))` - **Formula (EASL-CLIF 90-Day Mortality Risk Tier (<= 45, 45.1–59.9, >= 60))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid CLIF-C AD Inputs", IF(ROUND(10 * (0.03 * B2 + 0.66 * LN(B3) + 1.71 * LN(B4) + 0.88 * LN(B5) - 0.05 * B6 + 8), 1) >= 60, "High 90-Day Mortality Risk (>= 60 — ~30% Mortality)", IF(ROUND(10 * (0.03 * B2 + 0.66 * LN(B3) + 1.71 * LN(B4) + 0.88 * LN(B5) - 0.05 * B6 + 8), 1) <= 45, "Low 90-Day Mortality Risk (<= 45 — < 2% Mortality)", "Intermediate 90-Day Risk (45.1–59.9)")))` ### CLO Overcollateralization (OC), IC Test & Cure Paydown Formula - **URL**: https://sheets.arte-soft.com/en/learn/clo-securitization-overcollateralization-oc-and-interest-coverage-ic-test/ - **Summary**: Calculate Collateralized Loan Obligation (CLO) Tranche Overcollateralization (OC) Ratio, Par Cushion Over Trigger ($M), Interest Coverage (IC) Ratio, and Senior Note Paydown Cure Required via Equity Interest Diversion. *Table — Avoid the OC-cure denominator trap when CLO equity cash diversions trigger!:* | CLO Indenture Test Metric ($420M Par, $350M Notes, 112% Trigger, $31.5M/$21M Int) | Formula | Verified Output | | --- | --- | --- | | Overcollateralization Ratio (OC) | Adjusted_Collateral_Par / Cumulative_Note_Par | 1.2000 (1.0560 @ $369.6M Par) | | OC Par Cushion / (Deficit) ($M) | Collateral_Par - Note_Par * OC_Trigger | +$28.00M (-$22.40M @ $369.6M) | | Interest Coverage Ratio (IC) | Net_Interest_Collections / Note_Interest_Due | 1.5000 | | Interest-Diversion Senior Cure ($M) | IF(OC >= Trigger, 0, Note_Par - Par / Trigger) | $0.00M ($20.00M Cure @ $369.6M) | - **Formula (CLO Interest-Diversion Senior Note Paydown Cure Formula)**: `=LET(cl_p, B2, nt_p, B3, tr_g, B4, ic_c, B5, in_d, B6, IF(OR(cl_p <= 0, nt_p <= 0, tr_g <= 1, ic_c < 0, in_d <= 0), "Invalid CLO Waterfall Input", IF(cl_p / nt_p >= tr_g, 0, ROUND(nt_p - (cl_p / tr_g), 2))))` - **Formula (CCC Haircut & Default Breach Check (Set Adjusted Collateral Par = $369.60M))**: `=IF(ISTEXT(E5), E5, ROUND(B2 - B3 * B4, 2))` ### Closed-Die Forging Flash-Land Factor & Tonnage Formula - **URL**: https://sheets.arte-soft.com/en/learn/closed-die-impression-forging-flash-land-multiplying-factor-and-hammer-tonnage/ - **Summary**: Calculate Flash-Land Width-to-Thickness Aspect Ratio w/t, Cavity Multiplying Factor Kf = 3.0 + 1.15*(w/t), Mean Cavity Die Pressure (MPa), and Required Mechanical Press Capacity (metric tons). *Table — In closed-die impression forging, squeezing thin cooling flash across the narrow flash land—not filling the main cavity—dictates peak press tonnage!:* | Closed-Die Impression KPI (Ap=140 + Af=45 cm², Yf=180 MPa, Flash w=12, t=2.4 mm) | Formula | Verified Output | | --- | --- | --- | | Flash-Land Aspect Ratio (w / t) | Flash_Land_Width_w / Flash_Thick_t | 5.00 (8.00 @ over-coined 1.5 mm flash!) | | Cavity Multiplying Factor Kf | 3.0 + 1.15 * (w_mm / t_mm) | 8.75 (12.20 @ 1.5 mm thin flash!) | | Mean Die Cavity Pressure (MPa) | Kf * Finish_Flow_Stress_Yf_MPa | 1,575.0 MPa (2,196.0 MPa risks die crack!) | | Required Press Capacity (t) | (P_avg_MPa * Total_Area_mm2) / 9806.65 | 2,971.2 t (4,142.7 t stalls 3,500t press!) | - **Formula (Flash-Land Aspect Choke Factor Kf & Impression-Forging Press Tonnage Formula)**: `=LET(ap_c, B2, af_c, B3, yf_m, B4, fw_m, B5, ft_m, B6, IF(OR(ap_c <= 0, af_c < 0, yf_m <= 0, fw_m <= 0, ft_m <= 0, (fw_m / ft_m) < 1, (fw_m / ft_m) > 12), "Invalid Die Input", LET(wt_r, fw_m / ft_m, kf_m, 3 + 1.15 * wt_r, pm_a, kf_m * yf_m, ROUND((pm_a * ((ap_c + af_c) * 100)) / 9806.65, 1))))` - **Formula (Thin 1.50 mm Over-Closed Flash-Gap Press-Stall Check (Set Flash Thickness t B6 = 1.50 mm))**: `=IF(ISTEXT(E5), E5, ROUND((3 + 1.15 * (B5 / B6)) * B4, 1))` ### Closed-End Fund NAV Discount & Market Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/closed-end-fund-cef-nav-discount-leverage-ratio-and-market-distribution-yield/ - **Summary**: Calculate Closed-End Fund (CEF) Share Price Discount/Premium to NAV (Price - NAV)/NAV, Required Portfolio NAV Distribution Rate vs Amplified Market Distribution Yield, and 1940-Act Structural Leverage Ratio. *Table — Distinguish a CEF’s cash yield on market price from the NAV hurdle its portfolio must earn!:* | Closed-End Fund Metric (NAV=$20, Price=$17, Dist=$1.36/yr, Debt=$100M, Equity=$200M) | Formula | Verified Output | | --- | --- | --- | | Price-to-NAV Discount / Premium Z | (Market_Price - NAV) / NAV | -0.1500 (-15.00%; +0.1000 @ $22) | | Portfolio NAV Hurdle Yield | Annual_Distribution / NAV | 0.0680 (6.80% Manager Hurdle) | | Buyer Market Distribution Yield | Annual_Distribution / Market_Price | 0.0800 (8.00%; 0.0618 @ $22 Prem) | | 1940-Act Structural Leverage | Debt / (Debt + Common_Net_Assets) | 0.3333 (33.33% = 300% Coverage) | - **Formula (Closed-End Fund Market Yield & 1940-Act Leverage Formula)**: `=LET(nv_s, B2, mk_p, B3, ds_a, B4, db_m, B5, eq_m, B6, IF(OR(nv_s <= 0, mk_p <= 0, ds_a < 0, db_m < 0, eq_m <= 0), "Invalid CEF Snapshot", ROUND(ds_a / mk_p, 4)))` - **Formula (10% Market Premium Compression Check (Set Market_Price = $22.00))**: `=IF(ISTEXT(E4), E4, ROUND(B5 / (B5 + B6), 4))` ### Closed Queueing Network Throughput: Zahorjan-Lazowska Balanced Job Bounds (BJB) - **URL**: https://sheets.arte-soft.com/en/learn/closed-queueing-network-balanced-job-bounds-throughput/ - **Summary**: Bracket exact Mean-Value-Analysis / Buzen closed-network throughput X(N) for fixed-population pallet loops and database thread pools between tight lower bound N / (D_tot + (N - 1) * D_max) and upper bound MIN(1 / D_max, N / (D_tot + (N - 1) * D_avg)). *Table — Bound fixed-population AGV loops, CONWIP cells, and database connection pools in one formula!:* | Circulating Population N (D_tot = 0.50 s, D_max = 0.20 s, K = 4) | BJB Lower Bound X_low | BJB Upper Bound X_up | Bottleneck Ceiling 1 / D_max | | --- | --- | --- | --- | | Single Circulating Job (N = 1) | 2.000 jobs/s | 2.000 jobs/s (Exact!) | 5.000 jobs/s | | Moderate Thread/Pallet Pool (N = 10) | 4.348 jobs/s | 5.000 jobs/s | 5.000 jobs/s | | Heavy Saturation (N = 50) | 4.854 jobs/s | 5.000 jobs/s | Approaches 5.000 asymptote! | - **Formula (Balanced Job Bound Lower Throughput Guarantee X_low(N))**: `=IF(OR(B2 < 1, B3 <= 0, B4 <= 0, B4 > B3, B5 < 1), "Invalid Closed Network Inputs", ROUND(B2 / (B3 + ((B2 - 1) * B4)), 3))` - **Formula (Balanced Job Bound Tight Upper Throughput Limit X_up(N))**: `=IF(OR(B2 < 1, B3 <= 0, B4 <= 0, B4 > B3, B5 < 1), "Invalid Closed Network Inputs", ROUND(MIN(1 / B4, B2 / (B3 + ((B2 - 1) * (B3 / B5)))), 3))` ### CMBS Yield Maintenance Prepayment Penalty Formula - **URL**: https://sheets.arte-soft.com/en/learn/cmbs-yield-maintenance-and-treasury-defeasance-prepayment-penalty/ - **Summary**: Calculate commercial mortgage Yield Maintenance prepayment penalties MAX(Floor * Balance, Balance * (r_note - y_T) * ((1 - (1 + y_T)^(-T)) / y_T)) as Treasury yields move. *Table — Why refinancing a fixed-rate commercial mortgage when rates drop triggers a huge Yield Maintenance fee!:* | Treasury Environment (5M Loan @ 6.50%, 5 Yr Left) | Present Value of Spread Strip | Binding Yield Maintenance Penalty | | --- | --- | --- | | Rate-Cut Rally (y_T = 4.00%) | 556,477.79 (11.13% of Par) | 556,477.79 | | Matched Rate (y_T = 6.50%) | 0.00 | 50,000.00 (1.00% Minimum Floor) | | Higher-Rate Selloff (y_T = 7.00%) | -102,504.94 (Floored) | 50,000.00 (1.00% Minimum Floor) | - **Formula (Floored CMBS Yield Maintenance Prepayment Penalty Formula)**: `=LET(b_ln, B2, r_nt, B3, y_tr, B4, t_rm, B5, f_mn, B6, IF(OR(b_ln <= 0, r_nt <= 0, y_tr <= 0, t_rm <= 0, f_mn < 0), "Invalid Prepayment Input", LET(pv_sp, b_ln * (r_nt - y_tr) * ((1 - ((1 + y_tr)^(-t_rm))) / y_tr), ROUND(MAX(f_mn * b_ln, pv_sp), 2))))` - **Formula (Effective Prepayment Penalty as % of Loan Balance Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E3 / B2, 4))` ### Metrology Cosine Error & Abbe Offset Angular Error Formula - **URL**: https://sheets.arte-soft.com/en/learn/cmm-and-dial-indicator-cosine-error-and-abbe-offset-angular-measurement-error/ - **Summary**: Calculate Indicator Tilt Cosine Error E_cos (um), Ernst Abbe’s First-Principle Offset Sine/Tangent Error E_Abbe (um), Combined Systematic Gage Error (um), and Error-to-Length PPM. *Table — Why a vernier caliper violates Abbe’s Principle by 60 mm—turning tiny jaw play into 70 microns of first-order error, while inline micrometers stay near zero!:* | Dimensional Metrology KPI (L=100 mm, Tilt=5.0°, Abbe Offset=60 mm, Play=4 arcmin) | Formula | Verified Output | | --- | --- | --- | | Tilt Cosine Error E_cos (um) | L_mm * ((1 / COS(Tilt_rad)) - 1) * 1000 | 381.98 um (15.23 um @ 1.0° tilt) | | Abbe Offset Error E_Abbe (um) | d_Abbe_mm * TAN(Play_rad) * 1000 | 69.81 um (0.00 um @ inline micrometer!) | | Combined Systematic Error (um) | E_cos_um + E_Abbe_um | 451.80 um (15.23 um @ micrometer) | | Relative Gage Error (ppm) | (Combined_Error_um / (L_mm * 1000)) * 1e6 | 4,518.0 ppm (152.3 ppm @ micrometer) | - **Formula (Exact Secant Cosine Error & Abbe Offset Angular Leverage Formula)**: `=LET(ln_m, B2, tl_d, B3, ab_d, B4, pl_m, B5, IF(OR(ln_m <= 0, tl_d < 0, tl_d > 30, ab_d < 0, pl_m < 0, pl_m > 60), "Invalid Metrology Input", LET(ec_u, ln_m * ((1 / COS(tl_d * (PI() / 180))) - 1) * 1000, ea_u, ab_d * TAN((pl_m / 60) * (PI() / 180)) * 1000, ROUND(((ec_u + ea_u) / (ln_m * 1000)) * 1000000, 1))))` - **Formula (Abbe-Compliant Inline Outside Micrometer Comparison Check (Set d_Abbe = 0 mm & Tilt = 1.0°))**: `=IF(ISTEXT(E5), E5, LET(ec_u, B2 * ((1 / COS(B3 * (PI() / 180))) - 1) * 1000, ea_u, B4 * TAN((B5 / 60) * (PI() / 180)) * 1000, ROUND(ec_u + ea_u, 2)))` ### CNC Ball-Nose Scallop Cusp Height & Effective Vc Formula - **URL**: https://sheets.arte-soft.com/en/learn/cnc-ball-nose-end-mill-stepover-scallop-cusp-height-and-effective-cutting-diameter/ - **Summary**: Calculate 3D Mold Finishing Scallop Cusp Height h (um), Effective Engaged Cutting Diameter Deff (mm), True Cutting Surface Speed Vc,eff (m/min), and % of Nominal Diameter Speed. *Table — Calculate spindle RPM from nominal 10 mm ball-nose diameter on a 0.08 mm finish pass and true cutting speed collapses 82%—plowing and work-hardening H13 tool steel!:* | CNC Ball-Nose Finishing KPI (D=10.0 mm Ball, N=18,000 RPM) | Formula | Verified Output | | --- | --- | --- | | Scallop Cusp Height h (um) | ((D/2) - SQRT((D/2)^2 - (ae_mm/2)^2)) * 1000 | 5.07 um fine (64.41 um rough @ ae=1.6 mm!) | | Effective Cutting Diameter Deff (mm) | 2 * SQRT(Axial_ap_mm * (Ball_D_mm - ap_mm)) | 3.676 mm (1.782 mm @ ap=0.08 mm skim!) | | True Surface Speed Vc,eff (m/min) | (PI() * Effective_Deff_mm * RPM) / 1000 | 207.9 m/min (100.8 m/min carbide rubbing!) | | % of Nominal Diameter Speed (%) | (Effective_Deff_mm / Nominal_D_mm) * 100 | 36.8% (17.8% at 0.08 mm skim!) | - **Formula (Exact Circular-Arc Scallop Cusp Height & Chordal Effective Diameter Formula)**: `=LET(db_m, B2, ae_m, B3, ap_m, B4, nr_p, B5, de_f, 2 * SQRT(ap_m * (db_m - ap_m)), IF(OR(db_m < 0.5, db_m > 50, ae_m <= 0, ae_m >= db_m, ap_m <= 0, ap_m > 0.5 * db_m, nr_p < 500, nr_p > 80000), "Invalid Ball-Nose Input", ROUND((de_f / db_m) * 100, 1)))` - **Formula (Coarse Semi-Finish Stepover (`a_e = 1.6` mm) + Ultra-Shallow Skim (`a_p = 0.08` mm) Rubbing Check)**: `=IF(ISTEXT(E5), E5, ROUND(((B2 / 2) - SQRT(((B2 / 2) ^ 2) - ((B3 / 2) ^ 2))) * 1000, 2))` ### CNC Ball-Screw Lead, RPM & Servo Motor Torque Formula - **URL**: https://sheets.arte-soft.com/en/learn/cnc-ball-screw-linear-axis-lead-servo-drive-torque-and-critical-speed-formula/ - **Summary**: Calculate Peak Rapid-Traverse Ball-Screw Speed (RPM), External Thrust Load Torque T_load (N·m), Double-Nut Preload Drag Torque T_pre (N·m), and Continuous Servo Motor Torque (N·m). *Table — High-lead 20 mm ball screws halve rapid RPM to avoid whirling—yet DOUBLE continuous servo motor torque!:* | CNC Ball-Screw Axis KPI (V=30 m/min, Lead=10 mm, Fax=4,500 N, Eff=90%, Fpre=900 N) | Formula | Verified Output | | --- | --- | --- | | Peak Rapid Screw Speed (RPM) | (Rapid_m_min * 1000) / Screw_Lead_mm | 3,000.0 RPM (1,500.0 @ 20 mm lead) | | External Thrust Torque Tload (N·m) | (Fax * (Lead/1000)) / (2*PI()*Eff*Gear) | 7.958 N·m (15.915 N·m @ 20 mm lead) | | Nut Preload Drag Torque Tpre (N·m) | (0.05 * Fpre * (Lead/1000)) / (2*PI()*i) | 0.072 N·m (0.143 N·m @ 20 mm lead) | | Total Motor Shaft Torque (N·m) | T_load_Nm + T_preload_Nm | 8.029 N·m (16.059 N·m @ 20 mm lead!) | - **Formula (ISO 3408 Ball-Screw Thrust + Preload Servo Motor Torque Formula)**: `=LET(vr_m, B2, ld_s, B3, fx_n, B4, ef_m, B5, gr_i, B6, fp_n, B7, IF(OR(vr_m <= 0, ld_s <= 0, fx_n < 0, ef_m < 0.75, ef_m > 0.98, gr_i <= 0, fp_n < 0), "Invalid Ball-Screw Input", LET(tl_d, (fx_n * (ld_s / 1000)) / (2 * PI() * ef_m * gr_i), tp_r, (0.05 * fp_n * (ld_s / 1000)) / (2 * PI() * gr_i), ROUND(tl_d + tp_r, 3))))` - **Formula (High-Lead 20 mm Anti-Whirling Screw Trade-Off Check (Set Lead p = 20.0 mm))**: `=IF(ISTEXT(E5), E5, ROUND((B4 * (B3 / 1000)) / (2 * PI() * B5 * B6), 3))` ### CNC Milling Radial Chip-Thinning Factor & MRR Formula - **URL**: https://sheets.arte-soft.com/en/learn/cnc-milling-feed-per-tooth-chip-load-radial-chip-thinning-and-mrr-formula/ - **Summary**: Calculate Spindle Speed N (RPM), Exact Radial Chip-Thinning Compensation Factor RCTF, Compensated Table Feed Rate V_f (mm/min), and Volumetric Material Removal Rate MRR (cm³/min). *Table — Why 10% radial stepover without Radial Chip-Thinning compensation rubs carbide flutes to death at 60% of target chip thickness!:* | CNC HEM Milling KPI (D=16 mm, z=4, Vc=180 m/min, hex=0.08, ae=1.6, ap=20) | Formula | Verified Output | | --- | --- | --- | | Spindle Speed N (RPM) | (1000 * Vc_m_min) / (PI() * D_mm) | 3,581.0 RPM | | Radial Chip-Thinning Factor RCTF | IF(ae>=0.5*D, 1, D/(2*SQRT(ae*(D-ae)))) | 1.667x (1.000x @ ae = 8.0 mm 50% D) | | Compensated Table Feed Vf (mm/min) | RPM * Flutes_z * Target_hex * RCTF | 1,909.9 mm/min (1,145.9 @ ae=8.0) | | Material Removal Rate MRR (cm³/min) | (ae_mm * ap_mm * Vf_mm_min) / 1000 | 61.12 cm³/min (183.35 @ ae=8.0) | - **Formula (Exact Chordal Radial Chip-Thinning Feed & Volumetric MRR Formula)**: `=LET(dc_m, B2, fl_z, B3, vc_m, B4, hx_m, B5, ae_m, B6, ap_m, B7, IF(OR(dc_m <= 0, fl_z < 1, vc_m <= 0, hx_m <= 0, ae_m <= 0, ae_m > dc_m, ap_m <= 0), "Invalid Milling Input", LET(rp_m, (1000 * vc_m) / (PI() * dc_m), rc_f, IF(ae_m >= 0.5 * dc_m, 1, dc_m / (2 * SQRT(ae_m * (dc_m - ae_m)))), vf_m, rp_m * fl_z * hx_m * rc_f, ROUND((ae_m * ap_m * vf_m) / 1000, 2))))` - **Formula (50% Cutter-Radius Centerline Engagement Unity Check (Set Radial Stepover a_e = 8.0 mm))**: `=IF(ISTEXT(E5), E5, IF(B6 >= 0.5 * B2, 1, ROUND(B2 / (2 * SQRT(B6 * (B2 - B6))), 3)))` ### Coase Durable-Good Monopoly: Leasing vs Spot Sale Formula - **URL**: https://sheets.arte-soft.com/en/learn/coase-durable-good-monopolist-two-period-commitment-vs-spot/ - **Summary**: Quantify Ronald Coase’s (1972) durable-good time-inconsistency profit loss by comparing 2-period commitment leasing (1 + delta)*(a^2 / 4) against spot selling a^2 * (2 + delta)^2 / (4 * (4 + delta)). *Table — Why Xerox and IBM leased machines: a durable seller’s worst competitor is its own future self!:* | Durable-Good Regime (a = 100, delta = 1.00) | Prices (Period 1 / Period 2) | Present-Value Profit | | --- | --- | --- | | Leasing / Price Commitment | Rental 50 + 50 (PV = 100.00) | 5,000.00 | | No-Commitment Spot Sales | p_1* = 90.00, then p_2* = 30.00 | 4,500.00 (-10.00% Loss!) | | Myopic / Impatient Limit (delta = 0) | p_1* = 50.00 (Single Period) | 2,500.00 (Identical) | - **Formula (Subgame-Perfect Spot-Selling Durable Monopolist PV Profit Formula)**: `=LET(a_mx, B2, del_d, B3, IF(OR(a_mx <= 0, del_d < 0, del_d > 1), "Invalid Coase Input", ROUND(((a_mx^2) * ((2 + del_d)^2)) / (4 * (4 + del_d)), 4)))` - **Formula (Leasing / Best-Price Commitment Profit Advantage (Pi_lease* - Pi_spot*) Formula)**: `=LET(a_mx, B2, del_d, B3, IF(OR(a_mx <= 0, del_d < 0, del_d > 1), "Invalid Coase Input", LET(pi_ls, (1 + del_d) * (a_mx^2) / 4, pi_sp, ((a_mx^2) * ((2 + del_d)^2)) / (4 * (4 + del_d)), ROUND(pi_ls - pi_sp, 4))))` ### Cobb-Douglas production function (Y = A * K^alpha * L^beta), MPK & MPL - **URL**: https://sheets.arte-soft.com/en/learn/cobb-douglas-production-function-marginal-product-formula/ - **Summary**: Calculate economic output Y, Marginal Product of Capital (MPK), Marginal Product of Labor (MPL), and Returns to Scale from TFP, Capital, and Labor. *Table — Model output elasticities, marginal productivity, and returns to scale:* | Cobb-Douglas Metric (A=10, K=81, L=16, alpha=0.25, beta=0.75) | Formula | Result (rounded where shown) | | --- | --- | --- | | Total Output (Y) | 10 * (81 ^ 0.25) * (16 ^ 0.75) = 10 * 3 * 8 | 240.0 | | Marginal Product of Capital (MPK) | alpha * (Y / K) = 0.25 * (240 / 81) | 0.7407 units / K | | Marginal Product of Labor (MPL) | beta * (Y / L) = 0.75 * (240 / 16) | 11.25 units / L | | Returns to Scale Check (alpha + beta) | 0.25 + 0.75 = 1.00 | "Constant Returns" | - **Formula (Cobb-Douglas total output Y)**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:C2)<=0,MIN(D2:E2)<0),"Invalid inputs",ROUND(A2 * (B2 ^ D2) * (C2 ^ E2), 2))` - **Formula (Marginal product of labor (MPL))**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:C2)<=0,MIN(D2:E2)<0),"Invalid inputs",LET(y, A2 * (B2 ^ D2) * (C2 ^ E2), ROUND(E2 * (y / C2), 4)))` ### Cobham Non-Preemptive Priority Queue Waiting Formula - **URL**: https://sheets.arte-soft.com/en/learn/cobham-non-preemptive-priority-queue-waiting-time-formula/ - **Summary**: Calculate urgent W_q1 = R_0/(1 - rho_1) and routine W_q2 = R_0/((1 - rho_1)*(1 - rho_1 - rho_2)) M/G/1 waits via Alan Cobham’s (1954) priority formula. *Table — Slash urgent triage wait times without adding servers — and verify Kleinrock conservation!:* | Priority Queue Metric (rho_1=0.20, rho_2=0.60, R_0=0.22 hr) | Formula | Verified Output | | --- | --- | --- | | Unprioritized FIFO Wait (W_FIFO) | R_0 / (1 - rho_1 - rho_2) | 1.1000 hr (66.0 min) | | Urgent Priority Class 1 Wait (W_q1) | R_0 / (1 - rho_1) | 0.2750 hr (16.5 min, -75%!) | | Routine Class 2 Wait (W_q2) | R_0 / ((1 - rho_1) * (1 - rho_1 - rho_2)) | 1.3750 hr (82.5 min) | | Kleinrock Work Conservation | rho_1 * W_q1 + rho_2 * W_q2 | 0.8800 (= rho_tot * W_FIFO) | - **Formula (Cobham Urgent Class 1 Expected Queue Wait W_q1 Formula)**: `=LET(l_1, B2, t_1, B3, cv_1, B4, l_2, B5, t_2, B6, cv_2, B7, r_1, l_1 * t_1, r_2, l_2 * t_2, IF(OR(l_1 < 0, t_1 <= 0, cv_1 < 0, l_2 < 0, t_2 <= 0, cv_2 < 0, r_1 + r_2 >= 1), "Unstable Queue (Require rho_1 + rho_2 < 1)", LET(r_0, 0.5 * (l_1 * (t_1^2) * (1 + cv_1) + l_2 * (t_2^2) * (1 + cv_2)), ROUND(r_0 / (1 - r_1), 4))))` - **Formula (Cobham Routine Class 2 Expected Queue Wait W_q2 Formula)**: `=LET(l_1, B2, t_1, B3, cv_1, B4, l_2, B5, t_2, B6, cv_2, B7, r_1, l_1 * t_1, r_2, l_2 * t_2, IF(OR(l_1 < 0, t_1 <= 0, cv_1 < 0, l_2 < 0, t_2 <= 0, cv_2 < 0, r_1 + r_2 >= 1), "Unstable Queue (Require rho_1 + rho_2 < 1)", LET(r_0, 0.5 * (l_1 * (t_1^2) * (1 + cv_1) + l_2 * (t_2^2) * (1 + cv_2)), ROUND(r_0 / ((1 - r_1) * (1 - r_1 - r_2)), 4))))` ### Cochran-Armitage Trend Test (Z_CA & χ²_trend) for Dose-Response Proportions - **URL**: https://sheets.arte-soft.com/en/learn/cochran-armitage-trend-test-ordered-dose-response-proportions/ - **Summary**: Test monotonic dose-response trends across ordered 2×k clinical trial cohorts using the Cochran-Armitage statistic Z_CA = T / SQRT(Var(T)) and 1-df χ²_trend = Z_CA^2. *Table — Why standard 2×k Pearson χ² throws away your dose ordering—and loses statistical power!:* | Dose Arm (Score x_i) | Responders r_i / Total n_i | Response Rate (%) | Cochran-Armitage Trend Output | | --- | --- | --- | --- | | Placebo (x = 0) | 4 / 50 | 8.0% | Pooled Rate p̄ = 36 / 150 = 24.0% | | Low Dose (x = 1) | 11 / 50 | 22.0% | Trend Z_CA = +3.980 (p < 0.0001) | | High Dose (x = 2) | 21 / 50 | 42.0% | 1-df χ²_trend = 15.844 (> 3.841) | - **Formula (Cochran-Armitage Z_CA Trend Statistic)**: `=IF(OR(SUM(C2:C4) <= 0, SUM(C2:C4) >= SUM(D2:D4)), "Zero Variance Cohort", ROUND((SUMPRODUCT(B2:B4, C2:C4) - (SUM(C2:C4) / SUM(D2:D4)) * SUMPRODUCT(B2:B4, D2:D4)) / SQRT((SUM(C2:C4) / SUM(D2:D4)) * (1 - SUM(C2:C4) / SUM(D2:D4)) * (SUMPRODUCT(D2:D4, E2:E4) - ((SUMPRODUCT(B2:B4, D2:D4) ^ 2) / SUM(D2:D4)))), 3))` - **Formula (1-df Chi-Square Linear Trend Statistic χ²_trend = Z_CA^2)**: `=IF(OR(SUM(C2:C4) <= 0, SUM(C2:C4) >= SUM(D2:D4)), "Zero Variance Cohort", ROUND(((SUMPRODUCT(B2:B4, C2:C4) - (SUM(C2:C4) / SUM(D2:D4)) * SUMPRODUCT(B2:B4, D2:D4)) ^ 2) / ((SUM(C2:C4) / SUM(D2:D4)) * (1 - SUM(C2:C4) / SUM(D2:D4)) * (SUMPRODUCT(D2:D4, E2:E4) - ((SUMPRODUCT(B2:B4, D2:D4) ^ 2) / SUM(D2:D4)))), 3))` ### Cochran’s Q Test Formula for Matched Binary Outcomes Across k Conditions - **URL**: https://sheets.arte-soft.com/en/learn/cochran-q-test-matched-binary-outcomes-across-three-or-more-conditions/ - **Summary**: Test whether binary pass/fail proportions differ across three or more matched treatments or raters using Cochran’s (1950) Q statistic and verify unanimous-row invariance. *Table — Verify why unanimous all-0 and all-1 subjects carry zero contrast:* | Cochran Component | Algebraic Expression | Sample Output | | --- | --- | --- | | Column Totals C1, C2, C3 | SUM(B2:B9), SUM(C2:C9), SUM(D2:D9) | 2, 4, 7 (Total T = 13) | | Numerator Contrast | (k - 1) * (k * SUM(C_j^2) - T^2) | 2 * (207 - 169) = 76 | | Discordant Row Denominator | k * T - SUM(L_i^2) | 39 - 27 = 12 | | Cochran’s Q (df = k - 1 = 2) | 76 / 12 | 6.3333 (p < 0.05) | - **Formula (Cochran’s Q Statistic Formula)**: `=LET(k_col, COLUMNS(B2:D9), c_1, SUM(B2:B9), c_2, SUM(C2:C9), c_3, SUM(D2:D9), t_sum, SUM(E2:E9), l_sq, SUMPRODUCT(E2:E9, E2:E9), denom, k_col * t_sum - l_sq, IF(denom <= 0, "No Within-Subject Contrast", ROUND(((k_col - 1) * (k_col * (c_1^2 + c_2^2 + c_3^2) - t_sum^2)) / denom, 4)))` - **Formula (Unanimous-Subject Invariance Check)**: `=3 * SUM(E2:E9) - SUMPRODUCT(E2:E9, E2:E9)` ### Coe-Clevenger Continuous Thickener Area & Solids Flux - **URL**: https://sheets.arte-soft.com/en/learn/coe-clevenger-continuous-slurry-thickener-solids-flux-and-overflow-clarification/ - **Summary**: Calculate Coe-Clevenger Thickener Clarification Area (m²), Required Circular Tank Diameter (m), Clarified Overflow Water Rate (m³/h), and Daily Solids Loading Flux (t/m²·d). *Table — Skip flocculant dosing on clay-rich tailings (settling rate drops from 1.35 to 0.38 m/h) and a 19.4 m Coe-Clevenger thickener slimes its overflow launder unless widened to 36.5 m!:* | Coe-Clevenger Continuous Thickener KPI (95 t/h Solids, F=4.20, D=0.85, SF=1.25) | Formula | Verified Output | | --- | --- | --- | | Coe-Clevenger Area A (m²) | ((Dilution_F - Underflow_D) * Solids_t_hr * SF) / R_m_hr | 294.7 m² (1,046.9 m² un-flocculated!) | | Required Tank Diameter (m) | SQRT((4 * Area_m2) / PI()) | 19.37 m (36.51 m without PAM polymer!) | | Clarified Overflow Water (m³/h) | Solids_Feed_t_hr * (Dilution_F - Underflow_D) | 318.25 m³/h recycled plant water | | Solids Flux Loading (t/m²·d) | (Solids_Feed_t_hr * 24) / Area_m2 | 7.74 t/m²·d (2.18 t/m²·d clay-limited) | - **Formula (Coe & Clevenger (1916) Limiting Dilution Zone-Settling Area & Flux Formula)**: `=LET(ws_t, B2, fd_w, B3, ud_w, B4, rz_m, B5, sf_a, B6, ar_m, ((fd_w - ud_w) * ws_t * sf_a) / rz_m, IF(OR(ws_t <= 0, ud_w < 0.25, ud_w > 5, fd_w < ud_w + 0.2, fd_w > 30, rz_m < 0.05, rz_m > 35, sf_a < 1, sf_a > 2), "Invalid Thickener Input", ROUND((ws_t * 24) / ar_m, 2)))` - **Formula (Clay-Slime Ore Lens / Polymer Pump Trip (`R = 0.38` m/h) Mud-Line Carryover Check)**: `=IF(ISTEXT(E5), E5, LET(ar_m, ((B3 - B4) * B2 * B6) / B5, ROUND(SQRT((4 * ar_m) / PI()), 2)))` ### Coefficient of variation (CV) formula: compare relative volatility across scales - **URL**: https://sheets.arte-soft.com/en/learn/coefficient-of-variation-relative-volatility/ - **Summary**: Divide STDEV.S by AVERAGE to measure unit-free relative dispersion across products, portfolios, or sensors with different price scales. *Table — Why raw standard deviation misleads across different magnitudes:* | Period | PennySku (A) | ServerSku (B) | | --- | --- | --- | | Q1 | 8 | 990 | | Q2 | 10 | 1000 | | Q3 | 12 | 1010 | | Q4 | 10 | 1000 | - **Formula (Sample CV (STDEV.S) vs Population CV (STDEV.P))**: `=ROUND(STDEV.S(A2:A5) / AVERAGE(A2:A5), 4)` - **Formula (Compare ServerSku CV and guard non-positive means)**: `=ROUND(STDEV.S(B2:B5) / AVERAGE(B2:B5), 4)` ### Coffin-Manson & Basquin Strain-Life Fatigue Equation + Transition Life (2Nt) - **URL**: https://sheets.arte-soft.com/en/learn/coffin-manson-low-cycle-plastic-strain-fatigue-life-formula/ - **Summary**: Calculate total strain amplitude delta_epsilon/2 across low-cycle plastic fatigue (Coffin-Manson) and high-cycle elastic fatigue (Basquin), plus the elastic-plastic transition reversals 2Nt. *Table — Unify low-cycle plastic yielding and high-cycle elastic fatigue!:* | Fatigue Regime | Reversals (2Nf) | Dominant Term | Alloy Steel Result | | --- | --- | --- | --- | | Low-Cycle Fatigue (LCF) | 2Nf = 1,000 (500 cycles) | Plastic: ef'*(2Nf)^c = 0.01147 | Total de/2 = 0.01404 (1.404%) | | Transition Life (2Nt) | 2Nt = 24,591.5 reversals | Elastic Strain = Plastic Strain | Crossover between LCF & HCF | | High-Cycle Fatigue (HCF) | 2Nf = 1,000,000 | Elastic: (sf'/E)*(2Nf)^b = 0.00137 | Total de/2 = 0.00161 (0.161%) | - **Formula (Total Strain Amplitude delta_epsilon / 2 (Basquin + Coffin-Manson))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0, B7 <= 0, B4 >= 0, B6 >= 0), "Invalid Fatigue Parameters", ROUND(((B2 / B3) * (B7 ^ B4)) + (B5 * (B7 ^ B6)), 5))` - **Formula (Transition Fatigue Life in Reversals (2Nt))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0, B4 = B6), "Invalid Fatigue Parameters", ROUND(((B5 * B3) / B2) ^ (1 / (B4 - B6)), 1))` ### Cohen's d effect size & Pooled Standard Deviation formula - **URL**: https://sheets.arte-soft.com/en/learn/cohens-d-effect-size-and-pooled-standard-deviation/ - **Summary**: Calculate a standardized mean difference for two independent groups using a pooled within-group standard deviation. *Table — Statistical significance (p-value) vs practical significance (Cohen's d):* | Group / Metric | Summary Stats | Formula / Benchmark | | --- | --- | --- | | Treatment Group 1 | Mean1 = 84, SD1 = 6, n1 = 10 | df1 = 9, SS1 = 9 × 36 = 324 | | Control Group 2 | Mean2 = 76, SD2 = 8, n2 = 10 | df2 = 9, SS2 = 9 × 64 = 576 | | Pooled Standard Deviation | =SQRT((324 + 576) / 18) = SQRT(50) | 7.0711 | | Cohen's d Effect Size | =(84 - 76) / 7.0711 | 1.1314 ("Large Effect", \|d\| >= 0.8) | - **Formula (Pooled Standard Deviation and Cohen's d formulas)**: `=IF(OR(COUNT(A2:F2)<>6,C2<2,F2<2,MOD(C2,1)<>0,MOD(F2,1)<>0,B2<0,E2<0),"Invalid group statistics",IF(B2^2+E2^2=0,"Undefined zero dispersion",ROUND((A2 - D2) / SQRT(((C2 - 1) * (B2 ^ 2) + (F2 - 1) * (E2 ^ 2)) / (C2 + F2 - 2)), 4)))` - **Formula (Inspect the pooled standard deviation)**: `=IF(OR(COUNT(A2:F2)<>6,C2<2,F2<2,MOD(C2,1)<>0,MOD(F2,1)<>0,B2<0,E2<0),"Invalid group statistics",ROUND(SQRT(((C2 - 1) * (B2 ^ 2) + (F2 - 1) * (E2 ^ 2)) / (C2 + F2 - 2)), 4))` ### Cohen’s h Arcsine Two-Proportion Effect Size & Variance-Stabilized Z-Test - **URL**: https://sheets.arte-soft.com/en/learn/cohens-h-arcsine-transformation-two-proportion-effect-size-formula/ - **Summary**: Measure standardized conversion and clinical rate differences across [0, 1] using Jacob Cohen’s arcsine transformation h = 2*ASIN(SQRT(p_1)) - 2*ASIN(SQRT(p_2)). *Table — Why a 4% lift from 1% to 5% carries 3x the statistical signal of 51% to 55%:* | Comparison (Raw Lift = +0.04) | phi(p_1) & phi(p_2) (rad) | Cohen’s h | Arcsine Z (n1=n2=200) | | --- | --- | --- | --- | | Tail Rates: 5.0% vs 1.0% | 0.4510 vs 0.2003 | 0.2507 (Small-to-Medium) | 2.5069 (Significant) | | Midrange: 55.0% vs 51.0% | 1.6710 vs 1.5908 | 0.0802 (Negligible < 0.20) | 0.8017 (Noise) | | Identical: 25.0% vs 25.0% | 1.0472 vs 1.0472 | 0.0000 | 0.0000 | - **Formula (Cohen’s h Radian Arcsine Formula)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1), "INVALID_PROB", ROUND(2 * ASIN(SQRT(B2)) - 2 * ASIN(SQRT(B3)), 4))` - **Formula (Variance-Stabilized Arcsine Z-Statistic & Benchmark Tier)**: `=LET(h_raw, 2 * ASIN(SQRT(B2)) - 2 * ASIN(SQRT(B3)), ROUND(h_raw * SQRT((B4 * B5) / (B4 + B5)), 4))` ### Cold-Storage REIT Pallet Rent, Handling Turns & NOI Formula - **URL**: https://sheets.arte-soft.com/en/learn/cold-storage-warehouse-reit-pallet-position-blast-freeze-and-noi-formula/ - **Summary**: Calculate Cold-Storage Warehouse REIT Annual Pallet Storage Revenue ($M), Throughput Handling & Blast-Freezing Revenue ($M), Dual-Segment Facility NOI ($M), and Blended NOI Margin (%). *Table — Model cold storage as high-margin pallet rent (~75%) PLUS labor-heavy throughput services (~25%)!:* | Cold-Storage REIT KPI (40k Pallets @ 85% Occ, $25/mo, 10x Turns @ $28/turn) | Formula | Verified Output | | --- | --- | --- | | Annual Storage Rent Revenue ($M) | Pallets * Occ * Storage_Mo * 12 / 10^6 | $10.20M | | Throughput Services Revenue ($M) | Pallets * Occ * Annual_Turns * Fee_Turn / 10^6 | $9.52M ($5.71M @ 6x Turns) | | Combined Facility NOI ($M) | Storage_Rev * Stg_Mgn + Services_Rev * 0.25 | $10.03M ($9.08M @ 6x Turns) | | Blended Facility NOI Margin (%) | (Combined_NOI_M / Total_Revenue_M) * 100 | 50.86% (57.05% @ 6x Turns) | - **Formula (Dual-Segment Cold-Storage NOI & Blended Margin Formula)**: `=LET(pl_t, B2, oc_e, B3, st_m, B4, tr_n, B5, hn_f, B6, mg_s, B7, IF(OR(pl_t <= 0, oc_e <= 0, oc_e > 1, st_m <= 0, tr_n < 0, hn_f < 0, mg_s <= 0.3, mg_s > 0.95), "Invalid Cold Storage Input", LET(rv_s, pl_t * oc_e * st_m * 12 / 1000000, rv_h, pl_t * oc_e * tr_n * hn_f / 1000000, ROUND(rv_s * mg_s + rv_h * 0.25, 2))))` - **Formula (Slower Inventory-Turn Mix-Shift Check (Set Annual Pallet Turns = 6.0x))**: `=IF(ISTEXT(E4), E4, LET(rv_s, B2 * B3 * B4 * 12 / 1000000, rv_h, B2 * B3 * B5 * B6 / 1000000, no_i, rv_s * B7 + rv_h * 0.25, ROUND((no_i / (rv_s + rv_h)) * 100, 2)))` ### Colebrook-White Pipe Friction via Serghides’ Steffensen Acceleration (< 0.003% Error) - **URL**: https://sheets.arte-soft.com/en/learn/colebrook-white-residual-and-serghides-steffensen-friction-factor/ - **Summary**: Solve the implicit Colebrook-White turbulent Darcy friction equation without Goal Seek or circular references using T. K. Serghides’ (1984) 3-step Steffensen Aitken Δ² acceleration. *Table — Solving implicit 1/SQRT(f) = -2*LOG10((ε/D)/3.7 + 2.51/(Re*SQRT(f))) to 6-digit accuracy in pure cells!:* | Pipe Relative Roughness ε/D (Re = 150,000) | Initial Estimate A = 1/√f_0 | Serghides Darcy Friction f | Accuracy vs Exact Colebrook | | --- | --- | --- | --- | | ε/D = 0.0004 (Commercial Steel) | 7.4512 | 0.018884 | Exact to 6 decimal places | | ε/D = 0.0020 (Aged Cast Iron) | 6.4045 | 0.024584 | Wholly rough transition captured | | Laminar/Transitional Re < 4,000 or ε/D < 0 | Out of Turbulent Domain | "Requires Re >= 4000 and eps/D >= 0" | Moody Regime Guard | - **Formula (Serghides Steffensen-Accelerated Colebrook-White Darcy Friction Factor f)**: `=IF(OR(B2 < 0, B2 > 0.05, B3 < 4000), "Requires Re >= 4000 and eps/D >= 0", ROUND((B4 - ((B5 - B4) ^ 2) / (B6 - 2 * B5 + B4)) ^ (-2), 6))` - **Formula (First Fixed-Point Reciprocal Root Iterate A = -2 * LOG10((ε/D)/3.7 + 12/Re))**: `=IF(OR(B2 < 0, B2 > 0.05, B3 < 4000), "Requires Re >= 4000 and eps/D >= 0", ROUND(B4, 4))` ### Collaborative Formula-Override Audit with ISFORMULA & Suggest-Mode Governance - **URL**: https://sheets.arte-soft.com/en/learn/collaborative-formula-override-audit-isformula-and-suggester-recovery/ - **Summary**: Detect accidental literal value pastes over calculated model columns using per-row ISFORMULA flags, pinpoint the first broken line via INDEX/MATCH, and prevent silent overrides with Suggest Mode and @mentions. *Table — Catching silent paste-values overrides in multi-user models:* | Forecast Row | Base Plan (Col B) | Target Cell (Col C) | ISFORMULA Audit Flag (Col D) | | --- | --- | --- | --- | | Line_01_NA | 1200 | =B2 * 1.15 -> 1380 | 0 (Formula intact) | | Line_02_APAC | 1500 | =B3 * 1.15 -> 1725 | 0 (Formula intact) | | Line_03_EMEA | 2000 | 2300 (Static literal paste!) | 1 (OVERRIDE_DETECTED) | | Line_04_LATAM | 800 | =B5 * 1.15 -> 920 | 0 (Formula intact) | - **Formula (Per-Row ISFORMULA Literal-Override Flag Formula)**: `=IF(ISFORMULA(C2), 0, 1)` - **Formula (First Overwritten Row Locator Formula)**: `=IF(SUM(D2:D5) = 0, "ALL_FORMULAS_INTACT", INDEX(A2:A5, MATCH(1, D2:D5, 0)))` ### Collaborative Month-End Close Checklist: Roles, @Mentions, Comments & Sign-Off Gate Formula - **URL**: https://sheets.arte-soft.com/en/learn/collaborative-review-checklist-threaded-comments-mentions-and-roles/ - **Summary**: Coordinate multi-user month-end close and engineering QA reviews in Arte Sheets using role-based access (owner, contributor, suggester, viewer), threaded cell comments, @mentions, notifications, and automated sign-off readiness formulas. *Table — Turn chaotic email review threads into structured, role-gated spreadsheet sign-offs!:* | Arte Sheets Workbook Role | Live Cell & Formula Edits | Suggestions, Threaded Comments & @Mentions | | --- | --- | --- | | Owner | Full direct editing + sends share_document invitations | Approves/discards proposals, resolves comments & @mentions | | Contributor (Editor) | Direct cell, formula, chart & sheet editing (with live cursors) | Posts threaded comments, @mentions & reviews suggestions | | Suggester | Edits routed into reviewable cell suggestions (no direct overwrite) | Submits cell suggestions, comments & @mentions | | Viewer | Read-only inspection (live presence visible) | Reads verified schedules without modifying cells | - **Formula (Schedule Approval Completion Percentage (%) Across Close Checklist)**: `=IF(COUNTA(A2:A6) = 0, 0, ROUND(100 * COUNTIF(B2:B6, "Approved") / COUNTA(A2:A6), 1))` - **Formula (Zero-Blocker Release Gate (Approved Schedules + Open Comments + Pending Suggestions))**: `=IF(COUNTA(A2:A6) = 0, "Empty Checklist", IF(AND(COUNTIF(B2:B6, "Approved") = COUNTA(A2:A6), SUM(C2:C6) = 0, SUM(D2:D6) = 0), "READY FOR OWNER SIGN-OFF: 100% Approved, 0 Open Comments & 0 Pending Suggestions", "HOLD CLOSE: " & (COUNTA(A2:A6) - COUNTIF(B2:B6, "Approved")) & " Unapproved, " & SUM(C2:C6) & " Open Comments, " & SUM(D2:D6) & " Pending Suggestions"))` ### Collaborative Budget Variance Triage: @Mentions, Comments & Viewer Release Gate - **URL**: https://sheets.arte-soft.com/en/learn/collaborative-variance-sign-off-live-cursors-mentions-and-sla-gate/ - **Summary**: Flag material department budget variances (> 5%), generate targeted @mention comment prompts for open breaches, and lock executive Viewer sign-off until all blockers resolve. *Table — Coordinating multi-user variance close with roles, comments, and @mentions:* | Dept | Budget | Actual | Pct Variance | Thread Status -> Action | | --- | --- | --- | --- | --- | | Cloud Infra (@maya) | 80,000 | 82,400 | +3.00% (<= 5%) | OPEN -> OK_WITHIN_TOL | | Paid Acquisition (@liam) | 50,000 | 56,500 | +13.00% (> 5%) | OPEN -> @liam: Review | | Field Events (@nora) | 40,000 | 36,000 | -10.00% (> 5%) | RESOLVED -> SIGNED_OFF | | Customer Success (@elena) | 60,000 | 61,200 | +2.00% (<= 5%) | OPEN -> OK_WITHIN_TOL | - **Formula (Material Variance @Mention Routing Formula)**: `=IF(B2 = 0, "CHECK_BASE", IF(ABS((C2 - B2) / B2) <= $H$2, "OK_WITHIN_TOL", IF(E2 = "RESOLVED", "SIGNED_OFF", D2 & ": Review")))` - **Formula (Executive Pack Release-Readiness Gate)**: `=IF(COUNTIF(F2:F5, "*: Review") = 0, "READY_FOR_VIEWERS", "HOLD_OPEN_THREADS")` ### Collaborative Spreadsheet Sign-Off: Multi-Reviewer Roles, Suggestions, Comments & Consensus - **URL**: https://sheets.arte-soft.com/en/learn/collaborative-workbook-roles-comments-mentions-and-cell-suggestions/ - **Summary**: Coordinate multi-user financial closes and engineering reviews using real-time roles (owner, contributor, suggester, viewer), cell suggestions, threaded comments, @mentions, notifications, and a formula-driven Reviewer Consensus Gate. *Table — Combining live multi-user presence, cell suggestions, and @mentions with deterministic sign-off formulas!:* | Collaborative Feature in Arte Sheets | Who Uses It During Workbook Sign-Off | Worksheet Formula Counterpart | | --- | --- | --- | | Roles (owner, contributor, suggester, viewer) | Owners control edit vs. suggestion-only vs. read-only access | Sign-off status matrix (Approved / Pending / Changes_Requested) | | Cell Suggestions & Suggest Mode | Reviewers propose updated numbers/formulas without overwriting baseline | Suggestion delta check =ROUND(Suggested - Baseline, 2) | | Threaded Comments, @Mentions & Notifications | Tag specific approvers on flagged variance cells for rapid resolution | =IF(COUNTIF(B2:D2, "Changes_Requested")>0, "Blocked", ...) | - **Formula (Multi-Department Sign-Off Consensus Gate (Finance, Legal & Ops Approval Check))**: `=IF(COUNTIF(B2:D2, "Changes_Requested") > 0, "Blocked: Changes Requested", IF(COUNTIF(B2:D2, "Approved") = 3, "Ready to Lock (3/3 Approved)", "Pending Sign-Off (" & (3 - COUNTIF(B2:D2, "Approved")) & " Remaining)"))` - **Formula (Unresolved Suggested-vs-Baseline Variance Across Open Items)**: `=IF(COUNTIF(B2:D2, "Approved") = 3, 0, ROUND(ABS(F2 - E2), 2))` ### Colley Bias-Free Laplace Sports Rating Formula - **URL**: https://sheets.arte-soft.com/en/learn/colley-bias-free-laplace-sports-ranking-and-win-rating-formula/ - **Summary**: Calculate Wesley Colley’s Laplace-regularized Strength-of-Schedule team rating r_i = (1 + (W - L)/2 + SUM(r_opp)) / (2 + W + L), Effective Wins W_eff, and Preseason Shrinkage vs Raw Win%. *Table — Rank unbalanced schedules cleanly from Week 0 without margin-of-victory bias!:* | Tournament Ranking Metric (7-3 Record vs 6.50 Opponent Rating Sum) | Formula | Verified Output | | --- | --- | --- | | Raw Win Percentage | W / (W + L) | 0.7000 (#DIV/0! at 0-0) | | Laplace Unadjusted Rating | (1 + W) / (2 + W + L) | 0.6667 (0.5000 at 0-0) | | Colley Effective Wins W_eff | (W - L) / 2 + R_opp | 8.5000 (+1.50 SoS Credit) | | Colley Matrix Rating r_Colley | (1 + (W - L)/2 + R_opp) / (2 + W + L) | 0.7917 | - **Formula (Colley Strength-of-Schedule Rating Formula)**: `=LET(wn_c, B2, ls_c, B3, rp_s, B4, gm_t, wn_c + ls_c, IF(OR(wn_c < 0, ls_c < 0, rp_s < 0, rp_s > gm_t), "Invalid Schedule Record", ROUND((1 + (wn_c - ls_c) / 2 + rp_s) / (2 + gm_t), 4)))` - **Formula (Effective Wins & Cupcake Schedule Penalty Check)**: `=IF(ISTEXT(E5), E5, ROUND((B2 - B3) / 2 + B4, 4))` ### Column Chart with Target Line & Conditional Above/Below Series Formula - **URL**: https://sheets.arte-soft.com/en/learn/column-chart-with-target-line-and-breach-callout-series/ - **Summary**: Stage a two-color Column Chart with a constant horizontal Target Line by splitting actual values into mutually exclusive Above-Target and Below-Target helper series. *Table — Color-code goal attainment automatically without manual bar recoloring!:* | Quarter ($250k Target) | Actual ($k) | Above-Target Series | Below-Target Series | | --- | --- | --- | --- | | Q1 | 210 | 0 | 210 (Amber) | | Q2 | 265 | 265 (Green) | 0 | | Q3 | 235 | 0 | 235 (Amber) | | Q4 | 290 | 290 (Green) | 0 | - **Formula (Conditional Above-Target Column Series Value (Q2 Row))**: `=IF(B6 <= 0, "Invalid Target", IF(B3 >= B6, ROUND(B3, 2), 0))` - **Formula (Periods Meeting or Beating the Target Line)**: `=IF(B6 <= 0, 0, COUNTIF(B2:B5, ">=" & B6))` ### COLUMN and COLUMNS: build dynamic horizontal indexes and count table width - **URL**: https://sheets.arte-soft.com/en/learn/column-and-columns-functions/ - **Summary**: Generate auto-incrementing VLOOKUP column numbers across a report with COLUMN or COLUMNS, and count total cells in a 2D block. *Table — Eliminate hardcoded 2, 3, 4 column indexes when dragging right:* | SKU (A) | Q1 (B) | Q2 (C) | Q3 (D) | | --- | --- | --- | --- | | P-100 | 120 | 145 | 160 | | P-200 | 85 | 90 | 110 | - **Formula (Dynamic VLOOKUP column index with COLUMNS($A$2:D2))**: `=VLOOKUP("P-200", $A$2:$D$3, COLUMNS($A$2:D2), FALSE)` - **Formula (Total cells in a rectangular matrix)**: `=ROWS(A2:D3) * COLUMNS(A2:D3)` ### Convert column number to letter (and back) with ADDRESS and COLUMN - **URL**: https://sheets.arte-soft.com/en/learn/convert-column-number-to-letter-address/ - **Summary**: Translate 1-based column numbers like 1, 26, 27, and 53 into A, Z, AA, and BA using ADDRESS and SUBSTITUTE—and reverse the conversion with COLUMN. *Table — Why CHAR(64 + n) fails past column Z:* | Column Number | ADDRESS(1, n, 4) | Column Letter | | --- | --- | --- | | 1 | A1 | A | | 26 | Z1 | Z | | 27 | AA1 | AA | | 53 | BA1 | BA | - **Formula (Column number to letter formula)**: `=SUBSTITUTE(ADDRESS(1, A2, 4), "1", "")` - **Formula (Reverse conversion and invalid column numbers)**: `=COLUMN(INDIRECT(B2 & "1"))` ### Combinations Without & With Replacement Formula (COMBIN & COMBINA via FACT) - **URL**: https://sheets.arte-soft.com/en/learn/combinations-n-choose-k-with-and-without-replacement-combin/ - **Summary**: Calculate distinct k-item subsets without replacement C(n, k) = n! / (k!(n - k)!) and multisets with replacement C(n + k - 1, k) using FACT for audit sampling, portfolio pairs, and reliability redundancy. *Table — Size audit samples, pairwise test matrices, and multiset allocations!:* | Selection Rule (n = 10, k = 3) | Factorial Formula | Exact Count | | --- | --- | --- | | Combinations Without Replacement (COMBIN) | 10! / (3! * 7!) | 120 | | Combinations With Replacement (COMBINA) | 12! / (3! * 9!) | 220 | | Ordered Permutations Without Replacement | 10! / 7! | 720 | - **Formula (Combinations Without Replacement C(n, k))**: `=IF(OR(B2 < 0, B3 < 0, B3 > B2), "Invalid n or k", ROUND(FACT(B2) / (FACT(B3) * FACT(B2 - B3)), 0))` - **Formula (Multiset Combinations With Replacement C(n + k - 1, k))**: `=IF(OR(B2 < 1, B3 < 0), "Invalid n or k", ROUND(FACT(B2 + B3 - 1) / (FACT(B3) * FACT(B2 - 1)), 0))` ### Combine & Reorder Virtual Columns with CHOOSECOLS & HSTACK (Left VLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/combine-and-reorder-columns-with-choosecols-and-hstack/ - **Summary**: Assemble custom in-memory lookup tables in any column order—including right-to-left VLOOKUP without physically rearranging worksheet columns—using CHOOSECOLS and HSTACK. *Table — Build virtual two-column tables in any order without moving sheet columns!:* | RepName (Col A) | Region (Col B) | EmpID (Col C) | Virtual CHOOSECOLS(A2:C5, 3, 1) | | --- | --- | --- | --- | | Maya | West | E-401 | {"E-401", "Maya"} | | Liam | East | E-402 | {"E-402", "Liam"} | | Noah | North | E-403 | {"E-403", "Noah"} -> VLOOKUP match! | | Zoe | South | E-404 | {"E-404", "Zoe"} | - **Formula (Right-to-Left VLOOKUP via Virtual CHOOSECOLS Reordering)**: `=IF(COUNTBLANK(E2)>0,"Enter ID",IFNA(VLOOKUP(E2, CHOOSECOLS(A2:C5, 3, 1), 2, FALSE),"Unknown ID"))` - **Formula (Combining Non-Adjacent Ranges Side-by-Side with HSTACK)**: `=IF(COUNTBLANK(E2)>0,"Enter ID",IFNA(VLOOKUP(E2, HSTACK(C2:C5, B2:B5), 2, FALSE), "Unknown ID"))` - **Formula (Inspect the reordered ID/name array)**: `=CHOOSECOLS(A2:C5,3,1)` - **Formula (Inspect the ID/region array)**: `=HSTACK(C2:C5,B2:B5)` ### Combine Duplicate Rows & Sum Values Non-Destructively (UNIQUE, COUNTIF & SUMIFS) - **URL**: https://sheets.arte-soft.com/en/learn/combine-and-sum-duplicate-rows-unique-sumifs-consolidation-table/ - **Summary**: Consolidate repeated SKU or customer line items into one summary row per key while preserving raw transaction audit trails and reconciling grand totals. *Table — Why Remove Duplicates destroys revenue when rows represent separate orders:* | Consolidated SKU | Order Lines (COUNTIF) | Total Units (SUMIFS) | Total Revenue (SUMIFS) | | --- | --- | --- | --- | | SKU-101 | 3 | 75 | $1,500 | | SKU-102 | 2 | 60 | $1,800 | | SKU-103 | 1 | 10 | $500 | | Reconciliation | 6 lines | 145 units | $3,800 (Matches raw log) | - **Formula (Distinct Key Extraction & Multi-Column SUMIFS Rollup)**: `=SUMIFS($C$2:$C$7, $A$2:$A$7, E2)` - **Formula (Consolidating Attached CSV/XLSX Exports in Arte Sheets)**: `=SUM(H2:H4) = SUM(C2:C7)` ### Combination (Combo) Chart & Secondary Axis Scaling Formula: Zero-Baseline Alignment - **URL**: https://sheets.arte-soft.com/en/learn/combo-chart-dual-scale-primary-and-secondary-axis-scaling-formula/ - **Summary**: Combine disparate units like Dollar Revenue Columns and Gross Margin % Lines on a Combo Chart without baseline distortion by computing exact Secondary Y-Axis bounds that lock both primary and secondary zero lines. *Table — Why unaligned secondary axes create misleading visual crossovers — and how proportionality locks the zero line!:* | Axis Alignment Parameter | Primary Dollar Axis (Y_1) | Zero-Locked Secondary % Axis (Y_2) | | --- | --- | --- | | Axis Maximum Ceiling | +$800,000 | +40.0% (0.40) | | Axis Minimum Floor (Ratio = -0.25) | -$200,000 | 40.0% * (-200k / 800k) = -10.0% (-0.10) | | Zero-Line Fractional Height (0 - Min)/(Max - Min) | 200k / 1,000k = 20.0% from bottom | 10% / 50% = 20.0% from bottom (Exact Lock!) | - **Formula (Zero-Aligned Secondary Axis Minimum Bound Y2_min)**: `=IF(OR(B2 > 0, B3 <= 0, B4 <= 0), "Requires Y1_min <= 0, Y1_max > 0, and Y2_max > 0", ROUND(B4 * (B2 / B3), 4))` - **Formula (Primary-Coordinate Rescaled Value for Single-Axis Combo Overlay)**: `=IF(OR(B3 <= 0, B4 <= 0), "Requires Y1_max > 0 and Y2_max > 0", ROUND(B5 * (B3 / B4), 2))` ### Commercial Ground Lease CPI-Collared Reset & Coverage Formula - **URL**: https://sheets.arte-soft.com/en/learn/commercial-ground-lease-rent-reset-cpi-collar-and-leasehold-coverage/ - **Summary**: Calculate 99-Year Bifurcated Commercial Ground Lease CPI-Collared Periodic Rent Reset ($M), Residual Leasehold Net Operating Income ($M), Senior Ground-Rent Coverage Ratio, and Ground Rent % of Property NOI. *Table — Bound 10-year ground-lease CPI escalations with MIN/MAX collars to protect leasehold equity!:* | Ground Lease Reset Metric ($1.2M Base, 28% CPI, 10%–25% Collar, $6.0M NOI) | Formula | Verified Output | | --- | --- | --- | | Collared Reset Ground Rent ($M) | Base_Rent * (1 + MIN(Cap, MAX(Floor, CPI))) | $1.50M ($1.32M @ 4% CPI) | | Leasehold Residual NOI ($M) | Pre_Ground_NOI - Reset_Ground_Rent | $4.50M ($4.68M @ 4% CPI) | | Ground-Rent Coverage Ratio (x) | Pre_Ground_NOI / Reset_Ground_Rent | 4.0000x (4.5455x @ 4% CPI) | | Ground Rent Share of NOI | Reset_Ground_Rent / Pre_Ground_NOI | 0.2500 (0.2200 @ 4% CPI) | - **Formula (CPI-Collared Ground Rent & Coverage Ratio Formula)**: `=LET(gr_0, B2, cp_i, B3, fl_r, B4, cp_m, B5, no_i, B6, IF(OR(gr_0 <= 0, cp_i <= -0.5, fl_r < 0, cp_m < fl_r, cp_m >= 2, no_i <= 0), "Invalid Ground-Lease Collar", LET(gr_1, gr_0 * (1 + MIN(cp_m, MAX(fl_r, cp_i))), ROUND(no_i / gr_1, 4))))` - **Formula (Disinflation Floor Activation Check (Set 10-Year Cumulative CPI = 4.0%))**: `=IF(ISTEXT(E4), E4, ROUND((B2 * (1 + MIN(B5, MAX(B4, B3)))) / B6, 4))` ### Commercial Lease CAM Gross-Up & Expense-Stop Formula - **URL**: https://sheets.arte-soft.com/en/learn/commercial-lease-cam-gross-up-occupancy-and-expense-stop-formula/ - **Summary**: Gross up occupancy-sensitive variable operating expenses Var_OpEx * MAX(1, GrossUp_Cap / Actual_Occ) without inflating fixed costs, and compute pro-rata tenant expense-stop recoveries. *Table — Avoid the two classic CAM audit errors: NEVER gross up fixed costs, and NEVER scale down above 95%!:* | CAM Reconciliation Line (60% Occupied, 95% Gross-Up) | Formula | Verified Output | | --- | --- | --- | | Fixed Operating Expenses (Unadjusted) | Fixed_OpEx | 400,000.00 | | Grossed-Up Variable Operating Expenses | IF(Occ < Cap, Var * (Cap / Occ), Var) | 285,000.00 (vs 180,000 Actual) | | Total Reconciled CAM Expense Pool | Fixed_OpEx + Grossed_Up_Var | 685,000.00 (vs 600,000 Stop) | | Tenant 10% Expense-Stop Recovery | 0.10 * MAX(0, 685,000 - 600,000) | 8,500.00 | - **Formula (BOMA-Compliant Grossed-Up Building Operating Expense Pool Formula)**: `=LET(fx_op, B2, vr_op, B3, oc_ac, B4, gu_cp, B5, IF(OR(fx_op < 0, vr_op < 0, oc_ac <= 0, oc_ac > 1, gu_cp <= 0, gu_cp > 1), "Invalid CAM Input", LET(vr_gu, IF(oc_ac < gu_cp, vr_op * (gu_cp / oc_ac), vr_op), ROUND(fx_op + vr_gu, 2))))` - **Formula (Pro-Rata Tenant Expense-Stop Pass-Through Billing Formula)**: `=LET(fx_op, B2, vr_op, B3, oc_ac, B4, gu_cp, B5, st_bs, B6, sh_tn, B7, IF(OR(fx_op < 0, vr_op < 0, oc_ac <= 0, oc_ac > 1, gu_cp <= 0, gu_cp > 1, st_bs < 0, sh_tn <= 0, sh_tn > 1), "Invalid CAM Input", LET(vr_gu, IF(oc_ac < gu_cp, vr_op * (gu_cp / oc_ac), vr_op), ROUND(sh_tn * MAX(0, fx_op + vr_gu - st_bs), 2))))` ### Commercial Lease TI, Free Rent & Net Effective Rent Formula - **URL**: https://sheets.arte-soft.com/en/learn/commercial-lease-ti-allowance-free-rent-and-net-effective-rent-formula/ - **Summary**: Calculate ASC 842 Straight-Line Effective Rent, Unamortized Landlord Net Effective Rent (NER), and Time-Value-Discounted Landlord NER ($/SF/yr) after Tenant Improvements, Free Rent, and Commissions. *Table — Compare headline face rent against true landlord Net Effective Rent after concessions!:* | Commercial Lease Metric ($60/SF Face, 10-Yr, 12m Free, $80 TI, 5% LC, 8% Disc) | Formula | Verified Output | | --- | --- | --- | | ASC 842 Straight-Line Rent ($/SF/yr) | R_face * (T_yr - m_free/12) / T_yr | $54.00 / SF / yr | | Undiscounted Landlord NER ($/SF/yr) | (Collected_Rent - TI - LC) / T_yr | $43.30 / SF / yr | | Discounted Landlord NER ($/SF/yr) | (PV_Rent - TI - LC) / AF(T_yr, r_disc) | $35.77 / SF / yr | | Lease Concession Payback (Years) | m_free / 12 + (TI + LC) / R_face | 2.78 years | - **Formula (Time-Value-Discounted Landlord Net Effective Rent Formula)**: `=LET(r_fc, B2, t_yr, B3, m_fr, B4, ti_p, B5, lc_r, B6, rt_d, B7, t_fr, m_fr / 12, IF(OR(r_fc <= 0, t_yr <= 0, m_fr < 0, t_fr >= t_yr, ti_p < 0, lc_r < 0, lc_r >= 1, rt_d < 0), "Invalid Lease Terms", LET(af_t, IF(rt_d = 0, t_yr, (1 - (1 + rt_d) ^ (-t_yr)) / rt_d), af_f, IF(t_fr = 0, 0, IF(rt_d = 0, t_fr, (1 - (1 + rt_d) ^ (-t_fr)) / rt_d)), lc_p, r_fc * (t_yr - t_fr) * lc_r, ROUND((r_fc * (af_t - af_f) - ti_p - lc_p) / af_t, 2))))` - **Formula (Landlord Concession Payback Years Formula)**: `=IF(ISTEXT(E4), E4, ROUND(B4 / 12 + (B5 + B2 * (B3 - B4 / 12) * B6) / B2, 2))` ### Commercial Property Coinsurance Penalty ("Did/Should") Formula - **URL**: https://sheets.arte-soft.com/en/learn/commercial-property-insurance-coinsurance-penalty-recovery-and-did-you-have/ - **Summary**: Calculate Required Coinsurance Limit ("Should Have"), Coinsurance Compliance Ratio MIN(1, Did/Should), Net Insurer Claim Recovery After Deductible, and Uninsured Coinsurance Penalty Haircut. *Table — Underinsuring a $2M warehouse with a $1.2M limit doesn’t cover a $400k partial fire in full—coinsurance slashes recovery by $100,000!:* | ISO CP 00 10 Coinsurance KPI ($2.0M RCV, 80% Clause, $1.2M Limit, $400k Loss, $10k Ded.) | Formula | Verified Output | | --- | --- | --- | | Required "Should Have" Limit ($) | Replacement_Value * (Coins_Pct / 100) | $1,600,000.00 | | "Did / Should" Compliance Factor | MIN(1, Limit_Carried / Should_Carry) | 0.7500 (1.0000 @ $1.6M limit) | | Net Insurer Claim Payout ($) | MIN(Did, MAX(0, Loss * Factor - Ded)) | $290,000.00 ($390,000 @ $1.6M limit) | | Uninsured Coinsurance Penalty ($) | Full_Unpenalized_Payout - Insurer_Pay | $100,000.00 ($0.00 @ $1.6M limit!) | - **Formula (ISO CP 00 10 "Did Over Should" Coinsurance Recovery & Penalty Formula)**: `=LET(rc_v, B2, cp_c, B3, ld_d, B4, ls_a, B5, dd_a, B6, IF(OR(rc_v <= 0, cp_c < 50, cp_c > 100, ld_d <= 0, ls_a < 0, dd_a < 0), "Invalid Policy Input", LET(ls_h, rc_v * (cp_c / 100), fc_r, MIN(1, ld_d / ls_h), py_i, MIN(ld_d, MAX(0, ls_a * fc_r - dd_a)), py_f, MIN(ld_d, MAX(0, ls_a - dd_a)), ROUND(MAX(0, py_f - py_i), 2))))` - **Formula (Inflation-Adjusted $1,600,000 Limit Full-Compliance Check (Set Limit Carried B4 = $1,600,000))**: `=IF(ISTEXT(E5), E5, LET(ls_h, B2 * (B3 / 100), fc_r, MIN(1, B4 / ls_h), ROUND(MIN(B4, MAX(0, B5 * fc_r - B6)), 2)))` ### CRE Debt Yield, Loan Constant & Leverage Spread Formula - **URL**: https://sheets.arte-soft.com/en/learn/commercial-real-estate-debt-yield-loan-constant-and-leverage-spread/ - **Summary**: Underwrite commercial real estate via Debt Yield = NOI / Loan, Monthly-Pay Annual Loan Constant k_debt, DSCR = Debt_Yield / k_debt, and Positive vs Negative Cash-on-Cash Leverage. *Table — Catch Negative Cash-Flow Leverage when Loan Constant exceeds Cap Rate despite a lower interest rate!:* | CRE Underwriting Metric (12.5M Price, 850k NOI, 10M Loan @ 6%/30Y) | Formula | Verified Output | | --- | --- | --- | | Lender Debt Yield | NOI / Loan_Amount | 0.0850 (8.50%) | | Annual Mortgage Constant (k_debt) | r / (1 - (1 + r/12)^(-12*N)) | 0.071946 (7.19% > 6.80% Cap!) | | Debt Service Coverage Ratio (DSCR) | Debt_Yield / k_debt | 1.1814x | | Equity Cash-on-Cash Return (CoC) | (NOI - Loan * k_debt) / Equity | 0.0522 (5.22% Negative Leverage!) | - **Formula (Annual Monthly-Amortizing Mortgage Constant k_debt & DSCR Formula)**: `=LET(p_pr, B2, noi_v, B3, ln_a, B4, r_nt, B5, n_yr, B6, IF(OR(ln_a <= 0, p_pr <= ln_a, noi_v <= 0, r_nt <= 0, n_yr < 1), "Invalid CRE Input", LET(k_db, r_nt / (1 - ((1 + (r_nt / 12))^(-12 * n_yr))), ROUND((noi_v / ln_a) / k_db, 4))))` - **Formula (Levered Equity Cash-on-Cash Return Formula)**: `=LET(p_pr, B2, noi_v, B3, ln_a, B4, r_nt, B5, n_yr, B6, IF(OR(ln_a <= 0, p_pr <= ln_a, noi_v <= 0, r_nt <= 0, n_yr < 1), "Invalid CRE Input", LET(k_db, r_nt / (1 - ((1 + (r_nt / 12))^(-12 * n_yr))), ROUND((noi_v - ln_a * k_db) / (p_pr - ln_a), 4))))` ### Winner’s Curse & Common-Value Bid Shading Formula - **URL**: https://sheets.arte-soft.com/en/learn/common-value-auction-winners-curse-bid-shading-formula/ - **Summary**: Quantify the Winner’s Curse conditional value E[V | Win] = s_i - eps*(N - 1)/(N + 1) and Kagel-Levin (1986) symmetric Nash bid shading B*(s_i) = s_i - eps in common-value auctions. *Table — Why bidding your unbiased engineering estimate guarantees expected losses in oil-lease and M&A auctions!:* | Common-Value Metric (s_i = 100, eps = 15, N = 4) | Formula | Verified Output | | --- | --- | --- | | Winner-Conditional Value E[V \| Win] | s_i - eps * (N - 1) / (N + 1) | 91.00 (-9.00 Below Signal!) | | Naive Unshaded Bid Profit (b = s_i) | E[V \| Win] - s_i | -9.00 (Winner’s Curse Loss!) | | Kagel-Levin Nash Shaded Bid B*(s_i) | s_i - eps | 85.00 | | Equilibrium Winner Profit | E[V \| Win] - B*(s_i) = 2*eps / (N + 1) | +6.00 | - **Formula (Conditional Asset Value Upon Winning E[V | s_i = max s_j] Formula)**: `=LET(s_est, B2, ep_bd, B3, n_bd, B4, IF(OR(ep_bd < 0, s_est <= ep_bd, n_bd < 2, INT(n_bd) <> n_bd), "Require s_i > eps >= 0 and Integer N >= 2", ROUND(s_est - ep_bd * ((n_bd - 1) / (n_bd + 1)), 4)))` - **Formula (Naive Unshaded Bid Loss vs Nash Winner Profit Formula)**: `=LET(s_est, B2, ep_bd, B3, n_bd, B4, IF(OR(ep_bd < 0, s_est <= ep_bd, n_bd < 2, INT(n_bd) <> n_bd), "Require s_i > eps >= 0 and Integer N >= 2", ROUND(-ep_bd * ((n_bd - 1) / (n_bd + 1)), 4)))` ### Compare compounding periods: Annual, Quarterly, Monthly, Daily, and Continuous - **URL**: https://sheets.arte-soft.com/en/learn/compare-compounding-frequencies-annual-monthly-daily/ - **Summary**: See exact dollar differences across compounding frequencies m = 1, 4, 12, 365 using P*(1 + r/m)^(m*t) alongside the continuous limit P*EXP(r*t). *Table — Diminishing marginal gains as compounding approaches continuous EXP(r*t):* | Compounding Frequency | Periods/Yr (m) | 5-Yr Ending Balance ($10k @ 8%) | | --- | --- | --- | | Annual | 1 | $14,693.28 | | Quarterly | 4 | $14,859.47 | | Monthly | 12 | $14,898.46 | | Daily | 365 | $14,917.59 | | Continuous Limit | P * EXP(r * t) | $14,918.25 | - **Formula (Discrete m-period vs Continuous compounding formulas)**: `=ROUND(A2 * (1 + B2 / D2) ^ (D2 * C2), 2)` - **Formula (Continuous compounding upper bound (P * e^(r*t)))**: `=ROUND(A2 * EXP(B2 * C2), 2)` ### Compare Two Lists: Count Shared Matches & Return First Overlap - **URL**: https://sheets.arte-soft.com/en/learn/compare-two-lists-count-common-matches-and-first-overlap/ - **Summary**: Compare text identifiers using row membership, a separate distinct-item count and the first shared value in List1 order. *Table — Reconcile two rosters cleanly—even when List 2 contains duplicate rows!:* | List 1 SKU (Col A) | List 2 Scans (Col D) | Flag --(COUNTIF > 0) | Audit Meaning | | --- | --- | --- | --- | | SKU-10 | SKU-99 | 0 | Missing from List 2 | | SKU-22 | SKU-22 (x2 scans!) | 1 (capped at 1!) | First shared overlap! | | SKU-35, SKU-48 | — | 0, 0 | Missing from List 2 | | SKU-60 | SKU-60 | 1 | Total Shared List-1 Items = 2 | - **Formula (Count matching List1 rows)**: `=IF(COUNTIF(B2:B6,-1)>0,"Invalid List1",SUM(B2:B6))` - **Formula (Return First Overlapping Value Between Two Lists)**: `=IF(COUNTIF(B2:B6,-1)>0,"Invalid List1",XLOOKUP(1,B2:B6,A2:A6,"No Overlap"))` - **Formula (Create membership flags)**: `=IF(COUNTBLANK(A2)>0,0,IF(NOT(ISTEXT(A2)),-1,--(COUNTIF($D$2:$D$5,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"~","~~"),"*","~*"),"?","~?"))>0)))` - **Formula (Keep only the first matching occurrence)**: `=IF(B2<>1,0,--(COUNTIF($A$2:A2,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"~","~~"),"*","~*"),"?","~?"))=1))` - **Formula (Count distinct shared identifiers)**: `=IF(COUNTIF(B2:B6,-1)>0,"Invalid List1",SUM(C2:C6))` ### Compare two tables or columns cell-by-cell for differences (audit & reconciliation) - **URL**: https://sheets.arte-soft.com/en/learn/compare-two-tables-or-rows-cell-by-cell-differences/ - **Summary**: Count value differences between aligned snapshots and list the old record IDs for rows containing a difference. *Table — Compare aligned snapshots by position:* | Snapshot 1 (A:C) | Snapshot 2 (E:G) | Cell Diffs on Row | Audit Status | | --- | --- | --- | --- | | EMP-1 \| L4 \| $95,000 | EMP-1 \| L4 \| $95,000 | 0 diffs | Identical | | EMP-2 \| L5 \| $115,000 | EMP-2 \| L6 \| $128,000 | 2 diffs (Level + Pay!) | Flagged | | EMP-3 \| L3 \| $78,000 | EMP-3 \| L3 \| $81,000 | 1 diff (Pay) | Flagged (Total = 3 cell diffs, 2 rows) | - **Formula (Count total mismatched cells and list modified record IDs)**: `=SUM((A2:C4 <> E2:G4) * 1)` - **Formula (Extract the list of Record IDs where any field changed)**: `=TEXTJOIN(", ",TRUE,FILTER(A2:A4,((A2:A4<>E2:E4)+(B2:B4<>F2:F4)+(C2:C4<>G2:G4))>0,"No Changes"))` ### Complex Number & AC Phasor Math: Magnitude, Phase, Multiply & Divide - **URL**: https://sheets.arte-soft.com/en/learn/complex-number-phasor-magnitude-phase-multiply-and-divide/ - **Summary**: Model complex impedances and AC phasors a + bi in numeric Real and Imaginary columns to compute modulus (IMABS), phase angle in degrees (IMARGUMENT), complex multiplication (IMPRODUCT), and rationalized division (IMDIV). *Table — Why numeric (Re, Im) columns beat text-encoded "3+4i" strings:* | Operation on z1 = 3 + 4i, z2 = 1 - 2i | Real Component | Imaginary Component | Rectangular String (COMPLEX) | | --- | --- | --- | --- | | Modulus \|z1\| & Phase deg | \|z1\| = 5.0000 | Phase = 53.1301° | Polar: 5 ∠ 53.13° | | Sum z1 + z2 (IMSUM) | 3 + 1 = 4 | 4 + (-2) = 2 | "4+2i" | | Product z1 * z2 (IMPRODUCT) | 3*1 - 4*(-2) = 11 | 3*(-2) + 4*1 = -2 | "11-2i" | | Quotient z1 / z2 (IMDIV) | (3 - 8) / 5 = -1 | (4 - (-6)) / 5 = 2 | "-1+2i" | - **Formula (Modulus |z| (IMABS) and Phase Angle in Degrees (IMARGUMENT))**: `=ROUND(SQRT(B2 ^ 2 + C2 ^ 2), 4)` - **Formula (Complex Multiplication (IMPRODUCT) & Conjugate-Rationalized Division (IMDIV))**: `=LET(denom, B3 ^ 2 + C3 ^ 2, IF(denom = 0, "Divide by Zero Phasor", LET(re, ROUND((B2 * B3 + C2 * C3) / denom, 4), im, ROUND((C2 * B3 - B2 * C3) / denom, 4), re & IF(im >= 0, "+", "") & im & "i")))` ### Complex Polar Powers, Square Roots, Exponentials, and Natural Logs (IMPOWER, IMSQRT, IMEXP & IMLN) - **URL**: https://sheets.arte-soft.com/en/learn/complex-polar-powers-roots-exponentials-and-logarithms-impower-imsqrt-imexp-imln/ - **Summary**: Compute numeric real and imaginary parts of z^n, sqrt(z), exp(z), and ln(z) using De Moivre's theorem and Euler's formula with ATAN2, COS, SIN, EXP, and LN. *Table — Why numeric (Re, Im) columns beat text-encoded IM* strings:* | Operation on z = 3 + 4i (r = 5) | Real Component Formula | Real Result | Imaginary Result | | --- | --- | --- | --- | | z^2 (IMPOWER, n = 2) | r^2 * cos(2 * theta) | -7 | 24 | | sqrt(z) (IMSQRT, n = 0.5) | r^0.5 * cos(0.5 * theta) | 2 | 1 | | z^3 (IMPOWER, n = 3) | r^3 * cos(3 * theta) | -117 | 44 | | ln(z) (IMLN) | LN(SQRT(x^2 + y^2)) | 1.6094 | 0.9273 rad | - **Formula (De Moivre Real & Imaginary Parts of z^n (IMPOWER & IMSQRT))**: `=LET(r_mod, SQRT(B2 * B2 + B3 * B3), th_ang, ATAN2(B2, B3), IF(r_mod = 0, 0, ROUND(POWER(r_mod, B4) * COS(B4 * th_ang), 4)))` - **Formula (Principal Complex Natural Logarithm Real Part (IMLN))**: `=ROUND(LN(SQRT(B2 * B2 + B3 * B3)), 4)` ### Complex Cotangent, Secant & Cosecant Formulas (IMCOT, IMSEC & IMCSC) - **URL**: https://sheets.arte-soft.com/en/learn/complex-reciprocal-trigonometric-functions-imcot-imsec-imcsc/ - **Summary**: Evaluate complex reciprocal trigonometric functions cot(z), sec(z), and csc(z) for lossy RF transmission-line stubs and waveguide impedances using exact conjugate denominator rationalization. *Table — Rationalizing 1/sin(z), 1/cos(z), and cos(z)/sin(z) into numeric components:* | Function | Real Component Formula | Imaginary Component Formula | At z = pi/2 + i*ln(2) | | --- | --- | --- | --- | | IMCSC = 1 / sin(z) | u_s / (u_s^2 + v_s^2) | -v_s / (u_s^2 + v_s^2) | 0.8000 + 0.0000i | | IMSEC = 1 / cos(z) | u_c / (u_c^2 + v_c^2) | -v_c / (u_c^2 + v_c^2) | 0.0000 + 1.3333i | | IMCOT = cos(z) / sin(z) | (u_c*u_s + v_c*v_s) / (u_s^2 + v_s^2) | (v_c*u_s - u_c*v_s) / (u_s^2 + v_s^2) | 0.0000 - 0.6000i | - **Formula (Complex Cotangent Real & Imaginary Components (IMCOT))**: `=LET(ang_a, B2, hyp_b, B3, ch_b, (EXP(hyp_b) + EXP(-hyp_b)) / 2, sh_b, (EXP(hyp_b) - EXP(-hyp_b)) / 2, us, SIN(ang_a) * ch_b, vs, COS(ang_a) * sh_b, uc, COS(ang_a) * ch_b, vc, -SIN(ang_a) * sh_b, ROUND((vc * us - uc * vs) / (us ^ 2 + vs ^ 2), 4))` - **Formula (Complex Secant & Cosecant Reciprocals (IMSEC & IMCSC))**: `=LET(ang_a, B2, hyp_b, B3, ch_b, (EXP(hyp_b) + EXP(-hyp_b)) / 2, sh_b, (EXP(hyp_b) - EXP(-hyp_b)) / 2, us, SIN(ang_a) * ch_b, vs, COS(ang_a) * sh_b, ROUND(us / (us ^ 2 + vs ^ 2), 4))` ### Composite Lamina Rule of Mixtures (Voigt / Reuss) & Halpin-Tsai Transverse Modulus - **URL**: https://sheets.arte-soft.com/en/learn/composite-rule-of-mixtures-voigt-reuss-and-halpin-tsai/ - **Summary**: Calculate longitudinal stiffness E1 via the Voigt iso-strain rule of mixtures and transverse stiffness E2 via both the Reuss iso-stress lower bound and the semi-empirical Halpin-Tsai micromechanics equation. *Table — Predict orthotropic carbon-epoxy ply stiffness along and across fibers!:* | Micromechanics Model | Stiffness Direction | Formula Summary | CFRP Result (Vf = 0.60) | | --- | --- | --- | --- | | Voigt Rule of Mixtures | Longitudinal E1 (Iso-Strain) | Vf*Ef + (1 - Vf)*Em | 139.4 GPa | | Halpin-Tsai (xi = 2.0) | Transverse E2 (Realistic) | Em*(1 + xi*eta*Vf)/(1 - eta*Vf) | 17.61 GPa | | Reuss Inverse Rule | Transverse E2 (Lower Bound) | 1 / (Vf/Ef + (1 - Vf)/Em) | 8.55 GPa | - **Formula (Longitudinal Modulus E1 — Voigt Iso-Strain Rule of Mixtures (GPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1), "Invalid Composite Inputs", ROUND((B4 * B2) + ((1 - B4) * B3), 2))` - **Formula (Transverse Modulus E2 — Halpin-Tsai Equation (GPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1, B5 < 0), "Invalid Composite Inputs", ROUND(B3 * (1 + B5 * (((B2 / B3) - 1) / ((B2 / B3) + B5)) * B4) / (1 - (((B2 / B3) - 1) / ((B2 / B3) + B5)) * B4), 2))` ### Composite Steel-Concrete Beam Shear Stud Count Formula - **URL**: https://sheets.arte-soft.com/en/learn/composite-steel-concrete-deck-headed-shear-stud-connector-count-and-plastic-moment/ - **Summary**: Calculate Governing Horizontal Interface Shear V_prime (kN) between Midspan & Support, Concrete Slab Compression Depth a (mm), Studs Required per Half-Span, and Total Full-Span Studs. *Table — Count shear studs between zero-moment support and maximum-moment midspan—then DOUBLE for the full simple span!:* | AISC 360 Composite Stud KPI (As=8,500 mm², Fy=345, fc'=28, beff=2,000, Qn=95 kN) | Formula | Verified Output | | --- | --- | --- | | Half-Span Horizontal Shear V' (kN) | MIN(As*Fy, 0.85*fc'*beff*ts) / 1000 | 2,932.50 kN | | Slab Compression Depth a (mm) | (V_prime_kN * 1000) / (0.85 * fc' * beff) | 61.61 mm (123.21 @ beff=1,000 mm) | | Studs Required per Half-Span | ROUNDUP(V_prime_kN / Qn_stud_kN, 0) | 31 studs | | Total Studs Across Full Span | 2 * Half_Span_Studs | 62 studs | - **Formula (AISC 360 Full-Composite Horizontal Shear & Total Stud Formula)**: `=LET(as_m, B2, fy_s, B3, fc_c, B4, be_m, B5, ts_m, B6, qn_k, B7, IF(OR(as_m <= 0, fy_s < 235, fy_s > 460, fc_c < 20, fc_c > 60, be_m <= 200, ts_m < 50, qn_k <= 10), "Invalid Composite Input", LET(vh_k, MIN((as_m * fy_s) / 1000, (0.85 * fc_c * be_m * ts_m) / 1000), 2 * ROUNDUP(vh_k / qn_k, 0))))` - **Formula (Spandrel Edge-Beam Narrower Slab Width Check (Halve Effective Width b_eff = 1,000 mm))**: `=IF(ISTEXT(E5), E5, LET(vh_k, MIN((B2 * B3) / 1000, (0.85 * B4 * B5 * B6) / 1000), ROUND((vh_k * 1000) / (0.85 * B4 * B5), 2)))` ### Compound Logic: IF Cell Is (X or Y) and Z (Nested AND + OR Rebate Gate) - **URL**: https://sheets.arte-soft.com/en/learn/compound-and-or-eligibility-gate-if-x-or-y-and-z/ - **Summary**: Evaluate compound business eligibility rules—such as Tier is ("Gold" OR "Platinum") AND Status is "Active" AND Spend >= 1,000—without operator-precedence bugs. *Table — Nesting OR inside AND prevents English phrasing ambiguity:* | Tier | Status | Order Spend | OR(Gold, Platinum) | Full AND(...) Rebate Result | | --- | --- | --- | --- | --- | | Gold | Active | 1,500 | TRUE | Eligible (120) | | Gold | Suspended | 2,500 | TRUE | Ineligible (0 — fails Status) | | Silver | Active | 3,000 | FALSE | Ineligible (0 — fails Tier) | - **Formula (Compound AND + OR Rebate Formula)**: `=IF(AND(OR(B2 = "Gold", B2 = "Platinum"), C2 = "Active", D2 >= $G$2), ROUND(D2 * $G$3, 2), 0)` ### Compound interest formula: project lump-sum growth across any compounding frequency - **URL**: https://sheets.arte-soft.com/en/learn/compound-interest-formula/ - **Summary**: Calculate ending balance P * (1 + r/m)^(m*t) and total interest earned for annual, quarterly, monthly, or daily compounding. *Table — The algebraic compound interest formula vs FV():* | Input (A) | Value (B) | | --- | --- | | Principal (P) | 10000 | | Annual Rate (r) | 0.08 | | Compounds / Year (m) | 4 | | Years (t) | 5 | - **Formula (Calculate ending balance and cross-check against FV)**: `=ROUND(B1 * (1 + B2 / B3)^(B3 * B4), 2)` - **Formula (Compare simple interest vs compound interest gain)**: `=ROUND(B1 * (1 + B2 / B3)^(B3 * B4) - B1, 2)` ### Compressed-Air Orifice Leak SCFM & Annual kWh Waste Formula - **URL**: https://sheets.arte-soft.com/en/learn/compressed-air-orifice-leak-choked-scfm-and-annual-kwh-waste-formula/ - **Summary**: Calculate Sonic Choked Compressed-Air Orifice Leak Flow (SCFM), Continuous Wasted Compressor Power (kW), Annual Electricity Waste (kWh/yr), and Annual Leak Cost ($/yr). *Table — Use absolute pressure (psig + 14.7)—and remember doubling leak diameter quadruples wasted kW!:* | Ultrasonic Air-Leak Audit KPI (100 psig, 1/4" Sharp Orifice, 20 kW/100 SCFM, $0.12) | Formula | Verified Output | | --- | --- | --- | | Choked Sonic Leak Flow (SCFM) | 26.6 * Cd * (Psig + 14.7) * Diam_in^2 | 116.32 SCFM (29.08 @ 1/8") | | Continuous Wasted Power (kW) | SCFM_Leak * (kW_Per_100SCFM / 100) | 23.26 kW (5.82 kW @ 1/8") | | Annual Energy Waste (kWh/yr) | Wasted_kW * 8760 | 203,792.88 kWh/yr | | Annual Leak Electricity Cost ($/yr) | Annual_kWh * Rate_Per_kWh | $24,455.15/yr ($6,113.79 @ 1/8") | - **Formula (DOE Choked-Orifice SCFM & Annual Leak Cost Formula)**: `=LET(pg_s, B2, dm_i, B3, cd_o, B4, kw_c, B5, el_r, B6, IF(OR(pg_s < 15, dm_i <= 0, cd_o <= 0, cd_o > 1, kw_c <= 0, el_r <= 0), "Invalid Air Leak Input", LET(sc_f, 26.6 * cd_o * (pg_s + 14.7) * (dm_i ^ 2), kw_w, sc_f * (kw_c / 100), ROUND(kw_w * 8760 * el_r, 2))))` - **Formula (Quarter-Area 1/8-Inch Orifice Scaling Check (Set Leak Diameter = 0.125 in))**: `=IF(ISTEXT(E5), E5, ROUND(26.6 * B4 * (B2 + 14.7) * (B3 ^ 2), 2))` ### Compressed Air Receiver Drawdown Time & Tank Volume Formula - **URL**: https://sheets.arte-soft.com/en/learn/compressed-air-receiver-tank-drawdown-holdup-time-and-compressor-sizing/ - **Summary**: Calculate Usable Free-Air-Delivery Buffer Capacity V_FAD (m³), Net Surge Deficit Rate (m³/min FAD), Actuator Hold-Up Time Before Minimum Pressure (s), and Receiver Volume Required for a 3-Minute Surge (m³). *Table — A receiver tank stores zero usable surge air if header pressure already sits near actuator minimum!:* | Air Receiver Buffer KPI (V=5.0 m³, P1=8.5 -> P2=6.0 barg, Deficit=5.0 m³/min) | Formula | Verified Output | | --- | --- | --- | | Net Surge Deficit (m³/min FAD) | Surge_Demand_FAD - Compressor_FAD | 5.00 m³/min | | Usable Stored Free Air (m³ FAD) | (Tank_Vol_m3 * (P1_barg - P2_barg)) / Patm | 12.34 m³ FAD (5.92 @ P1 = 7.2 barg) | | Surge Hold-Up Time (seconds) | (Usable_FAD_m3 / Net_Deficit) * 60 | 148.08 s (71.08 s @ P1 = 7.2 barg!) | | Tank Vol for 3-Min Surge (m³) | (3 * Net_Deficit * Patm) / (P1 - P2) | 6.08 m³ (12.66 m³ @ P1 = 7.2 barg) | - **Formula (Boyle’s Law Free-Air-Delivery Receiver Drawdown & Sizing Formula)**: `=LET(vl_r, B2, pa_g, B3, pb_g, B4, at_m, B5, qd_m, B6, qs_m, B7, IF(OR(vl_r <= 0, pb_g <= 0, pa_g <= pb_g, at_m < 0.7, at_m > 1.1, qs_m < 0, qd_m <= qs_m), "Invalid Receiver Input", ROUND((3 * (qd_m - qs_m) * at_m) / (pa_g - pb_g), 2)))` - **Formula (Energy-Saving Compressor Setpoint Lowering Trade-Off Check (Lower P_1 = 7.20 bar_g))**: `=IF(ISTEXT(E5), E5, LET(uf_m, (B2 * (B3 - B4)) / B5, ROUND((uf_m / (B6 - B7)) * 60, 2)))` ### CONCAT function: join cells and ranges when no separator is needed - **URL**: https://sheets.arte-soft.com/en/learn/concat-vs-textjoin-combine-cells/ - **Summary**: Assemble compact tracking codes across cells or whole ranges with CONCAT, and know when delimiter-aware TEXTJOIN is the safer choice. *Table — Build a compact lot code from four adjacent columns:* | Plant (A) | Line (B) | Shift (C) | Batch (D) | CONCAT(A2:D2) | | --- | --- | --- | --- | --- | | BG | 02 | B | 19 | BG02B19 | - **Formula (Pass a range directly into CONCAT)**: `=CONCAT(A2:D2)` - **Formula (Empty cells add nothing—and CONCAT inserts no delimiters)**: `=CONCAT(A2,"-",B2,"-",D2)` ### Concatenate IF: join matching rows into a comma-separated list - **URL**: https://sheets.arte-soft.com/en/learn/concatenate-if-conditional-textjoin/ - **Summary**: Combine TEXTJOIN and FILTER to roll up every name or SKU matching a category into one clean comma-separated cell. *Table — Roll up one-to-many matches into a single cell:* | RepName (A) | Region (B) | Included in EMEA Rollup? | | --- | --- | --- | | Nora | EMEA | Yes (1st) | | Liam | AMER | No | | Tariq | EMEA | Yes (2nd) | | Mei | APAC | No | | Elena | EMEA | Yes (3rd) | - **Formula (TEXTJOIN + FILTER conditional concatenation)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A6, B2:B6=C2, ""))` - **Formula (Custom empty-region fallback)**: `=LET(s, TEXTJOIN(", ", TRUE, FILTER(A2:A6, B2:B6=C2, "")), IF(s="", "None assigned", s))` ### CMU Masonry Wall Prism Strength & Slenderness Formula - **URL**: https://sheets.arte-soft.com/en/learn/concrete-block-cmu-masonry-prism-compressive-strength-and-slenderness-formula/ - **Summary**: Calculate Masonry Wall Slenderness Ratio h/r, TMS 402 Piecewise Parabolic-to-Euler Buckling Reduction Factor, Nominal Axial Capacity Pn (kN), and LRFD Strength phi*Pn (kN). *Table — Cross h/r = 99 on a tall warehouse CMU block wall and TMS 402 switches from parabolic crushing to inverse-square Euler buckling!:* | TMS 402 Reinforced CMU Wall KPI (fm=13.8 MPa, An=190,000 mm², r=58 mm, h=4.2 vs 6.2 m) | Formula | Verified Output | | --- | --- | --- | | Wall Slenderness Ratio (h / r) | Unbraced_Height_h_mm / Radius_Gyration_r_mm | 72.41 (106.90 > 99 Euler @ h=6,200 mm!) | | TMS 402 Slenderness Factor Rs | IF(h/r<=99, 1-(h/(140*r))^2, (70/(h/r))^2) | 0.7325 (0.4288 @ h=6,200 mm!) | | Nominal Axial Capacity Pn (kN/m) | (0.80 * (0.80 * fm * An) * Rs) / 1000 | 1,229.1 kN/m (719.6 kN/m @ h=6,200 mm) | | LRFD Design Capacity phi*Pn (kN/m) | 0.90 * Nominal_Pn_kN | 1,106.2 kN/m (647.6 kN/m = -41.5% drop!) | - **Formula (TMS 402 Piecewise Slenderness Transition (h/r = 99) & Axial LRFD Formula)**: `=LET(fm_p, B2, an_m, B3, hw_m, B4, rg_m, B5, hr_r, hw_m / rg_m, pc_k, (0.8 * (0.8 * fm_p * an_m)) / 1000, IF(OR(fm_p < 5, fm_p > 45, an_m <= 10000, hw_m < 1000, rg_m <= 15), "Invalid Masonry Input", ROUND(0.9 * pc_k * IF(hr_r <= 99, 1 - ((hr_r / 140) ^ 2), (70 / hr_r) ^ 2), 1)))` - **Formula (High-Bay 6.2 m Big-Box Retail Wall Euler Buckling Transition Check (Set Wall Height B4 = 6,200 mm))**: `=IF(ISTEXT(E5), E5, LET(hr_r, B4 / B5, ROUND(IF(hr_r <= 99, 1 - ((hr_r / 140) ^ 2), (70 / hr_r) ^ 2), 4)))` ### ASTM C136 Sand Sieve Analysis & Fineness Modulus Formula - **URL**: https://sheets.arte-soft.com/en/learn/concrete-fine-aggregate-sieve-analysis-fineness-modulus-astm-c136-formula/ - **Summary**: Calculate Cumulative Percentage Retained Sum Across the 6 Standard ASTM Sieves (#4 to #100), Fine-Aggregate Fineness Modulus FM, ACI 211.1 Coarseness Shift vs 2.70 Baseline, and ASTM C33 Spec Status. *Table — Summing INDIVIDUAL sieve percentages—or accidentally including the #200 pan sieve—ruins ACI 211.1 concrete coarse-aggregate batching!:* | ASTM C136 / C33 Sand KPI (Cum Retained: 2, 14, 33, 56, 81, 95%) | Formula | Verified Output | | --- | --- | --- | | 6-Sieve Cumulative Retained Sum | B2 + B3 + B4 + B5 + B6 + B7 | 281.0 (221.0 @ fine pit sand) | | Fineness Modulus FM | Cum_Retained_Sum / 100 | 2.81 (2.21 < 2.30 @ fine pit sand!) | | ACI 211.1 Reference Shift (dFM) | Fineness_Modulus_FM - 2.70 | +0.11 (-0.49 @ fine pit sand) | | ASTM C33 Concrete Sand Gate | 2.30 <= FM <= 3.10 | ASTM C33 SPEC SAND (2.3-3.1) | - **Formula (Monotonic Cumulative Sieve Validation & ASTM C136 Fineness Modulus Formula)**: `=LET(s_a, B2, s_b, B3, s_c, B4, s_d, B5, s_e, B6, s_f, B7, IF(OR(s_a < 0, s_b < s_a, s_c < s_b, s_d < s_c, s_e < s_d, s_f < s_e, s_f > 100), "Invalid Sieve Input", LET(fm_v, (s_a + s_b + s_c + s_d + s_e + s_f) / 100, IF(fm_v < 2.3, "TOO FINE (HIGH WATER DEMAND)", IF(fm_v > 3.1, "TOO COARSE (HARSH BLEEDING)", "ASTM C33 SPEC SAND (2.3-3.1)")))))` - **Formula (Fine Windblown Pit Sand Water-Demand Reject Check (Set Cum Retained = 0, 4, 15, 38, 72, 92%))**: `=IF(ISTEXT(E2), E2, ROUND((B2 + B3 + B4 + B5 + B6 + B7) / 100, 2))` ### Concrete Abrams Water-Cement Ratio & Batch Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/concrete-mix-abrams-water-cement-ratio-strength-and-absolute-volume-yield/ - **Summary**: Calculate Water-to-Cement Ratio w/c, Abrams Exponential 28-Day Cylinder Strength f'_c (MPa), Air-Free Solid+Water Volume (m³), and Air-Adjusted Batch Yield (m³). *Table — Hosing 38 liters of jobsite water into a 1 m³ ready-mix truck raises w/c from 0.45 to 0.55—slashing 28-day strength by 19% AND over-yielding the batch!:* | ACI 211 Concrete Mix KPI (380 kg Cem, 171 kg Water, 1,780 kg Agg, 2% Air) | Formula | Verified Output | | --- | --- | --- | | Water-to-Cement Ratio w/c | Mixing_Water_kg / Cement_Mass_kg | 0.450 (0.550 @ 209 kg retempered!) | | Abrams 28-Day Strength f'c (MPa) | 96.5 / (8.2 ^ (Water / Cement)) | 37.44 MPa (30.33 MPa @ 0.55 w/c!) | | Air-Free Solid+Water Vol (m³) | Cem/3150 + Water/1000 + Agg/2650 | 0.9633 m³ (1.0013 m³ @ 209 kg water) | | Total Air-Adjusted Yield (m³) | Solid_Water_Vol_m3 / (1 - Air_Pct/100) | 0.9830 m³ (1.0218 m³ over-yield!) | - **Formula (Abrams Strength Law & ACI 211.1 Absolute-Volume Yield Formula)**: `=LET(cm_k, B2, wt_k, B3, ca_k, B4, fa_k, B5, sc_g, B6, sa_g, B7, ar_p, B8, IF(OR(cm_k <= 100, wt_k <= 0, (wt_k / cm_k) < 0.25, (wt_k / cm_k) > 0.85, ca_k <= 0, fa_k <= 0, sc_g < 2, sc_g > 3.5, sa_g < 2, sa_g > 3.5, ar_p < 0, ar_p > 10), "Invalid Concrete Mix", LET(sv_m, (cm_k / (sc_g * 1000)) + (wt_k / 1000) + ((ca_k + fa_k) / (sa_g * 1000)), ROUND(sv_m / (1 - ar_p / 100), 4))))` - **Formula (Jobsite 38-Liter Retempering Strength Penalty Check (Set Mixing Water = 209.0 kg))**: `=IF(ISTEXT(E5), E5, ROUND(96.5 / (8.2 ^ (B3 / B2)), 2))` ### Concrete calculator formula: Cubic Yards (with waste %) & 80-lb bag count - **URL**: https://sheets.arte-soft.com/en/learn/concrete-slab-and-footing-cubic-yards-bag-estimator/ - **Summary**: Convert Length (ft) × Width (ft) × Thickness (inches) into ready-mix Cubic Yards and pre-mix 80-lb / 60-lb bag counts. *Table — Never divide by 9 instead of 27—1 Cubic Yard equals 27 Cubic Feet!:* | Concrete Pour Metric (20' × 15' × 4" Slab, 10% Waste) | Formula | Result | | --- | --- | --- | | Net Volume (Cubic Feet) | =A2 * B2 * (C2 / 12) | 100.00 cu ft | | Net Volume (Cubic Yards) | =ROUND((A2 * B2 * (C2 / 12)) / 27, 2) | 3.70 cu yd | | Ready-Mix Order w/ 10% Contingency | =ROUND(((A2*B2*(C2/12))/27) * (1+D2), 2) | 4.07 cu yd | | 80-lb Pre-Mix Bags (0.60 cu ft / bag) | =ROUNDUP((A2*B2*(C2/12)*(1+D2)) / 0.6, 0) | 184 bags | - **Formula (Ready-mix Cubic Yards (with waste %) and 80-lb pre-mix bag count formulas)**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:C2)<=0,D2<0,E2<=0),"Invalid volume inputs",ROUND(((A2 * B2 * (C2 / 12)) / 27) * (1 + D2), 2))` - **Formula (Whole bags for the supplied per-bag yield)**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:C2)<=0,D2<0,E2<=0),"Invalid volume inputs",ROUNDUP((A2 * B2 * (C2 / 12) * (1 + D2)) / E2, 0))` ### Conditional Average with OR Criteria & Calculated Arrays (AVERAGE + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/conditional-average-multi-criteria-average-filter-pipeline/ - **Summary**: Calculate conditional averages when AVERAGEIFS falls short—such as OR conditions across regions or row-level gross margin percentages computed on the fly without a helper column. *Table — Two cases where AVERAGEIFS fails—and AVERAGE(FILTER(...)) succeeds:* | Analytical Goal | Why AVERAGEIFS Fails | AVERAGE + FILTER Solution | | --- | --- | --- | | Region is North OR West | Averaging two AVERAGEIFS skews unequal sample sizes | AVERAGE(FILTER(Rev, (Reg="North")+(Reg="West"))) | | Row-level Margin % where Rev >= 1000 | Calculated array (Rev-Cost)/Rev rejected as range | AVERAGE(FILTER((Rev-Cost)/Rev, Rev>=1000)) | | Empty filter protection | AVERAGE of #CALC! / empty throws error | IFERROR(ROUND(AVERAGE(FILTER(...)), 4), "NO_MATCH") | - **Formula (OR-Criteria & Calculated-Margin AVERAGE(FILTER) Formula)**: `=IFERROR(ROUND(AVERAGE(FILTER(C2:C7, ((B2:B7 = "North") + (B2:B7 = "West")) * (C2:C7 >= 1000))), 2), "NO_MATCH")` ### Conditional Formatting Based on XLOOKUP or VLOOKUP Result Across a Reference Table - **URL**: https://sheets.arte-soft.com/en/learn/conditional-formatting-based-on-xlookup-and-vlookup-status-table/ - **Summary**: Highlight order rows dynamically without adding clutter columns by writing an XLOOKUP (or IFNA + VLOOKUP) conditional-formatting rule that checks credit-hold or recall status in a master vendor/SKU table. *Table — Cross-table highlighting without helper columns: always lock the lookup table and trap #N/A!:* | Cross-Table Formatting Goal on Selection A2:B20 | Custom Rule Formula | Unmatched Key Behavior | | --- | --- | --- | | Highlight Row if Master Status = "Recalled" (XLOOKUP) | =XLOOKUP($A2, $D$2:$D$5, $E$2:$E$5, "Unlisted") = "Recalled" | Clean FALSE (No #N/A!) | | Highlight Row if Unlisted / Missing from Master Catalog | =COUNTIF($D$2:$D$5, $A2) = 0 | TRUE for Rogue / Unregistered SKUs | | Legacy VLOOKUP Equivalent | =IFNA(VLOOKUP($A2, $D$2:$E$5, 2, FALSE), "Unlisted") = "Recalled" | Identical Cross-Version Result | - **Formula (Row-Highlight Rule Based on XLOOKUP Master Status = "Recalled")**: `=XLOOKUP($A2, $D$2:$D$5, $E$2:$E$5, "Unlisted") = "Recalled"` - **Formula (Combined Order Shipment Gate (Flag Recalled OR Unregistered Master SKUs))**: `=IF(XLOOKUP($A2, $D$2:$D$5, $E$2:$E$5, "Unlisted") = "Active", "Cleared to Ship", "Flagged: " & XLOOKUP($A2, $D$2:$D$5, $E$2:$E$5, "Unregistered_SKU"))` ### Conditional Formatting for Dates: Blank-Safe Overdue, Due in 7 Days & Valid Date Checks - **URL**: https://sheets.arte-soft.com/en/learn/conditional-formatting-dates-overdue-upcoming-and-window-formula/ - **Summary**: Prevent blank cells from lighting up red as "1900-01-00 Overdue" by pairing ISNUMBER($B2) with an explicit reference date $E$2 to classify Overdue, Due Within 7 Days, and Scheduled items. *Table — Why =$B2 < TODAY() turns every blank row red—and how ISNUMBER($B2) fixes it!:* | Due Date Cell $B2 (Ref Date $E$2 = 2026-05-10) | Naive =$B2 < $E$2 | Blank-Safe =AND(ISNUMBER($B2), $C2<>"Completed", $B2<$E$2) | | --- | --- | --- | | 2026-05-04 (Open) | TRUE (Red) | TRUE (Genuine Overdue SLA) | | Blank Cell "" (Unscheduled Row) | TRUE (False Red Alarm!) | FALSE (Ignored Cleanly) | | 2026-05-14 (Open, +4 days) | FALSE | FALSE (Triggers 7-Day Upcoming Rule Instead!) | - **Formula (Blank-Safe SLA Date Tier Classifier (Overdue / Due <= 7d / On Track / Unscheduled))**: `=IF(TRIM($C2) = "Completed", "Completed", IF(NOT(ISNUMBER($B2)), "Unscheduled or Text Date", IF($B2 < $E$2, "Overdue", IF($B2 <= $E$2 + 7, "Due Within 7 Days", "Scheduled (> 7 Days)"))))` - **Formula (Upcoming 7-Day Window Boolean Rule =AND(ISNUMBER($B2), TRIM($C2)<>"Completed", $B2>=$E$2, $B2<=$E$2+7))**: `=AND(ISNUMBER($B2), TRIM($C2) <> "Completed", $B2 >= $E$2, $B2 <= $E$2 + 7)` ### Conditional Formatting: Highlight an Entire Row or Column Based on Another Cell ($C2 vs C$2) - **URL**: https://sheets.arte-soft.com/en/learn/conditional-formatting-highlight-entire-row-mixed-reference-formula/ - **Summary**: Master mixed cell references in custom conditional-formatting rules: lock the column ($C2="Overdue") to highlight an entire row across A2:E20, or lock the row (B$2="Blocked") to highlight an entire column. *Table — Why =C2="Overdue" only colors column C while =$C2="Overdue" highlights the entire row!:* | Formatting Goal on Selection A2:D20 | Custom Rule Written for Top-Left Cell A2 | Why the Dollar Sign Placement Works | | --- | --- | --- | | Highlight Entire Row when Status (Col C) = "Overdue" | =$C2 = "Overdue" | Locks column $C across cols A:D; row 2 increments down rows 2:20 | | Highlight Entire Row when Balance > 0 AND Overdue | =AND($C2 = "Overdue", $D2 > 0) | Combines two column-locked conditions on the same row | | Highlight Entire Column when Row 2 Flag = "Freeze" | =A$2 = "Freeze" | Locks row $2 down all rows; column A shifts across cols A:D | - **Formula (Row-Highlight Boolean Rule =AND(TRIM($C2) = "Overdue", $D2 > 0))**: `=AND(TRIM($C2) = "Overdue", $D2 > 0)` - **Formula (Count of Rows Highlighted Across the Table =COUNTIFS(C2:C5, "Overdue", D2:D5, ">0"))**: `=COUNTIFS(C2:C5, "Overdue", D2:D5, ">0")` ### Conditional Formatting If Cell Contains Specific Text, Any Text, or Not Equal - **URL**: https://sheets.arte-soft.com/en/learn/conditional-formatting-if-cell-contains-specific-text-or-any-text/ - **Summary**: Write bullet-proof text conditional-formatting formulas: =ISNUMBER(SEARCH("urgent", $B2)) for case-insensitive substring highlights, =ISNUMBER(FIND("URGENT", $B2)) for exact-case tokens, and =AND(ISTEXT($B2), LEN(TRIM($B2))>0) for non-blank text. *Table — Why SEARCH vs. FIND vs. ISTEXT solves every text-based Conditional Formatting rule!:* | Text Formatting Rule Goal | Custom Formula (Top-Left Row 2) | Key Advantage Over Preset | | --- | --- | --- | | Contains Substring (Case-Insensitive) | =ISNUMBER(SEARCH("urgent", $B2)) | Highlights entire row A2:D2 when $B2 is column-locked | | Contains EITHER Keyword ("urgent" OR "sev1") | =OR(ISNUMBER(SEARCH("urgent", $B2)), ISNUMBER(SEARCH("sev1", $B2))) | Single rule instead of stacked duplicate rules | | Contains Visible Text (Ignores Numbers & Spaces) | =AND(ISTEXT($B2), LEN(TRIM($B2)) > 0) | Rejects numeric IDs and accidental spacebar cells | | Not Equal to "Approved" (Ignores Blank Rows) | =AND(NOT(ISBLANK($C2)), TRIM($C2) <> "Approved") | Prevents blank template rows from lighting up! | - **Formula (Multi-Keyword Row Highlight Rule (Contains "urgent" OR "sev1", Case-Insensitive))**: `=OR(ISNUMBER(SEARCH("urgent", $B2)), ISNUMBER(SEARCH("sev1", $B2)))` - **Formula (Blank-Safe "Not Equal to Approved" Rule =AND(NOT(ISBLANK($C2)), TRIM($C2) <> "Approved"))**: `=AND(NOT(ISBLANK($C2)), LEN(TRIM($C2 & "")) > 0, TRIM($C2 & "") <> "Approved")` ### Conditional MEDIAN and MODE (MEDIANIFS / MODEIFS with FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/conditional-median-and-mode-with-criteria/ - **Summary**: Nest FILTER inside MEDIAN and MODE.SNGL to calculate outlier-resistant group medians and most-common values without helper columns. *Table — Why compensation and latency benchmarks need conditional MEDIAN:* | Dept (A) | Salary (B) | Sales Metric | Value | | --- | --- | --- | --- | | Eng | 95000 | AVERAGEIFS (skewed) | 100000 | | Sales | 68000 | MEDIAN(FILTER(...)) | 70000 | | Sales | 72000 | MODE.SNGL(FILTER(...)) | 68000 | | Sales | 68000 | | | | Sales | 192000 | | | - **Formula (Conditional MEDIAN and MODE.SNGL formulas)**: `=MEDIAN(FILTER(B2:B6, A2:A6=C2))` - **Formula (Compare conditional MODE.SNGL and skewed AVERAGEIFS)**: `=MODE.SNGL(FILTER(B2:B6, A2:A6=C2))` ### Conditional Alert Messages & 5-Star Rating Displays with REPT - **URL**: https://sheets.arte-soft.com/en/learn/conditional-message-and-star-rating-with-rept-formula/ - **Summary**: Display conditional status badges without IF using REPT("ALERT", --(Condition)) and render 5-slot star or block rating bars REPT("*", Score) & REPT("-", 5 - Score). *Table — Turn REPT(text, 0) = "" into a concise conditional badge generator!:* | Use Case | Formula Pattern | Input Example | Displayed Output | | --- | --- | --- | --- | | Single Conditional Alert | REPT("OVERDUE", --(Days > 30)) | Days = 42 / Days = 15 | "OVERDUE" / "" (Blank) | | Multi-Flag Audit Tag | REPT("[LATE]", --(C2>30)) & REPT("[HIGH$]", --(D2>1000)) | Days = 42, Amt = $1,500 | "[LATE][HIGH$]" | | 5-Slot Star Rating | REPT("*", Score) & REPT("-", 5 - Score) | Score = 4 (of 5) | "****-" | - **Formula (Multi-Condition Audit Status Badge via Chained REPT)**: `=REPT("[OVERDUE]", --(B2 > 30)) & REPT("[ESCALATE]", --(C2 >= 1000))` - **Formula (Fixed 5-Slot Star Rating Bar (With 0–5 Score Guard))**: `=IF(OR(D2 < 0, D2 > 5, D2 <> INT(D2)), "Invalid Score (0-5)", REPT("*", D2) & REPT("-", 5 - D2))` ### Conditional Mode: Most Frequent Value with Criteria (MODE.SNGL & FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/conditional-mode-most-frequent-value-with-criteria/ - **Summary**: Find the most common price point, defect code, or ticket response time within a specific department or region using IFERROR(MODE.SNGL(FILTER(values, criteria)), "No Repeating Mode"). *Table — Build the missing "MODEIFS" function with MODE.SNGL + FILTER!:* | Segment (A) | Seat_Pack_Size (B) | Filtered Values for Segment | Conditional MODE.SNGL | | --- | --- | --- | --- | | Enterprise | 50, 100, 50, 250 | {50; 100; 50; 250} | 50 (Appears twice) | | MidMarket | 25, 25, 10 | {25; 25; 10} | 25 (Appears twice) | | Startup (All Unique) | 5, 10 (if changed) | {5; 10} (No repeats!) | "No Repeating Mode" (IFERROR) | - **Formula (Conditional Numeric Mode by Category (with IFERROR Guard))**: `=IFERROR(MODE.SNGL(FILTER(B2:B8, A2:A8 = D2)), "No Repeating Mode")` - **Formula (Count How Many Times That Winning Mode Appears in the Category)**: `=IFERROR(COUNTIFS(A2:A8, D2, B2:B8, MODE.SNGL(FILTER(B2:B8, A2:A8 = D2))), 0)` ### Most frequent text value with criteria: top ticket reason by region - **URL**: https://sheets.arte-soft.com/en/learn/conditional-most-frequent-text-value-by-group/ - **Summary**: Find the #1 recurring text label (defect code, ticket category, or top SKU) within a chosen department or region using COUNTIFS + masked XLOOKUP. *Table — Combine pair-level COUNTIFS with boolean-masked MAX + XLOOKUP:* | Region (A) | IssueType (B) | PairFreq (C) | Masked Score for "North" | | --- | --- | --- | --- | | North | Billing | 2 | 2 (Winner in North -> "Billing"!) | | North | Login | 1 | 1 | | North | Billing | 2 | 2 | | South | Export | 3 | 0 (Zeroed out when querying North!) | | South | Export | 3 | 0 | | South | Export | 3 | 0 | - **Formula (Conditional #1 text mode and peak-count formulas)**: `=LET(sc, (A2:A7 = E2) * C2:C7, IF(MAX(sc) = 0, "No Records", XLOOKUP(MAX(sc), sc, B2:B7)))` - **Formula (Occurrence count of that #1 text issue within the chosen group)**: `=MAX((A2:A7 = E2) * C2:C7)` - **Formula (Count each literal region/reason pair)**: `=IF(OR(A2="",B2=""),0,SUMPRODUCT(($A$2:$A$7=A2)*($B$2:$B$7=B2)))` ### Conditional Percentile (PERCENTILE IF) with FILTER for P90 SLA and pay bands - **URL**: https://sheets.arte-soft.com/en/learn/conditional-percentile-if-with-filter/ - **Summary**: Calculate P90, P75, or P25 percentiles for a specific department, region, or service tier by nesting FILTER inside PERCENTILE.INC. *Table — Why Excel has no built-in PERCENTILEIFS—and how FILTER solves it cleanly:* | Service Tier (A) | Latency ms (B) | Included for "API"? | API Percentile Benchmarks | | --- | --- | --- | --- | | API (5 samples) | 120, 140, 180, 220, 340 | Yes (n = 5) | P50 = 180 ms \| P75 = 220 ms | | API P90 Interpolation | Index 1 + 0.9*(5-1) = 4.6 | 220 + 0.6*(340-220) | P90 = 292 ms | | Auth (2 samples) | 90, 110 | Excluded | P90 ("Auth") = 108 ms | - **Formula (Compute conditional P90 or P75 for a matching category)**: `=IF(OR(NOT(ISNUMBER(F2)),F2<0,F2>1),"Invalid percentile",IF(SUMPRODUCT((A2:A8=E2)*ISNUMBER(B2:B8))=0,"No numeric observations",PERCENTILE.INC(FILTER(B2:B8,(A2:A8=E2)*ISNUMBER(B2:B8)),F2)))` - **Formula (Compute conditional interquartile range (IQR = P75 - P25) by group)**: `=IF(SUMPRODUCT((A2:A8=E2)*ISNUMBER(B2:B8))=0,"No numeric observations",LET(sub,FILTER(B2:B8,(A2:A8=E2)*ISNUMBER(B2:B8)),PERCENTILE.INC(sub,0.75)-PERCENTILE.INC(sub,0.25)))` ### Condorcet Jury Theorem Majority Accuracy Formula - **URL**: https://sheets.arte-soft.com/en/learn/condorcet-jury-theorem-majority-accuracy-and-correlated-votes/ - **Summary**: Calculate majority-vote accuracy for 3-, 5-, and 7-member independent committees/ensembles and verify Marquis de Condorcet’s (1785) p < 0.50 crowd-degradation trap. *Table — Quantify Wisdom of Crowds (and ensemble classifier boosting!) via Condorcet’s (1785) Jury Theorem!:* | Panel / Ensemble Size | Exact Binomial Majority Formula (q = 1 - p) | Accuracy at p=0.70 vs p=0.40 | | --- | --- | --- | | Solo Decision-Maker (N = 1) | p | 0.7000 \| 0.4000 | | 3-Voter Majority (N = 3) | 3*p^2 - 2*p^3 | 0.7840 \| 0.3520 (Worse!) | | 5-Voter Majority (N = 5) | p^5 + 5*p^4*q + 10*p^3*q^2 | 0.8369 \| 0.3174 (Worse!) | | 7-Voter Majority (N = 7) | p^7 + 7*p^6*q + 21*p^5*q^2 + 35*p^4*q^3 | 0.8740 \| 0.2898 (Worse!) | - **Formula (Exact 5-Member Committee / Ensemble Majority Accuracy Formula)**: `=LET(p_ac, B2, q_er, 1 - p_ac, IF(OR(p_ac <= 0, p_ac >= 1), "Require 0 < p < 1", ROUND((p_ac^5) + 5 * (p_ac^4) * q_er + 10 * (p_ac^3) * (q_er^2), 4)))` - **Formula (Exact 7-Member Committee Majority Gain Over Solo Expert (P_7(p) - p) Formula)**: `=LET(p_ac, B2, q_er, 1 - p_ac, IF(OR(p_ac <= 0, p_ac >= 1), "Require 0 < p < 1", LET(p_7, (p_ac^7) + 7 * (p_ac^6) * q_er + 21 * (p_ac^5) * (q_er^2) + 35 * (p_ac^4) * (q_er^3), ROUND(p_7 - p_ac, 4))))` ### Confidence interval for a mean with known population standard deviation - **URL**: https://sheets.arte-soft.com/en/learn/confidence-interval-margin-of-error-formula/ - **Summary**: Calculate a normal-theory confidence interval with known population SD: standard error sigma/SQRT(n), margin Z*SE, and lower/upper bounds. *Table — From sample spread to 95% confidence bounds:* | Confidence Level | Critical Z | SE (SD = 12, n = 36) | Margin of Error | | --- | --- | --- | --- | | 90% | 1.645 | 12 / 6 = 2.00 | ± 3.29 | | 95% | 1.960 | 12 / 6 = 2.00 | ± 3.92 | | 99% | 2.576 | 12 / 6 = 2.00 | ± 5.15 | - **Formula (Margin of error and confidence interval bound formulas)**: `=ROUND(D2 * (B2 / SQRT(C2)), 2)` - **Formula (95% Lower and Upper Confidence Bounds)**: `=ROUND(A2 - D2 * (B2 / SQRT(C2)), 2)` - **Formula (Upper confidence bound)**: `=ROUND(A2 + D2 * (B2 / SQRT(C2)), 2)` ### Conger’s Multi-Rater Generalized Kappa (κ_C): Rater-Specific Marginal Agreement - **URL**: https://sheets.arte-soft.com/en/learn/conger-light-multi-rater-generalized-kappa-agreement-formula/ - **Summary**: Calculate Anthony Conger’s (1980) exact multi-rater kappa κ_C = (P_o - P_e,C) / (1 - P_e,C) across fixed raters with distinct positive-call rates—and contrast against Fleiss pooled P_e. *Table — Why Fleiss’s kappa assumes random interchangeable raters—whereas Conger’s κ_C generalizes Cohen’s κ to a fixed panel!:* | Panel Agreement Scenario (p_1 = 0.25, p_2 = 0.55, p_3 = 0.40) | Conger Pairwise P_e,C | Conger Multi-Rater κ_C | Fleiss Pooled κ Comparison | | --- | --- | --- | --- | | Baseline Observed P_o = 0.78 | 0.5050 | 0.5556 (Moderate) | Fleiss κ = 0.5417 (P_e = 0.5200) | | High Concordance P_o = 0.90 | 0.5050 | 0.7980 (Substantial–Almost Perfect) | Reflects fixed-panel bias penalty | | Out-of-Bounds Probability (< 0 or > 1) | Error Guard | "Probabilities Must Be in [0, 1]" | Probability Audit Guard | - **Formula (Conger Exact Multi-Rater Kappa κ_C = (P_o - P_e,C) / (1 - P_e,C))**: `=IF(OR(B2 < 0, B2 > 1, MIN(B3:B5) < 0, MAX(B3:B5) > 1, B6 >= 1), "Probabilities Must Be in [0, 1]", ROUND((B2 - B6) / (1 - B6), 4))` - **Formula (Conger Pairwise Chance Agreement P_e,C vs. Fleiss Pooled Kappa)**: `=IF(OR(B2 < 0, B2 > 1, MIN(B3:B5) < 0, MAX(B3:B5) > 1), "Probabilities Must Be in [0, 1]", ROUND(B6, 4))` ### Conjoint Part-Worth & Multinomial Logit Share Formula - **URL**: https://sheets.arte-soft.com/en/learn/conjoint-part-worth-utility-and-multinomial-logit-preference-share-formula/ - **Summary**: Calculate Conjoint Net Part-Worth Utility U_A = alpha_A - beta * Price_A, McFadden Multinomial Logit (MNL) Choice Shares EXP(U_i) / SUM(EXP(U_j)), and IIA Relative Odds Ratio EXP(U_A - U_B). *Table — Convert conjoint part-worth utilities into probabilistic market shares via McFadden’s MNL!:* | Conjoint MNL Choice Metric (WorthA=5, PriceA=$30, beta=0.10, UB=1, U0=0) | Formula | Verified Output | | --- | --- | --- | | Product A Net Utility U_A | Feature_Worth_A - beta * Price_A | 2.0000 utils (1.0000 @ $40) | | MNL Preference Share (Product A) | EXP(U_A) / (EXP(U_A) + EXP(U_B) + EXP(U_0)) | 0.6652 (66.52%; 0.3333 Equal) | | MNL Preference Share (Comp B) | EXP(U_B) / (EXP(U_A) + EXP(U_B) + EXP(U_0)) | 0.2447 (24.47%) | | IIA Relative Odds Share_A / Share_B | EXP(U_A - U_B) (Invariant to U_0!) | 2.7183 (Unchanged @ U_0=2!) | - **Formula (McFadden Multinomial Logit (MNL) Choice Probability Formula)**: `=LET(wr_a, B2, pr_a, B3, bt_p, B4, u_b, B5, u_0, B6, u_a, wr_a - bt_p * pr_a, IF(OR(pr_a < 0, bt_p <= 0, ABS(u_a) > 50, ABS(u_b) > 50, ABS(u_0) > 50), "Invalid Conjoint Utility", LET(dn_m, EXP(u_a) + EXP(u_b) + EXP(u_0), ROUND(EXP(u_a) / dn_m, 4))))` - **Formula (Three-Way Equal-Utility Symmetry & IIA Invariance Checks)**: `=IF(ISTEXT(E3), E3, ROUND(EXP(E2 - B5), 4))` ### Audit Connected-App OAuth Scopes, Base Revisions, and Pending-Review Edits - **URL**: https://sheets.arte-soft.com/en/learn/connected-apps-oauth-read-range-revision-and-pending-review-conflict/ - **Summary**: Validate external MCP write prerequisites (cloud workbook, active Pro, editor/owner role, 16-80 char operation_id, <= 100 cells, and matching base revision vs pendingReview) in Arte Sheets. *Table — Separate Connected-App OAuth tool governance from metered in-app Pro AI credits:* | Connector Gate / Limit | Exact Server Rule | Outcome When Violated | | --- | --- | --- | | Storage & OAuth Scope | Cloud workbook + Profile -> Connected apps grant | Local-only workbooks unavailable | | read_range Payload Cap | <= 200 cells; returns raw formulas + revision | Does not recalculate cell outputs | | apply_changes Prerequisites | Active Pro + owner/editor + <= 100 cells + 16-80 char operation_id | Rejected before Yjs mutation | | Concurrent Revision Check | base_revision = live_revision vs < live_revision | Clean commit vs pendingReview | - **Formula (apply_changes Pre-Flight Gate & Revision-Conflict Status Formula)**: `=LET(st_md, B2, pro_st, B3, usr_rl, B4, n_cel, B5, op_len, LEN(B6), rev_bs, B7, rev_lv, B8, IF(st_md <> "cloud", "Blocked: Cloud Workbook Required", IF(pro_st <> "active", "Blocked: Active Pro Required", IF(NOT(OR(usr_rl = "owner", usr_rl = "editor")), "Blocked: Owner or Editor Role Required", IF(OR(n_cel < 1, n_cel > 100), "Blocked: Exceeds 100-Cell Write Cap", IF(OR(op_len < 16, op_len > 80), "Blocked: operation_id Must Be 16-80 Chars", IF(rev_bs > rev_lv, "Invalid Future Base Revision", IF(rev_bs < rev_lv, "Conflict: Routed to pendingReview", "Commit Ready (Matches Live Revision)"))))))))` - **Formula (Chunked read_range Pass Count Formula (<= 200 Cells per Read))**: `=IF(B9 <= 0, 0, ROUNDUP(B9 / 200, 0))` ### Construction Surety Sliding-Scale Bond & Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/construction-surety-bond-sliding-scale-premium-and-backlog-capacity/ - **Summary**: Calculate Commercial / Public-Works Miller Act Performance & Payment Surety Bond Tiered Sliding-Scale Premium ($), Effective Blended Bond Rate, Working-Capital Aggregate Bonding Capacity ($), and Remaining Unbonded Backlog Headroom. *Table — Stop over-bidding public-works tenders with flat Tier-1 bond rates—use sliding-scale surety brackets!:* | Surety Bond & Capacity Metric ($10M Bid, 1.5%/1.0%/0.7% Tiers, $2.5M NWC @ 15x) | Formula | Verified Output | | --- | --- | --- | | Sliding-Scale Bond Premium ($) | MIN(C,500k)*r1 + MIN(MAX(0,C-500k),2M)*r2 + MAX(0,C-2.5M)*r3 | $80,000 ($6,000 @ $400k Bid) | | Effective Blended Bond Rate | Sliding_Scale_Premium / Contract_Price | 0.0080 (0.0150 @ $400k Bid) | | Aggregate Bonding Capacity ($) | Adjusted_Net_Working_Capital * Multiplier | $37,500,000 | | Remaining Backlog Headroom ($) | Aggregate_Capacity - Contract_Bid_Price | $27,500,000 ($37.1M @ $400k Bid) | - **Formula (Tiered Sliding-Scale Surety Bond Premium Formula)**: `=LET(ct_p, B2, r_1, B3, r_2, B4, r_3, B5, nw_c, B6, ml_s, B7, IF(OR(ct_p <= 0, r_3 <= 0, r_2 < r_3, r_1 < r_2, r_1 >= 0.05, nw_c <= 0, ml_s <= 0), "Invalid Surety Schedule", LET(t_1, MIN(ct_p, 500000) * r_1, t_2, MAX(0, MIN(ct_p - 500000, 2000000)) * r_2, t_3, MAX(0, ct_p - 2500000) * r_3, ROUND(t_1 + t_2 + t_3, 2))))` - **Formula (Small-Project Tier-1 Boundary Check (Set Contract Bid = $400,000))**: `=IF(ISTEXT(E2), E2, ROUND(B6 * B7 - B2, 2))` ### Construction WIP Overbilling & Retainage Formula - **URL**: https://sheets.arte-soft.com/en/learn/construction-wip-overbilling-underbilling-and-retainage-cashflow-formula/ - **Summary**: Calculate Cost-to-Cost Earned WIP Revenue, Overbilling Liability vs Underbilling Asset (Billings - Earned Revenue), Collectible Cash Net of Retainage Holdback, and Net Job Cashflow. *Table — Reconcile GAAP overbilling against owner retainage holdbacks on contractor WIP schedules!:* | Contractor WIP Metric ($5M Contract, $4M Est Cost, $2.4M Actual, $3.25M Billed, 10% Ret) | Formula | Verified Output | | --- | --- | --- | | Earned WIP Revenue (60% Complete) | (Cost_To_Date / Est_Cost) * Contract | $3,000,000.00 | | Overbilling (+) / Underbilling (-) | Progress_Billings - Earned_Revenue | +$250,000.00 (-$400k @ $2.6M Billed) | | Collectible Cash Ex Retainage ($) | Progress_Billings * (1 - Retainage_Pct) | $2,925,000.00 ($325k Held Back) | | Net Self-Financed Job Cashflow ($) | Collectible_Cash - Actual_Cost_To_Date | +$525,000.00 (-$60k @ $2.6M Billed) | - **Formula (Contractor WIP Net Job Cashflow & EAC Overrun Guard Formula)**: `=LET(ct_p, B2, es_c, B3, ac_c, B4, bl_p, B5, rt_p, B6, IF(OR(ct_p <= 0, es_c <= 0, ac_c < 0, bl_p < 0, rt_p < 0, rt_p >= 0.5), "Invalid WIP Input", IF(ac_c > es_c, "Revise EAC: Cost > Estimate", LET(cs_n, bl_p * (1 - rt_p), ROUND(cs_n - ac_c, 2)))))` - **Formula (Underbilling Surety Red-Flag Audit Formula)**: `=IF(ISTEXT(E2), E2, ROUND(B5 - E2, 2))` ### Contact Process Sulfuric Acid (DCDA) Tonnage & SO2 Slip Formula - **URL**: https://sheets.arte-soft.com/en/learn/contact-process-sulfuric-acid-so2-double-absorption-conversion-and-oleum/ - **Summary**: Calculate Sulfur-Burner SO2 Generated (t/d), 100%-Basis H2SO4 Equivalent (t/d), Commercial 98 wt% Acid Output (t/d), and Unconverted Stack SO2 Emissions (t/d). *Table — Upgrading 98.0% single-contact to 99.7% Double-Contact Double-Absorption cuts SO2 pollution 6.7x!:* | DCDA Sulfuric Acid KPI (320 t/d Sulfur, 99.7% DCDA Conv, 98 wt% Acid) | Formula | Verified Output | | --- | --- | --- | | Sulfur Burner SO2 Generated (t/d) | Sulfur_t_d * (64 / 32) | 640.00 t/d | | 100%-Basis Pure H2SO4 (t/d) | (Sulfur_t_d / 32) * Conv * 98 | 977.06 t/d (960.40 @ 98% single) | | Commercial 98 wt% Acid (t/d) | Pure_100Pct_H2SO4 / Acid_WtFrac | 997.00 t/d (980.00 @ 98% single) | | Unconverted Stack SO2 Slip (t/d) | Burner_SO2_t_d * (1 - Conv) | 1.92 t/d (12.80 @ 98% single!) | - **Formula (Commercial Sulfuric Acid Output & Tail-Gas SO2 Slip Formula)**: `=LET(sf_t, B2, cv_x, B3, ac_w, B4, IF(OR(sf_t <= 0, cv_x < 0.9, cv_x > 0.9999, ac_w < 0.93, ac_w > 1), "Invalid Acid Plant Input", ROUND(((sf_t / 32) * cv_x * 98) / ac_w, 2)))` - **Formula (Legacy Single-Absorption Environmental Penalty Check (Set Conversion = 0.98))**: `=IF(ISTEXT(E4), E4, ROUND((B2 * 2) * (1 - B3), 2))` ### Container BAF Surcharge & TEU Slot Break-Even Formula - **URL**: https://sheets.arte-soft.com/en/learn/container-shipping-baf-bunker-surcharge-and-teu-slot-break-even-formula/ - **Summary**: Calculate IMO-2020 Floating Bunker Adjustment Factor BAF = MAX(0, P_fuel - P_base) * Trade_Factor, All-In TEU Freight Rate, Breakeven Loaded TEUs, and Vessel Slot Utilization. *Table — Pass through VLSFO fuel spikes cleanly and audit liner TEU slot utilization breakeven!:* | Container Liner Metric ($1,200 Base, $650 vs $400 VLSFO, f=0.60, $8M Fixed / 10k TEU) | Formula | Verified Output | | --- | --- | --- | | Floating BAF Surcharge ($/TEU) | MAX(0, P_fuel - P_base) * f_trade | $150.00 / TEU | | All-In Ocean Freight ($/TEU) | F_base + BAF | $1,350.00 / TEU | | Breakeven Loaded Volume (TEU) | C_fixed / (F_all - C_var) | 8,000.00 TEU | | Breakeven Slot Utilization | Breakeven_TEU / Cap_teu | 0.8000 (80.00% Full) | - **Formula (Breakeven Loaded TEUs & Slot Utilization Formula)**: `=LET(f_bs, B2, p_b0, B3, p_fl, B4, f_tr, B5, c_vr, B6, c_fx, B7, cp_t, B8, IF(OR(f_bs <= 0, p_b0 < 0, p_fl <= 0, f_tr <= 0, c_vr < 0, c_fx <= 0, cp_t <= 0), "Invalid Liner Tariff", LET(f_al, f_bs + MAX(0, p_fl - p_b0) * f_tr, IF(f_al <= c_vr, "Negative Box Contribution", ROUND(c_fx / (f_al - c_vr), 2)))))` - **Formula (Vessel Slot Breakeven Utilization Ratio Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 / B8, 4))` ### Continuous Welded Rail (CWR) Neutral Temp & Buckling Force - **URL**: https://sheets.arte-soft.com/en/learn/continuous-welded-rail-cwr-stress-free-neutral-temperature-and-thermal-buckling-force/ - **Summary**: Calculate Rail Temperature Excursion Above Neutral (°C), Constrained Axial Thermal Stress (MPa), Single-Rail Axial Force (kN), and Two-Rail Track Panel Force (kN). *Table — With zero expansion joints over kilometers of track, a 62 °C summer rail builds nearly 100 tonnes of lateral sun-kink buckling compression!:* | AREMA CWR Thermal Force KPI (UIC60 A=7,670 mm², TN=35 °C: Summer +62 °C vs Winter -18 °C) | Formula | Verified Output | | --- | --- | --- | | Excursion From Neutral dT (°C) | Actual_Rail_Temp_C - Neutral_Temp_TN_C | +27.0 °C (-53.0 °C in winter freeze) | | Constrained Axial Stress (MPa) | (E_GPa * 1000) * (alpha * 1e-6) * dT_C | +64.27 MPa (-126.17 MPa tensile pull!) | | Single-Rail Axial Force F1 (kN) | (Rail_Area_mm2 * Stress_MPa) / 1000 | +493.0 kN (-967.7 kN pull-apart load!) | | Two-Rail Track Panel Force (kN) | 2 * Single_Rail_Force_kN | +986.0 kN (-1,935.4 kN winter tension) | - **Formula (Constrained Thermoelastic CWR Sun-Kink Compression & Pull-Apart Tension Formula)**: `=LET(ar_m, B2, em_g, B3, al_p, B4, tn_c, B5, tr_c, B6, dt_c, tr_c - tn_c, sg_m, (em_g * 1000) * (al_p * 0.000001) * dt_c, IF(OR(ar_m < 4000, ar_m > 12000, em_g < 180, em_g > 225, al_p < 9, al_p > 14, tn_c < 15, tn_c > 50, tr_c < -55, tr_c > 80), "Invalid CWR Input", ROUND((2 * ar_m * sg_m) / 1000, 1)))` - **Formula (Polar-Vortex -18 °C Winter Rail-Break Pull-Apart Tension Check (Set Rail Temp B6 = -18 °C))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * (B3 * 1000) * (B4 * 0.000001) * (B6 - B5)) / 1000, 1))` ### CONUT (Controlling Nutritional Status) Score (0–12) Formula: Automated Hospital Lab Screen - **URL**: https://sheets.arte-soft.com/en/learn/conut-controlling-nutritional-status-score-albumin-lymphocyte-chol/ - **Summary**: Automate inpatient malnutrition screening from three routine blood labs—Serum Albumin (0, 2, 4, 6 pts), Total Lymphocytes (0, 1, 2, 3 pts), and Total Cholesterol (0, 1, 2, 3 pts)—using Ignacio de Ulíbarri’s (2005) CONUT Score (0–12). *Table — Why CONUT doubles Albumin’s point weight (0–6 pts) alongside Lymphocytes (0–3) and Cholesterol (0–3)!:* | CONUT Total Score (0–12 Points) | Ulíbarri et al. (2005) Undernutrition Alert Tier | Clinical Nutrition Action | | --- | --- | --- | | 0 to 1 Points | Normal Nutritional Status | Routine inpatient diet; repeat weekly if prolonged stay | | 2 to 4 Points | Light Undernutrition | Oral protein-energy enrichment & intake tracking | | 5 to 8 Points | Moderate Undernutrition | Dietitian evaluation & targeted nutritional therapy | | 9 to 12 Points | Severe Undernutrition | Urgent specialized enteral/parenteral nutrition team consult | - **Formula (Exact 12-Point CONUT Score from Albumin (g/dL), Lymphocytes (/uL) & Total Cholesterol (mg/dL))**: `=IF(OR(B2 <= 0, B2 > 8, B3 <= 0, B4 <= 0), "Invalid Lab Inputs (Use Albumin g/dL, TLC /uL, Cholesterol mg/dL)", IF(B2 >= 3.5, 0, IF(B2 >= 3, 2, IF(B2 >= 2.5, 4, 6))) + IF(B3 >= 1600, 0, IF(B3 >= 1200, 1, IF(B3 >= 800, 2, 3))) + IF(B4 >= 180, 0, IF(B4 >= 140, 1, IF(B4 >= 100, 2, 3))))` - **Formula (CONUT 4-Tier Undernutrition Severity Classifier (0–1 Normal / 2–4 Light / 5–8 Moderate / 9–12 Severe))**: `=IF(OR(B2 <= 0, B2 > 8, B3 <= 0, B4 <= 0), "Invalid Lab Inputs", IF((IF(B2 >= 3.5, 0, IF(B2 >= 3, 2, IF(B2 >= 2.5, 4, 6))) + IF(B3 >= 1600, 0, IF(B3 >= 1200, 1, IF(B3 >= 800, 2, 3))) + IF(B4 >= 180, 0, IF(B4 >= 140, 1, IF(B4 >= 100, 2, 3)))) >= 9, "Severe Undernutrition (CONUT 9–12)", IF((IF(B2 >= 3.5, 0, IF(B2 >= 3, 2, IF(B2 >= 2.5, 4, 6))) + IF(B3 >= 1600, 0, IF(B3 >= 1200, 1, IF(B3 >= 800, 2, 3))) + IF(B4 >= 180, 0, IF(B4 >= 140, 1, IF(B4 >= 100, 2, 3)))) >= 5, "Moderate Undernutrition (CONUT 5–8)", IF((IF(B2 >= 3.5, 0, IF(B2 >= 3, 2, IF(B2 >= 2.5, 4, 6))) + IF(B3 >= 1600, 0, IF(B3 >= 1200, 1, IF(B3 >= 800, 2, 3))) + IF(B4 >= 180, 0, IF(B4 >= 140, 1, IF(B4 >= 100, 2, 3)))) >= 2, "Light Undernutrition (CONUT 2–4)", "Normal Nutritional Status (CONUT 0–1)"))))` ### Converse-Labarre Friction Pile Group Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/converse-labarre-pile-group-efficiency-block-interaction-capacity-formula/ - **Summary**: Calculate Stress-Shadow Angle theta (deg), Converse-Labarre Group Efficiency eta_g (%), Unfactored Sum of Single Piles (kN), and Interaction-Reduced Group Ultimate Capacity (kN). *Table — Twelve 1,200 kN friction piles DO NOT carry 14,400 kN at 3d spacing—overlapping shear bulbs cut efficiency to 71%!:* | Converse-Labarre Pile Cap KPI (3x4 Grid, d=0.50 m, s=1.50 m, Q1=1,200 kN) | Formula | Verified Output | | --- | --- | --- | | Shadow Overlap Angle theta (deg) | ATAN(Pile_Dia_d / Spacing_s)*180/PI() | 18.43° (11.31° @ s = 2.50 m) | | Group Efficiency eta_g (%) | (1 - (th/90)*((n*(m-1)+m*(n-1))/(m*n)))*100 | 70.98% (82.20% @ s = 2.50 m) | | Naive Unreduced Sum m*n*Q1 (kN) | Rows_m * Cols_n * Single_Pile_Q1 | 14,400.00 kN | | Group Ultimate Capacity (kN) | m * n * Q1 * eta_g | 10,221.41 kN (11,836.42 @ 2.50 m) | - **Formula (Converse-Labarre Rectangular Grid Pile Group Efficiency Formula)**: `=LET(mr_w, B2, nc_l, B3, dp_m, B4, sp_m, B5, q1_k, B6, IF(OR(mr_w < 1, INT(mr_w) <> mr_w, nc_l < 1, INT(nc_l) <> nc_l, mr_w * nc_l < 2, dp_m <= 0, sp_m < 2 * dp_m, q1_k <= 0), "Invalid Pile Group Input", LET(th_d, ATAN(dp_m / sp_m) * 180 / PI(), eg_f, 1 - (th_d / 90) * ((nc_l * (mr_w - 1) + mr_w * (nc_l - 1)) / (mr_w * nc_l)), ROUND(eg_f * 100, 2))))` - **Formula (Wider 5d Pile Spacing Overlap Relief Check (Set Spacing s = 2.50 m))**: `=IF(ISTEXT(E3), E3, LET(th_d, ATAN(B4 / B5) * 180 / PI(), eg_f, 1 - (th_d / 90) * ((B3 * (B2 - 1) + B2 * (B3 - 1)) / (B2 * B3)), ROUND(B2 * B3 * B6 * eg_f, 2)))` ### Funnel conversion analysis: step pass-through, drop-off %, and overall conversion - **URL**: https://sheets.arte-soft.com/en/learn/conversion-funnel-drop-off-and-pass-through/ - **Summary**: Diagnose where prospects abandon a signup or checkout funnel by contrasting stage-to-stage conversion (B3 / B2) against cumulative top-of-funnel conversion (B3 / $B$2). *Table — Stage pass-through vs cumulative top-of-funnel rate:* | Stage (A) | Users (B) | Step Conversion | Step Drop-Off | Cumulative % | | --- | --- | --- | --- | --- | | Visitors | 10000 | 100.0% | 0.0% | 100.0% | | Signups | 2000 | 20.0% | 80.0% | 20.0% | | Activated | 1200 | 60.0% | 40.0% | 12.0% | | Paid | 300 | 25.0% | 75.0% | 3.0% | - **Formula (Step pass-through, drop-off, and overall funnel formulas)**: `=ROUND(B5 / $B$2, 4)` - **Formula (Stage-to-stage drop-off rate)**: `=IF(B4=0, "No prior-stage users", ROUND(1 - (B5 / B4), 4))` ### Convert date to Julian day of year (1–366 and YYYYDDD) and back - **URL**: https://sheets.arte-soft.com/en/learn/convert-date-to-julian-day-of-year/ - **Summary**: Calculate the ordinal day of the year with Date - DATE(YEAR(Date), 1, 0), format 7-digit YYYYDDD codes, and parse them back. *Table — How day 0 of January gives December 31 of the prior year:* | CalDate (A) | Day of Year | 7-Digit YYYYDDD | Parsed Back | | --- | --- | --- | --- | | 2026-03-15 | 74 | 2026074 | 2026-03-15 | | 2024-12-31 | 366 | 2024366 | 2024-12-31 | - **Formula (Day of year and 7-digit Julian string)**: `=A2 - DATE(YEAR(A2), 1, 0)` - **Formula (Convert YYYYDDD Julian code back to a calendar date)**: `=TEXT(DATE(VALUE(LEFT(B2, 4)), 1, VALUE(RIGHT(B2, 3))), "yyyy-mm-dd")` ### Convert DD/MM/YYYY text strings to real spreadsheet dates without locale bugs - **URL**: https://sheets.arte-soft.com/en/learn/convert-ddmmyyyy-text-to-date/ - **Summary**: Parse slash-separated DD/MM/YYYY text of variable digit width using DATE, TEXTBEFORE, and TEXTAFTER so days and months never swap. *Table — Why DATEVALUE and fixed MID positions fail on imported DD/MM/YYYY text:* | RawDateText (A) | Extracted Day | Extracted Month | ISO Date Result | | --- | --- | --- | --- | | 25/04/2026 | 25 | 4 | 2026-04-25 | | 7/9/2026 | 7 | 9 | 2026-09-07 | - **Formula (Delimiter-safe DD/MM/YYYY parser)**: `=TEXT(DATE(VALUE(TEXTAFTER(A2, "/", 2)), VALUE(TEXTBEFORE(TEXTAFTER(A2, "/"), "/")), VALUE(TEXTBEFORE(A2, "/"))), "yyyy-mm-dd")` - **Formula (Verify real numeric date serial output)**: `=DATE(VALUE(TEXTAFTER(A2, "/", 2)), VALUE(TEXTBEFORE(TEXTAFTER(A2, "/"), "/")), VALUE(TEXTBEFORE(A2, "/")))` ### Convert decimal hours, minutes, or seconds to spreadsheet time (and back) - **URL**: https://sheets.arte-soft.com/en/learn/convert-decimal-hours-minutes-to-time/ - **Summary**: Divide decimal hours by 24, minutes by 1440, or seconds by 86400 to build valid time values—and multiply by 24 for payroll. *Table — One day = 1.0: the three magic divisors (24, 1440, 86400):* | DecimalHrs (A) | DecimalMin (B) | DecimalSec (C) | Converted H:M / M:S | | --- | --- | --- | --- | | 7.75 | 150 | 90 | 7:45 \| 2:30 \| 1:30 | - **Formula (Verify hour, minute, and second conversions)**: `=HOUR(A2 / 24) & ":" & MINUTE(A2 / 24)` - **Formula (Convert clock time back to billable decimal hours)**: `=ROUND(TIME(8, 15, 0) * 24, 2)` ### Convert seconds to Excel time (Seconds / 86400) & HH:MM:SS over 24 hours - **URL**: https://sheets.arte-soft.com/en/learn/convert-decimal-seconds-and-minutes-to-hms-time/ - **Summary**: Transform raw call-center ACD seconds and video durations into Excel fractional-day serials and rollover-proof HH:MM:SS strings. *Table — Why 86,400 is the magic divisor—and how to avoid 24-hour clock rollover!:* | Raw Seconds (A) | Seconds / 86,400 Serial | INT / MOD Breakdown | Formatted HH:MM:SS | | --- | --- | --- | --- | | 45 sec | 0.000521 days | 0h, 0m, 45s | "00:00:45" | | 3,725 sec | 0.043113 days | 1h, 2m, 5s | "01:02:05" | | 90,065 sec (>24h!) | 1.042419 days | 25h, 1m, 5s | "25:01:05" (No 24h wrap!) | - **Formula (Format raw seconds into rollover-proof HH:MM:SS (even above 24 hours))**: `=IF(OR(NOT(ISNUMBER(A2)),A2<0),"Invalid inputs",LET(s, ROUND(A2, 0), h, INT(s / 3600), m, INT(MOD(s, 3600) / 60), sec, MOD(s, 60), IF(h < 10, "0" & h, "" & h) & ":" & RIGHT("00" & m, 2) & ":" & RIGHT("00" & sec, 2)))` - **Formula (Convert seconds to Excel fractional day or decimal minutes)**: `=IF(OR(NOT(ISNUMBER(A2)),A2<0),"Invalid inputs",ROUND(A2 / 60, 2))` ### Convert spreadsheet dates to Unix timestamps (and Unix epoch seconds back to dates) - **URL**: https://sheets.arte-soft.com/en/learn/convert-excel-time-to-unix-timestamp/ - **Summary**: Translate UTC date-time serials to Unix seconds using DATE(1970, 1, 1) and 86400 seconds/day—including millisecond API feeds. *Table — Anchor on DATE(1970, 1, 1) = serial 25569:* | UTC Date (A) | Unix Seconds (B) | Formula Relationship | | --- | --- | --- | | 2026-01-01 00:00:00 (46023) | 1767225600 | (46023 - 25569) * 86400 = 1,767,225,600 | | 1970-01-01 00:00:00 (25569) | 0 | Unix epoch origin = 0 | - **Formula (Convert UTC date to Unix seconds and reverse)**: `=ROUND((A2 - DATE(1970, 1, 1)) * 86400, 0)` - **Formula (Convert 13-digit JavaScript millisecond epochs)**: `=YEAR((B2 / 86400) + DATE(1970, 1, 1))` ### Convert Budget Amounts Between Daily, Weekly, Monthly and Annual Units - **URL**: https://sheets.arte-soft.com/en/learn/convert-expense-amounts-across-daily-weekly-monthly-annual-units/ - **Summary**: Compare recurring amounts using an explicit periods-per-year table. Calculate planning equivalents, not calendar-accurate payment dates or payroll entitlements. *Table — Annualize first, then divide by the target frequency:* | Expense Item ($600 Monthly) | Source Factor | Target Period ($D$2) | Converted Amount | | --- | --- | --- | --- | | Cloud SaaS -> Annual | 12 / yr | Annual (1 / yr) | $600 * (12 / 1) = $7,200.00 | | Cloud SaaS -> Quarterly | 12 / yr | Quarterly (4 / yr) | $600 * (12 / 4) = $1,800.00 | | Cloud SaaS -> Weekly | 12 / yr | Weekly (52 / yr) | $600 * (12 / 52) = $138.46 | | Cloud SaaS -> Monthly | 12 / yr | Monthly (12 / yr) | $600 * (12 / 12) = $600.00 | - **Formula (Convert to the target unit in D2)**: `=IF(COUNT(B2)<>1,"Enter a numeric amount",IF(OR(E2<>"Daily",E3<>"Weekly",E4<>"Monthly",E5<>"Quarterly",E6<>"Annual"),"Restore the five unique unit labels",IF(COUNT(F2:F6)<>5,"Enter positive numeric factors",IF(OR(MIN(F2:F6)<=0,F6<>1),"Use positive factors and Annual=1",LET(sourceFactor,XLOOKUP(C2,$E$2:$E$6,$F$2:$F$6,0),targetFactor,XLOOKUP($D$2,$E$2:$E$6,$F$2:$F$6,0),IF(OR(sourceFactor=0,targetFactor=0),"Unknown Frequency",ROUND(B2*sourceFactor/targetFactor,2)))))))` - **Formula (Annual planning equivalent)**: `=IF(COUNT(B2)<>1,"Enter a numeric amount",IF(OR(E2<>"Daily",E3<>"Weekly",E4<>"Monthly",E5<>"Quarterly",E6<>"Annual"),"Restore the five unique unit labels",IF(COUNT(F2:F6)<>5,"Enter positive numeric factors",IF(OR(MIN(F2:F6)<=0,F6<>1),"Use positive factors and Annual=1",LET(sourceFactor,XLOOKUP(C2,$E$2:$E$6,$F$2:$F$6,0),targetFactor,XLOOKUP("Annual",$E$2:$E$6,$F$2:$F$6,0),IF(OR(sourceFactor=0,targetFactor=0),"Unknown Frequency",ROUND(B2*sourceFactor/targetFactor,2)))))))` ### Convert feet and inches text (5' 10") to total inches and back - **URL**: https://sheets.arte-soft.com/en/learn/convert-feet-and-inches-to-inches/ - **Summary**: Parse architectural measurement strings like 5' 10" into numeric inches with TEXTBEFORE and TEXTAFTER, and format inches back. *Table — Why architectural strings cannot be summed directly:* | SpecText (A) | Feet Part (*12) | Inches Part | Total Inches | | --- | --- | --- | --- | | 5' 10" | 60 | 10 | 70 | | 6' 0" | 72 | 0 | 72 | - **Formula (Parse feet and inches with TEXTBEFORE, TEXTAFTER, and CHAR(34))**: `=VALUE(TEXTBEFORE(A2, "'")) * 12 + VALUE(TRIM(TEXTBEFORE(TEXTAFTER(A2, "'"), CHAR(34))))` - **Formula (Reverse total inches back to feet-and-inches notation)**: `=QUOTIENT(70, 12) & "' " & MOD(70, 12) & CHAR(34)` ### Convert a fixed-format UTC timestamp with an explicit hour offset - **URL**: https://sheets.arte-soft.com/en/learn/convert-iso-8601-utc-timestamp-to-excel-datetime/ - **Summary**: Parse YYYY-MM-DDTHH:MM:SSZ timestamps and apply a supplied fixed UTC offset. Named-zone and daylight-saving rules are not inferred. *Table — Why DATE + TIME slicing beats DATEVALUE on ISO-8601 API logs:* | Raw ISO-8601 UTC String (A) | UTC Offset Hours (B) | Local Datetime Result | | --- | --- | --- | | "2026-10-30T14:45:30Z" | -4 (New York EDT) | "2026-10-30 10:45:30" | | "2026-11-01T02:15:00Z" | -5 (fixed offset example, not New York at this instant) | "2026-10-31 21:15:00" (Previous day!) | | "2026-10-30T22:30:00Z" | +9 (Tokyo JST) | "2026-10-31 07:30:00" (Next day!) | - **Formula (Parse ISO-8601 UTC string and shift to local timezone)**: `=IFERROR(IF(OR(LEN(A2)<>20,MID(A2,5,1)<>"-",MID(A2,8,1)<>"-",MID(A2,11,1)<>"T",MID(A2,14,1)<>":",MID(A2,17,1)<>":",RIGHT(A2,1)<>"Z",NOT(ISNUMBER(B2)),ABS(B2)>14),"Invalid timestamp or offset",IF(OR(TEXT(DATE(VALUE(LEFT(A2,4)),VALUE(MID(A2,6,2)),VALUE(MID(A2,9,2))),"yyyy-mm-dd")<>LEFT(A2,10),VALUE(MID(A2,12,2))<0,VALUE(MID(A2,12,2))>23,VALUE(MID(A2,15,2))<0,VALUE(MID(A2,15,2))>59,VALUE(MID(A2,18,2))<0,VALUE(MID(A2,18,2))>59),"Invalid timestamp or offset",LET(s, A2, utc, DATE(VALUE(LEFT(s, 4)), VALUE(MID(s, 6, 2)), VALUE(MID(s, 9, 2))) + TIME(VALUE(MID(s, 12, 2)), VALUE(MID(s, 15, 2)), VALUE(MID(s, 18, 2))), loc, utc + B2 / 24, TEXT(INT(loc), "yyyy-mm-dd") & " " & RIGHT("00" & HOUR(loc), 2) & ":" & RIGHT("00" & MINUTE(loc), 2) & ":" & RIGHT("00" & SECOND(loc), 2)))),"Invalid timestamp or offset")` - **Formula (Extract just the local calendar date for daily revenue grouping)**: `=IFERROR(IF(OR(LEN(A2)<>20,MID(A2,5,1)<>"-",MID(A2,8,1)<>"-",MID(A2,11,1)<>"T",MID(A2,14,1)<>":",MID(A2,17,1)<>":",RIGHT(A2,1)<>"Z",NOT(ISNUMBER(B2)),ABS(B2)>14),"Invalid timestamp or offset",IF(OR(TEXT(DATE(VALUE(LEFT(A2,4)),VALUE(MID(A2,6,2)),VALUE(MID(A2,9,2))),"yyyy-mm-dd")<>LEFT(A2,10),VALUE(MID(A2,12,2))<0,VALUE(MID(A2,12,2))>23,VALUE(MID(A2,15,2))<0,VALUE(MID(A2,15,2))>59,VALUE(MID(A2,18,2))<0,VALUE(MID(A2,18,2))>59),"Invalid timestamp or offset",LET(s, A2, utc, DATE(VALUE(LEFT(s, 4)), VALUE(MID(s, 6, 2)), VALUE(MID(s, 9, 2))) + TIME(VALUE(MID(s, 12, 2)), VALUE(MID(s, 15, 2)), VALUE(MID(s, 18, 2))), TEXT(INT(utc + B2 / 24), "yyyy-mm-dd")))),"Invalid timestamp or offset")` ### Convert cm to inches, kg to lbs, and km to miles (exact NIST constants) - **URL**: https://sheets.arte-soft.com/en/learn/convert-metric-and-imperial-weight-length-formulas/ - **Summary**: Translate metric and imperial length and weight columns with exact international definition constants—compatible across every spreadsheet engine. *Table — Exact international treaty constants (not rounded approximations):* | Conversion Pair | Exact Formula | Sample Output | | --- | --- | --- | | cm -> inches | =ROUND(cm / 2.54, 2) | 180 cm = 70.87 in | | inches -> cm | =ROUND(in * 2.54, 2) | 72 in = 182.88 cm | | kg -> pounds (lb) | =ROUND(kg / 0.45359237, 2) | 75 kg = 165.35 lb | | km -> miles | =ROUND(km / 1.609344, 2) | 10 km = 6.21 mi | - **Formula (Centimeters to inches and kilograms to pounds formulas)**: `=ROUND(A2 / 2.54, 2)` - **Formula (Kilograms to pounds (exact avoirdupois pound))**: `=ROUND(B2 / 0.45359237, 2)` ### Convert Numbers to 1 or 0 Binary Flags (--(B2>0), SIGN & SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/convert-positive-numbers-to-1-or-0-binary-indicator-sign-if/ - **Summary**: Transform arbitrary revenue, usage, or inventory quantities into clean 1/0 binary indicator variables using double-unary --(B2 > 0) and tally active periods across rows with SUMPRODUCT. *Table — Why --(B2 > 0) beats SIGN(B2) whenever credits or negative adjustments appear!:* | Raw Cell Value | SIGN(Value) | --(N(Value) > 0) Binary Flag | Active-Month Interpretation | | --- | --- | --- | --- | | $1,420.00 Invoice | 1 | 1 | Active Billing Period | | $0.00 Dormant Month | 0 | 0 | Inactive Period | | -$50.00 Credit Memo | -1 (Corrupts Sum!) | 0 (Safe Zero!) | Not an Active Purchase | - **Formula (Single-Cell Positive Activity Binary Indicator (1 or 0))**: `=--(N(B2) > 0)` - **Formula (Count Active (> 0) Months Across a Multi-Column Row)**: `=SUMPRODUCT((ISNUMBER(B2:G2)) * (B2:G2 > 0))` ### Convert Pounds (lb) to Kilograms (kg), Stones & Compound lb + oz Formula - **URL**: https://sheets.arte-soft.com/en/learn/convert-pounds-kilograms-stones-and-ounces-formula/ - **Summary**: Convert avoirdupois pounds to exact kilograms (* 0.45359237), kilograms back to pounds (/ 0.45359237), UK stones + pounds, and postal pounds + ounces using pure arithmetic that works in every spreadsheet. *Table — Use the exact 1959 International Pound definition: 1 lb = 0.45359237 kg!:* | Input Weight | Exact Kilograms (kg) | Compound Pounds & Ounces | UK Stones & Pounds | | --- | --- | --- | --- | | 12.625 lb (Parcel Scale) | 5.727 kg | 12 lb 10 oz (0.625 * 16 = 10) | 0 st 12.6 lb | | 154.000 lb (Adult Patient) | 69.853 kg | 154 lb 0 oz | 11 st 0.0 lb (154 / 14 = 11) | | 100.000 kg -> Pounds | 220.462 lb (Exact!) | 220 lb 7.4 oz | 15 st 10.5 lb | - **Formula (Convert Pounds (lb) to Exact Kilograms (kg))**: `=IF(B2 < 0, "Invalid Negative Weight", ROUND(B2 * 0.45359237, 3))` - **Formula (Format Decimal Pounds into Postal "X lb Y oz" Text)**: `=IF(B2 < 0, "Invalid Negative Weight", INT(B2) & " lb " & ROUND(MOD(B2, 1) * 16, 1) & " oz")` - **Formula (Convert Kilograms (kg) Back to Pounds (lb))**: `=IF(B3 < 0, "Invalid Negative Weight", ROUND(B3 / 0.45359237, 3))` ### Convert snake_case, kebab-case, camelCase, and Human Title labels - **URL**: https://sheets.arte-soft.com/en/learn/convert-snake-case-kebab-case-and-title-case-identifiers/ - **Summary**: Transform database column names (customer_first_name) into report headers ("Customer First Name"), camelCase ("customerFirstName"), and ENV_VARS. *Table — Derive labels and simple keys from separated words:* | Source Identifier | Human Report Header | API camelCase Key | SQL / ENV Constant | | --- | --- | --- | --- | | "gross_profit_margin" | "Gross Profit Margin" | "grossProfitMargin" | "GROSS_PROFIT_MARGIN" | | "net-annual-revenue" | "Net Annual Revenue" | "netAnnualRevenue" | "NET_ANNUAL_REVENUE" | - **Formula (Convert snake_case or kebab-case to Human Title Case and camelCase)**: `=IF(COUNTBLANK(A2)=1,"",PROPER(TRIM(SUBSTITUTE(SUBSTITUTE(A2, "_", " "), "-", " "))))` - **Formula (Generate a simple lowerCamelCase candidate)**: `=IF(COUNTBLANK(A2)=1,"",LET(p, SUBSTITUTE(PROPER(TRIM(SUBSTITUTE(SUBSTITUTE(A2, "_", " "), "-", " "))), " ", ""), LOWER(LEFT(p, 1)) & MID(p, 2, LEN(p))))` ### Convert State and Region Names to 2-Letter Postal Codes (Bidirectional XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/convert-state-and-region-names-to-postal-codes-xlookup/ - **Summary**: Standardize mixed CRM address columns that contain both full state names ("California", "new york ") and existing 2-letter postal codes ("TX") into clean ISO/USPS codes without #N/A errors. *Table — Handling mixed full names and already-abbreviated codes in one column:* | Raw CRM Input | Normalized Token | Resolution Path | Output Code | | --- | --- | --- | --- | | " california " | "CALIFORNIA" | FullName -> Code XLOOKUP | "CA" | | "tx" | "TX" | Verified in Code list | "TX" | | "Ontario" | "ONTARIO" | Not in US reference table | "UNMAPPED_REGION" | - **Formula (Bidirectional Postal-Code Normalization Formula)**: `=LET(key_in, UPPER(TRIM(B2)), IF(LEN(key_in) = 2, XLOOKUP(key_in, $F$2:$F$6, $F$2:$F$6, "UNMAPPED_REGION"), XLOOKUP(key_in, UPPER($E$2:$E$6), $F$2:$F$6, "UNMAPPED_REGION")))` - **Formula (Cleaning Imported Vendor CSVs Together in Arte Sheets)**: `=COUNTIF(C2:C6, "UNMAPPED_REGION")` ### Convert Compact HHMMSS Timestamps (91500 or 144530) Into Time & Duration - **URL**: https://sheets.arte-soft.com/en/learn/convert-text-timestamp-hhmmss-or-compact-digits-to-excel-time/ - **Summary**: Parse colon-free 6-digit HHMMSS log integers—even when CSV import strips leading zeros from 091500 to 91500—using TIME(INT(x/10000), MOD(INT(x/100),100), MOD(x,100)). *Table — Why LEFT/MID/RIGHT breaks when CSV imports strip "091500" down to 91500—and INT + MOD never fails!:* | Start HHMMSS (B2) | End HHMMSS (B3) | Elapsed Hours (* 24) | Elapsed Seconds (* 86400) | | --- | --- | --- | --- | | 91500 (09:15:00) | 144530 (14:45:30) | 5.5083 hrs | 19,830 sec | | 91500 (09:15:00) | 121500 (12:15:00) | 3.0000 hrs | 10,800 sec | | 96500 (Minute 65!) | 144530 | "Invalid HHMMSS Integer" | Rejects M >= 60 or S >= 60 | - **Formula (Elapsed Decimal Hours Between Two Compact HHMMSS Timestamps)**: `=IF(OR(B2 < 0, B2 > 235959, B3 < 0, B3 > 235959, MOD(INT(B2 / 100), 100) >= 60, MOD(B2, 100) >= 60, MOD(INT(B3 / 100), 100) >= 60, MOD(B3, 100) >= 60), "Invalid HHMMSS Integer", ROUND((TIME(INT(B3 / 10000), MOD(INT(B3 / 100), 100), MOD(B3, 100)) - TIME(INT(B2 / 10000), MOD(INT(B2 / 100), 100), MOD(B2, 100))) * 24, 4))` - **Formula (Elapsed Seconds Between Compact HHMMSS Timestamps)**: `=IF(OR(B2 < 0, B2 > 235959, B3 < 0, B3 > 235959, MOD(INT(B2 / 100), 100) >= 60, MOD(B2, 100) >= 60, MOD(INT(B3 / 100), 100) >= 60, MOD(B3, 100) >= 60), "Invalid HHMMSS Integer", ROUND((TIME(INT(B3 / 10000), MOD(INT(B3 / 100), 100), MOD(B3, 100)) - TIME(INT(B2 / 10000), MOD(INT(B2 / 100), 100), MOD(B2, 100))) * 86400, 0))` ### Convert timestamps across time zones: UTC offsets and midnight rollover - **URL**: https://sheets.arte-soft.com/en/learn/convert-time-across-time-zones/ - **Summary**: Add OffsetHours / 24 to full date-time values to shift calendar dates automatically across midnight, or wrap time-only values with MOD. *Table — Full timestamps vs clock-only times across midnight:* | UtcTimestamp (A) | OffsetHrs (B) | Local Date | Local Hour:Min | | --- | --- | --- | --- | | 2026-05-10 22:30 | 3 | 2026-05-11 | 01:30 | | 2026-05-10 02:15 | -5 | 2026-05-09 | 21:15 | - **Formula (Shift full date-time timestamps cleanly)**: `=TEXT(INT(A2 + B2 / 24), "yyyy-mm-dd") & " " & RIGHT("00" & HOUR(A2 + B2 / 24), 2) & ":" & RIGHT("00" & MINUTE(A2 + B2 / 24), 2)` - **Formula (Wrap time-only values with MOD(..., 1))**: `=ROUND(MOD(TIME(2, 15, 0) - 5 / 24, 1) * 24, 2)` ### Convert time worked into money: billable hours x hourly rate formula - **URL**: https://sheets.arte-soft.com/en/learn/convert-time-duration-to-billable-money/ - **Summary**: Multiply spreadsheet HH:MM durations by 24 * HourlyRate to avoid the 24x underbilling bug, and enforce minimum callout fees. *Table — Why Duration * HourlyRate underbills by a factor of 24:* | Duration (A) | HourlyRate (B) | MinFee (C) | Wrong (A * B) | Correct Billable | | --- | --- | --- | --- | --- | | 02:30 | 120 | 100 | 12.50 (bug!) | 300.00 | | 00:25 | 120 | 100 | 2.08 (bug!) | 50.00 (100.00 w/ MinFee) | - **Formula (Billable amount and minimum callout fee formulas)**: `=ROUND(A2 * 24 * B2, 2)` - **Formula (Enforce minimum service callout fee)**: `=IF(A2 <= 0, 0, MAX(C2, ROUND(A2 * 24 * B2, 2)))` ### Convert Y/N schedule columns into days-of-week text ("Mon, Wed, Fri") - **URL**: https://sheets.arte-soft.com/en/learn/convert-yn-flags-to-days-of-week-schedule-string/ - **Summary**: Turn seven Y/N delivery or availability flags into a weekday label list and a matching count. *Table — Summarize wide Y/N availability grids into human-readable schedule tags!:* | Route / Shift | Mon–Fri Flags | Sat–Sun Flags | Generated Schedule Label | | --- | --- | --- | --- | | Route-North (Row 2) | Y, N, Y, N, Y | N, N | "Mon, Wed, Fri" (3 days/wk) | | Route-Weekend (Row 3) | N, N, N, N, N | Y, Y | "Sat, Sun" (2 days/wk) | | Suspended Route | N, N, N, N, N | N, N | "No Scheduled Days" (0 days/wk) | - **Formula (Convert a 7-column Y/N row into comma-separated weekday abbreviations)**: `=IF(OR(COUNTBLANK(B1:H1)>0,COUNTIF(B2:H2,"Y")+COUNTIF(B2:H2,"N")<>7),"Invalid inputs",TEXTJOIN(", ", TRUE, FILTER($B$1:$H$1, B2:H2 = "Y", "No Scheduled Days")))` - **Formula (Count scheduled days per week)**: `=IF(OR(COUNTBLANK(B1:H1)>0,COUNTIF(B2:H2,"Y")+COUNTIF(B2:H2,"N")<>7),"Invalid inputs",COUNTIF(B2:H2, "Y"))` ### Convertible Bond Parity, Premium & Breakeven Formula - **URL**: https://sheets.arte-soft.com/en/learn/convertible-bond-conversion-value-parity-premium-and-income-breakeven-formula/ - **Summary**: Calculate Corporate Convertible Bond Conversion Ratio (Par / Conv_Price), Equity Conversion Parity Value, Dollar & Percentage Conversion Premium, and Coupon-vs-Dividend Income Payback Years. *Table — Measure convertible bond asymmetric upside via Equity Parity and Coupon Carry Payback!:* | Convertible Bond Metric ($1,000 Par, $50 Conv, Stock=$45, Bond=$1,080, 4% Cpn, $0.50 Div) | Formula | Verified Output | | --- | --- | --- | | Equity Conversion Value (Parity) | (Par / Conv_Price) * Stock_Price | $900.00 ($1,080 @ Stock=$54) | | Dollar Conversion Premium ($) | Bond_Price - Equity_Parity | $180.00 ($0.00 @ Stock=$54) | | Percentage Conversion Premium | (Bond_Price - Parity) / Parity | 0.2000 (20.00%; 0.0000 @ $54) | | Income Payback Breakeven (Yrs) | Premium_$ / (Bond_Cpn - Ratio*Div) | 6.00 yrs (0.00 yrs @ Parity) | - **Formula (Convertible Bond Coupon-Advantage Breakeven Years Formula)**: `=LET(pr_v, B2, cv_p, B3, st_p, B4, bd_p, B5, cp_r, B6, dv_s, B7, IF(OR(pr_v <= 0, cv_p <= 0, st_p <= 0, bd_p <= 0, cp_r < 0, dv_s < 0), "Invalid Convertible Quote", LET(cv_r, pr_v / cv_p, pr_y, cv_r * st_p, IF(bd_p < pr_y, "Arbitrage: Bond Below Parity", LET(in_d, pr_v * cp_r - cv_r * dv_s, IF(in_d <= 0, "Negative Carry: Stock Div >= Coupon", ROUND((bd_p - pr_y) / in_d, 2)))))))` - **Formula (Deep In-the-Money Parity Check ($54 Stock) & High-Dividend Negative Carry Check)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0, B7 < 0), "Invalid Convertible Quote", ROUND((B5 - E2) / E2, 4))` ### Convertible Note Cap vs Discount Conversion Formula - **URL**: https://sheets.arte-soft.com/en/learn/convertible-note-valuation-cap-vs-discount-effective-conversion-price/ - **Summary**: Calculate Accrued Simple-Interest Note Balance, Effective Conversion Price MIN(P_round * (1 - d), V_cap / S_pre), Converted Preferred Shares, and Day-1 Paper Multiple on Principal. *Table — Model accrued simple interest and the investor-favorable MIN(Discount, Cap) rule!:* | Convertible Note Metric ($500k, 8% for 18m, 20% Disc, $8M Cap, $2.50 Series A) | Formula | Verified Output | | --- | --- | --- | | Accrued Convertible Balance ($) | Principal * (1 + r_ann * m_months / 12) | $560,000.00 ($60k Interest) | | Effective Conversion Price ($/sh) | MIN(P_A * (1 - d_disc), V_cap / S_pre) | $1.60 / sh (Cap < $2.00 Disc) | | Converted Series A Shares | Bal_conv / P_conv | 350,000 shares | | Day-1 Paper Multiple on Principal | (Shares_conv * P_A) / Principal | 1.7500x ($875,000 Value) | - **Formula (Effective Conversion Price & Converted Shares Formula)**: `=LET(pr_n, B2, rt_i, B3, mn_h, B4, ds_c, B5, cp_v, B6, sh_p, B7, px_a, B8, IF(OR(pr_n <= 0, rt_i < 0, mn_h < 0, ds_c < 0, ds_c >= 1, cp_v <= 0, sh_p <= 0, px_a <= 0), "Invalid Note Terms", ROUND(MIN(px_a * (1 - ds_c), cp_v / sh_p), 4)))` - **Formula (Day-1 Paper Multiple on Invested Principal Formula)**: `=LET(px_cv, MIN(B8 * (1 - B5), B6 / B7), IF(ISTEXT(E3), E3, ROUND(((B2 * (1 + B3 * B4 / 12)) / px_cv) * B8 / B2, 4)))` ### Conwell-Weisskopf Ionized-Impurity Mobility & Matthiessen Total μ - **URL**: https://sheets.arte-soft.com/en/learn/conwell-weisskopf-ionized-impurity-scattering-mobility-formula/ - **Summary**: Calculate Coulombic ionized-impurity carrier mobility μ_CW (cm^2/(V·s)) via Esther Conwell and Victor Weisskopf’s screened T^(3/2)/N_I Rutherford formula and combine with phonon mobility μ_L by Matthiessen’s Rule. *Table — Why ionized-impurity mobility INCREASES as T^(3/2)—opposite to phonon scattering!:* | Silicon Doping & Temperature State (εr=11.7, m*=0.26) | Screening Ratio u | Conwell-Weisskopf μ_CW | Matthiessen Total μ (cm^2/V·s) | | --- | --- | --- | --- | | Moderate Doping (300 K, NI = 10^17, μL = 1,400) | 13.58 | 8,781.7 | 1,207.5 (Phonon Dominated) | | Heavy Doping (300 K, NI = 10^18, μL = 1,400) | 6.30 | 1,237.3 | 656.8 (Impurity Comparable!) | | Cooled Cryostat (150 K, NI = 10^17, μL = 4,500) | 6.79 | 4,209.3 (Drops as T^1.5!) | 2,174.9 | - **Formula (Conwell-Weisskopf Ionized-Impurity Mobility μ_CW (cm^2/(V·s)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Semiconductor Inputs", ROUND((3.2874E15 * (B2 ^ 2) * (B4 ^ 1.5)) / (B5 * SQRT(B3) * LN(1 + ((1795.3 * B2 * B4 / (B5 ^ (1 / 3))) ^ 2))), 1))` - **Formula (Matthiessen Combined Phonon + Impurity Mobility μ_tot (cm^2/(V·s)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Semiconductor Inputs", ROUND(1 / ((1 / B6) + 1 / ((3.2874E15 * (B2 ^ 2) * (B4 ^ 1.5)) / (B5 * SQRT(B3) * LN(1 + ((1795.3 * B2 * B4 / (B5 ^ (1 / 3))) ^ 2))))), 1))` ### Factory Physics CONWIP: Critical WIP (W0), Best-Case & Practical Worst-Case Throughput - **URL**: https://sheets.arte-soft.com/en/learn/conwip-constant-work-in-process-critical-wip-and-throughput/ - **Summary**: Benchmark manufacturing line performance under Constant Work-In-Process (CONWIP) cap w using Hopp & Spearman Critical WIP W0 = rb * T0, Best-Case MIN(w/T0, rb), and Practical Worst-Case throughput (w / (w + W0 - 1)) * rb. *Table — Benchmark your factory floor against Hopp & Spearman's Factory Physics laws!:* | CONWIP Cap w (rb=4/hr, T0=5 hr -> W0=20) | Best-Case Throughput | Practical Worst-Case TH_PWC | PWC Cycle Time CT_PWC | | --- | --- | --- | --- | | Under-WIPped (w = 10 < W0) | 10 / 5 = 2.000 jobs/hr | (10 / 29) * 4 = 1.379 jobs/hr | 5 + (9 / 4) = 7.25 hr | | At Critical WIP (w = 20 = W0) | 4.000 jobs/hr (100% rb!) | (20 / 39) * 4 = 2.051 jobs/hr | 5 + (19 / 4) = 9.75 hr | | Buffered Line (w = 60 = 3*W0) | 4.000 jobs/hr (Capped at rb) | (60 / 79) * 4 = 3.038 jobs/hr | 5 + (59 / 4) = 19.75 hr | - **Formula (Critical WIP W0 = rb * T0 & Best-Case Throughput MIN(w / T0, rb))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Line Parameters", ROUND(B2 * B3, 2))` - **Formula (Practical Worst-Case (PWC) CONWIP Throughput TH_PWC = (w / (w + W0 - 1)) * rb)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 1), "Invalid Line Parameters", ROUND((B4 / (B4 + (B2 * B3) - 1)) * B2, 3))` ### Cooling Tower Cycles of Concentration & Blowdown Formula - **URL**: https://sheets.arte-soft.com/en/learn/cooling-tower-cycles-of-concentration-evaporation-drift-and-blowdown/ - **Summary**: Calculate Cooling Tower Evaporation Loss (GPM), Chloride Cycles of Concentration (COC), Controlled Basin Blowdown Rate (GPM), and Total Makeup Water Demand (GPM). *Table — Diminishing water-saving returns above COC = 6—and deduct drift loss from controlled blowdown!:* | Cooling Tower Water-Balance KPI (10,000 GPM, 15°F Range, 50->300 ppm Cl) | Formula | Verified Output | | --- | --- | --- | | Evaporation Loss Rate (GPM) | Recirc_GPM * Range_F * Evap_Factor | 120.00 GPM | | Cycles of Concentration (COC) | Max_Basin_Chlorides / Makeup_Chlorides | 6.00 (3.00 @ 150 ppm Limit) | | Controlled Basin Blowdown (GPM) | MAX(0, Evap_GPM / (COC - 1) - Drift_GPM) | 22.00 GPM (58.00 GPM @ COC=3) | | Total Makeup Water Demand (GPM) | Evap_GPM + Blowdown_GPM + Drift_GPM | 144.00 GPM (180.00 GPM @ COC=3) | - **Formula (Cooling Tower Mineral-Balance Controlled Blowdown Formula)**: `=LET(rc_g, B2, dt_f, B3, ev_k, B4, cl_m, B5, cl_b, B6, dr_f, B7, IF(OR(rc_g <= 0, dt_f <= 0, ev_k <= 0, cl_m <= 0, cl_b <= cl_m, dr_f < 0), "Invalid Cooling Tower Input", LET(ev_g, rc_g * dt_f * ev_k, co_c, cl_b / cl_m, dr_g, rc_g * dr_f, ROUND(MAX(0, ev_g / (co_c - 1) - dr_g), 2))))` - **Formula (Hard-Water Low-COC Penalty Check (Set Max Basin Chlorides = 150 ppm -> COC = 3))**: `=IF(ISTEXT(E4), E4, ROUND(E2 + E4 + B2 * B7, 2))` ### Cooling Tower Range, Wet-Bulb Approach & Effectiveness Formula - **URL**: https://sheets.arte-soft.com/en/learn/cooling-tower-range-approach-temperature-and-thermal-effectiveness-formula/ - **Summary**: Calculate Condenser-Water Cooling Range T_hot - T_cold (°C), Wet-Bulb Approach T_cold - T_wb (°C), Cooling Tower Thermal Effectiveness (%), and Total Heat Rejection Rate (kW). *Table — Cooling tower RANGE is set by chiller load—only WET-BULB APPROACH measures actual cooling-tower fill and fan performance!:* | CTI Cooling Tower Thermal KPI (Thot=37°C, Tcold=29°C, Twb=25°C, Qw=420 m³/h) | Formula | Verified Output | | --- | --- | --- | | Cooling Range (Thot - Tcold) | Entering_Hot_C - Leaving_Cold_C | 8.00 °C (5.50 °C @ scaled fill 31.5 °C) | | Wet-Bulb Approach (Tcold - Twb) | Leaving_Cold_C - Ambient_Wet_Bulb_C | 4.00 °C (6.50 °C @ scaled fill!) | | Tower Thermal Effectiveness (%) | ((Thot - Tcold) / (Thot - Twb)) * 100 | 66.67% (45.83% @ scaled fill!) | | Condenser Heat Rejection (kW) | ((Qw_m3_hr * 995) / 3600) * 4.184 * Range | 3,885.5 kW (2,671.3 kW @ scaled fill) | - **Formula (Thermodynamic Wet-Bulb Approach, Tower Effectiveness & Heat Rejection Formula)**: `=LET(th_c, B2, tc_c, B3, tw_c, B4, qw_h, B5, IF(OR(tc_c <= tw_c, th_c <= tc_c, th_c > 80, qw_h <= 0), "Invalid Tower Temps (Tcold must exceed Twb)", ROUND(((qw_h * 995) / 3600) * 4.184 * (th_c - tc_c), 1)))` - **Formula (Scaled PVC Fill & Clogged Spray-Nozzle Approach Degradation Check (Set T_cold B3 = 31.50 °C))**: `=IF(ISTEXT(E5), E5, ROUND(((B2 - B3) / (B2 - B4)) * 100, 2))` ### Cooper-Jacob Transient Well Drawdown Formula (Theis Approximation) - **URL**: https://sheets.arte-soft.com/en/learn/cooper-jacob-transient-aquifer-drawdown-transmissivity-storativity/ - **Summary**: Estimate constant-rate confined-aquifer drawdown using the Cooper–Jacob late-time approximation. Calculate u, apply a conservative small-u screen, and inspect drawdown per tenfold increase in time. - **Formula (Enter a consistent set of units)**: `=IF(COUNT(B2:B6)<>5,"Enter numeric Q, T, S, r and time",IF(OR(B2<0,MIN(B3:B6)<=0),"Require Q >= 0 and T, S, r, time > 0","OK"))` - **Formula (Compute u and the earliest time passing the screen)**: `=IF(C2<>"OK",C2,B5^2*B4/(4*B3*B6))` - **Formula (Calculate unrounded drawdown)**: `=IF(C2<>"OK",C2,IF(C3>0.01*(1+1E-12),"u > 0.01: use full Theis or another model",B2/(4*PI()*B3)*LN(2.25*B3*B6/(B5^2*B4))))` - **Formula (Check the semi-log slope)**: `=IF(C2<>"OK",C2,LN(10)*B2/(4*PI()*B3))` ### Heat Pump & Chiller COP (Cooling vs Heating) & EER HVAC formulas - **URL**: https://sheets.arte-soft.com/en/learn/cop-refrigeration-heat-pump-eer-and-seer-hvac-formulas/ - **Summary**: Calculate cooling Coefficient of Performance COP_cool = Q_cold / W_in, heating COP_heat = (Q_cold + W_in) / W_in = COP_cool + 1, and Energy Efficiency Ratio EER = 3.41214 * COP. *Table — Use the same operating point and system boundary:* | HVAC Performance Metric | Formula | Illustrative cooling10.5 kW, input3.0 kW | Hypothetical same output, input2.1 kW | | --- | --- | --- | --- | | Cooling COP_cool | B2 / B3 | 10.5 / 3.0 = 3.50 | 10.5 / 2.1 = 5.00 | | Heating COP_heat (First Law) | (B2 + B3) / B3 | 13.5 / 3.0 = 4.50 (COP_cool + 1!) | 12.6 / 2.1 = 6.00 | | Energy Efficiency Ratio (EER) | 3.41214 * (B2 / B3) | 11.94 BTU/(Wh) | 17.06 BTU/(Wh) | - **Formula (Cooling COP)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<0,B3<=0),"Invalid inputs",ROUND(B2 / B3, 2)))` - **Formula (Convert Cooling COP to North American EER (BTU / Wh))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<0,B3<=0),"Invalid inputs",ROUND(3.41214 * (B2 / B3), 2)))` - **Formula (Heating COP for the same ideal energy balance)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<0,B3<=0),"Invalid inputs",ROUND((B2 + B3) / B3, 2)))` ### Coplanar Waveguide (CPW) RF PCB Impedance Z0 Formula - **URL**: https://sheets.arte-soft.com/en/learn/coplanar-waveguide-cpw-rf-pcb-characteristic-impedance-z0-and-effective-permittivity/ - **Summary**: Calculate CPW Elliptic Modulus k0 = w/(w + 2g), Half-Space Effective Permittivity (1 + eps_r)/2, Hilberg Characteristic Impedance Z0 (Ohms), and Phase Velocity (mm/ns). *Table — On an unbacked Coplanar Waveguide, Z0 depends ONLY on trace-to-gap aspect ratio w/(w+2g)—independent of substrate thickness!:* | Unbacked CPW RF Transmission-Line KPI (w=1.05 mm, g=0.23 vs 0.48 mm, eps_r=4.35) | Formula | Verified Output | | --- | --- | --- | | Elliptic Modulus k0 | Width_w_mm / (Width_w_mm + 2 * Gap_g_mm) | 0.6954 (0.5224 @ wide gap g=0.48 mm) | | Effective Permittivity eps_eff | (1 + Substrate_Permittivity_eps_r) / 2 | 2.675 | | CPW Characteristic Impedance Z0 | (30 * PI()) / (SQRT(eps_eff) * (K/Kp)) | 58.50 Ohms (71.84 Ohms @ g=0.48 mm) | | Quasi-TEM Phase Velocity (mm/ns) | 299.792458 / SQRT(eps_eff) | 183.30 mm/ns (5.46 ps/mm delay) | - **Formula (Hilberg Conformal-Elliptic CPW Impedance & Phase Velocity Formula (0 < k0 <= 0.707))**: `=LET(wt_m, B2, gp_m, B3, er_s, B4, kz_m, wt_m / (wt_m + 2 * gp_m), ef_p, (1 + er_s) / 2, IF(OR(wt_m <= 0.05, gp_m <= 0.05, kz_m > 0.707, er_s < 1, er_s > 25), "Invalid CPW Geometry", ROUND(299.792458 / SQRT(ef_p), 2)))` - **Formula (Over-Etched 0.48 mm Coplanar Ground Gap Impedance Mismatch Check (Set Gap g B3 = 0.48 mm))**: `=IF(ISTEXT(E5), E5, LET(kz_m, B2 / (B2 + 2 * B3), kp_m, SQRT(1 - (kz_m ^ 2)), kk_r, PI() / LN((2 * (1 + SQRT(kp_m))) / (1 - SQRT(kp_m))), ef_p, (1 + B4) / 2, ROUND((30 * PI()) / (SQRT(ef_p) * kk_r), 2)))` ### Copper Electrorefining Anode Cycle, Scrap & Slime Formula - **URL**: https://sheets.arte-soft.com/en/learn/copper-electrorefining-anode-slime-fall-scrap-recycle-and-passivation-cycle-formula/ - **Summary**: Calculate Dissolvable Anode Copper Mass (kg), Faraday Daily Cathode Plating Rate (kg/d), Anode Campaign Life Before Scrap Pull (days), and Au/Ag/Se Anode Slime Yield (kg/anode). *Table — Pushing copper electrorefining current density to 410 A/m² passivates impure anodes with CuSO4·5H2O crust—forcing 19% anode scrap recycle back to the anode furnace!:* | Copper Electrorefining Cell KPI (380 kg Anode, A=2.05 m², Slime=5.8 kg/t) | Formula | Verified Output | | --- | --- | --- | | Dissolvable Anode Mass (kg) | Cast_Anode_kg * (1 - Anode_Scrap_Pct / 100) | 326.8 kg (307.8 kg @ 19% scrap) | | Faraday Cathode Gain (kg/d) | ((Area * j) * 86400 * 63.546 * Eff) / (2 * F * 1000) | 17.45 kg/d (22.00 kg/d @ 410 A/m²) | | Anode Residence Life (days) | Dissolvable_Mass_kg / Daily_Cathode_kg_d | 18.73 d (13.99 d two-pull schedule) | | Au/Ag/Pb Slime per Anode (kg) | (Dissolvable_Mass_kg / 1000) * Slime_kg_t | 1.895 kg/anode Doré feed | - **Formula (Faraday Copper Electrorefining Anode Cycle, Scrap Margin & Slime Balance Formula)**: `=LET(ma_k, B2, sc_p, B3, ac_m, B4, cd_j, B5, ce_p, B6, sl_r, B7, md_k, ma_k * (1 - sc_p / 100), IF(OR(ma_k < 150, ma_k > 600, sc_p < 8, sc_p > 35, ac_m < 1, ac_m > 3.6, cd_j < 150, cd_j > 480, ce_p < 80, ce_p > 99.8, sl_r < 0.5, sl_r > 30), "Invalid Refining Input", ROUND((md_k / 1000) * sl_r, 3)))` - **Formula (High-Intensity Overdrive (`j = 410` A/m², `Scrap = 19%`, `Eff = 92%`) Nodulation & Passivation Check)**: `=IF(ISTEXT(E5), E5, LET(md_k, B2 * (1 - B3 / 100), kd_d, ((B4 * B5) * 86400 * 63.546 * (B6 / 100)) / (2 * 96485.332 * 1000), ROUND(md_k / kd_d, 2)))` ### Copper Electrowinning Tankhouse Harvest & kWh/t Formula - **URL**: https://sheets.arte-soft.com/en/learn/copper-electrowinning-tankhouse-current-efficiency-cathode-harvest-and-specific-kwh/ - **Summary**: Calculate Daily LME Grade-A Copper plated per Electrolytic Cell (kg/day), Total Tankhouse Cathode Harvest (t/day), Rectifier DC Bus Load (MW), and Specific DC Energy (kWh/t Cu). *Table — Ferric iron Fe³⁺ carryover from solvent extraction parasitic-redoxes copper cathodes—dropping current efficiency from 92.5% to 78% and spiking power cost +31%!:* | SX-EW Tankhouse Faraday KPI (34 kA, 84 Series Cells: Clean Electrolyte vs High-Fe³⁺) | Formula | Verified Output | | --- | --- | --- | | Daily Copper per Cell (kg/day) | (I_kA*1e3 * 86400 * 63.546 * CE) / (2 * 96485.332 * 1e3) | 894.81 kg/d (754.54 kg/d @ 78% CE!) | | Tankhouse Cathode Harvest (t/day) | (Daily_Cu_Cell_kg * Series_Cells_N) / 1000 | 75.16 t/d (63.38 t/d = -11.8 t/d lost!) | | Rectifier DC Bus Power (MW) | (Current_kA * Series_Cells_N * Vcell_V) / 1000 | 5.769 MW (6.397 MW @ scaled anodes) | | Specific DC Energy (kWh/t Cu) | (Rectifier_MW * 24 * 1000) / Harvest_t_d | 1,842.1 kWh/t (2,422.4 kWh/t = +31.5%!) | - **Formula (Faraday Divalent Cu²⁺ Electrowinning Mass Balance & Specific Energy Formula)**: `=LET(ik_a, B2, nc_s, B3, ce_p, B4, vc_v, B5, mc_k, (ik_a * 1000 * 86400 * 63.546 * (ce_p / 100)) / (2 * 96485.332 * 1000), mt_t, (mc_k * nc_s) / 1000, mw_d, (ik_a * nc_s * vc_v) / 1000, IF(OR(ik_a < 1, ik_a > 100, nc_s < 1, nc_s > 500, ce_p < 40, ce_p > 100, vc_v < 1.5, vc_v > 3.5), "Invalid EW Input", ROUND((mw_d * 24 * 1000) / mt_t, 1)))` - **Formula (High Ferric Entrainment + Anode Scale (`CE = 78%`, `V_cell = 2.24` V) Power-Penalty Check)**: `=IF(ISTEXT(E5), E5, LET(mc_k, (B2 * 1000 * 86400 * 63.546 * (B4 / 100)) / (2 * 96485.332 * 1000), ROUND((mc_k * B3) / 1000, 2)))` ### Copy Value from Every Nth Row or Column into a Clean Table (INDEX) - **URL**: https://sheets.arte-soft.com/en/learn/copy-every-nth-row-or-column-into-compact-list-index/ - **Summary**: Reshape regular vertical blocks using INDEX and a stride, or extract every Nth column from a horizontal source. Includes explicit output anchors and bounds checks. - **Formula (First field: E2, filled down)**: `=IF(COUNT($C$2)<>1,"Enter numeric block size",IF(OR($C$2<1,$C$2<>INT($C$2)),"Block size must be a positive integer",IF(1>$C$2,"Field exceeds block size",LET(position,(ROW(E2)-ROW($E$2))*$C$2+1,IF(OR(position<1,position>ROWS($A$2:$A$10)),"End of source",INDEX($A$2:$A$10,position))))))` - **Formula (Third field: G2, filled down)**: `=IF(COUNT($C$2)<>1,"Enter numeric block size",IF(OR($C$2<1,$C$2<>INT($C$2)),"Block size must be a positive integer",IF(3>$C$2,"Field exceeds block size",LET(position,(ROW(E2)-ROW($E$2))*$C$2+3,IF(OR(position<1,position>ROWS($A$2:$A$10)),"End of source",INDEX($A$2:$A$10,position))))))` - **Formula (Horizontal source: every third column)**: `=IF(COUNT($C$2)<>1,"Enter numeric block size",IF(OR($C$2<1,$C$2<>INT($C$2)),"Block size must be a positive integer",IF(1>$C$2,"Field exceeds block size",LET(position,(COLUMN(E6)-COLUMN($E$6))*$C$2+1,IF(OR(position<1,position>COLUMNS($A$13:$I$13)),"End of source",INDEX($A$13:$I$13,1,position))))))` ### Cornfield 2x2 Odds Ratio Quadratic Expected Cell A(psi) & Score Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/cornfield-exact-quadratic-odds-ratio-confidence-limits-2x2/ - **Summary**: Evaluate Jerome Cornfield’s (1956) noncentral hypergeometric quadratic expected cell count A(psi), conditioning variance V(A), and continuity-corrected chi-square score X^2(psi) for any hypothesized 2x2 Odds Ratio psi. *Table — Why Cornfield’s margin-conditioned quadratic avoids Woolf’s zero-cell crash on 2x2 tables!:* | Cornfield Diagnostic (a=18, b=12, c=8, d=22; OR_hat = 4.125) | At Null psi = 1.00 | At Candidate Lower Bound psi = 1.25 | | --- | --- | --- | | Expected Exposed Cases A(psi) | 13.0000 | 13.8225 | | Conditioned Variance V(A(psi)) | 3.6833 | 3.6947 | | Cornfield Continuity-Corrected X^2_CC(psi) | 5.4977 (Reject: > 3.8415) | 3.6867 (Inside 95% CI: <= 3.8415) | - **Formula (Cornfield Quadratic Expected Cell Count A(psi) Under Fixed 2x2 Margins)**: `=IF(OR(MIN(B2:B5) < 0, B2 + B3 <= 0, B4 + B5 <= 0, B2 + B4 <= 0, B3 + B5 <= 0, B6 <= 0), "Invalid 2x2 Marginals or psi <= 0", IF(ABS(B6 - 1) < 0.000001, ROUND((B2 + B3) * (B2 + B4) / SUM(B2:B5), 4), ROUND(((SUM(B2:B5) + (B2 + B3 + B2 + B4) * (B6 - 1)) - SQRT((SUM(B2:B5) + (B2 + B3 + B2 + B4) * (B6 - 1)) ^ 2 - 4 * (B6 - 1) * B6 * (B2 + B3) * (B2 + B4))) / (2 * (B6 - 1)), 4)))` - **Formula (Cornfield Continuity-Corrected Chi-Square Statistic X^2_CC(psi))**: `=IF(OR(MIN(B2:B5) < 0, B6 <= 0, D3 <= 0), "Invalid 2x2 Marginals or psi <= 0", ROUND((MAX(0, ABS(B2 - D2) - 0.5) ^ 2) / D3, 4))` ### Cornish-Fisher Modified VaR (mVaR) formula: Skewness & Excess Kurtosis Tail Risk - **URL**: https://sheets.arte-soft.com/en/learn/cornish-fisher-var-skewness-and-kurtosis-tail-adjustment/ - **Summary**: Explore a truncated Cornish-Fisher quantile approximation and compare its illustrative loss threshold with a Gaussian calculation. *Table — An approximation, not a measurement of true tail risk:* | Tail Risk Metric | Formula / Inputs | Skewed Fund (S=-0.8, K=2.0) | Normal Returns (S=0, K=0) | | --- | --- | --- | --- | | Monthly Mean & Vol | B2 = +0.80%, B3 = 4.00% | 99% Normal z B6 = -2.3263 | Same Mean & Vol | | Gaussian 99% VaR | -(B2 + B6 * B3) | 8.51% (0.0851; Gaussian estimate) | 8.51% (0.0851) | | Cornish-Fisher Quantile z_CF | 4-term S & K_exc expansion | -3.1412 (polynomial approximation) | -2.3263 (Exact match) | | Modified 99% mVaR | -(B2 + z_CF * B3) | 11.76% (0.1176; approximate loss threshold) | 8.51% (0.0851) | - **Formula (Cornish-Fisher Modified Left-Tail Quantile z_CF)**: `=IF(COUNT(B4:B6)<>3,"Invalid inputs",IF(B6>=0,"Invalid inputs",ROUND(B6 + ((((B6 ^ 2) - 1) / 6) * B4) + ((((B6 ^ 3) - 3 * B6) / 24) * B5) - (((2 * (B6 ^ 3) - 5 * B6) / 36) * (B4 ^ 2)), 4)))` - **Formula (Modified Value-at-Risk mVaR = -(Mean + z_CF * Volatility))**: `=IF(COUNT(B2:B3,B7)<>3,"Invalid inputs",IF(B3<=0,"Invalid inputs",ROUND(-(B2 + B7 * B3), 4)))` - **Formula (Gaussian reference calculation)**: `=IF(COUNT(B2:B3,B6)<>3,"Invalid inputs",IF(OR(B3<=0,B6>=0),"Invalid inputs",ROUND(-(B2 + B6 * B3), 4)))` ### Corporate Bond Make-Whole Call Price & Par Floor Formula - **URL**: https://sheets.arte-soft.com/en/learn/corporate-bond-make-whole-call-treasury-plus-spread-redemption-price/ - **Summary**: Calculate Investment-Grade Corporate Bond Semiannual Make-Whole Discount Rate (Benchmark Treasury + Spread), Present Value of Remaining Coupons and Principal, Contractual MAX(Par, PV) Redemption Price ($), and Make-Whole Premium %. *Table — Enforce the 100%-of-Par contractual floor when modeling Make-Whole bond redemptions!:* | Make-Whole Redemption Metric ($1,000 Par, 7% Coupon, 6 Semi-Periods, T+50 bps) | Formula | Verified Output | | --- | --- | --- | | Semiannual Make-Whole Rate r_s | (Treasury_Yield + MakeWhole_Spread) / 2 | 0.0200 (2.00% / half-yr) | | Raw Discounted Make-Whole PV ($) | PV(Coupons @ r_s) + Par * (1 + r_s)^-N | $1,084.02 ($973.79 @ 7.5% Tsy) | | Indenture Call Price ($) | MAX(Par_Face_Value, Raw_MakeWhole_PV) | $1,084.02 ($1,000.00 Par Floor) | | Make-Whole Premium % of Par | (Indenture_Call_Price - Par) / Par | 0.0840 (0.0000 @ 7.5% Tsy) | - **Formula (Semiannual Make-Whole Call Price with Contractual Par Floor Formula)**: `=LET(pr_f, B2, cp_r, B3, np_s, B4, ts_y, B5, mw_s, B6, IF(OR(pr_f <= 0, cp_r < 0, np_s < 1, ts_y <= 0, mw_s < 0), "Invalid Make-Whole Bond Input", LET(rs_h, (ts_y + mw_s) / 2, cp_h, (pr_f * cp_r) / 2, pv_r, cp_h * ((1 - ((1 + rs_h) ^ -np_s)) / rs_h) + pr_f * ((1 + rs_h) ^ -np_s), ROUND(MAX(pr_f, pv_r), 2))))` - **Formula (Rising-Rate Par-Floor Protection Check (Set Benchmark Treasury = 7.50%))**: `=IF(ISTEXT(E4), E4, ROUND((E4 - B2) / B2, 4))` ### Corporate Carve-Out Standalone Cost & Stranded Overhead Formula - **URL**: https://sheets.arte-soft.com/en/learn/corporate-carve-out-standalone-cost-stranded-overhead-and-spin-off-ebitda/ - **Summary**: Calculate Divisional Carve-Out GAAP EBITDA (Direct EBITDA - Allocated Parent Corporate Cost), Standalone G&A Cost Delta (Dis-Synergies vs Cost Savings), True Standalone Run-Rate EBITDA, and RemainCo Unabsorbed Stranded Overhead. *Table — Replace arbitrary parent corporate allocations with bottom-up Standalone Cost models!:* | Carve-Out & RemainCo Metric ($55M Direct, $12M Alloc, $16.5M Standalone, $8M Cut) | Formula | Verified Output | | --- | --- | --- | | Carve-Out Historical EBITDA ($M) | Direct_EBITDA - Allocated_Parent_Cost | $43.00M | | Standalone Cost Delta ($M) | Allocated_Parent_Cost - Standalone_GA | -$4.50M (+$2.00M @ $10M Lean GA) | | Standalone Run-Rate EBITDA ($M) | Direct_EBITDA - BottomUp_Standalone_GA | $38.50M ($45.00M @ $10M Lean GA) | | RemainCo Stranded Overhead ($M) | MAX(0, Allocated_Cost - Eliminated_Cost) | $4.00M/yr | - **Formula (Bottom-Up Carve-Out Standalone Run-Rate EBITDA Formula)**: `=LET(dr_e, B2, al_p, B3, st_g, B4, el_c, B5, IF(OR(dr_e <= 0, al_p < 0, st_g < 0, el_c < 0, dr_e <= st_g), "Invalid Carve-Out Cost Model", ROUND(dr_e - st_g, 2)))` - **Formula (Lean Private-Equity Standalone Footprint Check (Set Standalone G&A = $10.00M))**: `=IF(ISTEXT(E4), E4, ROUND(MAX(0, B3 - B5), 2))` ### Corrado-Miller Closed-Form Implied Volatility for Non-ATM Options - **URL**: https://sheets.arte-soft.com/en/learn/corrado-miller-implied-volatility-quadratic-root-moneyness-formula/ - **Summary**: Extract implied volatility away from the money without Solver using the Corrado-Miller (1996) quadratic moneyness correction and spot why ATM Brenner-Subrahmanyam overstates ITM vol. *Table — See why ATM shortcuts explode on in-the-money options:* | Estimator | Formula Logic | Implied Vol on S=105, K=100, C=9.50 | | --- | --- | --- | | Naive ATM Shortcut (Bug) | SQRT(2 * PI() / T) * C / S | 0.3207 (Overstated by +13.65 pts!) | | Corrado-Miller (1996) | Quadratic moneyness root around (S + X) / 2 | 0.1842 (Matches Black-Scholes ~18.4%) | | Exact ATM Limit (S = X) | Reduces identically to SQRT(2*PI()/T) * C / S | Exact continuity at S = K*EXP(-r*T) | - **Formula (Corrado-Miller Quadratic Implied Volatility Formula)**: `=LET(s_px, B2, k_str, B3, r_rf, B4, t_yr, B5, c_obs, B6, x_pv, k_str * EXP(-r_rf * t_yr), m_gap, s_px - x_pv, adj_c, c_obs - 0.5 * m_gap, rad_cm, adj_c^2 - (m_gap^2) / PI(), IF(OR(t_yr <= 0, c_obs < MAX(0, m_gap)), "Arbitrage Violation", IF(rad_cm < 0, "Deep-ITM Radicand Trap", ROUND((SQRT(2 * PI() / t_yr) / (s_px + x_pv)) * (adj_c + SQRT(rad_cm)), 4))))` - **Formula (Naive ATM Mispricing Comparison Formula)**: `=ROUND(SQRT(2 * PI() / B5) * (B6 / B2), 4)` ### Corrected QT Interval (QTc) ECG formulas: Bazett (SQRT) vs Fridericia (Cube Root) - **URL**: https://sheets.arte-soft.com/en/learn/corrected-qt-interval-qtc-bazett-and-fridericia-formulas/ - **Summary**: Compare Bazett and Fridericia heart-rate corrections using QT in milliseconds and heart rate in beats per minute. *Table — Compare correction methods with explicit units:* | ECG QTc Formula | Spreadsheet Expression | QT = 420 ms, HR = 75 (RR = 0.80s) | At HR = 60 bpm (RR = 1.0s) | | --- | --- | --- | --- | | Bazett QTc (Square Root) | B2 / SQRT(60 / B3) | 420 / 0.89443 = 469.6 ms | 420.0 ms | | Fridericia QTc (Cube Root) | B2 / ((60 / B3) ^ (1 / 3)) | 420 / 0.92832 = 452.4 ms | 420.0 ms | | Illustrative threshold comparison | Compare unrounded Bazett QTc with 500 ms | QT=460, HR=75 gives 514.3 ms after rounding | At 60 bpm, the same QT gives 460 ms | - **Formula (Bazett Corrected QT Interval: QTc_B = QT_ms / SQRT(60 / HR_bpm))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(B2 / SQRT(60 / B3), 1)))` - **Formula (Fridericia Cube-Root Corrected QT Interval: QTc_F = QT_ms / ((60 / HR_bpm) ^ (1/3)))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(B2 / ((60 / B3) ^ (1 / 3)), 1)))` - **Formula (Compare an unrounded Bazett result with an example threshold)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",IF((B2 / SQRT(60 / B3)) >= 500, "Bazett QTc at least 500 ms", "Bazett QTc below 500 ms")))` ### CORREL function: measure positive, negative, and zero linear correlation - **URL**: https://sheets.arte-soft.com/en/learn/correl-correlation-coefficient-two-ranges/ - **Summary**: Calculate the Pearson correlation coefficient (-1 to +1) between two paired metrics with CORREL, and understand why constant series return #DIV/0!. *Table — Interpret the -1 to +1 correlation scale:* | Ambient °C (A) | Chiller kWh (B) | Heater kWh (C) | | --- | --- | --- | | 16 | 112 | 90 | | 18 | 118 | 80 | | 20 | 130 | 70 | | 22 | 142 | 60 | | 24 | 148 | 50 | - **Formula (Compare chiller load vs heater load)**: `=ROUND(CORREL(A2:A6, B2:B6), 4)` - **Formula (Why flat data returns #DIV/0!)**: `=CORREL(A2:A6, C2:C6)` ### Corwin-Schultz High-Low Bid-Ask Spread Estimator Formula (2-Day vs 1-Day) - **URL**: https://sheets.arte-soft.com/en/learn/corwin-schultz-high-low-two-day-bid-ask-spread-estimator/ - **Summary**: Estimate effective percentage bid-ask spreads from daily High and Low bars alone using the Corwin & Schultz (2012) two-day range decomposition. *Table — Separate daily volatility from bid-ask bounce using 1-day vs 2-day High/Low bars!:* | Two-Day Bar Pair | 1-Day Sum beta | 2-Day Range gamma | Implied Spread (%) | | --- | --- | --- | --- | | Day 1: 102/100, Day 2: 102.2/100.2 | 0.000783 | 0.000474 | 1.5006% | | Trending Jump (101/100 -> 106/102) | 0.001578 | 0.003395 (alpha < 0) | 0.0000% (Floored) | | Zero-Range Flat Pair (100/100) | 0.000000 | 0.000000 | 0.0000% | - **Formula (Corwin-Schultz Effective Percentage Spread (%))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B2 < B3, B4 < B5), "Invalid High/Low", LET(betaVal, (LN(B2 / B3) ^ 2) + (LN(B4 / B5) ^ 2), gammaVal, LN(MAX(B2, B4) / MIN(B3, B5)) ^ 2, denomVal, 3 - 2 * SQRT(2), alphaVal, (SQRT(2 * betaVal) - SQRT(betaVal)) / denomVal - SQRT(gammaVal / denomVal), ROUND(MAX(0, 2 * (EXP(alphaVal) - 1) / (1 + EXP(alphaVal))) * 100, 4)))` - **Formula (1-Day Squared Log-Range Sum (beta) vs 2-Day Squared Log-Range (gamma))**: `=ROUND((LN(B2 / B3) ^ 2) + (LN(B4 / B5) ^ 2), 6)` ### COS function: calculate horizontal run from sloped distance and angle - **URL**: https://sheets.arte-soft.com/en/learn/cos-function-horizontal-projection/ - **Summary**: Project sloped survey or rafter lengths onto the horizontal ground plane with COS(RADIANS(angle)), and round floating-point noise at 90 degrees. *Table — Convert degrees to radians before calling COS:* | Sloped Length m (A) | Pitch Degrees (B) | COS(RADIANS(B)) | Horizontal Run m | | --- | --- | --- | --- | | 12 | 60 | 0.5 | 6 | | 12 | 0 | 1 | 12 (flat) | | 12 | 90 | 0 (rounded) | 0 (vertical) | | 12 | 120 | -0.5 | -6 (opposite heading) | - **Formula (Calculate horizontal run across pitch angles)**: `=ROUND(A2 * COS(RADIANS(B2)), 4)` - **Formula (Why COS(RADIANS(90)) needs rounding)**: `=ROUND(COS(RADIANS(B3)), 6)` ### Cosine Similarity and Euclidean Distance between two vectors in cells - **URL**: https://sheets.arte-soft.com/en/learn/cosine-similarity-and-euclidean-distance-vectors/ - **Summary**: Compare embeddings, customer preference profiles, or document term vectors using SUMPRODUCT dot products and L2 vector norms. *Table — Direction (Cosine Similarity) vs Magnitude Gap (Euclidean L2 Distance):* | Vector Pair (A vs B) | Dot Product A·B | Cosine Similarity [-1, +1] | Euclidean Distance | | --- | --- | --- | --- | | [3, 4, 0] vs [6, 8, 0] (2× scale) | 50 | +1.0000 (Identical mix!) | 5.0000 | | [3, 4, 0] vs [-4, 3, 0] (90°) | 0 | 0.0000 (Orthogonal) | 7.0711 (SQRT(50)) | | [3, 4, 0] vs [-3, -4, 0] (180°) | -25 | -1.0000 (Exact opposite) | 10.0000 | - **Formula (Cosine Similarity and Euclidean L2 Distance formulas)**: `=IF(OR(COUNT(A2:A4)<>3,COUNT(B2:B4)<>3),"Enter numeric vectors",IF(OR(SUM(A2:A4^2)=0,SUM(B2:B4^2)=0),"Undefined for zero vector",ROUND(SUMPRODUCT(A2:A4, B2:B4) / (SQRT(SUM(A2:A4 ^ 2)) * SQRT(SUM(B2:B4 ^ 2))), 4)))` - **Formula (Euclidean L2 straight-line distance between two vectors)**: `=ROUND(SQRT(SUM((A2:A4 - B2:B4) ^ 2)), 4)` ### Cost-of-living adjustment (COLA): percentage raises, dollar caps, and reverse base - **URL**: https://sheets.arte-soft.com/en/learn/cost-of-living-salary-adjustment/ - **Summary**: Calculate adjusted salaries with Base * (1 + Pct), enforce maximum raise caps with MIN, and recover pre-raise pay accurately. *Table — Standard percentage increase vs capped dollar COLA:* | CurrentSalary (A) | ColaPct (B) | MaxCap (C) | Uncapped New | Capped New | | --- | --- | --- | --- | --- | | 64000 | 0.045 | 3500 | 66880 | 66880 | | 95000 | 0.045 | 3500 | 99275 | 98500 | - **Formula (Uncapped and capped COLA formulas)**: `=ROUND(A2 * (1 + B2), 2)` - **Formula (Capped raise and reverse base-pay check)**: `=A3 + MIN(ROUND(A3 * B3, 2), C3)` ### Cotangent (COT), Cosecant (CSC) & Secant (SEC) Roof Pitch & Optical Formulas - **URL**: https://sheets.arte-soft.com/en/learn/cotangent-cosecant-and-secant-reciprocal-trigonometry/ - **Summary**: Calculate cotangent, cosecant, and secant from degree or radian angles using exact COS/SIN and 1/SIN identities while guarding 0 and 180 degree singularities. *Table — Use COS(x)/SIN(x) rather than 1/TAN(x) so 90 degrees evaluates cleanly to 0:* | Pitch Angle (deg) | cot(theta) = cos/sin | csc(theta) = 1/sin | Horizontal Run (Rise = 4m) | Rafter Length (Rise = 4m) | | --- | --- | --- | --- | --- | | 30 deg | 1.732051 | 2.000000 | 6.9282 m | 8.0000 m | | 45 deg | 1.000000 | 1.414214 | 4.0000 m | 5.6569 m | | 90 deg | 0.000000 | 1.000000 | 0.0000 m | 4.0000 m | | 0 or 180 deg | Undefined | Undefined | Singularity Guard | Singularity Guard | - **Formula (Singularity-Safe Cotangent from Angle in Degrees)**: `=IF(MOD(B2, 180) = 0, "Undefined Singularity", ROUND(COS(RADIANS(B2)) / SIN(RADIANS(B2)), 6))` - **Formula (Rafter Slant Length Using Cosecant (Rise * csc(theta)))**: `=IF(OR(MOD(B2, 180) = 0, B3 <= 0), "Invalid Angle or Rise", ROUND(B3 / SIN(RADIANS(B2)), 4))` ### Cottrell Equation: Chronoamperometry Diffusion Current i(t) & Nernst Layer Thickness - **URL**: https://sheets.arte-soft.com/en/learn/cottrell-chronoamperometry-planar-diffusion-current-formula/ - **Summary**: Calculate t^(-1/2) planar diffusion current i(t) = (n * F * A * C0 * SQRT(D)) / SQRT(PI() * t) in microamps and Nernst diffusion-layer thickness delta = SQRT(PI() * D * t) in electrochemical sensors. *Table — Model glucose strips and potential-step chronoamperometry with the Cottrell t^-1/2 decay!:* | Step Time t (5 mM Ferricyanide, A = 0.07 cm^2) | Cottrell Current i(t) (uA) | Nernst Diffusion Layer delta (um) | Scaling Law | | --- | --- | --- | --- | | t = 1.0 second | 52.52 uA | 48.86 um | Baseline t^-1/2 point | | t = 4.0 seconds (4x longer) | 26.26 uA (Exact 0.5x!) | 97.72 um (Exact 2.0x!) | i * SQRT(t) = const = 52.52 uA*s^1/2 | | Invalid t <= 0 (Capacitive Spike) | Guarded Input Error | Undefined at t = 0 | "Invalid Cottrell Inputs" | - **Formula (Cottrell Diffusion-Limited Current i(t) in Microamperes (uA))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 0), "Invalid Cottrell Inputs", ROUND(1000000 * (B2 * 96485 * B3 * B4 * SQRT(B5)) / SQRT(PI() * B6), 2))` - **Formula (Nernst Planar Diffusion Layer Thickness delta = SQRT(PI() * D * t) in Micrometers (um))**: `=IF(OR(B5 <= 0, B6 <= 0), "Invalid Cottrell Inputs", ROUND(10000 * SQRT(PI() * B5 * B6), 2))` ### Couette Shear Stress, Viscous Heating & Rotational Viscometer Torque - **URL**: https://sheets.arte-soft.com/en/learn/couette-planar-shear-flow-and-coaxial-viscometer-torque/ - **Summary**: Compute planar Couette shear and viscous dissipation, then compare narrow-gap torque with the ideal concentric-cylinder solution using the same inputs. - **Formula (Shear rate in B8)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric mu, U and gap",IF(OR(B2<=0,B4<=0),"Viscosity and gap must be positive",B3/B4))` - **Formula (Planar shear stress in B9)**: `=IF(ISNUMBER(B8),B2*B8,B8)` - **Formula (Planar viscous dissipation in B10)**: `=IF(ISNUMBER(B8),B2*B8^2,B8)` - **Formula (Narrow-gap driving torque in B11)**: `=IF(ISNUMBER(B9),IF(COUNT(B5:B6)<>2,"Enter numeric radius and length",IF(OR(B5<=0,B6<=0),"Radius and length must be positive",2*PI()*B5^2*B6*B9)),B9)` - **Formula (Ideal annular driving torque in B12)**: `=IF(ISNUMBER(B9),IF(COUNT(B5:B6)<>2,"Enter numeric radius and length",IF(OR(B5<=0,B6<=0),"Radius and length must be positive",4*PI()*B2*B3*B6*B5*(B5+B4)^2/(B4*(2*B5+B4)))),B9)` ### Coulomb Active Retaining-Wall Earth Pressure (Ka) & Horizontal Thrust - **URL**: https://sheets.arte-soft.com/en/learn/coulomb-active-and-passive-retaining-wall-earth-pressure/ - **Summary**: Calculate Charles-Augustin de Coulomb's Active Earth Pressure Coefficient K_a (accounting for soil friction phi, wall-soil friction delta, and sloping backfill beta) and horizontal overturning thrust P_ah. *Table — Account for rough concrete wall friction and sloped backfill behind retaining walls!:* | Retaining Wall Case (Granular Backfill phi = 30 deg, gamma = 18 kN/m^3, H = 6 m) | Wall Friction delta & Slope beta | Coulomb K_a | Horizontal Thrust P_ah (kN/m) | | --- | --- | --- | --- | | Smooth Wall, Level Backfill (Rankine) | delta = 0 deg, beta = 0 deg | 0.3333 | 108.00 kN/m | | Rough Concrete Wall, Level Backfill | delta = 20 deg, beta = 0 deg | 0.2973 | 90.52 kN/m (16.2% lower!) | | Rough Wall, 10 deg Sloped Backfill | delta = 20 deg, beta = 10 deg | 0.3400 | 103.52 kN/m | - **Formula (Coulomb Active Earth Pressure Coefficient K_a (Vertical Wall Face))**: `=IF(OR(B2 <= 0, B4 > B2), "Unstable Backfill (Slope Beta > Friction Phi)", ROUND((COS(RADIANS(B2)) ^ 2) / (COS(RADIANS(B3)) * ((1 + SQRT((SIN(RADIANS(B2 + B3)) * SIN(RADIANS(B2 - B4))) / (COS(RADIANS(B3)) * COS(RADIANS(B4))))) ^ 2)), 4))` - **Formula (Horizontal Overturning Thrust P_ah = 0.5 * gamma * H^2 * K_a * COS(delta) (kN/m))**: `=ROUND(0.5 * B5 * (B6 ^ 2) * ((COS(RADIANS(B2)) ^ 2) / (COS(RADIANS(B3)) * ((1 + SQRT((SIN(RADIANS(B2 + B3)) * SIN(RADIANS(B2 - B4))) / (COS(RADIANS(B3)) * COS(RADIANS(B4))))) ^ 2))) * COS(RADIANS(B3)), 2)` ### Coulomb Active Earth Pressure Coefficient (Ka) & Thrust Formula - **URL**: https://sheets.arte-soft.com/en/learn/coulomb-active-earth-pressure-coefficient-ka-wall-friction-backfill-slope/ - **Summary**: Calculate Coulomb Active Coefficient K_a (with Wall Friction delta, Battered Stem beta & Backfill Slope alpha), Inclined Active Thrust P_a (kN/m), Horizontal Sliding Thrust P_ah (kN/m), and Stabilizing Vertical Shear P_av (kN/m). *Table — Wall-soil friction delta tilts active thrust downward—cutting horizontal overturning while adding stabilizing heel weight!:* | Coulomb Retaining Wall KPI (phi=32°, delta=16°, beta=90°, alpha=10°, H=6 m) | Formula | Verified Output | | --- | --- | --- | | Coulomb Active Coefficient Ka | Exact Coulomb Wedge Limit Formula | 0.3145 (0.3073 @ delta=0, alpha=0) | | Total Inclined Thrust Pa (kN/m) | 0.5 * gamma * (H^2) * Ka | 104.74 kN/m (102.32 @ Rankine) | | Horizontal Thrust Pah (kN/m) | Pa * COS(delta + 90° - beta) | 100.68 kN/m (102.32 @ Rankine) | | Stabilizing Vertical Shear Pav | Pa * SIN(delta + 90° - beta) | 28.87 kN/m (0.00 @ delta=0!) | - **Formula (Exact Coulomb Active Earth Pressure Coefficient Ka Formula)**: `=LET(ph_d, B2, dl_d, B3, bt_d, B4, al_d, B5, ht_m, B6, gm_s, B7, IF(OR(ph_d < 15, ph_d > 50, dl_d < 0, dl_d > ph_d, bt_d < 60, bt_d > 110, al_d < 0, al_d >= ph_d, ht_m <= 0, gm_s <= 10), "Invalid Coulomb Wall Input", LET(pr_r, ph_d * PI() / 180, dr_r, dl_d * PI() / 180, br_r, bt_d * PI() / 180, ar_r, al_d * PI() / 180, sq_t, SQRT((SIN(pr_r + dr_r) * SIN(pr_r - ar_r)) / (SIN(br_r - dr_r) * SIN(br_r + ar_r))), ROUND((SIN(br_r + pr_r) ^ 2) / ((SIN(br_r) ^ 2) * SIN(br_r - dr_r) * ((1 + sq_t) ^ 2)), 4))))` - **Formula (Rankine Frictionless Level-Backfill Benchmark Check (Set delta = 0°, alpha = 0°))**: `=IF(ISTEXT(E2), E2, LET(pr_r, B2 * PI() / 180, dr_r, B3 * PI() / 180, br_r, B4 * PI() / 180, ar_r, B5 * PI() / 180, sq_t, SQRT((SIN(pr_r + dr_r) * SIN(pr_r - ar_r)) / (SIN(br_r - dr_r) * SIN(br_r + ar_r))), ka_c, (SIN(br_r + pr_r) ^ 2) / ((SIN(br_r) ^ 2) * SIN(br_r - dr_r) * ((1 + sq_t) ^ 2)), pa_t, 0.5 * B7 * (B6 ^ 2) * ka_c, ROUND(pa_t * SIN(dr_r + (PI() / 2 - br_r)), 2)))` ### Coulomb's Law Electrostatic Force & Electric Field Strength formulas - **URL**: https://sheets.arte-soft.com/en/learn/coulombs-law-electrostatic-force-and-electric-field/ - **Summary**: Calculate point-charge electrostatic force F = ke * |q1 * q2| / r^2, attractive/repulsive polarity, and electric field E = ke * |q1| / r^2. *Table — Compute inverse-square electrostatic force and field strength without sign bugs!:* | Electrostatic Quantity | Formula / Cell | +4 uC & -5 uC at r = 0.20 m | Result | | --- | --- | --- | --- | | Charges q1 & q2 | B2 = 4E-6 C, B3 = -5E-6 C | Separation B4 = 0.20 m, ke = 8.98755E9 | Opposite signs (q1*q2 < 0) | | Force Magnitude F (N) | ke * ABS(q1 * q2) / r^2 | 8.98755E9 * 2E-11 / 0.04 | 4.4938 N | | Interaction Polarity | IF(B2*B3 < 0, "Attractive", ...) | Opposite charges pull together | "Attractive" | | Field E1 & Double r = 0.40m | ke * ABS(q1) / r^2 | E1 = 898,755 N/C \| F(0.4m) = 1/4 | F drops to 1.1234 N | - **Formula (Coulomb electrostatic force magnitude F in Newtons)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<=0,B5<=0),"Invalid inputs",ROUND((B5 * ABS(B2 * B3)) / (B4 ^ 2), 4)))` - **Formula (Classify the two-charge interaction)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<=0,B5<=0),"Invalid inputs",IF(B2 * B3 < 0, "Attractive", IF(B2 * B3 > 0, "Repulsive", "Zero force"))))` - **Formula (Source electric-field magnitude in N/C)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<=0,B5<=0),"Invalid inputs",ROUND((B5 * ABS(B2)) / (B4 ^ 2), 0)))` ### Count 16+ Digit Card, IBAN & Tracking IDs Safely (Avoid COUNTIF 15-Digit Bug) - **URL**: https://sheets.arte-soft.com/en/learn/count-16-digit-credit-card-and-long-id-numbers-safely/ - **Summary**: Count 16-to-22-digit card tokens, GS1 SSCC barcodes, and bank IDs accurately with SUMPRODUCT(--(A2:A6 = D2)), avoiding Excel COUNTIF's silent 15-significant-digit coercion bug. *Table — Why COUNTIF silently merges distinct 16-digit text IDs in Excel!:* | Long Identifier Text (A) | Last Digit | Direct Equality --(A2:A6 = D2) | Excel COUNTIF Trap on Pure Digits | | --- | --- | --- | --- | | TOK-4532015112830366 | ...366 | 1 (Exact text match) | Safe with prefix; pure 16 digits collide in Excel COUNTIF! | | TOK-4532015112830369 | ...369 | 0 (Distinct 16th digit!) | SUMPRODUCT(--(A2:A6=D2)) NEVER truncates digit 16 | | TOK-4532015112830366 | ...366 | 1 (Second true occurrence) | Exact duplicate count = 2 | | TOK-4532015112830360 | ...360 | 0 (Distinct 16th digit!) | Zero false-positive matches | - **Formula (Full-Precision Long-String Count with SUMPRODUCT(--(Range = Target)))**: `=IF(D2 = "", 0, SUMPRODUCT(--(A2:A5 = D2)))` - **Formula (Duplicate Audit Flag for Long Account or Carton Identifiers)**: `=IF(SUMPRODUCT(--(A2:A5 = D2)) > 1, "Duplicate Long ID", "Unique or Not Found")` ### Count line breaks, build multiline cells & extract specific lines with CHAR(10) - **URL**: https://sheets.arte-soft.com/en/learn/count-and-extract-multiline-cell-lines-char10/ - **Summary**: Count line breaks and lines inside Alt+Enter cells using LEN - LEN(SUBSTITUTE(A2, CHAR(10), "")), extract the Nth line via TEXTSPLIT, and join lines with CHAR(10). *Table — Work with Alt+Enter multiline cells cleanly using ASCII line feed CHAR(10)!:* | Task | Formula Pattern | Cell Value ("SKU-104\nQty: 25\nShip: Express") | Result | | --- | --- | --- | --- | | Count Line Breaks | LEN(A2) - LEN(SUBSTITUTE(A2, CHAR(10), "")) | Two LF separators | 2 breaks | | Count Total Lines | IF(A2="", 0, Breaks + 1) | 2 + 1 (0 if empty) | 3 lines | | Extract 2nd Line | INDEX(TEXTSPLIT(A2, CHAR(10)), 1, 2) | Middle line token | "Qty: 25" | | Build Multiline Label | B2 & CHAR(10) & C2 | Joins fields with line break | 2-line address/tag | - **Formula (Count total lines in a multiline cell (with blank guard))**: `=IF(COUNTBLANK(A2)>0,0,LET(noteText,SUBSTITUTE(SUBSTITUTE(A2&"",CHAR(13)&CHAR(10),CHAR(10)),CHAR(13),CHAR(10)),LEN(noteText)-LEN(SUBSTITUTE(noteText,CHAR(10),""))+1))` - **Formula (Extract the Nth line or assemble a multiline cell with CHAR(10))**: `=IF(COUNTBLANK(A2)>0,"No second line",LET(noteText,SUBSTITUTE(SUBSTITUTE(A2&"",CHAR(13)&CHAR(10),CHAR(10)),CHAR(13),CHAR(10)),IF(LEN(noteText)-LEN(SUBSTITUTE(noteText,CHAR(10),""))<1,"No second line",INDEX(TEXTSPLIT(noteText,CHAR(10)),1,2))))` ### Count birthdays and list names by calendar month across years - **URL**: https://sheets.arte-soft.com/en/learn/count-and-sum-by-month-across-multiple-years/ - **Summary**: Group the example birthday dates by month number while ignoring year. *Table — Why SUMIFS date bounds fail across decades—and how MONTH() solves it:* | Employee (A) | BirthDate (B) | BirthMonth = MONTH(B) (C) | May Birthday? | | --- | --- | --- | --- | | Aria Chen | 1989-05-14 | 5 | Yes (#1) | | Liam Patel | 1994-11-03 | 11 | No | | Noah Silva | 1978-05-29 | 5 | Yes (#2) | | Sofia Rossi | 2001-05-02 | 5 | Yes (#3 — 3 in May) | - **Formula (Year-independent monthly count and roster list formulas)**: `=COUNTIF(C2:C5, E2)` - **Formula (List all employees celebrating a birthday in target month E2)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A5, C2:C5 = E2, "None"))` ### Count & Sum Cells Ending With or Starting With Specific Text (COUNTIF / SUMIF) - **URL**: https://sheets.arte-soft.com/en/learn/count-and-sum-cells-ending-or-starting-with-wildcard-affix/ - **Summary**: Match SKU suffixes ("*" & suffix) and regional prefixes (prefix & "*") dynamically with COUNTIF and SUMIF while preventing blank-affix wildcard traps. *Table — Anchor wildcards on ONE side only—and always guard blank search cells!:* | Affix Pattern Rule | Wildcard Expression | Result on Catalog A2:B6 | Why It Is Safe | | --- | --- | --- | --- | | Ends with "-PRO" (E2) | COUNTIF(A2:A6, "*" & E2) | 3 SKUs | Leading * anchors match strictly to end | | Starts with "EU-" (E3) | SUMIF(A2:A6, E3 & "*", B2:B6) | $1,200 | Trailing * anchors match strictly to start | | Blank / Whitespace Affix | LEN(TRIM(E2)) = 0 Guard | "Specify Affix" | Blocks bare "*" from matching all text! | - **Formula (Count Cells Ending With Target Suffix ("*" & E2))**: `=IF(LEN(TRIM(E2)) = 0, "Specify Affix", COUNTIF(A2:A6, "*" & E2))` - **Formula (Sum Amounts for Cells Starting With Target Prefix (E3 & "*"))**: `=IF(LEN(TRIM(E3)) = 0, "Specify Affix", SUMIF(A2:A6, E3 & "*", B2:B6))` ### Count and sum GL codes by the sixth character with positional wildcards - **URL**: https://sheets.arte-soft.com/en/learn/count-and-sum-codes-by-nth-digit-positional-wildcard/ - **Summary**: Use a sixth-character mask with literal target escaping, and sum matching numeric amounts. *Table — Why "*4*" overcounts—and how "?" locks an exact character slot!:* | Account Code (Col A) | Spend (Col B) | 6th Character | Matches "GL-??4*"? | | --- | --- | --- | --- | | GL-1042 | $1,500 | "4" | YES (Included) | | GL-2048 | $2,300 | "4" | YES (Included) | | GL-1054 | $900 | "5" ("4" is 7th!) | NO (Excluded cleanly!) | | GL-3041 | $1,200 | "4" | YES (Total = 3 codes, $5,000) | | GL-4099 | $800 | "9" ("4" is 4th!) | NO (Excluded cleanly!) | - **Formula (Count Structured Codes by Exact Nth Character Slot)**: `=IF(OR(COUNTBLANK(D2)>0,LEN(D2&"")<>1),"Enter one character",COUNTIF(A2:A6,"GL-??"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2&"","~","~~"),"*","~*"),"?","~?")&"*"))` - **Formula (Sum Amounts by Exact Nth Character Slot)**: `=IF(OR(COUNTBLANK(D2)>0,LEN(D2&"")<>1),"Enter one character",IF(COUNT(B2:B6)<>5,"Invalid amounts",SUMIF(A2:A6,"GL-??"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2&"","~","~~"),"*","~*"),"?","~?")&"*",B2:B6)))` ### Count & Sum Odd vs Even Numbers in a Range (MOD, ISODD & SUMIF) - **URL**: https://sheets.arte-soft.com/en/learn/count-and-sum-odd-vs-even-numbers-mod-helper-sumif/ - **Summary**: Test integer parity with MOD(n, 2) or ISODD/ISEVEN and count or sum odd-numbered vs even-numbered street addresses, lot IDs, and quantities cleanly across any spreadsheet engine. *Table — Split street deliveries, badge numbers, and invoice runs by Odd vs Even parity!:* | Parity Task (House Numbers [101, 204, 315, 408, 523]) | Formula | Sample Evaluation | Verified Output | | --- | --- | --- | --- | | Row-Level Odd/Even Remainder | =MOD(B2, 2) | MOD(101, 2) = 1; MOD(204, 2) = 0 | 1 (Odd) or 0 (Even) | | Count Odd House Numbers | =COUNTIF(C2:C6, 1) | 101, 315, 523 | 3 odd stops | | Sum Parcels on Odd Side of Street | =SUMIF(C2:C6, 1, D2:D6) | 4 + 6 + 5 parcels | 15 parcels (Even = 9) | - **Formula (Count Odd vs Even Entries Using MOD(n, 2) Parity Column)**: `=COUNTIF(C2:C6, 1)` - **Formula (Sum Quantities Associated with Odd or Even IDs (SUMIF + ISODD Check))**: `=SUMIF(C2:C6, 1, D2:D6)` ### Count Records by Age Bracket Directly from Birthdates (EDATE + COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/count-birthdates-by-age-bracket-edate-countifs/ - **Summary**: Count how many people fall into age bands like 25–34 or 35–44 as of a valuation date without adding a helper age column by translating age bounds into exact EDATE birth-date cutoffs. *Table — Why age brackets reverse into birthdate windows:* | Age Bracket | As-Of Date | Earliest Birthdate (> Cutoff) | Latest Birthdate (<= Cutoff) | | --- | --- | --- | --- | | 18 to 24 | 2026-06-30 | > 2001-06-30 (not yet 25) | <= 2008-06-30 (at least 18) | | 25 to 34 | 2026-06-30 | > 1991-06-30 (not yet 35) | <= 2001-06-30 (at least 25) | | 35 to 44 | 2026-06-30 | > 1981-06-30 (not yet 45) | <= 1991-06-30 (at least 35) | - **Formula (Age-Bracket COUNTIFS Formula)**: `=COUNTIFS($B$2:$B$8, ">" & EDATE($E$1, -12 * (E3 + 1)), $B$2:$B$8, "<=" & EDATE($E$1, -12 * D3))` ### Count Birthdays & Records by Year Cohort (Avoiding the Blank-Cell 1900 Trap) - **URL**: https://sheets.arte-soft.com/en/learn/count-birthdays-and-hires-by-birth-year-cohort-sumproduct/ - **Summary**: Count birthdates or hire dates belonging to a specific calendar year or multi-year cohort using COUNTIFS date bounds and blank-guarded SUMPRODUCT + YEAR. *Table — Why unguarded YEAR(B2:B8) = 1900 miscounts empty cells:* | Approach | Formula | Handles Blanks Safely? | Supports Multi-Year Span? | | --- | --- | --- | --- | | COUNTIFS Calendar Window | COUNTIFS($B$2:$B$8, ">=" & DATE(D2,1,1), $B$2:$B$8, "<=" & DATE(D2,12,31)) | Yes (ignores blanks) | Yes (change end year) | | Blank-Guarded SUMPRODUCT | SUMPRODUCT(--NOT(ISBLANK($B$2:$B$8)), --(YEAR($B$2:$B$8) = D2)) | Yes (explicitly masked) | Yes (>= start, <= end) | | Unguarded YEAR Array | SUMPRODUCT(--(YEAR($B$2:$B$8) = D2)) | Fails if D2=1900 or <= cutoff | Risky on padded ranges | - **Formula (Exact Single-Year Cohort Count with COUNTIFS)**: `=COUNTIFS($B$2:$B$8, ">=" & DATE(D2, 1, 1), $B$2:$B$8, "<=" & DATE(D2, 12, 31))` - **Formula (Multi-Year Generation Cohort Count with COUNTIFS)**: `=COUNTIFS($B$2:$B$8, ">=" & DATE(G2, 1, 1), $B$2:$B$8, "<=" & DATE(H2, 12, 31))` ### Count Calls or Log Events Inside a Specific Time-of-Day Window (COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/count-calls-or-events-in-time-of-day-window-countifs/ - **Summary**: Count support calls, ER arrivals, or API requests occurring inside an intraday shift bucket (such as >= 09:00 and < 12:00) using half-open [Start, End) COUNTIFS intervals. *Table — Use half-open [Start, End) time intervals so boundary events never double-count!:* | Shift Window [Start, End) | COUNTIFS Criteria Pair | Matching Call Times in Log | Call Count | | --- | --- | --- | --- | | Morning [09:00, 12:00) | ">=" & 09:00, "<" & 12:00 | 09:00, 10:30, 11:55 (excludes 08:45 & 12:00!) | 3 calls | | Midday [12:00, 15:00) | ">=" & 12:00, "<" & 15:00 | 12:00, 14:20 | 2 calls | | Inverted Window (End <= Start) | D3 <= D2 Check | Guarded Input Error | "Invalid Time Window" | - **Formula (Count Calls Within Half-Open Intraday Window [Start, End))**: `=IF(D3 <= D2, "Invalid Time Window", COUNTIFS(B2:B7, ">=" & D2, B2:B7, "<" & D3))` - **Formula (Share of Total Daily Calls Falling Inside Peak Window (%))**: `=IF(OR(D3 <= D2, COUNTA(B2:B7) = 0), "Invalid Time Window", ROUND(100 * COUNTIFS(B2:B7, ">=" & D2, B2:B7, "<" & D3) / COUNTA(B2:B7), 1))` ### Count cells containing specific text: substrings and literal ? or * wildcards - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-containing-specific-text/ - **Summary**: Wrap search terms in "*" & B2 & "*" inside COUNTIF for partial matches, and escape literal question marks or asterisks with ~. *Table — Substring wildcards vs literal punctuation (~? and ~*):* | TicketTitle (A) | Matches "*login*" | Matches "*~?*" | Matches "*~**" | | --- | --- | --- | --- | | SSO login timeout | Yes | No | No | | Reset password? urgent | No | Yes | No | | Mobile LOGIN crash | Yes | No | No | | Billing *promo* code | No | No | Yes | - **Formula (Dynamic substring count and escaped wildcard checks)**: `=COUNTIF(A2:A5, "*" & B2 & "*")` - **Formula (Count literal question marks with ~?)**: `=COUNTIF(A2:A5, "*~?*")` ### Count Cells Greater Than or Less Than a Cell Reference (COUNTIF & COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-greater-than-or-less-than-dynamic-threshold/ - **Summary**: Concatenate comparison operators with cell references—COUNTIF(range, ">" & E2), COUNTIF(range, "<" & E2), and two-sided COUNTIFS(range, ">=" & E2, range, "<=" & F2)—without falling into the literal ">E2" string trap. *Table — Avoid the #1 COUNTIF beginner mistake: never put cell references inside quotes!:* | Threshold Comparison Goal (Scores: 64, 78, 80, 88, 93, 97) | Dynamic Cell Formula (E2 = 80, E3 = 95) | Matched Count | | --- | --- | --- | | Strictly Greater Than E2 (> 80) | =COUNTIF(B2:B7, ">" & E2) | 3 (88, 93, 97) | | Strictly Less Than E2 (< 80) | =COUNTIF(B2:B7, "<" & E2) | 2 (64, 78) | | Inclusive Target Band [80, 95] | =COUNTIFS(B2:B7, ">=" & E2, B2:B7, "<=" & E3) | 3 (80, 88, 93) | - **Formula (Count Values Strictly Greater Than Dynamic Cell E2)**: `=COUNTIF(B2:B7, ">" & E2)` - **Formula (Count Values Strictly Less Than E2 or Inside Inclusive Band [E2, E3])**: `=COUNTIFS(B2:B7, ">=" & E2, B2:B7, "<=" & E3)` ### Count cells not equal to a value (without counting blank cells) - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-not-equal-to-criteria/ - **Summary**: Pair "<>Value" with "<>" inside COUNTIFS so empty rows in pre-allocated ranges are not counted as active orders. *Table — The hidden trap of COUNTIF(range, "<>Cancelled"):* | Row | OrderState (A) | COUNTIF "<>Cancelled" | COUNTIFS "<>Cancelled" & "<>" | | --- | --- | --- | --- | | 2 | Shipped | Counted | Counted | | 3 | Cancelled | Excluded | Excluded | | 4 | Processing | Counted | Counted | | 5 | (empty) | Counted (trap!) | Excluded | | 6 | Cancelled | Excluded | Excluded | - **Formula (Blank-safe exclusion formula)**: `=COUNTIFS(A2:A6, "<>Cancelled", A2:A6, "<>")` - **Formula (COUNTA minus COUNTIF check)**: `=COUNTA(A2:A6) - COUNTIF(A2:A6, "Cancelled")` ### Count Active Rows Not Equal to Multiple Terminal Statuses - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-not-equal-to-many-exact-values/ - **Summary**: Count non-blank records whose status does not match any item in an excluded list using SUMPRODUCT boolean inequalities or multi-criteria COUNTIFS. *Table — Distinguish exact status inequality from partial substring exclusions:* | Ticket | Status | Terminal Exclusion Match? | Counted as Active? | | --- | --- | --- | --- | | TCK-201 | In Progress | None | Yes (1) | | TCK-202 | Closed | Matches Closed | No | | TCK-203 | Pending QA | None | Yes (2) | | TCK-204 | Cancelled | Matches Cancelled | No | | TCK-205 | Escalated | None | Yes (3) | | TCK-206 | Archived | Matches Archived | No | - **Formula (Active Ticket Count Excluding Terminal Status List)**: `=COUNTIFS(B2:B7, "<>", B2:B7, "<>" & B9, B2:B7, "<>" & B10, B2:B7, "<>" & B11)` - **Formula (Weighted Open Effort Hours Excluding Terminal Statuses)**: `=SUMPRODUCT(--(B2:B7 <> ""), --(B2:B7 <> B9), --(B2:B7 <> B10), --(B2:B7 <> B11), C2:C7)` ### Count Cells Not Between Two Numbers (Out-of-Tolerance Spec Gate) - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-outside-tolerance-band-not-between-two-numbers/ - **Summary**: Count numeric observations that fall strictly outside a [Lower, Upper] specification interval while ignoring blanks and guarding reversed min/max inputs with MIN and MAX. *Table — Why COUNTIFS("<>" , "<" & Low) + COUNTIFS("<>" , ">" & High) guards blanks & reversed bounds:* | Rule Variant | Boundary Behavior | Formula Pattern | | --- | --- | --- | | Strictly outside [LSL, USL] | Boundary values pass (in-spec) | COUNTIFS(rng, "<>", rng, "<" & lo) + COUNTIFS(rng, "<>", rng, ">" & hi) | | Outside or on boundary | Boundary values count as rejects | COUNTIFS(rng, "<>", rng, "<=" & lo) + COUNTIFS(rng, "<>", rng, ">=" & hi) | | In-spec yield % | 1 - OutOfSpec / NumericCount | ROUND(1 - Rejects / COUNT(rng), 4) | - **Formula (Swap-Safe Out-of-Band Count Formula)**: `=LET(lo_lim, MIN(E2, E3), hi_lim, MAX(E2, E3), COUNTIFS(B2:B8, "<>", B2:B8, "<" & lo_lim) + COUNTIFS(B2:B8, "<>", B2:B8, ">" & hi_lim))` ### Count Cells Over N Characters (REPT("?", N+1) & "*" Wildcard COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-over-character-limit-len-wildcard-countif/ - **Summary**: Count how many text cells exceed a strict character limit N (such as 60-character SEO titles or 160-character SMS messages) using wildcard COUNTIF(range, REPT("?", N + 1) & "*") without helper columns. *Table — Audit SEO meta titles, SMS copy, and ERP field truncation limits in one cell!:* | Page Title Draft | Character Length | Exceeds 30-Char Limit? | Wildcard Pattern Match (? x 31 & *) | | --- | --- | --- | --- | | Arte Sheets Pricing & Plans | 27 chars | No (<= 30) | Does not have 31 characters | | Exact 30-Char Boundary Example | 30 chars | No (Exact 30) | Needs >= 31 chars to trigger | | Complete Financial Modeling Guide 2026 | 38 chars | Yes (> 30!) | Matches 31st char + 7 trailing | | Automated Inventory EOQ & Safety Stock Calculator | 49 chars | Yes (> 30!) | Matches 31st char + 18 trailing | - **Formula (Zero-Helper Wildcard COUNTIF for Text Cells Strictly Over N Characters)**: `=IF(D2 < 0, "Invalid Limit", COUNTIF(A2:A5, REPT("?", D2 + 1) & "*"))` - **Formula (Count Compliant Non-Blank Text Cells Within Limit (<= N Characters))**: `=IF(D2 < 0, "Invalid Limit", COUNTIF(A2:A5, "?*") - COUNTIF(A2:A5, REPT("?", D2 + 1) & "*"))` ### Count Cells That Contain Either X or Y Without Double-Counting Overlaps - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-that-contain-either-x-or-y/ - **Summary**: Count text cells containing substring X or substring Y accurately by subtracting the dual-match intersection COUNTIFS("*X*","*Y*") from COUNTIF("*X*") + COUNTIF("*Y*"). *Table — Prevent naive COUNTIF + COUNTIF from double-counting cells with both keywords!:* | Shipment Tag | Matches "RUSH"? | Matches "SEA"? | Counted Once? | | --- | --- | --- | --- | | RUSH-AIR-01 | Yes | No | Yes (1) | | STD-SEA-02 | No | Yes | Yes (2) | | RUSH-SEA-03 | Yes | Yes (Overlap -1) | Yes (3 — not 4!) | | ECO-RAIL-04 | No | No | No | | RUSH-ROAD-05 | Yes | No | Yes (4 total) | - **Formula (De-Duplicated Count of Cells Containing Substring X or Y)**: `=IF(OR(ISBLANK(B7), LEN(TRIM(B7)) = 0, ISBLANK(B8), LEN(TRIM(B8)) = 0), "Enter Both Keywords", COUNTIF(A2:A6, "*" & B7 & "*") + COUNTIF(A2:A6, "*" & B8 & "*") - COUNTIFS(A2:A6, "*" & B7 & "*", A2:A6, "*" & B8 & "*"))` - **Formula (Row-Level Either-Keyword Flag (Row A4))**: `=IF(OR(ISNUMBER(SEARCH(B7, A4)), ISNUMBER(SEARCH(B8, A4))), "Match", "Skip")` ### Count Non-Blank Cells That Do Not Contain Any Blocklisted Substrings - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-that-do-not-contain-many-substrings/ - **Summary**: Count clean transaction or SKU rows that exclude multiple unwanted substrings simultaneously using multi-criteria COUNTIFS wildcard exclusions and row-level SEARCH flags. *Table — Chain AND-combined wildcard exclusions without overlap bugs:* | Order Code | Contains TEST? | Contains VOID? | Contains DEMO? | Clean Production Row? | | --- | --- | --- | --- | --- | | ORD-1041-LIVE | No | No | No | Yes (1) | | ORD-TEST-009 | Yes | No | No | Excluded | | ORD-1042-VIP | No | No | No | Yes (2) | | TEST-VOID-88 | Yes | Yes | No | Excluded once | | DEMO-SAMPLE-1 | No | No | Yes | Excluded | | ORD-1043-STD | No | No | No | Yes (3) | - **Formula (Clean Row Count Excluding Three Blocklisted Substrings)**: `=IF(OR(ISBLANK(B9), ISBLANK(B10), ISBLANK(B11)), "Populate All Blocklist Terms", COUNTIFS(A2:A7, "<>", A2:A7, "<>*" & B9 & "*", A2:A7, "<>*" & B10 & "*", A2:A7, "<>*" & B11 & "*"))` - **Formula (Row-Level Clean vs Excluded Audit Tag (Row A5))**: `=IF(OR(ISNUMBER(SEARCH(B9, A5)), ISNUMBER(SEARCH(B10, A5)), ISNUMBER(SEARCH(B11, A5))), "Excluded", "Clean")` ### Count Cells With Exact N Characters Using COUNTIF & REPT("?", N) - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-with-exact-character-length-rept-wildcard-countif/ - **Summary**: Count text codes, SKUs, ZIP codes, or IBANs that match an exact N-character length dynamically using COUNTIF(B2:B7, REPT("?", D2))—and audit mismatched lengths automatically. *Table — Turn the single-character "?" wildcard into a dynamic N-length validator with REPT!:* | Target Text Length D2 | Generated Wildcard REPT("?", D2) | Matching SKUs in B2:B7 | Count Returned | | --- | --- | --- | --- | | D2 = 6 Characters | "??????" | "WH-104", "WH-209", "AZ-881" | 3 Valid 6-Char Codes | | D2 = 8 Characters | "????????" | "WH-1042A", "EU-9901B" | 2 Valid 8-Char Codes | | D2 <= 0 (Invalid Length) | Guard Triggered | "Invalid Target Length" | Prevents Empty-String Match | - **Formula (Count Text Cells Matching Exact Length N = COUNTIF(Range, REPT("?", N)))**: `=IF(D2 <= 0, "Invalid Target Length", COUNTIF(B2:B7, REPT("?", D2)))` - **Formula (Count Non-Compliant Text Entries Not Equal to Length N)**: `=IF(D2 <= 0, "Invalid Target Length", COUNTA(B2:B7) - COUNTIF(B2:B7, REPT("?", D2)))` ### Count & Audit Cells Containing Exactly N Characters (REPT "?" & LEN) - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-with-exact-n-characters-len/ - **Summary**: Count text codes matching an exact character length N using COUNTIF(range, REPT("?", N)) and flag truncated or padded SKU/IBAN entries row by row with LEN(TRIM(cell)). *Table — Catch truncated or extra-character codes in imported catalogs!:* | Imported SKU | Character Length | Matches N = 8? | | --- | --- | --- | | SKU-1042 | 8 | Valid (1) | | SKU-88 | 6 | Length Mismatch | | SKU-2091 | 8 | Valid (2) | | SKU-33045 | 9 | Length Mismatch | | SKU-7710 | 8 | Valid (3) | - **Formula (Count Text Cells with Exact Character Length N)**: `=IF(B7 <= 0, "Invalid Length", COUNTIF(A2:A6, REPT("?", B7)))` - **Formula (Row-Level Fixed-Width Code Audit (Row A3))**: `=IF(B7 <= 0, "Invalid Length", IF(LEN(TRIM(A3)) = B7, "Valid", "Length Mismatch"))` ### Count with OR criteria: same-column addition vs two-column overlap - **URL**: https://sheets.arte-soft.com/en/learn/count-cells-with-or-criteria/ - **Summary**: Add COUNTIF calls for mutually exclusive values in one column, and subtract COUNTIFS overlap when testing OR across two columns. *Table — Same-column OR vs cross-column OR double-counting:* | Status (A) | Priority (B) | Overdue OR Escalated (Col A) | Overdue (A) OR High (B) | | --- | --- | --- | --- | | Overdue | High | Yes | Yes (both!) | | Overdue | Normal | Yes | Yes | | Open | High | No | Yes | | Closed | Low | No | No | | Escalated | Normal | Yes | No | - **Formula (Two-column OR without double-counting)**: `=COUNTIF(A2:A6, "Overdue") + COUNTIF(B2:B6, "High") - COUNTIFS(A2:A6, "Overdue", B2:B6, "High")` - **Formula (Same-column OR formula)**: `=COUNTIF(A2:A6, "Overdue") + COUNTIF(A2:A6, "Escalated")` ### Count Unique Rows or Columns Containing a Specific Value (Avoiding Double-Counts) - **URL**: https://sheets.arte-soft.com/en/learn/count-columns-or-rows-containing-target-value-mmult-helper/ - **Summary**: Count how many distinct rows or distinct columns in a 2D inspection matrix contain at least one "Fail" without double-counting multiple failures on the same row or station! *Table — Why COUNTIF(B2:D4, "Fail") overcounts defective batches when one batch fails two stations!:* | QA Matrix Dimension (Target G2 = "Fail") | Raw Cell Hits | Clamped --(COUNTIF > 0) Vector | Distinct Count | | --- | --- | --- | --- | | Defective Batches (Rows 2–4) | [2, 0, 1] failures/row | [1, 0, 1] | 2 distinct rows | | Affected Stations (Cols B–D) | [1, 1, 1] failures/col | [1, 1, 1] | 3 distinct columns | | Target G2 = "Hold" (Absent) | [0, 0, 0] | [0, 0, 0] | 0 rows / 0 columns | - **Formula (Count Distinct Matrix Rows Containing Target Value G2)**: `=SUM(E2:E4)` - **Formula (Count Distinct Matrix Columns Containing Target Value G2)**: `=SUM(B5:D5)` ### Count consecutive monthly orders: active retention streak across columns - **URL**: https://sheets.arte-soft.com/en/learn/count-consecutive-monthly-orders-retention-streak/ - **Summary**: Count how many unbroken trailing months a customer has ordered right up to the latest close using reverse XMATCH(0, (Row > 0)*1, 0, -1). *Table — Find the last inactive zero month from the right to measure current streak!:* | Account | Jan..Jun Orders [B..G] | Last Zero Pos | Current Active Streak | | --- | --- | --- | --- | | Acme Corp | [2, 0, 3, 1, 4, 2] | Col 2 (Feb) | 6 - 2 = 4 months | | Northwind | [1, 2, 1, 3, 2, 1] | None (IFNA -> 0) | 6 - 0 = 6 months (Perfect!) | | Example C | [4, 3, 2, 1, 2, 0] | Col 6 (Jun) | 6 - 6 = 0 months (Inactive!) | - **Formula (Trailing consecutive active-month streak and total active-month formulas)**: `=COLUMNS(B2:G2) - IFNA(XMATCH(0, (B2:G2 > 0) * 1, 0, -1), 0)` - **Formula (Total active months with >= 1 order (non-consecutive))**: `=COUNTIF(B2:G2, ">0")` ### Count Dates & Sum Amounts in a Given Calendar Year (COUNTIFS & DATE) - **URL**: https://sheets.arte-soft.com/en/learn/count-dates-in-given-year-date-boundaries-countifs/ - **Summary**: Count transactions and sum revenue occurring in any target year Y using blank-safe Jan 1 to Dec 31 DATE boundaries inside COUNTIFS and SUMIFS. *Table — Why Jan 1 – Dec 31 DATE boundaries beat YEAR() array wrappers!:* | Target Year (E2) | Start Boundary DATE(E2,1,1) | End Boundary DATE(E2,12,31) | Matching Count & Annual Sum | | --- | --- | --- | --- | | 2026 | 2026-01-01 (inclusive) | 2026-12-31 (inclusive) | 4 invoices ($18,400) | | 2025 | 2025-01-01 (inclusive) | 2025-12-31 (inclusive) | 2 invoices ($7,250) | | 2028 (No Activity) | 2028-01-01 | 2028-12-31 | 0 invoices ($0) | - **Formula (Count Dates Occurring in Target Year Y)**: `=COUNTIFS(A2:A8, ">=" & DATE(E2, 1, 1), A2:A8, "<=" & DATE(E2, 12, 31))` - **Formula (Sum Amounts Occurring in Target Year Y)**: `=SUMIFS(B2:B8, A2:A8, ">=" & DATE(E2, 1, 1), A2:A8, "<=" & DATE(E2, 12, 31))` ### Count specific weekdays between two dates (e.g., Mondays in a month) - **URL**: https://sheets.arte-soft.com/en/learn/count-day-of-week-between-dates/ - **Summary**: Jump to the first matching weekday on or after StartDate using MOD and WEEKDAY, then divide the remaining span by 7. *Table — Fast arithmetic weekday counting over any date span:* | StartDate (A) | EndDate (B) | TargetIsoDow (C) | Occurrences | | --- | --- | --- | --- | | 2026-04-01 (Wed) | 2026-04-30 (Thu) | 1 (Monday) | 4 (Apr 6, 13, 20, 27) | | 2026-04-01 (Wed) | 2026-04-30 (Thu) | 3 (Wednesday) | 5 (Apr 1, 8, 15, 22, 29) | - **Formula (Closed-form weekday count formula)**: `=LET(first, A2 + MOD(C2 - WEEKDAY(A2, 2) + 7, 7), IF(first > B2, 0, INT((B2 - first) / 7) + 1))` - **Formula (Short-interval zero-match boundary)**: `=LET(first, A2 + MOD(3 - WEEKDAY(A2, 2) + 7, 7), IF(first > B2, 0, INT((B2 - first) / 7) + 1))` ### COUNT, COUNTA and COUNTBLANK: what counts as an empty cell? - **URL**: https://sheets.arte-soft.com/en/learn/count-counta-countblank-empty-cells/ - **Summary**: Audit a small measurement log. Distinguish numeric readings, entered notes, truly empty cells and formulas that look blank. - **Formula (COUNT answers how many values are numbers)**: `=COUNT(B2:B7)` - **Formula (COUNTA answers how many cells contain something)**: `=COUNTA(B2:B7)` - **Formula (COUNTBLANK includes a formula that returns empty text)**: `=COUNTBLANK(B2:B7)` ### Count non-blank and missing cells by category (COUNTIFS data completeness %) - **URL**: https://sheets.arte-soft.com/en/learn/count-filled-vs-missing-fields-by-category-completeness/ - **Summary**: Audit CRM or vendor master-data completeness per region using COUNTIFS with "<>" (populated) and "" (blank) criteria. *Table — Measure field presence by category:* | Region | Total Vendors | Tax ID Populated ("<>") | Tax ID Missing ("") & Completeness % | | --- | --- | --- | --- | | EMEA | 4 Vendors | 3 Populated | 1 Missing -> 75.0% Complete | | AMER | 2 Vendors | 1 Populated | 1 Missing -> 50.0% Complete | - **Formula (Count populated (non-blank) records for a specific category)**: `=COUNTIFS(A2:A7, E2, B2:B7, "<>")` - **Formula (Calculate regional field completeness percentage)**: `=IF(COUNTBLANK(E2)>0,"Choose category",IF(COUNTIF(A2:A7,E2)=0,"No records",ROUND(COUNTIFS(A2:A7,E2,B2:B7,"<>")/COUNTIF(A2:A7,E2),4)))` ### Count holidays between two dates (all calendar holidays vs weekday-only) - **URL**: https://sheets.arte-soft.com/en/learn/count-holidays-between-two-dates-formula/ - **Summary**: Distinguish total listed holidays inside a window (COUNTIFS) from weekday holidays that actually reduce working days (NETWORKDAYS difference). *Table — Calendar holidays vs working-day holidays when dates fall on Saturday:* | Holiday Date (D) | 2026 Day of Week | In example date window? | Costs a Mon–Fri Workday? | | --- | --- | --- | --- | | 2026-05-25 (Memorial Day) | Monday | Yes | Yes (-1 workday) | | 2026-06-19 (Juneteenth) | Friday | Yes | Yes (-1 workday) | | 2026-07-04 (Independence Day) | Saturday! | Yes (3 calendar) | No! (Already weekend -> 2 workdays) | - **Formula (Weekday-impacting holidays vs total calendar holidays)**: `=NETWORKDAYS(A2, B2) - NETWORKDAYS(A2, B2, D2:D5)` - **Formula (Count all listed calendar holidays in range (including weekends))**: `=COUNTIFS(D2:D5, ">=" & A2, D2:D5, "<=" & B2)` ### Count & List Which Keywords Appear Inside a Single Text Cell - **URL**: https://sheets.arte-soft.com/en/learn/count-how-many-keywords-a-cell-contains/ - **Summary**: Score support tickets, contract clauses, or incident notes by counting how many distinct keywords from a watchlist appear inside one cell and listing every matched keyword. *Table — Score escalation severity from keyword hit counts and extract matched terms:* | Watchlist Keyword | Present in Incident Note? | Hit Score | Matched Summary | | --- | --- | --- | --- | | outage | Yes ("API outage...") | 1 | outage | | breach | No | 0 | — | | timeout | Yes ("...gateway timeout...") | 1 | timeout | | refund | Yes ("...SLA refund request") | 1 | refund (Total = 3) | - **Formula (Distinct Watchlist Keyword Hit Count in Cell B2)**: `=IF(ISBLANK(B2), 0, IF(ISBLANK(B4), 0, --ISNUMBER(SEARCH(B4, B2))) + IF(ISBLANK(B5), 0, --ISNUMBER(SEARCH(B5, B2))) + IF(ISBLANK(B6), 0, --ISNUMBER(SEARCH(B6, B2))) + IF(ISBLANK(B7), 0, --ISNUMBER(SEARCH(B7, B2))))` - **Formula (Comma-Separated List of Matched Keywords)**: `=LET(hits, TEXTJOIN(", ", TRUE, IF(ISNUMBER(SEARCH(B4, B2)), B4, ""), IF(ISNUMBER(SEARCH(B5, B2)), B5, ""), IF(ISNUMBER(SEARCH(B6, B2)), B6, ""), IF(ISNUMBER(SEARCH(B7, B2)), B7, "")), IF(LEN(hits) = 0, "No Keyword Hits", hits))` ### Count Rows Meeting Internal Column-vs-Column Criteria (SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/count-if-row-meets-internal-column-vs-column-criteria-sumproduct/ - **Summary**: Count table rows where one column exceeds or precedes another column on the same row—such as Actual > Budget AND Ship_Date <= Due_Date—using Boolean SUMPRODUCT. *Table — Why COUNTIFS fails when comparing two columns row by row!:* | Order | Budget (B) vs Actual (C) | Due Day (D) vs Ship Day (E) | On-Budget & On-Time Flag | | --- | --- | --- | --- | | WO-101 | 12,000 vs 11,450 (OK) | Day 15 vs Day 14 (OK) | 1 * 1 = 1 (Compliant) | | WO-102 | 8,500 vs 9,120 (Over!) | Day 18 vs Day 17 (OK) | 0 * 1 = 0 (Cost Overrun) | | WO-104 | 15,000 vs 14,200 (OK) | Day 20 vs Day 23 (Late!) | 1 * 0 = 0 (Late Shipment) | - **Formula (Count Rows Satisfying Two Internal Column-vs-Column Conditions)**: `=SUMPRODUCT((C2:C7 <= B2:B7) * (E2:E7 <= D2:D7))` - **Formula (Count Cost-Overrun Rows (Actual_Cost > Budget_Cost))**: `=SUMPRODUCT(--(C2:C7 > B2:B7))` ### Count-Min Sketch Sizing & Birthday Collision Formula - **URL**: https://sheets.arte-soft.com/en/learn/count-min-sketch-epsilon-delta-memory-and-birthday-collision-bound/ - **Summary**: Size Cormode-Muthukrishnan Count-Min Sketch tables via width CEILING(EXP(1)/eps, 1) and depth CEILING(LN(1/delta), 1), and audit Birthday-Paradox hash collisions 1 - EXP(-n*(n - 1)/(2*M)). *Table — Bound heavy-hitter streaming memory in O(1/eps * LN(1/delta)) counters — and catch Birthday hash collisions!:* | Streaming Sketch Metric (eps=0.001, delta=0.01, n=3,000, M=10^7) | Formula | Verified Output | | --- | --- | --- | | Sketch Table Width (w) | CEILING(EXP(1) / eps, 1) | 2,719 columns | | Sketch Hash-Row Depth (d) | CEILING(LN(1 / delta), 1) | 5 hash rows | | Total Sketch Counter Cells (w * d) | w * d | 13,595 counters | | Birthday Raw-Hash Collision Risk | 1 - EXP(-n * (n - 1) / (2 * M)) | 0.3623 (36.23% Collision!) | - **Formula (Count-Min Sketch Total Counter Footprint (w * d) Formula)**: `=LET(ep_e, B2, dl_p, B3, IF(OR(ep_e <= 0, ep_e >= 1, dl_p <= 0, dl_p >= 1), "Require 0 < eps, delta < 1", LET(w_col, CEILING(EXP(1) / ep_e, 1), d_row, CEILING(LN(1 / dl_p), 1), w_col * d_row)))` - **Formula (Birthday-Paradox Hash-Collision Probability Formula)**: `=LET(n_id, B4, m_sp, B5, IF(OR(n_id < 1, m_sp < 1), "Invalid Hash Space", IF(n_id > m_sp, 1, ROUND(1 - EXP(-(n_id * (n_id - 1)) / (2 * m_sp)), 4))))` ### Count New (First-Time) Customers Per Month (MINIFS & COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/count-new-first-time-customers-per-month-cohort-minifs/ - **Summary**: Distinguish genuine first-time customer acquisitions from repeat monthly orders by tagging each customer’s earliest purchase date with MINIFS and counting monthly cohort entries with COUNTIFS and EOMONTH. *Table — Why counting distinct buyers in March overcounts "New Customers"!:* | Customer ID | Order Date (ISO Serial) | Earliest Date via MINIFS | First-Time Acquisition Month | | --- | --- | --- | --- | | CUST-01 | 2026-01-12 | 2026-01-12 (TRUE) | Counted in Jan 2026 Cohort | | CUST-01 | 2026-02-09 | 2026-01-12 (FALSE) | Repeat Order (Excluded from Feb) | | CUST-03 | 2026-02-18 | 2026-02-18 (TRUE) | Counted in Feb 2026 Cohort | - **Formula (New First-Time Customers Acquired in Target Month)**: `=COUNTIFS(B2:B7, ">=" & F2, B2:B7, "<=" & EOMONTH(F2, 0), D2:D7, TRUE)` - **Formula (New-Customer Revenue Collected on First Orders in Target Month)**: `=SUMIFS(C2:C7, B2:B7, ">=" & F2, B2:B7, "<=" & EOMONTH(F2, 0), D2:D7, TRUE)` ### Count Numeric Digits (0–9) Inside an Alphanumeric Text String - **URL**: https://sheets.arte-soft.com/en/learn/count-numeric-digits-in-alphanumeric-text-string-len-substitute/ - **Summary**: Count how many numeric digits (0–9) appear anywhere inside a mixed serial number, SKU, or password string by subtracting digit-stripped length from LEN(A2). *Table — Counting digits inside mixed SKUs and passwords without array-splitting!:* | Input String (A) | Total LEN(A) | Length After Stripping 0–9 | Digit Count | | --- | --- | --- | --- | | "LOT-2026-B49X" | 13 chars | 7 non-digits ("LOT--BX") | 6 digits | | "Pass908!" | 8 chars | 5 non-digits ("Pass!") | 3 digits | | "ALPHA-ONLY" | 10 chars | 10 non-digits | 0 digits | - **Formula (Exact Count of Numeric Digits (0–9) in a Text String)**: `=LEN(A2) - LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, "0", ""), "1", ""), "2", ""), "3", ""), "4", ""), "5", ""), "6", ""), "7", ""), "8", ""), "9", ""))` - **Formula (Minimum Digit-Count Policy Check (e.g., >= E2 Digits Required))**: `=IF(LEN(A3) - LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A3, "0", ""), "1", ""), "2", ""), "3", ""), "4", ""), "5", ""), "6", ""), "7", ""), "8", ""), "9", "")) >= E2, "Meets Digit Rule", "Too Few Digits")` ### Count Item Occurrences Across Multiple Worksheets or Regional Logs - **URL**: https://sheets.arte-soft.com/en/learn/count-occurrences-across-multiple-worksheets-sum-countif-consolidation/ - **Summary**: Total how many times a SKU, employee ID, or ticket code appears across separate regional tabs or log blocks without #REF! 3D-COUNTIF errors. *Table — Why COUNTIF rejects 3D sheet ranges like North:West!A2:A50:* | Search Key | North Log Hits | South Log Hits | West Log Hits | Workbook Total | | --- | --- | --- | --- | --- | | SKU-204 | 2 | 1 | 2 | 5 | | SKU-108 | 1 | 2 | 0 | 3 | | SKU-999 (Absent) | 0 | 0 | 0 | 0 | - **Formula (Additive Cross-Tab COUNTIF Consolidation)**: `=COUNTIF(A2:A5, E2) + COUNTIF(B2:B5, E2) + COUNTIF(C2:C5, E2)` - **Formula (Count How Many Tabs Contain At Least One Match)**: `=IF(COUNTIF(A2:A5, E2) > 0, 1, 0) + IF(COUNTIF(B2:B5, E2) > 0, 1, 0) + IF(COUNTIF(C2:C5, E2) > 0, 1, 0)` ### Count occurrences of a specific word in a cell or range (whole-word safe) - **URL**: https://sheets.arte-soft.com/en/learn/count-occurrences-of-word-in-cell-and-range/ - **Summary**: Count case-insensitive space-delimited tokens or non-overlapping literal substrings in a small text range. *Table — Count occurrences rather than matching cells:* | Input Text | Target Keyword | Substring Match (Unsafe) | Whole-Word Count (Exact!) | | --- | --- | --- | --- | | "cat cat catalog cat" | "cat" | 4 (Counts "catalog"!) | 3 (Skips "catalog", catches adjacent "cat cat"!) | | Range of 3 support notes | "error" | COUNTIF = 2 cells | 4 total whole-word occurrences | - **Formula (Whole-word keyword count across an entire range (adjacent-repeat safe))**: `=IF(OR(COUNTBLANK(C2)=1,LEN(TRIM(C2&""))=0),"Enter a keyword",LET(raw, LOWER(TRIM(TEXTJOIN(" ", TRUE, A2:A4))), s, " " & SUBSTITUTE(raw, " ", " ") & " ", w, " " & LOWER(TRIM(C2)) & " ", (LEN(s) - LEN(SUBSTITUTE(s, w, ""))) / LEN(w)))` - **Formula (Substring occurrence count (when partial matches ARE desired))**: `=IF(OR(COUNTBLANK(C2)=1,LEN(TRIM(C2&""))=0),"Enter a keyword",LET(raw, LOWER(TEXTJOIN(" ", TRUE, A2:A4)), k, LOWER(C2), (LEN(raw) - LEN(SUBSTITUTE(raw, k, ""))) / LEN(k)))` ### Count exact items in baskets and calculate an attach rate - **URL**: https://sheets.arte-soft.com/en/learn/count-paired-items-co-occurrence-market-basket/ - **Summary**: Use delimiter-aware helper flags to count baskets containing both items and calculate P(B | A), without matching a product name inside a longer name. *Table — Cross-sell co-occurrence and Confidence P(Item B | Item A):* | OrderID (A) | Basket Items (B) | Has "Laptop"? | Has "Laptop" + "Dock"? | | --- | --- | --- | --- | | ORD-1 | Laptop, Dock, Mouse | Yes | Yes (#1) | | ORD-2 | Monitor, Cable | No | No | | ORD-3 | Dock, Laptop | Yes | Yes (#2 — order-independent!) | | ORD-4 | Laptop, Sleeve | Yes | No | | ORD-5 | Keyboard, Laptop, Dock | Yes (4 total) | Yes (#3 -> 75% Attach!) | - **Formula (Paired co-occurrence count and Cross-Sell Attach Rate formulas)**: `=SUMPRODUCT(F2:F6*G2:G6)` - **Formula (Cross-Sell Attach Rate P(Item E2 | Item D2))**: `=IF(COUNTIF(F2:F6,TRUE)=0,"No anchor baskets",ROUND(SUMPRODUCT(F2:F6*G2:G6)/COUNTIF(F2:F6,TRUE),4))` - **Formula (Create the anchor-item helper)**: `=AND($D$2<>"",ISNUMBER(FIND(","&LOWER($D$2)&",",","&LOWER(SUBSTITUTE(B2,", ",","))&",")))` ### Count Matches Between Two Columns: Row-by-Row Alignment vs. Set Overlap - **URL**: https://sheets.arte-soft.com/en/learn/count-positional-and-set-matches-between-two-columns-formula/ - **Summary**: Distinguish exact same-row positional matches, case-sensitive row matches, and unordered cross-column membership counts while preventing empty padding rows from inflating match totals. *Table — Same-row positional equality vs anywhere-in-column membership:* | Comparison Mode | Row-Level Helper Formula | Case Sensitivity | Blank-Row Safe? | | --- | --- | --- | --- | | Positional (Row k = Row k) | IF(ISBLANK(A2), 0, --(A2 = B2)) | Case-insensitive | Yes | | Positional Case-Sensitive | IF(ISBLANK(A2), 0, --EXACT(A2, B2)) | Case-sensitive | Yes | | Set Membership (A exists in B) | IF(ISBLANK(A2), 0, --(COUNTIF($B$2:$B$7, A2) > 0)) | Case-insensitive | Yes | - **Formula (Row-by-Row Positional Match Flag & Total)**: `=SUMPRODUCT((A2:A7 <> "") * (A2:A7 = B2:B7))` - **Formula (Unordered Cross-Column Membership Flag & Total)**: `=IF(ISBLANK(A2), 0, --(COUNTIF($B$2:$B$7, A2) > 0))` ### Count Positive, Negative, Numeric & Formula-Error Cells in a Ledger Range - **URL**: https://sheets.arte-soft.com/en/learn/count-positive-negative-and-error-cells-in-audit-range/ - **Summary**: Reconcile mixed audit columns containing gains, losses, zeros, text notes, and #DIV/0! errors using COUNTIF(">0"), COUNTIF("<0"), COUNT, and --ISERROR(B2) flags. *Table — Decomposing a messy trial-balance column into positive, negative, zero, text, and error counts!:* | Audit Bucket Across Rows 2–8 (7 Rows) | Exact Formula | Count in Sample Ledger | What Gets Excluded | | --- | --- | --- | --- | | Strictly Positive (> 0) | COUNTIF(D2:D8, ">0") | 2 rows (420, 185) | Zeros, negatives, text, #DIV/0! | | Strictly Negative (< 0) | COUNTIF(D2:D8, "<0") | 2 rows (-110, -45) | Zeros, positives, text, #DIV/0! | | All Valid Numbers (Incl. 0) | COUNT(B2:B8) | 5 numeric rows | Text "Pending" & #DIV/0! errors | | Formula Errors (#DIV/0!, #N/A) | SUM(C2:C8) via --ISERROR(B2) | 1 error row (B7 = 1/0) | Numbers, zeros, text | - **Formula (Count Strictly Negative (< 0) & Strictly Positive (> 0) Cells)**: `=COUNTIF(D2:D8, "<0")` - **Formula (Count Formula Error Cells Across Audit Helper Column C2:C8)**: `=SUM(C2:C8)` ### Compare two columns row by row: count matches, mismatches, and accuracy % - **URL**: https://sheets.arte-soft.com/en/learn/count-row-by-row-matches-two-columns/ - **Summary**: Audit parallel Ordered vs Shipped or Forecast vs Actual columns row-for-row using SUMPRODUCT without helper columns. *Table — Row-by-row positional match vs anywhere-in-list match:* | SKU (A) | Ordered (B) | Shipped (C) | Positional Match? | | --- | --- | --- | --- | | Item-1 | 25 | 25 | TRUE (1) | | Item-2 | 40 | 38 | FALSE (0 — short-shipped) | | Item-3 | 10 | 10 | TRUE (1) | | Item-4 | 15 | 15 | TRUE (1) | - **Formula (Positional match count, mismatch count, and accuracy %)**: `=SUMPRODUCT(--(B2:B5 = C2:C5))` - **Formula (Count row-level discrepancies)**: `=SUMPRODUCT(--(B2:B5 <> C2:C5))` ### Count Rows Where Column C Exceeds Column B (Row-by-Row SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/count-rows-meeting-row-by-row-column-comparison-sumproduct/ - **Summary**: Count how many table rows satisfy an internal column-to-column test (such as Actual > Budget or Shipped_Days > SLA_Days) and sum the excess variance in one formula using SUMPRODUCT(--(C2:C6 > B2:B6)) without helper columns. *Table — Why COUNTIF cannot compare two columns row by row—and how SUMPRODUCT solves it!:* | Department | Budget B ($k) | Actual C ($k) | Internal Row Test (C > B) | | --- | --- | --- | --- | | Cloud Infra | 120 | 134 | TRUE (1) -> +$14k Overrun | | Field Sales | 200 | 188 | FALSE (0) -> Under Budget | | Customer Success | 95 | 95 | FALSE (0) -> Exact On-Budget | | Paid Acquisition / R&D | 150 / 80 | 158 / 84 | TRUE (1) + TRUE (1) -> Total 3 Depts (+$26k) | - **Formula (Count Rows Meeting Internal Column Comparison: SUMPRODUCT(--(C2:C6 > B2:B6)))**: `=SUMPRODUCT(--(C2:C6 > B2:B6))` - **Formula (Sum Total Overrun Only Across Over-Budget Rows: SUMPRODUCT((C > B) * (C - B)))**: `=SUMPRODUCT((C2:C6 > B2:B6) * (C2:C6 - B2:B6))` ### Count Rows Not Equal to Multiple Criteria (COUNTIFS Multi-Exclusion) - **URL**: https://sheets.arte-soft.com/en/learn/count-rows-not-equal-to-multiple-excluded-statuses/ - **Summary**: Count active operational rows that simultaneously exclude Cancelled, Refunded, and Blank status entries—Avoiding the classic OR("<>A", "<>B") logical trap. *Table — De Morgan's Law: why multi-exclusion requires AND (COUNTIFS), never OR:* | Requirement | Correct Logic | COUNTIFS Pair | | --- | --- | --- | | Exclude Status 1 | AND Status <> D2 | B2:B8, "<>" & D2 | | Exclude Status 2 | AND Status <> D3 | B2:B8, "<>" & D3 | | Exclude Blank Cells | AND Status <> "" | B2:B8, "<>" | - **Formula (Multi-Exclusion COUNTIFS Formula)**: `=COUNTIFS(B2:B8, "<>" & D2, B2:B8, "<>" & D3, B2:B8, "<>")` ### Count rows with at least N matching values across columns (COUNTIF & FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/count-rows-with-at-least-n-matching-columns/ - **Summary**: Count or list records with at least N Pass labels across four training modules, using a per-row COUNTIF helper. *Table — Count matching labels across each row:* | Technician (A) | Mod 1..4 (B:E) | Row Passes (F) | Meets >= 3? | | --- | --- | --- | --- | | Elena | Pass, Pass, Pass, Pass | 4 | Yes | | Marcus | Pass, Fail, Pass, Fail | 2 | No (< 3) | | Priya | Pass, Pass, Fail, Pass | 3 | Yes | | Devon | Fail, Fail, Pass, Fail | 1 | No (< 3) | | Sofia | Pass, Pass, Pass, Fail | 3 | Yes (3 qualified techs!) | - **Formula (Count rows meeting at least H2 column matches)**: `=IF(COUNT(H2)<>1,"Invalid threshold",IF(OR(H2<0,H2<>INT(H2)),"Invalid threshold",COUNTIF(F2:F6, ">=" & H2)))` - **Formula (Extract names of rows meeting at least H2 matches)**: `=IF(COUNT(H2)<>1,"Invalid threshold",IF(OR(H2<0,H2<>INT(H2)),"Invalid threshold",IFERROR(TEXTJOIN(", ", TRUE, FILTER(A2:A6, F2:F6 >= H2)), "None")))` ### Count sold vs. remaining seats or inventory and sell-through percentage - **URL**: https://sheets.arte-soft.com/en/learn/count-sold-and-remaining-inventory-seats/ - **Summary**: Count assigned and available slots in a fixed six-row roster and calculate its assigned fraction. *Table — Turn a fixed-capacity roster into a live sold/remaining capacity dashboard:* | Capacity KPI (6-Seat Workshop) | Formula | Live Result | | --- | --- | --- | | Total Capacity | ROWS(A2:A7) | 6 Seats | | Sold / Assigned | ROWS(A2:A7)-COUNTBLANK(B2:B7) | 4 Sold | | Remaining Open | COUNTBLANK(B2:B7) | 2 Remaining | | Sell-Through % | ROUND((ROWS(A2:A7)-COUNTBLANK(B2:B7))/ROWS(A2:A7),4) | 66.67% (0.6667) | - **Formula (Calculate remaining unsold seats or units)**: `=COUNTBLANK(B2:B7)` - **Formula (Compute sell-through rate and automatic "Sold Out" badge)**: `=IF(COUNTBLANK(B2:B7)=0,"Sold Out","Open")` - **Formula (Assigned fraction)**: `=ROUND((ROWS(A2:A7)-COUNTBLANK(B2:B7))/ROWS(A2:A7),4)` ### Count specific characters in a cell: case-sensitive and case-insensitive - **URL**: https://sheets.arte-soft.com/en/learn/count-specific-character-in-cell/ - **Summary**: Count how many times a delimiter or letter appears inside a string by comparing original text length against SUBSTITUTE length. *Table — Measure character frequency by deleting the character:* | PartCode (A) | TargetChar (B) | Exact Case Count | Case-Insensitive Count | | --- | --- | --- | --- | | SKU-440-North-B2 | - | 3 | 3 | | Rev-a-2026-A1 | A | 1 | 2 | - **Formula (Exact-case vs case-insensitive character counts)**: `=LEN(A2) - LEN(SUBSTITUTE(A2, B2, ""))` - **Formula (Normalize case with UPPER when letter casing varies)**: `=LEN(A3) - LEN(SUBSTITUTE(UPPER(A3), UPPER(B3), ""))` ### Count specific characters across a range of cells - **URL**: https://sheets.arte-soft.com/en/learn/count-specific-character-in-range/ - **Summary**: Count every hashtag, comma, or letter across an entire column at once by combining TEXTJOIN, LEN, and SUBSTITUTE. *Table — Why COUNTIF("*#*") undercounts cells with multiple hashtags:* | TagCell (A) | # Count in Row | COUNTIF "*#*" | | --- | --- | --- | | #seo #growth #b2b | 3 | 1 cell | | #saas | 1 | 1 cell | | untagged | 0 | 0 cells | | #cloud #ai | 2 | 1 cell | - **Formula (Range-wide character frequency formula)**: `=LET(all, TEXTJOIN("", TRUE, A2:A5), LEN(all) - LEN(SUBSTITUTE(all, B2, "")))` - **Formula (Case-insensitive letter count across a range)**: `=LET(all, UPPER(TEXTJOIN("", TRUE, A2:A5)), LEN(all) - LEN(SUBSTITUTE(all, UPPER(B2), "")))` ### Count Text-Stored Numbers With Leading Zeros (ZIP, Routing & Badge Audit Formula) - **URL**: https://sheets.arte-soft.com/en/learn/count-text-stored-numbers-with-leading-zeros-audit-formula/ - **Summary**: Detect and count text-stored numeric strings carrying leading zeros (such as "07030" or "0042") without false positives on true numbers, "0", decimals ("0.75"), or alphanumeric codes. *Table — Separating zero-padded numeric text from decimals and alphanumeric IDs:* | Cell Input | Data Type | Starts With "0"? | Passes Leading-Zero Audit? | | --- | --- | --- | --- | | ="07030" | Text | Yes | TRUE (5-digit NJ postal code) | | 7030 | Number | No (stripped) | FALSE (true numeric cell) | | ="0042" | Text | Yes | TRUE (zero-padded integer text) | | ="0.75" | Text | Yes ("0.") | FALSE (decimal string excluded) | | 0A42 | Text | Yes | FALSE (alphanumeric token excluded) | | ="0" | Text | Yes (len 1) | FALSE (single zero excluded) | - **Formula (Row-Level Zero-Padded Numeric Text Detector)**: `=AND(ISTEXT(A2), LEN(A2) >= 2, LEFT(A2, 1) = "0", MID(A2, 2, 1) <> ".", ISNUMBER(VALUE(A2)))` - **Formula (Count Zero-Padded Numeric Strings Across Column)**: `=COUNTIF(B2:B7, TRUE)` ### Count Times Within a Specific Time Window (Daytime & Overnight COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/count-times-in-specific-time-range-window-countifs/ - **Summary**: Count arrival, call, or transaction times between Start_Time and End_Time—handling both standard daytime windows (09:00–17:00) and cross-midnight graveyard shifts (22:00–06:00). *Table — Why naive COUNTIFS returns ZERO on overnight 22:00–06:00 shifts!:* | Shift Window [Start .. End] | Decimal Time Comparison | Active Branch | Matching Ticket Count | | --- | --- | --- | --- | | Day Window 09:00 to 17:00 | 0.375 <= t <= 0.7083 | COUNTIFS(>= Start, <= End) | 4 daytime tickets | | Night Window 22:00 to 06:00 | t >= 0.9167 OR t <= 0.2500 | COUNTIF(>= Start) + COUNTIF(<= End) | 2 overnight tickets | | Exact Point Window 09:00 to 09:00 | 0.375 <= t <= 0.375 | COUNTIFS exact timestamp match | 1 ticket at 09:00 | - **Formula (Daytime & Cross-Midnight Safe Time-Window Counter)**: `=IF(E2 <= F2, COUNTIFS(B2:B8, ">=" & E2, B2:B8, "<=" & F2), COUNTIF(B2:B8, ">=" & E2) + COUNTIF(B2:B8, "<=" & F2))` - **Formula (Share of Events Falling Inside Window (%))**: `=ROUND(100 * IF(E2 <= F2, COUNTIFS(B2:B8, ">=" & E2, B2:B8, "<=" & F2), COUNTIF(B2:B8, ">=" & E2) + COUNTIF(B2:B8, "<=" & F2)) / COUNT(B2:B8), 1)` ### Count total characters in a range (with or without spaces) - **URL**: https://sheets.arte-soft.com/en/learn/count-total-characters-in-range/ - **Summary**: Join an entire column with empty delimiter "" inside TEXTJOIN and measure LEN once—no helper column required. *Table — Use LEN(TEXTJOIN("", TRUE, range)) to sum lengths in one step:* | AdHeadline (A) | Total Chars | Non-Space Chars | | --- | --- | --- | | Fast Cloud | 10 | 9 | | Zero Setup | 10 | 9 | | Try Pro | 7 | 6 | - **Formula (Total characters, non-space characters, and average length)**: `=LEN(TEXTJOIN("", TRUE, A2:A4))` - **Formula (Exclude spaces across the range)**: `=LEN(SUBSTITUTE(TEXTJOIN("", TRUE, A2:A4), " ", ""))` ### Count Total Words Across a Multi-Cell Range Safely (Blank & Space Guards) - **URL**: https://sheets.arte-soft.com/en/learn/count-total-words-across-cell-range-sumproduct-len-substitute/ - **Summary**: Count total space-delimited words across an entire column or block of notes—without inflating counts on blank cells, double spaces, or space-only entries—using TRIM, TEXTJOIN, LEN, and SUBSTITUTE. *Table — Why naive LEN - LEN(SUBSTITUTE) + 1 overcounts blank rows:* | Row Input | Trimmed String | Guarded Row Word Count | | --- | --- | --- | | " Quarterly revenue audit " | "Quarterly revenue audit" | 3 | | "Approved" | "Approved" | 1 | | " " (spaces only) | "" | 0 | | Blank cell | "" | 0 | | "Ready for board sign-off" | "Ready for board sign-off" | 4 (Range Total = 8) | - **Formula (Single-Cell Range Word Count via TEXTJOIN + TRIM + LET)**: `=LET(joined, TRIM(TEXTJOIN(" ", TRUE, A2:A6)), IF(LEN(joined) = 0, 0, LEN(joined) - LEN(SUBSTITUTE(joined, " ", "")) + 1))` - **Formula (Blank-Safe Per-Row Word Count Helper)**: `=IF(ISBLANK(A2), 0, IF(LEN(TRIM(A2)) = 0, 0, LEN(TRIM(A2)) - LEN(SUBSTITUTE(TRIM(A2), " ", "")) + 1))` ### Count unique dates while ignoring timestamps (INT + UNIQUE) - **URL**: https://sheets.arte-soft.com/en/learn/count-unique-dates-ignoring-timestamps/ - **Summary**: Strip fractional clock times from audit timestamps with INT before counting distinct active calendar days with UNIQUE. *Table — Why timestamps inflate UNIQUE date counts:* | Event Timestamp (A) | Serial Value | DateOnly = INT(A) (B) | | --- | --- | --- | | 2026-04-01 09:00 | 46113.375 | 46113 (Day 1) | | 2026-04-01 15:00 | 46113.625 | 46113 (same Day 1) | | 2026-04-02 12:00 | 46114.500 | 46114 (Day 2) | | 2026-04-01 21:00 | 46113.875 | 46113 (same Day 1 -> 2 unique days) | - **Formula (Distinct active calendar days vs distinct timestamps)**: `=ROWS(UNIQUE(B2:B5))` - **Formula (Contrast raw timestamp count without INT)**: `=ROWS(UNIQUE(A2:A5))` ### Count Unique Numeric Values Separately From Unique Text Values in a Mixed Column - **URL**: https://sheets.arte-soft.com/en/learn/count-unique-numeric-values-vs-unique-text-values-in-mixed-range/ - **Summary**: Count distinct numbers and distinct non-blank text labels independently in mixed-type ranges using UNIQUE, FILTER, ISNUMBER, and ISTEXT with empty-set guards. *Table — Avoiding the COUNTA(UNIQUE(FILTER(...))) = 1 empty-result trap:* | Row Entry (A) | ISNUMBER (B) | Non-Blank ISTEXT (C) | Distinct Bucket Contribution | | --- | --- | --- | --- | | 105 (Number) | TRUE | FALSE | Unique Number #1 | | "Pending" | FALSE | TRUE | Unique Text #1 | | 220 (Number) | TRUE | FALSE | Unique Number #2 | | 105 (Number) | TRUE | FALSE | Duplicate Number (ignored) | | "Exempt" | FALSE | TRUE | Unique Text #2 | | "Pending" | FALSE | TRUE | Duplicate Text (ignored) | | "105" (Text) | FALSE | TRUE | Unique Text #3 (distinct from numeric 105) | - **Formula (Count Unique Numeric Values Only)**: `=IF(COUNTIF(B2:B8, TRUE) = 0, 0, COUNT(UNIQUE(FILTER(A2:A8, B2:B8))))` - **Formula (Count Unique Non-Blank Text Values Only)**: `=IF(COUNTIF(C2:C8, TRUE) = 0, 0, COUNTA(UNIQUE(FILTER(A2:A8, C2:C8))))` ### Count unique values in a column while ignoring blank cells - **URL**: https://sheets.arte-soft.com/en/learn/count-unique-values-ignore-blanks/ - **Summary**: Pair UNIQUE with FILTER and ROWS to count distinct customers or SKUs without counting empty rows as an extra item. *Table — Why bare ROWS(UNIQUE(range)) overcounts by 1 when blanks exist:* | Row | Client (A) | Included in Distinct Count? | | --- | --- | --- | | 2 | Acme | Yes (#1) | | 3 | Globex | Yes (#2) | | 4 | Acme | Duplicate — skipped | | 5 | (blank) | Excluded by FILTER | | 6 | Initech | Yes (#3) | - **Formula (Blank-safe distinct count formula)**: `=IF(SUMPRODUCT((A2:A6<>"")*(A2:A6<>0))=0, 0, ROWS(UNIQUE(FILTER(A2:A6, (A2:A6<>"")*(A2:A6<>0)))))` - **Formula (Contrast with bare ROWS(UNIQUE(A2:A6)))**: `=ROWS(UNIQUE(A2:A6))` ### Count unique values with criteria (COUNTUNIQUEIFS pattern) - **URL**: https://sheets.arte-soft.com/en/learn/count-unique-values-with-criteria/ - **Summary**: Count distinct customers or SKUs inside a filtered region or date window using FILTER, UNIQUE, and ROWS with a zero-match guard. *Table — Why COUNTIFS counts orders instead of distinct customers:* | Region (A) | Client (B) | North Order? | Distinct North Client? | | --- | --- | --- | --- | | North | Acme | Yes (1) | Yes (1) | | North | Acme | Yes (2) | Duplicate | | South | Beta | No | No | | North | Delta | Yes (3) | Yes (2) | | South | Beta | No | No | - **Formula (Zero-match safe distinct count formula)**: `=IF(SUMPRODUCT((A2:A6=C2)*(B2:B6<>""))=0,0,ROWS(UNIQUE(FILTER(B2:B6,(A2:A6=C2)*(B2:B6<>"")))))` - **Formula (Compare raw order count vs distinct client count)**: `=COUNTIF(A2:A6, C2)` ### Count Cells That Do Not Contain Errors & Sign Off Imported Sheets - **URL**: https://sheets.arte-soft.com/en/learn/count-valid-cells-without-errors-audit-gate-collaboration/ - **Summary**: Count valid non-error cells versus broken formulas across imported schedules using per-row NOT(ISERROR(...)) flags, and coordinate multi-user remediation in Arte Sheets. *Table — Why plain COUNTA counts #N/A and #DIV/0! as populated cells:* | Audit Metric | Formula Pattern | Includes Blanks? | Includes Errors? | | --- | --- | --- | --- | | Error-free cells (incl. blanks) | COUNTIF(IsCleanRange, TRUE) | Yes | No | | Populated & error-free cells | COUNTIF(IsPopulatedClean, TRUE) | No | No | | Broken formula count | ROWS(B2:B6) - COUNTIF(IsCleanRange, TRUE) | No | Only errors | - **Formula (Per-Row Non-Error Flag & Clean-Row Count)**: `=COUNTIF(C2:C6, TRUE)` - **Formula (Collaborative Error Remediation & AI Attachment Triage in Arte Sheets)**: `=IF(F3 = 0, "CLEAN_FOR_REVIEW", "FIX_" & F3 & "_ERRORS")` ### Count Visible Rows & Filtered Criteria Matches (SUBTOTAL 103 & Helper Column) - **URL**: https://sheets.arte-soft.com/en/learn/count-visible-rows-in-filtered-list-subtotal/ - **Summary**: Count visible non-empty records with SUBTOTAL(103, range) and pair a row-level visibility indicator (=SUBTOTAL(103, A2)) with SUMPRODUCT to count visible rows matching specific criteria. *Table — Why standard COUNTIF still counts hidden filtered rows—and how to fix it!:* | Order ID | Region | Visible Flag C_i | Included in Visible EMEA? | | --- | --- | --- | --- | | ORD-101 | EMEA | 1 (Visible) | Yes (1) | | ORD-102 | APAC | 1 (Visible) | No (APAC) | | ORD-103 | EMEA | 0 (Hidden Row) | No (Hidden) | | ORD-104 | EMEA | 1 (Visible) | Yes (2) | - **Formula (Visible Rows Matching Target Region (Helper-Flag SUMPRODUCT))**: `=IF(LEN(TRIM(B6)) = 0, 0, SUMPRODUCT(--(B2:B5 = B6), C2:C5))` - **Formula (Total Non-Empty Visible Rows via SUBTOTAL(103, ...))**: `=SUBTOTAL(103, A2:A5)` ### Count Whole-Word Occurrences in a Cell Without Partial Substring False Positives - **URL**: https://sheets.arte-soft.com/en/learn/count-whole-word-occurrences-in-cell-delimiter-padding/ - **Summary**: Count how many times a standalone target word appears inside a sentence or log message by normalizing punctuation to spaces and padding word boundaries before measuring LEN - LEN(SUBSTITUTE). *Table — Why naive SUBSTITUTE counts "cat" inside "catalog" and "category":* | Input Text | Target Word | Substring Count (Buggy) | Delimiter-Padded Whole-Word Count | | --- | --- | --- | --- | | cat in catalog category | cat | 3 | 1 | | API error, error! retry error. | error | 3 | 3 | | pro-plan upgrade to pro | pro | 2 | 1 ("pro-plan" kept hyphenated) | - **Formula (Case-Insensitive Whole-Word Count Formula)**: `=LET(norm_txt, TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(UPPER(A2), ",", " "), ".", " "), "!", " ")), clean_txt, " " & SUBSTITUTE(norm_txt, " ", " ") & " ", token, " " & TRIM(UPPER(B2)) & " ", IF(TRIM(B2) = "", 0, (LEN(clean_txt) - LEN(SUBSTITUTE(clean_txt, token, ""))) / LEN(token)))` ### Count how many times a word or substring appears in a cell - **URL**: https://sheets.arte-soft.com/en/learn/count-word-occurrences-in-cell/ - **Summary**: Divide the characters removed by SUBSTITUTE by the length of the search word, and guard empty search terms against #DIV/0!. *Table — Divide total removed characters by search-term length:* | LogEntry (A) | SearchWord (B) | Case-Insensitive | Case-Sensitive | | --- | --- | --- | --- | | error: disk error after timeout error | error | 3 | 3 | | Warn: retry warn on node-2 | warn | 2 | 1 | - **Formula (Case-insensitive vs exact-case substring count)**: `=IF(COUNTBLANK(B2:B2)=1, 0, (LEN(A2) - LEN(SUBSTITUTE(UPPER(A2), UPPER(B2), ""))) / LEN(B2))` - **Formula (Empty search term boundary (#DIV/0!))**: `=(LEN(A3) - LEN(SUBSTITUTE(A3, B3, ""))) / LEN(B3)` ### Count words in a cell: handle extra spaces and blank cells safely - **URL**: https://sheets.arte-soft.com/en/learn/count-words-in-a-cell/ - **Summary**: Count space-separated words after normalizing repeated ordinary spaces, including empty cells and formulas returning empty text. *Table — Why counting raw spaces overcounts messy text:* | NoteText (A) | Trimmed Length | No-Space Length | Word Count | | --- | --- | --- | --- | | Ship urgent pallet tomorrow | 27 | 24 | 4 | | Approved | 8 | 8 | 1 | | | 0 | 0 | 0 | - **Formula (Guard empty and whitespace-only cells from returning 1)**: `=IF(OR(COUNTBLANK(A2:A2)=1, LEN(TRIM(A2))=0), 0, LEN(TRIM(A2)) - LEN(SUBSTITUTE(TRIM(A2), " ", "")) + 1)` - **Formula (Single-word and multi-word verification)**: `=IF(OR(COUNTBLANK(A3:A3)=1, LEN(TRIM(A3))=0), 0, LEN(TRIM(A3)) - LEN(SUBSTITUTE(TRIM(A3), " ", "")) + 1)` ### Count Working Days With Custom Weekend Masks (Closed-Form NETWORKDAYS.INTL) - **URL**: https://sheets.arte-soft.com/en/learn/count-working-days-with-custom-weekend-days-formula/ - **Summary**: Calculate net working days between two dates under any custom 2-day weekend schedule (such as Friday–Saturday or Sunday–Monday) and subtract non-weekend public holidays using exact modular arithmetic. *Table — Exact O(1) weekday counting for any regional weekend pair:* | Window [2026-05-01..2026-05-17] | Weekend Pair (ISO 1..7) | Calendar Days | Weekend Days | Net Working Days (Excl. Holidays) | | --- | --- | --- | --- | --- | | May 1 (Fri) .. May 17 (Sun) | Fri (5) & Sat (6) | 17 | 3 Fri + 3 Sat = 6 | 11 (minus Sun May 10 holiday = 10) | | May 1 (Fri) .. May 17 (Sun) | Sun (7) & Mon (1) | 17 | 3 Sun + 2 Mon = 5 | 12 (Sun May 10 already weekend -> 12) | | May 1 (Fri) .. May 17 (Sun) | Sat (6) & Sun (7) | 17 | 3 Sat + 3 Sun = 6 | 11 (matches standard NETWORKDAYS) | - **Formula (Custom Two-Day Weekend Working-Day Count (Gross Workdays))**: `=IF(B3 < B2, "Invalid Range", LET(cal, B3 - B2 + 1, f1, B2 + MOD(B4 - WEEKDAY(B2, 2), 7), c1, IF(B3 < f1, 0, INT((B3 - f1) / 7) + 1), f2, B2 + MOD(B5 - WEEKDAY(B2, 2), 7), c2, IF(B3 < f2, 0, INT((B3 - f2) / 7) + 1), cal - c1 - IF(B4 = B5, 0, c2)))` - **Formula (Net Working Days Subtracting Non-Weekend Holidays)**: `=LET(cal, B3 - B2 + 1, f1, B2 + MOD(B4 - WEEKDAY(B2, 2), 7), c1, IF(B3 < f1, 0, INT((B3 - f1) / 7) + 1), f2, B2 + MOD(B5 - WEEKDAY(B2, 2), 7), c2, IF(B3 < f2, 0, INT((B3 - f2) / 7) + 1), holHit, IF(AND(B6 >= B2, B6 <= B3, WEEKDAY(B6, 2) <> B4, WEEKDAY(B6, 2) <> B5), 1, 0), cal - c1 - IF(B4 = B5, 0, c2) - holHit)` ### Forklift Load-Center Moment & Attachment Derating Formula - **URL**: https://sheets.arte-soft.com/en/learn/counterbalance-forklift-load-center-moment-derating-and-tipping-fulcrum-margin/ - **Summary**: Calculate Rated Safe Overturning Moment About Front Drive Axle (kN·m), Extended Net Moment Arm (mm), Derated Safe Lifting Capacity (kg), and Retained Nameplate Capacity (%). *Table — A "2,500 kg" forklift CANNOT lift 2,500 kg on long pallets or a sideshift/clamp attachment—front-axle tipping moment derates capacity 30%!:* | OSHA 1910.178 Forklift Derating KPI (2,500 kg @ 500 mm, x0=460, LC=750, 180 kg Attach) | Formula | Verified Output | | --- | --- | --- | | Safe Front-Axle Moment (kN·m) | (W_rated * 9.80665 * (x0 + LC_rated)) / 1e6 | 23.54 kN·m | | Extended Payload Lever Arm (mm) | x0_mm + Attach_Lost_Load_mm + Actual_LC_mm | 1,320.0 mm (960.0 mm @ bare 500 mm pallet) | | Derated Safe Payload (kg) | ((M_safe - M_attach)*1e6) / (9.80665*Arm) | 1,748.0 kg (2,500.0 kg @ bare standard) | | Retained Nameplate Capacity (%) | (Derated_Payload_kg / Rated_Cap_kg) * 100 | 69.92% (100.00% @ bare standard) | - **Formula (Front-Axle Fulcrum Equilibrium & Attachment Lost-Load Derating Formula)**: `=LET(wr_k, B2, lr_m, B3, xz_m, B4, la_m, B5, dx_m, B6, wa_k, B7, IF(OR(wr_k <= 0, lr_m < 300, xz_m <= 100, la_m < 300, dx_m < 0, wa_k < 0), "Invalid Forklift Input", LET(ms_n, wr_k * (xz_m + lr_m), ma_n, wa_k * (xz_m + (dx_m / 2)), IF(ma_n >= ms_n, "ATTACHMENT EXCEEDS TRUCK MOMENT", LET(wd_k, (ms_n - ma_n) / (xz_m + dx_m + la_m), ROUND((wd_k / wr_k) * 100, 2))))))` - **Formula (Standard Bare-Fork 500 mm Euro/GMA Pallet Baseline Check (Set LC_act = 500, Lost Load = 0, Attach = 0))**: `=IF(ISTEXT(E5), E5, LET(ms_n, B2 * (B4 + B3), ma_n, B7 * (B4 + (B6 / 2)), ROUND((ms_n - ma_n) / (B4 + B6 + B5), 1)))` ### COUNTIF & SUMIF Across Non-Contiguous Ranges (Additive & VSTACK) - **URL**: https://sheets.arte-soft.com/en/learn/countif-and-sum-across-non-contiguous-ranges-vstack/ - **Summary**: Count matching rows and sum quantities from two separate blocks, with literal criteria and a dynamic-array alternative. *Table — Combine conditional summaries from separate blocks:* | Warehouse Block | Part & Qty Rows | Matches for G2 = "Bolt" | | --- | --- | --- | | East Bin (A2:B4) | Bolt: 50, Nut: 30, Bolt: 70 | Count = 2 \| Sum = 120 | | West Bin (D2:E4) | Washer: 40, Bolt: 90, Nut: 20 | Count = 1 \| Sum = 90 | | Combined Total | Additive SUMIF or VSTACK + FILTER | Count = 3 \| Total Qty = 210 | - **Formula (Add separate SUMIF totals)**: `=IF(OR(NOT(ISTEXT(G2)),COUNTBLANK(G2)>0),"Enter part label",IF(COUNT(B2:B4,E2:E4)<>6,"Invalid quantities",SUMIF(A2:A4,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?"),B2:B4)+SUMIF(D2:D4,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?"),E2:E4)))` - **Formula (Dynamic Array VSTACK + FILTER Equivalent)**: `=IF(OR(NOT(ISTEXT(G2)),COUNTBLANK(G2)>0),"Enter part label",IF(COUNT(B2:B4,E2:E4)<>6,"Invalid quantities",SUM(FILTER(VSTACK(B2:B4,E2:E4),VSTACK(A2:A4,D2:D4)=G2,0))))` - **Formula (Count matching rows across both blocks)**: `=IF(OR(NOT(ISTEXT(G2)),COUNTBLANK(G2)>0),"Enter part label",COUNTIF(A2:A4,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?"))+COUNTIF(D2:D4,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?")))` ### COUNTIF in Excel: flag repeated IDs before changing the data - **URL**: https://sheets.arte-soft.com/en/learn/countif-find-duplicate-identifiers/ - **Summary**: Count repeated booking identifiers, keep blank IDs out of the flags, and distinguish repeated rows from extra copies. - **Formula (Count occurrences across the whole list)**: `=COUNTIF($A$2:$A$8,A2)` - **Formula (Make a review flag and leave missing IDs visible)**: `=IF(A2="","",IF(COUNTIF($A$2:$A$8,A2)>1,"Review","Single"))` ### Count, sum and find the maximum in a selected column with CHOOSECOLS - **URL**: https://sheets.arte-soft.com/en/learn/countifs-and-sumifs-with-dynamic-table-column-choosecols/ - **Summary**: Select a metric by its unique header, then use SUMPRODUCT to count qualifying rows or total a region and MAX for all regions. *Table — Choose a column by header, then aggregate its array:* | Region (A) | Q1 (B) | Q2 (C) | Q3 (D) | | --- | --- | --- | --- | | West | 120 | 90 (< 100) | 150 | | East | 80 | 130 | 110 | | West | 140 | 115 (>= 100) | 95 | | West | 70 | 105 (>= 100 -> 2 hits, Sum = 310) | 160 | - **Formula (Count the selected region’s values at least 100)**: `=IF(OR(COUNT(B2:D5)<>12,COUNTBLANK(A2:A5)>0,COUNTBLANK(F2:G2)>0,SUMPRODUCT((B1:D1=G2)*1)<>1),"Invalid inputs",SUMPRODUCT((A2:A5=F2)*(CHOOSECOLS(B2:D5,XMATCH(G2,B1:D1,0))>=100)))` - **Formula (Sum the selected region’s column)**: `=IF(OR(COUNT(B2:D5)<>12,COUNTBLANK(A2:A5)>0,COUNTBLANK(F2:G2)>0,SUMPRODUCT((B1:D1=G2)*1)<>1),"Invalid inputs",SUMPRODUCT((A2:A5=F2)*CHOOSECOLS(B2:D5,XMATCH(G2,B1:D1,0))))` - **Formula (Maximum across all regions)**: `=IF(OR(COUNT(B2:D5)<>12,COUNTBLANK(A2:A5)>0,COUNTBLANK(F2:G2)>0,SUMPRODUCT((B1:D1=G2)*1)<>1),"Invalid inputs",MAX(CHOOSECOLS(B2:D5,XMATCH(G2,B1:D1,0))))` ### COUNTIFS between dates: count a full month, including timestamps - **URL**: https://sheets.arte-soft.com/en/learn/countifs-between-dates-with-times/ - **Summary**: Count open repair tickets received in March. Use an inclusive start and an exclusive next-month boundary so a ticket arriving late on the final day is included. *Table — Define the reporting question first:* | Ticket (A) | Received (B) | Current status (C) | | --- | --- | --- | | T-71 | 28 February 2026, 00:00 | Open | | T-72 | 1 March 2026, 00:00 | Open | | T-73 | 15 March 2026, 00:00 | Closed | | T-74 | 31 March 2026, 18:00 | Open | | T-75 | 1 April 2026, 00:00 | Open | - **Formula (Count from the first day up to the next month)**: `=COUNTIFS(B2:B6,">="&DATE(2026,3,1),B2:B6,"<"&DATE(2026,4,1),C2:C6,"Open")` - **Formula (Make the period selectable)**: `=COUNTIFS(B2:B6,">="&E2,B2:B6,"<"&F2,C2:C6,"Open")` ### COUNTIFS: count open orders above a minimum amount - **URL**: https://sheets.arte-soft.com/en/learn/countifs-open-orders-over-amount/ - **Summary**: Count qualifying orders without adding their values. This example combines an order status with a minimum amount and checks what happens exactly at the threshold. *Table — Count the orders that need attention:* | Order (A) | Status (B) | Amount (C) | | --- | --- | --- | | R-401 | Open | 120 | | R-402 | Paid | 250 | | R-403 | Open | 80 | | R-404 | Open | 100 | | R-405 | Open | 175 | - **Formula (Pair each range with its condition)**: `=COUNTIFS(B2:B6,"Open",C2:C6,">=100")` - **Formula (Move the threshold into a cell)**: `=COUNTIFS(B2:B6,"Open",C2:C6,">="&E2)` ### Conditional Count with a Dynamic Selectable Column (CHOOSECOLS & MATCH) - **URL**: https://sheets.arte-soft.com/en/learn/countifs-with-dynamic-variable-column-range/ - **Summary**: Count rows meeting both a row category filter and a threshold on a user-selected metric column using CHOOSECOLS, MATCH, and SUMPRODUCT without hardcoding separate formulas per quarter. *Table — Switch the evaluated KPI column dynamically from a header selector cell:* | Region | Q1 | Q2 | Q3 | Matches North & Q2 >= 90? | | --- | --- | --- | --- | --- | | North | 86 | 93 | 91 | Yes (1) | | South | 94 | 88 | 95 | Region <> North | | North | 91 | 84 | 92 | Q2 < 90 | | North | 89 | 95 | 96 | Yes (2) | | West | 92 | 91 | 89 | Region <> North | | North | 78 | 90 | 85 | Yes (3 — exact boundary) | - **Formula (Dynamic-Column Conditional Count)**: `=LET(colIdx, MATCH(B9, B1:D1, 0), IF(ISNA(colIdx), "Unknown Period", SUMPRODUCT(--(A2:A7 = B8), --(CHOOSECOLS(B2:D7, colIdx) >= B10))))` - **Formula (Dynamic-Column Conditional Sum for Selected Quarter)**: `=LET(colIdx, MATCH(B9, B1:D1, 0), IF(ISNA(colIdx), "Unknown Period", SUMPRODUCT(--(A2:A7 = B8), CHOOSECOLS(B2:D7, colIdx))))` ### Cournot Oligopoly Nash Price and Cowling-Waterson HHI Lerner Formula - **URL**: https://sheets.arte-soft.com/en/learn/cournot-symmetric-and-asymmetric-oligopoly-nash-output-and-lerner/ - **Summary**: Solve N = 3 asymmetric Cournot-Nash equilibrium price P* = (a + SUM c_i) / (N + 1), firm outputs q_i = (P* - c_i) / b, and verify Cowling and Waterson’s HHI / |e_D| markup identity. *Table — Connect Cournot quantity competition directly to antitrust HHI / |e_D| markups:* | Cournot-Nash Quantity (a=100, b=1, c={16,20,24}) | Formula | Verified Output | | --- | --- | --- | | Equilibrium Market Price (P*) | (a + c_1 + c_2 + c_3) / 4 | 40.0000 | | Firm Outputs {q_1, q_2, q_3} & Total Q* | (P* - c_i) / b | {24, 20, 16} -> Q* = 60 | | Decimal Herfindahl Index (HHI_dec) | SUM((q_i / Q*)^2) | 0.3422 (3,422 pts) | | Cowling-Waterson Weighted Lerner | HHI_dec / (P* / (b * Q*)) | 0.5133 (51.33% Margin) | - **Formula (Interior 3-Firm Cournot-Nash Equilibrium Price P* Formula (with Exit Guard))**: `=LET(a_ch, B2, b_sl, B3, c_1, B4, c_2, B5, c_3, B6, IF(OR(a_ch <= 0, b_sl <= 0, c_1 < 0, c_2 < 0, c_3 < 0), "Invalid Cournot Input", LET(p_eq, (a_ch + c_1 + c_2 + c_3) / 4, IF(MAX(c_1, c_2, c_3) >= p_eq, "Corner Exit: Max c_i >= Interior Price", ROUND(p_eq, 4)))))` - **Formula (Cowling-Waterson Industry Share-Weighted Lerner Index Formula)**: `=LET(a_ch, B2, b_sl, B3, c_1, B4, c_2, B5, c_3, B6, p_eq, (a_ch + c_1 + c_2 + c_3) / 4, IF(OR(a_ch <= 0, b_sl <= 0, MAX(c_1, c_2, c_3) >= p_eq), "Corner Exit: Max c_i >= Interior Price", LET(q_1, (p_eq - c_1) / b_sl, q_2, (p_eq - c_2) / b_sl, q_3, (p_eq - c_3) / b_sl, q_tot, q_1 + q_2 + q_3, ROUND((q_1 * (p_eq - c_1) + q_2 * (p_eq - c_2) + q_3 * (p_eq - c_3)) / (q_tot * p_eq), 4))))` ### Course & onboarding completion matrix formula ("Complete", "In Progress 3/4", "Not Started") - **URL**: https://sheets.arte-soft.com/en/learn/course-and-onboarding-completion-matrix-summary/ - **Summary**: Summarize explicit X completion marks for four modules and calculate the share of listed learners with every module marked. *Table — Track explicit completion marks:* | Employee (A) | Completed cells COUNTIF(B:E,"X") | Computed Status Label (F) | | --- | --- | --- | | Maya (4 of 4 signed off) | 4 / 4 | "Complete" | | Liam (2 of 4 signed off) | 2 / 4 | "In Progress (2/4)" | | Noah (0 of 4 signed off) | 0 / 4 | "Not Started" | | Zoe (4 of 4 signed off) | 4 / 4 | Complete (2 of 4 learners complete = 50%) | - **Formula (Dynamic 3-state module completion status formula)**: `=LET(done,COUNTIF(B3:E3,"X"),required,COLUMNS(B3:E3),IFS(done=0,"Not Started",done Due) | | Dan (Sales) | 2026-11-10 | (Blank) | In Progress (Due in future) | | Eva (Eng) | 2026-11-05 | 2026-10-29 | Completed (Eng = 3/4 = 75% done!) | - **Formula (Classify each assignment at the reporting date)**: `=IF(AND(ISNUMBER(C2),ISNUMBER($G$2)),IF(AND(AND(C2>=DATE(1900,3,1),C2<=DATE(9999,12,31),C2=INT(C2)),AND($G$2>=DATE(1900,3,1),$G$2<=DATE(9999,12,31),$G$2=INT($G$2))),IF(COUNTBLANK(D2)=1,IF($G$2>C2,"Overdue","In Progress"),IF(ISNUMBER(D2),IF(AND(D2>=DATE(1900,3,1),D2<=DATE(9999,12,31),D2=INT(D2)),IF(D2>$G$2,IF($G$2>C2,"Overdue","In Progress"),IF(D2<=C2,"Completed","Completed Late")),"Invalid dates"),"Invalid dates")),"Invalid dates"),"Invalid dates")` - **Formula (Department total completion rate (including Completed + Completed Late))**: `=IF(OR(COUNTBLANK(B2:B6)>0,COUNTBLANK(G3)>0,COUNTIF(E2:E6,"Invalid dates")>0),"Invalid inputs",IF(SUMPRODUCT((B2:B6=G3)*1)=0,"No assignments",ROUND(SUMPRODUCT((B2:B6=G3)*((E2:E6="Completed")+(E2:E6="Completed Late")))/SUMPRODUCT((B2:B6=G3)*1),4)))` ### Course Completion & Compliance Pass-Rate Summary With COUNTIFS - **URL**: https://sheets.arte-soft.com/en/learn/course-completion-rate-and-pass-summary-countifs/ - **Summary**: Calculate LMS training compliance rates (%) requiring both Status = "Completed" and Exam Score >= Passing Cutoff using COUNTIFS(C2:C7, "Completed", D2:D7, ">=" & F2) / COUNTA(A2:A7). *Table — Distinguish module completion from certified exam passing in LMS compliance trackers!:* | Compliance Metric (6 Enrolled Learners) | COUNTIFS / COUNTA Criteria | Matching Learners | Compliance Percentage | | --- | --- | --- | --- | | Certified Pass Rate (Cutoff F2 = 80) | Completed AND Score >= 80 | 3 of 6 Staff | 50.0% | | Relaxed Pass Cutoff (Cutoff F2 = 70) | Completed AND Score >= 70 | 4 of 6 Staff | 66.7% | | Actionable Remediation Count | Total Enrolled - Certified Passes | 3 Staff Pending | Needs Retake or Reminder | - **Formula (Certified Course Compliance Pass Percentage (%))**: `=IF(COUNTA(A2:A7) = 0, "Empty Roster", ROUND(100 * COUNTIFS(C2:C7, "Completed", D2:D7, ">=" & F2) / COUNTA(A2:A7), 1))` - **Formula (Headcount Requiring Quiz Retake or Course Completion)**: `=IF(COUNTA(A2:A7) = 0, "Empty Roster", COUNTA(A2:A7) - COUNTIFS(C2:C7, "Completed", D2:D7, ">=" & F2))` ### Student Course Enrollment Tracker: Open Seats, Waitlist & Fill Rate - **URL**: https://sheets.arte-soft.com/en/learn/course-enrollment-seat-cap-open-spots-and-waitlist-status/ - **Summary**: Tally live course registrations from a student roster using COUNTIF, calculate remaining open seats via MAX(0, Cap - Enrolled) and waitlist overflow via MAX(0, Enrolled - Cap), and classify section status. *Table — Prevent negative seat counts when student demand overflows class capacity!:* | Course Section | Room Cap | Registered Roster COUNTIF | Open Seats / Waitlist Status | | --- | --- | --- | --- | | FIN-201 (4 Roster Signups) | 3 Seats | 4 Students | 0 Open \| Waitlist Active (+1) | | SQL-105 (2 Roster Signups) | 4 Seats | 2 Students | 2 Open \| Open (2 Seats Left) | | ML-310 (0 Roster Signups) | 5 Seats | 0 Students | 5 Open \| Open (5 Seats Left) | - **Formula (Clamped Remaining Open Seats: MAX(0, Seat_Cap - COUNTIF(Roster, Course)))**: `=IF(E2 < 1, "Invalid Seat Cap", MAX(0, E2 - COUNTIF($B$2:$B$7, D2)))` - **Formula (Automated Enrollment & Waitlist Overflow Status Banner)**: `=IF(COUNTIF($B$2:$B$7, D2) > E2, "Waitlist Active (+" & (COUNTIF($B$2:$B$7, D2) - E2) & ")", IF(COUNTIF($B$2:$B$7, D2) = E2, "Full — Cap Reached", "Open (" & (E2 - COUNTIF($B$2:$B$7, D2)) & " Left)"))` ### Covered Interest Rate Parity (CIRP): FX forward rate & forward points formula - **URL**: https://sheets.arte-soft.com/en/learn/covered-interest-rate-parity-forward-fx-rate-and-points/ - **Summary**: Compute an illustrative FX forward parity benchmark using simple annual rates, a common day basis and a stated quote convention. *Table — Never flip quote vs. base interest rates when pricing FX hedges!:* | FX Forward Metric (EUR/USD Spot = 1.1000, 180d ACT/360) | Formula | Illustrative model result | | --- | --- | --- | | USD Quote Factor (5.0% * 180/360) | 1 + 0.025 | 1.0250 | | EUR Base Factor (3.0% * 180/360) | 1 + 0.015 | 1.0150 | | Outright 180d Forward Rate (F) | 1.1000 * 1.025 / 1.015 | 1.1108 USD/EUR | | Forward Swap Points (Pips) | (F - 1.1000) * 10,000 | +108.4 pips (Forward premium) | - **Formula (Outright FX forward rate (ACT/360 money-market convention))**: `=IF(OR(COUNT(A2:E2)<>5,A2<=0,D2<0,E2<=0),"Invalid inputs",IF(OR(1+B2*D2/E2<=0,1+C2*D2/E2<=0),"Invalid interest factor",ROUND(A2 * (1 + B2 * (D2 / E2)) / (1 + C2 * (D2 / E2)), 4)))` - **Formula (FX forward points in standard pips ((Forward - Spot) * 10,000))**: `=IF(OR(COUNT(A2:E2)<>5,A2<=0,D2<0,E2<=0),"Invalid inputs",IF(OR(1+B2*D2/E2<=0,1+C2*D2/E2<=0),"Invalid interest factor",LET(fwd, A2 * (1 + B2 * (D2 / E2)) / (1 + C2 * (D2 / E2)), ROUND((fwd - A2) * 10000, 1))))` ### Cox-Ingersoll-Ross (CIR) Short-Rate Zero-Coupon Bond Price, Yield & Feller Condition - **URL**: https://sheets.arte-soft.com/en/learn/cox-ingersoll-ross-cir-short-rate-zero-coupon-bond-price-and-yield/ - **Summary**: Price affine zero-coupon bonds under the Cox-Ingersoll-Ross (1985) square-root diffusion dr = a(b - r)dt + sigma*sqrt(r)dW with closed-form A(T), B(T), and Feller positivity ratio 2ab / sigma^2. *Table — Why CIR prevents Vasicek’s negative-rate diffusion via square-root volatility:* | CIR Quantity (r0=4%, a=0.5, b=5%, sigma=10%, T=5y) | Formula Role | Computed Value | | --- | --- | --- | | Feller Ratio 2*a*b / sigma^2 | Strictly positive short-rate gate (>= 1) | 5.0000 (FELLER_POSITIVE) | | Duration Factor B(5) | Sensitivity -d ln P / dr_0 | 1.8130 years | | Zero-Coupon Price P(0, 5) | A(5) * EXP(-B(5) * r_0) | 0.7949 per $1 par | | Continuously Compounded Spot Yield | -LN(P(0, 5)) / 5 | 0.0459 (4.59%) | - **Formula (CIR Affine Bond Price P(0, T) Formula)**: `=LET(r_now, B2, kappa, B3, theta, B4, sig, B5, mat_t, B6, h_val, SQRT((kappa ^ 2) + 2 * (sig ^ 2)), exp_ht, EXP(h_val * mat_t), denom, 2 * h_val + (kappa + h_val) * (exp_ht - 1), b_fac, 2 * (exp_ht - 1) / denom, a_fac, ((2 * h_val * EXP((kappa + h_val) * mat_t / 2)) / denom) ^ ((2 * kappa * theta) / (sig ^ 2)), ROUND(a_fac * EXP(-b_fac * r_now), 4))` - **Formula (Feller Non-Negativity Diagnostic & Maturity Boundary Check)**: `=IF((2 * B3 * B4) >= (B5 ^ 2), "FELLER_POSITIVE", "ZERO_BOUNDARY_REACHABLE")` ### Weak-Instrument First-Stage F and Stock-Yogo 2SLS Bias Formula - **URL**: https://sheets.arte-soft.com/en/learn/cragg-donald-first-stage-weak-instrument-f-and-2sls-relative-bias/ - **Summary**: Compute the excluded-instrument first-stage partial F-statistic, concentration parameter mu^2 = L_excl * F, and approximate 2SLS relative bias toward OLS 1 / (F + 1). *Table — Why weak instruments pull finite-sample 2SLS straight back toward biased OLS:* | First-Stage Partial R^2_p (df_2 = 90, L = 3) | First-Stage Partial F | Approx 2SLS Relative Bias 1/(F+1) | | --- | --- | --- | | Weak Instruments (R^2_p = 0.0625) | F = 2.0000 (mu^2 = 6) | 0.3333 (Severe Weak-IV Bias) | | Staiger-Stock Threshold (R^2_p = 0.2500) | F = 10.0000 (mu^2 = 30) | 0.0909 (< 10% Relative Bias) | | Strong Instruments (R^2_p = 0.5000) | F = 30.0000 (mu^2 = 90) | 0.0323 (~3.2% Relative Bias) | - **Formula (Excluded-Instrument First-Stage Partial F-Statistic Formula)**: `=LET(n_obs, B2, k_ex, B3, l_iv, B4, r2_p, B5, df_2, n_obs - k_ex - l_iv, IF(OR(l_iv < 1, k_ex < 0, df_2 <= 0, r2_p < 0, r2_p >= 1), "Invalid First-Stage Design", ROUND((r2_p / l_iv) / ((1 - r2_p) / df_2), 4)))` - **Formula (Approximate 2SLS-to-OLS Relative Bias Ratio 1 / (F_first + 1) Formula)**: `=IF(ISTEXT(E2), E2, ROUND(1 / (E2 + 1), 4))` ### Cramér-Lundberg Ruin Probability & Adjustment Coefficient R - **URL**: https://sheets.arte-soft.com/en/learn/cramer-lundberg-insurance-surplus-adjustment-coefficient-and-ruin-bound/ - **Summary**: Calculate relative security loading theta, Cramér-Lundberg adjustment coefficient R = theta / ((1 + theta) * mu), Lundberg ruin bound EXP(-R * u_0), and exact exponential ruin probability. *Table — Size initial insurer surplus u_0 so compound-Poisson claim spikes do not exhaust capital:* | Surplus Risk Metric (u_0=200, lambda=100, mu=10, c=1,250) | Formula | Verified Output | | --- | --- | --- | | Relative Security Loading (theta) | c / (lambda * mu_sev) - 1 | 0.2500 (25.00%) | | Adjustment Coefficient (R) | theta / ((1 + theta) * mu_sev) | 0.0200 | | Lundberg Upper Bound | EXP(-R * u_0) | 0.0183 (1.83%) | | Exact Exponential Ruin psi(u_0) | (1 / (1 + theta)) * EXP(-R * u_0) | 0.0147 (1.47%) | | Surplus Needed for 1% Ruin Cap | MAX(0, -LN((1 + theta) * alpha) / R) | 219.10 | - **Formula (Exact Exponential-Severity Cramér-Lundberg Ruin Probability Formula)**: `=LET(u_0, B2, lam_c, B3, mu_s, B4, prem_c, B5, IF(OR(u_0 < 0, lam_c <= 0, mu_s <= 0, prem_c <= 0), "Invalid Surplus Input", IF(prem_c <= lam_c * mu_s, "Certain Ruin (Require c > lambda * mu)", LET(th_ld, prem_c / (lam_c * mu_s) - 1, r_adj, th_ld / ((1 + th_ld) * mu_s), ROUND((1 / (1 + th_ld)) * EXP(-r_adj * u_0), 4)))))` - **Formula (Minimum Required Initial Capital u_min for Target Ruin Probability alpha Formula)**: `=LET(lam_c, B3, mu_s, B4, prem_c, B5, alp_r, B6, IF(OR(lam_c <= 0, mu_s <= 0, prem_c <= lam_c * mu_s, alp_r <= 0, alp_r >= 1), "Invalid Capital Target", LET(th_ld, prem_c / (lam_c * mu_s) - 1, r_adj, th_ld / ((1 + th_ld) * mu_s), ROUND(MAX(0, -LN((1 + th_ld) * alp_r) / r_adj), 2))))` ### Cramer's V effect size & Chi-Square contingency table association formula - **URL**: https://sheets.arte-soft.com/en/learn/cramers-v-effect-size-for-contingency-tables/ - **Summary**: Calculate Chi-Square SUM((O - E)^2 / E) and sample-size-adjusted Cramer's V = SQRT(ChiSq / (N * MIN(r - 1, c - 1))) for categorical cross-tabulations. *Table — Why raw Chi-Square inflates with sample size N—and how Cramer's V normalizes it to [0, 1]!:* | Channel (r = 3) | Converted (A) | Bounced (B) | Expected (Conv / Bounce) & ChiSq Row | | --- | --- | --- | --- | | Search (Total 80) | 40 | 40 | E = 36 / 44 -> ChiSq = 0.8081 | | Email (Total 60) | 35 | 25 | E = 27 / 33 -> ChiSq = 4.3098 | | Social (Total 60) | 15 | 45 | E = 27 / 33 -> ChiSq = 9.6970 | | Totals (N = 200) | 90 | 110 | ChiSq = 14.8148 \| Cramer's V = 0.2722 | - **Formula (Row-by-row Pearson Chi-Square contribution (O - E)^2 / E)**: `=IF(COUNT(A2:B4)<>6,"Invalid inputs",IF(OR(COUNT(A2:B4)<>6,MIN(A2:B4)<0,A2<>INT(A2),A3<>INT(A3),A4<>INT(A4),B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),MIN(C2:C4)<=0,A5<=0,B5<=0),"Invalid inputs",ROUND(SUM(D2:D4), 4)))` - **Formula (Cramer's V normalized effect size SQRT(ChiSq / (N * MIN(r - 1, c - 1))))**: `=IF(COUNT(A2:B4)<>6,"Invalid inputs",IF(OR(COUNT(A2:B4)<>6,MIN(A2:B4)<0,A2<>INT(A2),A3<>INT(A3),A4<>INT(A4),B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),MIN(C2:C4)<=0,A5<=0,B5<=0),"Invalid inputs",ROUND(SQRT(SUM(D2:D4) / (C5 * MIN(ROWS(A2:B4) - 1, COLUMNS(A2:B4) - 1))), 4)))` ### Crawford Unit vs Wright Learning Curve Formula - **URL**: https://sheets.arte-soft.com/en/learn/crawford-unit-learning-curve-vs-wright-cumulative-average-formula/ - **Summary**: Avoid a 44% unit-cost bidding error by distinguishing J. R. Crawford’s Incremental Unit Learning Curve Y_n = T_1 * n^b from T. P. Wright’s Cumulative-Average Unit Difference T_1*(n^(1+b) - (n-1)^(1+b)). *Table — Never confuse an "80% Crawford Unit Curve" with an "80% Wright Cumulative-Average Curve"!:* | Learning-Curve Convention (T_1 = 100 hr, r = 80%, Unit n = 8) | Formula | Verified Hours | | --- | --- | --- | | Learning Exponent (b) | LN(r) / LN(2) = LN(0.80) / LN(2) | -0.3219 | | Crawford Incremental Unit-8 Hours | T_1 * (n^b) = 100 * 8^(-0.3219) | 51.20 hours | | Wright Incremental Unit-8 Hours | T_1 * (n^(1+b) - (n-1)^(1+b)) | 35.46 hours | | Convention Mismatch Gap (Crawford - Wright) | 51.20 - 35.46 | 15.74 hours (+44.39% Higher!) | - **Formula (Crawford Incremental Unit-n Labor Hours Formula)**: `=LET(t_1, B2, r_lr, B3, n_un, B4, IF(OR(t_1 <= 0, r_lr <= 0, r_lr > 1, n_un < 1, INT(n_un) <> n_un), "Invalid Learning Input", LET(b_ex, LN(r_lr) / LN(2), ROUND(t_1 * (n_un ^ b_ex), 2))))` - **Formula (Exact Wright Incremental Unit-n Labor Hours Formula)**: `=LET(t_1, B2, r_lr, B3, n_un, B4, IF(OR(t_1 <= 0, r_lr <= 0, r_lr > 1, n_un < 1, INT(n_un) <> n_un), "Invalid Learning Input", IF(n_un = 1, ROUND(t_1, 2), LET(b_ex, LN(r_lr) / LN(2), ROUND(t_1 * ((n_un ^ (1 + b_ex)) - ((n_un - 1) ^ (1 + b_ex))), 2)))))` ### Create a date sequence between two dates with SEQUENCE - **URL**: https://sheets.arte-soft.com/en/learn/create-date-sequence-between-two-dates/ - **Summary**: Generate an inclusive daily or weekly calendar column dynamically from StartDate and EndDate using SEQUENCE(End - Start + 1, 1, Start, 1). *Table — Remember the +1 fencepost for inclusive date ranges:* | StartDate (A) | EndDate (B) | Daily Rows (B-A+1) | 4th Generated Date | | --- | --- | --- | --- | | 2026-04-10 | 2026-04-16 | 7 | 2026-04-13 | | 2026-04-10 | 2026-05-01 | 22 (4 weekly) | 2026-05-01 (4th wk) | - **Formula (Daily and weekly dynamic calendar formulas)**: `=ROWS(SEQUENCE(B2 - A2 + 1, 1, A2, 1))` - **Formula (Inspect spilled calendar entries)**: `=TEXT(INDEX(SEQUENCE(B2 - A2 + 1, 1, A2, 1), 4, 1), "yyyy-mm-dd")` ### Create standardized email addresses from first and last name columns - **URL**: https://sheets.arte-soft.com/en/learn/create-email-address-from-name/ - **Summary**: Build lowercase first.last@domain email addresses while stripping stray spaces and apostrophes from multi-part surnames. *Table — Why simple LOWER(A2 & "." & B2 & "@" & C2) breaks in HR rosters:* | FirstName (A) | LastName (B) | Domain (C) | Generated Email | | --- | --- | --- | --- | | Elena | O'Connor | arte-soft.com | elena.oconnor@arte-soft.com | | Jean-Luc | De La Cruz | arte-soft.com | jean-luc.delacruz@arte-soft.com | - **Formula (Normalized first.last@domain formula)**: `=LOWER(SUBSTITUTE(SUBSTITUTE(TRIM(A2), " ", ""), "'", "") & "." & SUBSTITUTE(SUBSTITUTE(TRIM(B2), " ", ""), "'", "") & "@" & TRIM(C2))` - **Formula (Single-column full-name variant)**: `=LOWER(TEXTBEFORE(TRIM(" Marco Rossi "), " ") & "." & TEXTAFTER(TRIM(" Marco Rossi "), " ", -1) & "@" & TRIM(C2))` ### CDS Credit Triangle Hazard Rate & Cumulative Default Probability formulas - **URL**: https://sheets.arte-soft.com/en/learn/credit-default-swap-hazard-rate-and-survival-probability/ - **Summary**: Estimate a constant risk-neutral hazard rate from a spread and assumed recovery, then calculate the corresponding model survival and default probabilities. *Table — A simplified constant-intensity credit model:* | CDS Credit Metric | Formula | 200 bps Spread, 40% Recovery, 5 Yr | Zero spread in this model | | --- | --- | --- | --- | | Loss Given Default (LGD) | 1 - B3 | 1 - 0.40 = 60.0% | 60.0% | | Implied Hazard Rate lambda | B2 / (1 - B3) | 0.0200 / 0.60 = 3.33% / yr | 0.00% / yr | | 5-Year Survival Prob Q(5) | EXP(-(B2 / (1 - B3)) * B4) | EXP(-0.1667) = 84.65% | 100.00% (1.0000) | | 5-Year Cumulative Default PD | 1 - EXP(-lambda * T) | 15.35% (0.1535) | 0.00% (0.0000) | - **Formula (Cumulative T-Year Market-Implied Default Probability PD(T))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<0,B3>=1,B4<0),"Invalid inputs",ROUND(1 - EXP(-(B2 / (1 - B3)) * B4), 4)))` - **Formula (Constant annual hazard rate)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<0,B3<0,B3>=1),"Invalid inputs",ROUND(B2 / (1 - B3), 4)))` - **Formula (Survival under the same constant intensity)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<0,B3>=1,B4<0),"Invalid inputs",ROUND(EXP(-(B2 / (1 - B3)) * B4), 4)))` ### CRIB II (Clinical Risk Index for Babies II) Preterm NICU Score (0–27) - **URL**: https://sheets.arte-soft.com/en/learn/crib-ii-clinical-risk-index-for-babies-vlow-birth-weight-nicu/ - **Summary**: Calculate Gareth Parry’s treatment-independent CRIB II neonatal mortality score (0–27 points) for preterm infants <= 32 weeks gestation from sex-specific birthweight/GA points, admission temperature, and base excess. *Table — Why CRIB II eliminated FiO_2 ventilator bias from preterm NICU benchmarking!:* | CRIB II Score Level (0–27 Points) | NICU Mortality Stratum | Golden-Hour Physiology Insight | | --- | --- | --- | | 0 – 5 points (Level 1) | Low Risk (< 3% Mortality) | 36.5 °C Normothermia + Compensated Acid-Base | | 6 – 10 points (Level 2) | Moderate Risk (~10–25%) | Mild Hypothermia / Metabolic Acidosis | | 11 – 15 / > 15 points (Levels 3–4) | High / Critical Risk (> 40–75%) | Extreme Prematurity + Severe Cold Stress / Acidemia | - **Formula (Total CRIB II Neonatal Severity Score (0 to 27 Points))**: `=IF(OR(B2 < 0, B2 > 15, B3 < 25, B3 > 42, B4 < -40, B4 > 20), "Invalid NICU Admission Inputs", B2 + IF(B3 <= 29.6, 5, IF(B3 <= 31.2, 4, IF(B3 <= 32.8, 3, IF(B3 <= 34.4, 2, IF(B3 <= 36.0, 1, IF(B3 <= 37.5, 0, 1)))))) + IF(B4 < -26, 7, IF(B4 <= -23, 6, IF(B4 <= -18, 5, IF(B4 <= -13, 4, IF(B4 <= -7, 3, IF(B4 <= -3, 2, IF(B4 <= 1, 1, 0))))))))` - **Formula (CRIB II NICU Risk Level Classification (Levels 1 to 4))**: `=IF(OR(B2 < 0, B2 > 15, B3 < 25, B3 > 42, B4 < -40, B4 > 20), "Invalid NICU Admission Inputs", IF(B2 + IF(B3 <= 29.6, 5, IF(B3 <= 31.2, 4, IF(B3 <= 32.8, 3, IF(B3 <= 34.4, 2, IF(B3 <= 36.0, 1, IF(B3 <= 37.5, 0, 1)))))) + IF(B4 < -26, 7, IF(B4 <= -23, 6, IF(B4 <= -18, 5, IF(B4 <= -13, 4, IF(B4 <= -7, 3, IF(B4 <= -3, 2, IF(B4 <= 1, 1, 0))))))) <= 5, "Level 1 Low Risk (0-5)", IF(B2 + IF(B3 <= 29.6, 5, IF(B3 <= 31.2, 4, IF(B3 <= 32.8, 3, IF(B3 <= 34.4, 2, IF(B3 <= 36.0, 1, IF(B3 <= 37.5, 0, 1)))))) + IF(B4 < -26, 7, IF(B4 <= -23, 6, IF(B4 <= -18, 5, IF(B4 <= -13, 4, IF(B4 <= -7, 3, IF(B4 <= -3, 2, IF(B4 <= 1, 1, 0))))))) <= 10, "Level 2 Moderate Risk (6-10)", IF(B2 + IF(B3 <= 29.6, 5, IF(B3 <= 31.2, 4, IF(B3 <= 32.8, 3, IF(B3 <= 34.4, 2, IF(B3 <= 36.0, 1, IF(B3 <= 37.5, 0, 1)))))) + IF(B4 < -26, 7, IF(B4 <= -23, 6, IF(B4 <= -18, 5, IF(B4 <= -13, 4, IF(B4 <= -7, 3, IF(B4 <= -3, 2, IF(B4 <= 1, 1, 0))))))) <= 15, "Level 3 High Risk (11-15)", "Level 4 Critical Risk (>15)"))))` ### Binomial Acceptance Sampling & Critical Defect Cutoff (BINOMDIST & CRITBINOM) - **URL**: https://sheets.arte-soft.com/en/learn/critbinom-binomial-acceptance-sampling-critical-defect-cutoff/ - **Summary**: Calculate exact binomial defect probabilities, cumulative lot-acceptance curves, producer’s risk, and the smallest critical defect threshold (CRITBINOM) using exact factorial combinatorics. *Table — How CRITBINOM determines incoming quality-control acceptance numbers:* | Defects k (n=10, p=0.10) | Exact PMF P(X = k) | Cumulative P(X <= k) | Meets >= 0.90 Target? | | --- | --- | --- | --- | | 0 | 0.3487 | 0.3487 | No | | 1 | 0.3874 | 0.7361 | No | | 2 (CRITBINOM cutoff) | 0.1937 | 0.9298 | Yes (Producer risk = 0.0702) | | 3 | 0.0574 | 0.9872 | Yes | - **Formula (Exact Binomial PMF Formula)**: `=ROUND((FACT($B$2) / (FACT(D2) * FACT($B$2 - D2))) * ($B$3 ^ D2) * ((1 - $B$3) ^ ($B$2 - D2)), 4)` - **Formula (Critical Acceptance Cutoff (CRITBINOM) via MINIFS on Cumulative Column)**: `=MINIFS(D2:D6, F2:F6, ">=" & B4)` ### Cronbach’s Alpha (alpha) Internal Consistency & Spearman-Brown Prophecy - **URL**: https://sheets.arte-soft.com/en/learn/cronbachs-alpha-internal-consistency-and-spearman-brown/ - **Summary**: Calculate psychometric test reliability Cronbach’s alpha = (K / (K - 1)) * (1 - Sum_Item_Var / Total_Score_Var) and Spearman-Brown predicted reliability for scaled test length. *Table — Audit survey & exam reliability before trusting composite scale scores!:* | Psychometric Scale Scenario (K = 10 Items, Total Var = 32.0) | Sum of Item Variances | Cronbach’s Alpha | Psychometric Interpretation | | --- | --- | --- | --- | | Cohesive Survey Scale | 8.40 | 0.8194 | Good Internal Consistency (>= 0.80) | | 2x Length Exam (Spearman-Brown m = 2) | 8.40 (Scaled) | 0.9008 | High-Stakes Clinical / Certification (>= 0.90) | | Noisy Items (Higher Unshared Variance) | 14.40 | 0.6111 | Questionable Consistency (< 0.70) | - **Formula (Cronbach’s Coefficient Alpha = (K / (K - 1)) * (1 - Sum_Item_Var / Total_Score_Var))**: `=IF(OR(B2 < 2, B3 <= 0, B4 <= 0), "Invalid Scale Inputs", ROUND((B2 / (B2 - 1)) * (1 - (B3 / B4)), 4))` - **Formula (Spearman-Brown Prophecy Reliability for Length Multiplier m (B5))**: `=IF(OR(B2 < 2, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Scale Inputs", ROUND((B5 * ((B2 / (B2 - 1)) * (1 - (B3 / B4)))) / (1 + (B5 - 1) * ((B2 / (B2 - 1)) * (1 - (B3 / B4)))), 4))` ### Alloy Bow Shackle Side-Load Derating & Pin D/d Formula - **URL**: https://sheets.arte-soft.com/en/learn/crosby-shackle-pin-d-over-d-bow-efficiency-and-eccentric-side-load-derating-formula/ - **Summary**: Calculate ASME B30.26 Side-Pull Angle Multiplier, Derated Shackle Working Load Limit WLL (t), Wire-Rope Eye Pin D/d Bending Efficiency (%), and Shackle Utilization (%). *Table — Pulling sideways at 90° across a forged bow shackle’s jaw cuts its Working Load Limit in HALF—even if the load is well below stamped tonnage!:* | ASME B30.26 Bow Shackle KPI (12 t Stamped WLL, D=35 mm, d=22 mm, 7.4 t Pull) | Formula | Verified Output | | --- | --- | --- | | ASME Side-Load Multiplier k_side | IF(ang<=45, 1-0.3*(ang/45), 0.7-0.2*((ang-45)/45)) | 0.900 @ 15° (0.500 @ 90° side pull!) | | Derated Shackle WLL (tonnes) | Stamped_WLL_t * Side_Load_Multiplier | 10.80 t (6.00 t @ 90° side pull!) | | Un-Thimbled Rope Eye Eff (%) | (1 - 0.5 / SQRT(Pin_D_mm / Rope_d_mm)) * 100 | 60.36% (install heavy-duty thimble!) | | Derated Shackle Utilization (%) | (Applied_Load_t / Derated_WLL_t) * 100 | 68.5% (123.3% OVERLOAD @ 90° pull!) | - **Formula (ASME B30.26 Piecewise Bow-Shackle Side-Load Derating & D/d Eye Efficiency Formula)**: `=LET(wl_t, B2, ag_d, B3, dp_m, B4, dr_m, B5, ld_t, B6, IF(OR(wl_t <= 0, ag_d < 0, ag_d > 90, dr_m <= 2, dp_m < 0.5 * dr_m, ld_t <= 0), "Invalid Rigging Input", ROUND((ld_t / (wl_t * IF(ag_d <= 45, 1 - 0.3 * (ag_d / 45), 0.7 - 0.2 * ((ag_d - 45) / 45)))) * 100, 1)))` - **Formula (90° Cross-Jaw Side Pull 50% WLL Derating Overload Check (Set Side Angle B3 = 90°))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * IF(B3 <= 45, 1 - 0.3 * (B3 / 45), 0.7 - 0.2 * ((B3 - 45) / 45)), 2))` ### Cross-Currency Basis & CIP Deviation Formula - **URL**: https://sheets.arte-soft.com/en/learn/cross-currency-basis-swap-covered-interest-parity-cip-deviation-formula/ - **Summary**: Calculate 1-Year FX Forward Premium, FX-Swapped Synthetic USD Rate, Du-Tepper-Verdelhan Cross-Currency Basis Spread (bps), and Hedged USD Cash-Lender Arbitrage Pickup. *Table — Measure post-2008 Covered Interest Parity (CIP) deviations in basis points accurately!:* | EUR/USD CIP Basis Metric (Spot=1.0800, 1Y Fwd=1.1016, USD OIS=4.55%, EUR OIS=3.00%) | Formula | Verified Output | | --- | --- | --- | | 1-Year FX Forward Premium | (F_1 - S_0) / S_0 | 0.0200 (+2.00% Forward Points) | | Synthetic Swapped USD Rate | (F_1 / S_0) * (1 + r_EUR) - 1 | 0.0506 (5.06% vs 4.55% Direct USD) | | Cross-Currency Basis (bps) | 10000 * (((1+r_USD)/(F1/S0)) - (1+r_EUR)) | -50.00 bps (0.00 bps @ r_USD=5.06%) | | Hedged USD Lender Pickup (bps) | 10000 * (Synthetic_USD - Direct_USD) | +51.00 bps Arbitrage Spread | - **Formula (Exact Cross-Currency Basis Spread (bps) Formula)**: `=LET(sp_0, B2, fw_1, B3, r_us, B4, r_fr, B5, IF(OR(sp_0 <= 0, fw_1 <= 0, r_us <= -1, r_fr <= -1), "Invalid FX Swap Quote", LET(fw_r, fw_1 / sp_0, ROUND(10000 * (((1 + r_us) / fw_r) - (1 + r_fr)), 2))))` - **Formula (Frictionless Textbook CIP Identity Check (r_USD = 5.06%))**: `=IF(ISTEXT(E4), E4, ROUND(10000 * (E3 - B4), 2))` ### Crude Oil API Gravity & Pipeline Blend Formula - **URL**: https://sheets.arte-soft.com/en/learn/crude-oil-api-gravity-specific-gravity-and-blended-api-formula/ - **Summary**: Convert API Gravity to 60°F Specific Gravity SG = 141.5 / (API + 131.5), compute Exact Volumetric Blended Specific Gravity, and recover True Blended API Gravity without linear-API averaging error. *Table — Never take a volume-weighted average of API degrees directly!:* | Midstream Crude Blending Metric (50k bbl 20° API + 50k bbl 40° API) | Formula | Verified Output | | --- | --- | --- | | Stream 1 Specific Gravity SG_1 | 141.5 / (API_1 + 131.5) | 0.9340 (vs SG_2 = 0.8251) | | Blended Specific Gravity SG_blend | (V_1*SG_1 + V_2*SG_2) / (V_1 + V_2) | 0.8795 | | True Blended API Gravity (°API) | 141.5 / SG_blend - 131.5 | 29.38° API (Below 30° Spec!) | | Harmonic Blend Bias vs Naive Avg | True_API_Blend - Naive_Vol_Avg_API | -0.62° API | - **Formula (Exact Specific-Gravity-Routed Blended API Formula)**: `=LET(ap_1, B2, vl_1, B3, ap_2, B4, vl_2, B5, IF(OR(ap_1 < 0, vl_1 < 0, ap_2 < 0, vl_2 < 0, vl_1 + vl_2 <= 0), "Invalid Crude Blend", LET(sg_1, 141.5 / (ap_1 + 131.5), sg_2, 141.5 / (ap_2 + 131.5), sg_b, (vl_1 * sg_1 + vl_2 * sg_2) / (vl_1 + vl_2), ROUND(141.5 / sg_b - 131.5, 2))))` - **Formula (Linear-API Averaging Error Audit Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - (B3 * B2 + B5 * B4) / (B3 + B5), 2))` ### CRUSADE In-Hospital Major Bleeding Score for NSTEMI (1–96) - **URL**: https://sheets.arte-soft.com/en/learn/crusade-in-hospital-major-bleeding-score-nstemi-anticoagulation/ - **Summary**: Calculate Sumeet Subherwal’s 8-domain CRUSADE Bleeding Risk Score (1–96 points across Hematocrit, CrCl, Heart Rate, Sex, CHF Signs, Prior Vascular Disease, Diabetes, and Systolic BP) to tailor radial access and antithrombotic dosing in NSTEMI. *Table — Balance ischemic plaque protection against major NSTEMI hemorrhage!:* | CRUSADE Bleeding Quintile (1–96 Points) | In-Hospital Major Bleed Rate | Cath-Lab & Antithrombotic Strategy | | --- | --- | --- | | Very Low (<= 20) / Low (21–30) | 3.1% / 5.5% | Standard Radial Access & Guideline DAPT | | Moderate Risk (31–40 Points) | 8.6% | Strict Weight/CrCl Heparin Dosing + PPI | | High (41–50) / Very High (> 50, e.g., 64) | 11.9% / 19.5% | Mandatory Radial Access, Bivalirudin/Fondaparinux Check & Avoid GP IIb/IIIa | - **Formula (Total 8-Variable CRUSADE Bleeding Risk Score (1–96 Points))**: `=IF(OR(B2 < 0, B2 > 9, B3 < 1, B3 > 39, B4 < 0, B4 > 11, B5 < 1, B5 > 10, B6 < 0, B6 > 1, B7 < 0, B7 > 1, B8 < 0, B8 > 1, B9 < 0, B9 > 1), "Invalid CRUSADE Subscore", B2 + B3 + B4 + B5 + 8 * B6 + 7 * B7 + 6 * B8 + 6 * B9)` - **Formula (CRUSADE In-Hospital Major Bleeding Quintile & Cath-Lab Strategy)**: `=IF(OR(B2 < 0, B2 > 9, B3 < 1, B3 > 39, B4 < 0, B4 > 11, B5 < 1, B5 > 10, B6 < 0, B6 > 1, B7 < 0, B7 > 1, B8 < 0, B8 > 1, B9 < 0, B9 > 1), "Invalid CRUSADE Subscore", IF((B2 + B3 + B4 + B5 + 8 * B6 + 7 * B7 + 6 * B8 + 6 * B9) > 50, "Very High Bleed Risk (CRUSADE > 50: ~19.5%) — Radial Access, PPI & Avoid GP IIb/IIIa", IF((B2 + B3 + B4 + B5 + 8 * B6 + 7 * B7 + 6 * B8 + 6 * B9) > 40, "High Bleed Risk (CRUSADE 41-50: ~11.9%) — Radial Access & Renal Dose Check", IF((B2 + B3 + B4 + B5 + 8 * B6 + 7 * B7 + 6 * B8 + 6 * B9) > 30, "Moderate Bleed Risk (CRUSADE 31-40: ~8.6%)", IF((B2 + B3 + B4 + B5 + 8 * B6 + 7 * B7 + 6 * B8 + 6 * B9) > 20, "Low Bleed Risk (CRUSADE 21-30: ~5.5%)", "Very Low Bleed Risk (CRUSADE <= 20: ~3.1%)")))))` ### Cryogenic Air Separation Unit (ASU) Oxygen & Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/cryogenic-air-separation-unit-asu-oxygen-purity-argon-recovery-and-kwh/ - **Summary**: Calculate Cryogenic ASU Dry-Air Intake Flow (Nm³/hr), Daily Pure Oxygen Tonnage (t/day), Main Air Compressor Power (MW), and Total Pipeline GOX Electrical Load (MW). *Table — Account for 20.95% dry-air oxygen fraction AND distillation recovery—never 100% O2 capture!:* | Cryogenic ASU Plant KPI (40,224 Nm³/hr GOX, 96% Recovery, 0.40+0.15 kWh/Nm³) | Formula | Verified Output | | --- | --- | --- | | Dry Air Intake Required (Nm³/hr) | GOX_Nm3_hr / (0.2095 * O2_Recovery) | 200,000.00 Nm³/hr (213,333.33 @ 90%) | | Daily Oxygen Tonnage (t/day) | GOX_Nm3_hr * 1.429 * 24 / 1000 | 1,379.52 t/day | | Main Air Compressor Load (MW) | GOX_Nm3_hr * MAC_kWh_Nm3 / 1000 | 16.09 MW | | Total ASU + Booster Power (MW) | GOX_Nm3_hr * (MAC_kWh + Boost_kWh) / 1000 | 22.12 MW | - **Formula (Cryogenic ASU Dry-Air Intake & Compressor MW Formula)**: `=LET(gx_q, B2, rc_o, B3, mc_k, B4, bs_k, B5, IF(OR(gx_q <= 0, rc_o <= 0.5, rc_o > 1, mc_k <= 0, bs_k < 0), "Invalid ASU Plant Input", ROUND(gx_q / (0.2095 * rc_o), 2)))` - **Formula (High-Argon Recovery O2 Slippage Check (Set Column O2 Recovery = 0.90))**: `=IF(ISTEXT(E2), E2, ROUND(B2 * (B4 + B5) / 1000, 2))` ### CT Hounsfield Unit (HU) & Display Window Grayscale Formula - **URL**: https://sheets.arte-soft.com/en/learn/ct-linear-attenuation-coefficient-to-hounsfield-unit-hu-calibration-formula/ - **Summary**: Calculate Calibrated Hounsfield Unit HU = 1000*(mu_x - mu_water)/(mu_water - mu_air), Lower/Upper Display Window Bounds, and 8-Bit Monitor Grayscale Intensity (0–255). *Table — How a 5% X-ray attenuation bump maps acute brain hemorrhage from +35 HU gray matter to +52 HU bright white!:* | CT Phantom & Brain Window KPI (mu_x=0.202, mu_w=0.192, mu_a=0.0002, WL=40, WW=80) | Formula | Verified Output | | --- | --- | --- | | Calibrated CT Number (HU) | 1000 * (mu_x - mu_w) / (mu_w - mu_air) | +52.14 HU (+980.19 HU @ 0.380 bone) | | Display Window Floor (HU) | Window_Level_WL - Window_Width_WW / 2 | 0.00 HU | | Display Window Ceiling (HU) | Window_Level_WL + Window_Width_WW / 2 | 80.00 HU | | 8-Bit Monitor Grayscale (0–255) | MIN(255, MAX(0, ((HU - Floor)/WW)*255)) | 166.2 (255.0 clipped @ 0.380 bone!) | - **Formula (ACR Phantom Hounsfield Calibration & 8-Bit Window-Level Mapping Formula)**: `=LET(mu_x, B2, mu_w, B3, mu_a, B4, wl_c, B5, ww_s, B6, IF(OR(mu_x < 0, mu_a < 0, mu_w <= mu_a, ww_s < 1), "Invalid CT Input", LET(hu_v, 1000 * ((mu_x - mu_w) / (mu_w - mu_a)), fl_w, wl_c - ww_s / 2, ROUND(MIN(255, MAX(0, ((hu_v - fl_w) / ww_s) * 255)), 1))))` - **Formula (Cortical Skull Bone Saturation Clipping Check (Set Voxel mu_x = 0.3800 cm^-1))**: `=IF(ISTEXT(E5), E5, ROUND(1000 * ((B2 - B3) / (B3 - B4)), 2))` ### Cube root and nth root formula: positive and negative numbers - **URL**: https://sheets.arte-soft.com/en/learn/cube-root-and-nth-root-formula/ - **Summary**: Raise numbers to fractional exponent ^(1/n) for any root degree, and pair SIGN with ABS for negative odd roots. *Table — Fractional exponents ^(1/3) and ^(1/n):* | Value (A) | RootDegree (B) | Formula Pattern | Exact Root | | --- | --- | --- | --- | | 125 | 3 | ROUND(A2^(1/B2), 6) | 5 | | 81 | 4 | ROUND(A3^(1/B3), 6) | 3 | | -27 | 3 | SIGN(A4)*ROUND(ABS(A4)^(1/B4), 6) | -3 | - **Formula (Safe negative odd roots and even-root domain errors)**: `=ROUND(A2 ^ (1 / B2), 6)` - **Formula (Negative cube root and negative square root (#NUM!))**: `=SIGN(A4) * ROUND(ABS(A4) ^ (1 / B4), 6)` ### Calculate cumulative loan interest and principal for any year or period range - **URL**: https://sheets.arte-soft.com/en/learn/cumulative-loan-interest-and-principal/ - **Summary**: Compute exact Year-1, Year-2, or full-term principal and interest paid from remaining FV balances—without a 360-row schedule. *Table — Exact cumulative principal and interest via FV balance difference:* | Window | StartPer..EndPer | Total Cash Paid | Principal Paid | Interest Paid | | --- | --- | --- | --- | --- | | Year 1 | 1..12 | 4639.87 | 3536.06 | 1103.81 | | Year 2 | 13..24 | 4639.87 | 3754.16 | 885.71 | | Full Term | 1..60 | 23199.36 | 20000.00 | 3199.36 | - **Formula (Cumulative interest and principal formulas with LET)**: `=LET(periodRate, B2/12, pmt, PMT(periodRate, C2, A2), princ, FV(periodRate, E2, pmt, A2) - FV(periodRate, D2-1, pmt, A2), ROUND(-(E2 - D2 + 1) * pmt - princ, 2))` - **Formula (Cumulative principal repaid formula)**: `=LET(periodRate, B2/12, pmt, PMT(periodRate, C2, A2), ROUND(FV(periodRate, E2, pmt, A2) - FV(periodRate, D2-1, pmt, A2), 2))` ### Cumulative Loan Principal & Interest Paid Between Two Periods (FV & PMT) - **URL**: https://sheets.arte-soft.com/en/learn/cumulative-loan-principal-and-interest-cumprinc-cumipmt/ - **Summary**: Calculate exact cumulative principal and cumulative interest paid between any start period s and end period e without building a 360-row amortization schedule using FV balance differences. *Table — Compute multi-period principal & tax-deductible interest in a single cell!:* | Loan Window ($100k, 6% APR, 60m) | Start Balance | End Balance | Principal Paid / Interest Paid | | --- | --- | --- | --- | | Year 1 (Months 1–12) | $100,000.00 | $82,319.68 | $17,680.32 / $5,519.05 | | Year 2 (Months 13–24) | $82,319.68 | $63,549.49 | $18,770.19 / $4,429.17 | | Full Term (Months 1–60) | $100,000.00 | $0.00 | $100,000.00 / $15,996.81 | - **Formula (Cumulative Principal Paid Between Period s (B5) and Period e (B6))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 1, B6 < B5, B6 > B4), "Invalid Period Window", ROUND(FV(B3 / 12, B6, PMT(B3 / 12, B4, B2), B2) - FV(B3 / 12, B5 - 1, PMT(B3 / 12, B4, B2), B2), 2))` - **Formula (Cumulative Interest Paid Between Period s (B5) and Period e (B6))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 1, B6 < B5, B6 > B4), "Invalid Period Window", ROUND((B6 - B5 + 1) * (-PMT(B3 / 12, B4, B2)) - (FV(B3 / 12, B6, PMT(B3 / 12, B4, B2), B2) - FV(B3 / 12, B5 - 1, PMT(B3 / 12, B4, B2), B2)), 2))` ### Cumulative (expanding) average formula: AVERAGE($B$2:B5) - **URL**: https://sheets.arte-soft.com/en/learn/cumulative-rolling-expanding-average-formula/ - **Summary**: Track season-to-date or year-to-date running averages with an expanding range $B$2:B2 that locks row 2 and grows automatically as you copy down. *Table — Cumulative expanding average vs fixed-window moving average:* | Month (A) | Burn $k (B) | Expanding Range | Cumulative Avg | | --- | --- | --- | --- | | Jan | 80 | $B$2:B2 | 80.00 | | Feb | 100 | $B$2:B3 | 90.00 | | Mar | 90 | $B$2:B4 | 90.00 | | Apr | 130 | $B$2:B5 | 100.00 (vs 2-mo MA = 110) | - **Formula (Blank-safe cumulative average formula)**: `=IF(COUNT(B5:B5)=0, "", ROUND(AVERAGE($B$2:B5), 2))` - **Formula (Compare expanding YTD average vs latest 2-month average)**: `=ROUND(AVERAGE(B4:B5) - AVERAGE($B$2:B5), 2)` ### Running Cumulative Balance, Compound Wealth Index, and High-Water Mark (SCAN & REDUCE Formulas) - **URL**: https://sheets.arte-soft.com/en/learn/cumulative-running-balance-and-compound-index-scan-reduce-formulas/ - **Summary**: Generate step-by-step intermediate accumulator states (running cash balance, compounded wealth index, and running high-water mark) alongside terminal totals. *Table — Intermediate state trajectories (SCAN) vs. terminal state (REDUCE):* | Period | Net Cash Flow | Running Cash (SCAN) | Periodic Return | Wealth Index (Base 100) | | --- | --- | --- | --- | --- | | P1 | +250 | 1,250 | +10.0% | 110.000 | | P2 | -180 | 1,070 | -5.0% | 104.500 (HWM = 110) | | P3 | +320 | 1,390 | +8.0% | 112.860 | | P4 | -90 | 1,300 (Terminal) | +5.0% | 118.503 (Terminal) | - **Formula (Anchored Expanding Cash Balance & Terminal REDUCE Check)**: `=$G$2 + SUM($B$2:B5)` - **Formula (Compounded Wealth Index & Running High-Water Mark)**: `=MAX(E2:E5)` ### Cunningham RMR Formula (1980 & 1991): Fat-Free Mass Athlete Metabolic Rate Calculator - **URL**: https://sheets.arte-soft.com/en/learn/cunningham-lean-body-mass-resting-metabolic-rate-athlete-formula/ - **Summary**: Calculate athletic Resting Metabolic Rate from body-composition Fat-Free Mass FFM = Weight * (1 - BodyFat% / 100) using John J. Cunningham’s classic 1980 athlete equation (500 + 22 * FFM_kg) and 1991 general LBM equation (370 + 21.6 * FFM_kg). *Table — Why sports dietitians use Cunningham’s Fat-Free Mass equations instead of BMI/weight equations in athletes!:* | Cunningham Equation Variant (80 kg Athlete at 12.5% Body Fat -> FFM = 70.0 kg) | Formula | Evaluated Daily kcal | | --- | --- | --- | | Fat-Free Mass FFM (kg) | Weight_kg * (1 - BodyFat_% / 100) | 70.00 kg | | Cunningham (1980) Athlete RMR (ACSM Preferred) | 500 + 22 * FFM_kg | 2,040 kcal/day | | Cunningham (1991) General FFM RMR | 370 + 21.6 * FFM_kg | 1,882 kcal/day | | Total Daily Energy Expenditure (PAL = 1.75x RMR_1980) | RMR_1980 * PAL | 3,570 kcal/day | - **Formula (Cunningham (1980) Athlete Resting Metabolic Rate: 500 + 22 * FFM_kg (kcal/day))**: `=IF(OR(B2 < 30, B2 > 250, B3 < 2, B3 > 65), "Invalid Body Mass or Body-Fat Percentage", ROUND(500 + 22 * (B2 * (1 - B3 / 100)), 0))` - **Formula (Cunningham (1991) General Fat-Free Mass RMR: 370 + 21.6 * FFM_kg (kcal/day))**: `=IF(OR(B2 < 30, B2 > 250, B3 < 2, B3 > 65), "Invalid Body Mass or Body-Fat Percentage", ROUND(370 + 21.6 * (B2 * (1 - B3 / 100)), 0))` ### CURB-65 and qSOFA: separate score formulas with boundary tests - **URL**: https://sheets.arte-soft.com/en/learn/curb-65-pneumonia-severity-and-qsofa-sepsis-score/ - **Summary**: Practice IF and OR using fictional CURB-65 and qSOFA inputs, explicit units and separate mental-status criteria. - **Formula (CURB-65: use urea in mmol/L and count pressure only once)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),B3<=0,B4<=0,B5<=0,B6<=0,B7<18,B7<>INT(B7)),"Invalid inputs",B2+IF(B3>7,1,0)+IF(B4>=30,1,0)+IF(OR(B5<90,B6<=60),1,0)+IF(B7>=65,1,0)))` - **Formula (qSOFA: use a separate GCS input)**: `=IF(OR(COUNT(B4:B5)<>2,COUNT(B8)<>1),"Invalid inputs",IF(OR(B8<3,B8>15,B8<>INT(B8),B4<=0,B5<=0),"Invalid inputs",IF(B8<15,1,0)+IF(B4>=22,1,0)+IF(B5<=100,1,0)))` ### Curie-Weiss Paramagnetic Susceptibility & Effective Bohr Magneton (mu_eff) - **URL**: https://sheets.arte-soft.com/en/learn/curie-weiss-paramagnetic-susceptibility-and-effective-bohr-magneton/ - **Summary**: Calculate molar magnetic susceptibility chi_m = C / (T - theta_CW) above magnetic ordering temperatures and extract unpaired d/f-electron effective moment mu_eff = SQRT(8 * C_cgs) in Bohr magnetons (mu_B). *Table — Count unpaired transition-metal electrons and exchange sign from SQUID magnetometry!:* | Magnetic Exchange Regime (Cm = 1.25 emu*K/mol, T = 300 K) | Weiss Temp thetaCW (K) | Molar Susceptibility chim (emu/mol) | Effective Moment mueff (muB) | | --- | --- | --- | --- | | Ferromagnetic Exchange Short-Range | +120 K (T > thetaCW) | 0.00694 emu/mol | 3.162 mu_B | | Antiferromagnetic Superexchange | -60 K | 0.00347 emu/mol | 3.162 mu_B (Same Local Spin) | | Below Ordering Temp (T <= thetaCW) | Spontaneous Ordering | "Below Paramagnetic Regime" | Curie-Weiss Divergence Guard | - **Formula (Curie-Weiss Molar Paramagnetic Susceptibility chi_m = C_m / (T - theta_CW))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 <= B4), "Below Paramagnetic Regime", ROUND(B2 / (B3 - B4), 5))` - **Formula (Effective Magnetic Moment per Ion mu_eff (Bohr Magnetons) = SQRT(8 * C_m))**: `=IF(B2 <= 0, "Below Paramagnetic Regime", ROUND(SQRT(8 * B2), 3))` ### Currency conversion formula: cross-currency FX table with XLOOKUP - **URL**: https://sheets.arte-soft.com/en/learn/currency-conversion-table-xlookup/ - **Summary**: Convert between any pair of currencies (EUR to USD, EUR to GBP, JPY to EUR) from a single USD-anchored FX table—no N-by-N matrix needed. *Table — Convert any currency pair from a single 1-column FX table:* | Curr (A) | ToUsd (B) | Example Conversion | | --- | --- | --- | | USD | 1 | 1000 EUR -> USD = 1080.00 | | EUR | 1.08 | 1000 EUR -> GBP = 850.39 | | GBP | 1.27 | 1000 EUR -> EUR = 1000.00 | | JPY | 0.0065 | | - **Formula (Triangulated cross-rate formula)**: `=LET(fromR, XLOOKUP(D2, A2:A5, B2:B5), toR, XLOOKUP(E2, A2:A5, B2:B5), IF(OR(ISNA(fromR), ISNA(toR)), "Missing FX", ROUND(C2 * fromR / toR, 2)))` - **Formula (Implied cross-rate check (EUR / GBP))**: `=ROUND(XLOOKUP(D2, A2:A5, B2:B5) / XLOOKUP("GBP", A2:A5, B2:B5), 4)` ### Build an ISNOTERROR Formula Gate (NOT(ISERROR)) for Pre-Publish Workbook Checks - **URL**: https://sheets.arte-soft.com/en/learn/custom-isnoterror-validation-gate-and-clean-row-pass-rate/ - **Summary**: Construct the missing ISNOTERROR predicate with NOT(ISERROR(cell)) to score clean-row pass rates, block broken model tabs from release, and coordinate team sign-off. *Table — Why spreadsheets have ISERROR and IFERROR—but no built-in ISNOTERROR:* | Evaluated Cell C | Underlying Result | ISERROR(C) | NOT(ISERROR(C)) | | --- | --- | --- | --- | | =120 / 4 | 30 | FALSE | TRUE | | =90 / 0 | #DIV/0! | TRUE | FALSE | | =150 / 5 | 30 | FALSE | TRUE | | =XLOOKUP("X", A2:A4, B2:B4) | #N/A | TRUE | FALSE | - **Formula (Row-Level ISNOTERROR Predicate & Clean Pass Rate)**: `=NOT(ISERROR(C2))` - **Formula (Collaborative Pre-Publish Sign-Off Gate)**: `=IF(COUNTIF(D2:D5, TRUE) = ROWS(D2:D5), "Publish_Ready", "Fix_Errors_First")` ### Custom sort order with formula: rank Critical, High, Medium, Low using SORTBY - **URL**: https://sheets.arte-soft.com/en/learn/custom-sort-list-with-formula/ - **Summary**: Map non-alphabetical status labels to a custom priority table with XMATCH and sort rows automatically via SORTBY. *Table — Why alphabetical sorting scrambles severity and shirt sizes:* | Ticket (A) | Priority (B) | RankKey (C) | CustomList (E) | | --- | --- | --- | --- | | T-101 | High | 2 | Critical | | T-102 | Critical | 1 | High | | T-103 | Low | 4 | Medium | | T-104 | Medium | 3 | Low | - **Formula (Map priority rank with IFNA(XMATCH(...), 99) and sort)**: `=TEXTJOIN(", ", TRUE, CHOOSECOLS(SORTBY(A2:B5, C2:C5, 1), 1))` - **Formula (Check unlisted priority fallback)**: `=IFNA(XMATCH(B2, $E$2:$E$5), 99)` ### Custom 1-letter ("MTWRFSU") & 2-letter weekday abbreviations (WEEKDAY, MID & CHOOSE) - **URL**: https://sheets.arte-soft.com/en/learn/custom-weekday-single-letter-and-short-abbreviations/ - **Summary**: Map numeric dates to explicitly chosen one- or two-letter weekday labels, independently of localized weekday names. *Table — Choose an explicit weekday-label convention:* | Calendar Date (A) | WEEKDAY(A, 2) | 1-Letter Academic Code | 2-Letter Gantt Code | | --- | --- | --- | --- | | 2026-10-26 (Mon) | 1 | "M" | "Mo" | | 2026-10-29 (Thu) | 4 | "R" (Distinct from Tue "T"!) | "Th" | | 2026-10-31 (Sat) | 6 | "S" | "Sa" | | 2026-11-01 (Sun) | 7 | "U" (Distinct from Sat "S"!) | "Su" | - **Formula (One-letter labels using an explicit MTWRFSU legend)**: `=IF(ISNUMBER(A3),IF(OR(A3DATE(9999,12,31),A3<>INT(A3)),"Invalid date",MID("MTWRFSU", WEEKDAY(A3, 2), 1)),"Invalid date")` - **Formula (Locale-independent 2-letter (or custom language) code via CHOOSE)**: `=IF(ISNUMBER(A3),IF(OR(A3DATE(9999,12,31),A3<>INT(A3)),"Invalid date",CHOOSE(WEEKDAY(A3, 2), "Mo", "Tu", "We", "Th", "Fr", "Sa", "Su")),"Invalid date")` ### Customer Lifetime Value (LTV), LTV:CAC ratio, and CAC Payback formula - **URL**: https://sheets.arte-soft.com/en/learn/customer-lifetime-value-ltv-cac-payback-formula/ - **Summary**: Calculate gross-margin-adjusted Customer Lifetime Value (ARPU * GrossMargin / Churn), LTV:CAC ratio, and months to recover Customer Acquisition Cost. *Table — A simplified gross-margin LTV model:* | Metric | Input / Formula | Result | | --- | --- | --- | | Monthly Gross Profit / Cust | $120 ARPU * 80% GM | $96.00 / mo | | Expected Customer Lifespan | 1 / 4% Monthly Churn | 25.0 months | | Gross-Margin LTV | $96.00 / 0.04 | $2,400.00 | | LTV:CAC & Payback ($800 CAC) | $2,400 / $800 \| $800 / $96 | 3.00x \| 8.33 mos | - **Formula (Gross-margin LTV, LTV:CAC, and Payback Month formulas)**: `=IF(OR(C2<=0,C2>1), "Invalid churn", ROUND((A2 * B2) / C2, 2))` - **Formula (CAC Payback period in months)**: `=ROUND(D2 / (A2 * B2), 2)` ### Flag customers as New vs Returning on every order row - **URL**: https://sheets.arte-soft.com/en/learn/customer-new-vs-returning-flag/ - **Summary**: Compare each order date against MINIFS earliest purchase date per customer so unsorted order exports still classify accurately. *Table — Why MINIFS on OrderDate beats expanding COUNTIF($A$2:A2, A2)=1:* | CustomerId (A) | OrderDate (B) | Earliest Date | Cohort Flag | | --- | --- | --- | --- | | C-101 | 2026-01-12 | 2026-01-12 | New | | C-102 | 2026-02-03 | 2026-02-03 | New | | C-101 | 2026-03-18 | 2026-01-12 | Returning | - **Formula (Sort-independent New vs Returning formula)**: `=IF(B2 = MINIFS($B$2:$B$4, $A$2:$A$4, A2), "New", "Returning")` - **Formula (Backdated historical order test)**: `=IF(B4 = MINIFS($B$2:$B$4, $A$2:$A$4, A4), "New", "Returning")` ### Cyclotron Frequency, Larmor Gyroradius & MRI Proton Larmor Frequency - **URL**: https://sheets.arte-soft.com/en/learn/cyclotron-gyromagnetic-frequency-and-larmor-gyroradius/ - **Summary**: Calculate charged-particle Cyclotron Frequency f_c = |q| * B / (2 * PI() * m) (MHz), magnetic Larmor Gyroradius r_L = (m * v_perp) / (|q| * B) (mm), and 1H MRI nuclear Larmor resonance (42.577 MHz/T). *Table — Design particle cyclotrons, tokamak plasma confinement, and 3T MRI RF coils!:* | Magnetic System (Field B = 3.0 Tesla) | Formula | Calculated Value | Engineering Role | | --- | --- | --- | --- | | Proton Orbital Cyclotron f_c | (\|q\| * B / (2*PI()*m_p)) / 1e6 | 45.736 MHz | RF dee accelerator frequency | | Proton Larmor Radius (v = 2e6 m/s) | (m_p * v / (\|q\| * B)) * 1000 | 6.960 mm | Magnetic confinement radius | | 1H Spin MRI Larmor Resonance | 42.57748 * B | 127.73 MHz (63.87 MHz at 1.5 T) | MRI RF transmit/receive tune | - **Formula (Charged-Particle Cyclotron Frequency f_c (MHz))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Charge, Mass & Field Must Be > 0", ROUND(((B2 * B4) / (2 * PI() * B3)) / 1000000, 3))` - **Formula (Larmor Gyroradius r_L (mm) & 1H MRI Spin Resonance (MHz))**: `=IF(OR(B2 <= 0, B4 <= 0), "Charge & Field Must Be > 0", ROUND(((B3 * B5) / (B2 * B4)) * 1000, 3))` ### Deep-Drawing Cup Blank Diameter, Draw Ratio & Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/cylindrical-cup-deep-drawing-blank-diameter-draw-ratio-and-punch-tonnage/ - **Summary**: Calculate Surface-Area-Conserved Circular Blank Diameter D_b (mm), Actual Draw Ratio beta = D_b / d_p, Siebel Punch Drawing Force (kN), and First-Draw LDR Tear Check. *Table — Push Draw Ratio beta = Db / dp past the ~2.10 Limiting Drawing Ratio and the cup bottom tears clean off!:* | Deep-Drawing Cup KPI (dp=80 mm, h=55 mm, T=1.5 mm, UTS=320 MPa, LDR=2.10) | Formula | Verified Output | | --- | --- | --- | | Initial Blank Diameter Db (mm) | SQRT(dp^2 + 4 * dp * Cup_Height_h) | 154.92 mm (183.30 mm @ h = 85 mm) | | Actual Draw Ratio beta (Db / dp) | Blank_Diameter_Db / Punch_Diam_dp | 1.936 (2.291 @ h = 85 mm!) | | Siebel Punch Draw Force (kN) | (PI() * dp * T * UTS * (beta - 0.7))/1000 | 149.17 kN (191.97 kN @ h = 85 mm) | | First-Draw Tear Limit Check | beta <= LDR_Max (2.10) | SINGLE-DRAW SAFE (REDRAW @ h=85!) | - **Formula (Area-Conserved Blank Diameter, Draw Ratio & LDR Feasibility Formula)**: `=LET(dp_m, B2, ch_m, B3, th_m, B4, ut_m, B5, ld_r, B6, IF(OR(dp_m <= 5, ch_m <= 0, th_m <= 0, ut_m < 60, ut_m > 1200, ld_r < 1.6, ld_r > 2.5), "Invalid Deep-Draw Input", LET(db_m, SQRT((dp_m ^ 2) + 4 * dp_m * ch_m), bt_r, db_m / dp_m, IF(bt_r <= ld_r, "SINGLE-DRAW SAFE", "EXCEEDS LDR (NEEDS REDRAW)"))))` - **Formula (Tall 85 mm Cylindrical Can Wall-Tear Redraw Check (Set Cup Height h = 85.0 mm))**: `=IF(ISTEXT(E2), E2, LET(db_m, SQRT((B2 ^ 2) + 4 * B2 * B3), bt_r, db_m / B2, ROUND((PI() * B2 * B4 * B5 * (bt_r - 0.7)) / 1000, 2)))` ### Czochralski Silicon Ingot Dopant Segregation Profile Formula - **URL**: https://sheets.arte-soft.com/en/learn/czochralski-crystal-growth-normal-freezing-segregation-dopant-profile-formula/ - **Summary**: Calculate Seed-End Crystal Dopant Concentration C_s(0), Solidified-Fraction Ingot Concentration C_s(g), Enriched Crucible Melt Concentration C_L(g), and Tail-to-Seed Resistivity Drift Ratio. *Table — Why N-type Phosphorus Czochralski boules drift 2.85x in doping from seed to tail—while P-type Boron stays flat!:* | Czochralski Ingot KPI (C0 = 10e15 cm^-3, Phosphorus k0 = 0.35, g = 0.80) | Formula | Verified Output | | --- | --- | --- | | Seed-End Ingot Doping Cs(0) | k0 * Initial_Melt_C0 | 3.50 (8.00 @ Boron k0 = 0.80) | | Ingot Doping Cs(g) at g = 80% | k0 * C0 * ((1 - g)^(k0 - 1)) | 9.96 (11.04 @ Boron k0 = 0.80) | | Remaining Melt CL(g) at g = 80% | C0 * ((1 - g)^(k0 - 1)) | 28.47 (13.80 @ Boron k0 = 0.80) | | Tail-to-Seed Drift Ratio Cs(g)/Cs(0) | (1 - g)^(k0 - 1) | 2.85x (1.38x @ Boron k0 = 0.80!) | - **Formula (Czochralski Normal-Freezing Axial Dopant Concentration Formula)**: `=LET(c0_m, B2, k0_s, B3, gf_r, B4, IF(OR(c0_m <= 0, k0_s <= 0.0001, k0_s > 2, gf_r < 0, gf_r >= 0.99), "Invalid Cz Pull Input", ROUND(k0_s * c0_m * ((1 - gf_r) ^ (k0_s - 1)), 2)))` - **Formula (P-Type Boron Tight Axial Resistivity Comparison Check (Set Boron k_0 = 0.80))**: `=IF(ISTEXT(E3), E3, ROUND((1 - B4) ^ (B3 - 1), 2))` ### Daganzo Milk-Run Vehicle Routing Length Formula - **URL**: https://sheets.arte-soft.com/en/learn/daganzo-continuous-approximation-milk-run-vehicle-routing-length-formula/ - **Summary**: Estimate multi-stop fleet tour mileage using Carlos Daganzo’s (1984) continuous approximation L_fleet = 2 * r_stem * m_tours + k_tsp * SQRT(N_stops * Area) and quantify consolidation savings. *Table — Estimate fleet delivery mileage in seconds without solving an NP-hard VRP!:* | Milk-Run Fleet Design Metric (N=36, A=64 km^2, r=30 km, C_max=12, k=0.75) | Formula | Verified Output | | --- | --- | --- | | Direct Unconsolidated LTL Mileage | 2 * r_stem * N_stops | 2,160.00 km | | Consolidated Milk-Run Fleet Mileage | 2*r_stem*ROUNDUP(N/C_max,0) + k_tsp*SQRT(N*A) | 216.00 km (180 Stem + 36 Local) | | Consolidation Distance Reduction | (L_direct - L_fleet) / L_direct | 0.9000 (90.00% Saved) | | Average Fleet Distance per Stop | L_fleet / N_stops | 6.00 km / stop | - **Formula (Daganzo (1984) Multi-Vehicle Milk-Run Tour Length Formula)**: `=LET(n_st, B2, ar_z, B3, r_sm, B4, c_mx, B5, k_rt, B6, IF(OR(n_st < 1, ar_z <= 0, r_sm < 0, c_mx < 1, k_rt <= 0), "Invalid Milk-Run Input", LET(m_tr, ROUNDUP(n_st / c_mx, 0), ROUND(2 * r_sm * m_tr + k_rt * SQRT(n_st * ar_z), 2))))` - **Formula (Consolidation Mileage Savings Ratio & Per-Stop Distance Formula)**: `=IF(OR(ISTEXT(E3), E2 <= 0), "Invalid Milk-Run Input", ROUND((E2 - E3) / E2, 4))` ### HTST Pasteurization Holding-Tube Fastest-Particle Formula - **URL**: https://sheets.arte-soft.com/en/learn/dairy-htst-pasteurization-holding-tube-reynolds-laminar-vs-turbulent-time/ - **Summary**: Calculate Sanitary Holding-Tube Mean Bulk Velocity (m/s), Reynolds Number Re, Laminar (2.0x) vs Turbulent (1.22x) Fastest-Particle Residence Time (s), and FDA PMO 15-Second Legal Compliance. *Table — Switch an HTST pasteurizer from turbulent fluid milk to viscous ice-cream mix at the same pump rate and centerline velocity jumps to 2x—cutting legal hold time below 15 seconds!:* | FDA PMO HTST Holding-Tube KPI (5,400 L/h, ID=47.5 mm, L=18.5 m, mu=1.45 mPa·s) | Formula | Verified Output | | --- | --- | --- | | Mean Bulk Velocity v_avg (m/s) | (Q_L_hr / 3600000) / ((PI()/4)*(ID_m^2)) | 0.846 m/s | | Holding-Tube Reynolds Number Re | (rho * v_avg * ID_m) / (mu_mPa_s / 1000) | 28,506 (1,181 laminar @ 35 mPa·s mix!) | | Fastest-Particle Hold Time (sec) | Length_m / (IF(Re<2100, 2.0, 1.22)*v_avg) | 17.91 s (10.93 s ILLEGAL @ 35 mPa·s!) | | FDA PMO >= 15.0 s Legal Audit | Fastest_Hold_sec >= 15.0 | PMO >= 15s LEGAL PASS | - **Formula (Hagen-Poiseuille Laminar vs Turbulent HTST Fastest-Particle Hold Time Formula)**: `=LET(qf_l, B2, id_m, B3, ln_m, B4, rh_k, B5, mu_c, B6, IF(OR(qf_l <= 0, id_m <= 5, ln_m <= 0, rh_k <= 500, mu_c <= 0), "Invalid HTST Input", LET(dm_t, id_m / 1000, ar_t, (PI() / 4) * (dm_t ^ 2), va_s, (qf_l / 3600000) / ar_t, re_n, (rh_k * va_s * dm_t) / (mu_c / 1000), vm_x, IF(re_n < 2100, 2 * va_s, 1.22 * va_s), tm_s, ln_m / vm_x, IF(tm_s >= 15, "PMO >= 15s LEGAL PASS", "ILLEGAL UNDER-HOLD (<15s)"))))` - **Formula (Viscous Ice-Cream / Eggnog Mix Laminar Transition Trap Check (Set Viscosity mu = 35.0 mPa·s))**: `=IF(ISTEXT(E2), E2, LET(dm_t, B3 / 1000, ar_t, (PI() / 4) * (dm_t ^ 2), va_s, (B2 / 3600000) / ar_t, re_n, (B5 * va_s * dm_t) / (B6 / 1000), vm_x, IF(re_n < 2100, 2 * va_s, 1.22 * va_s), ROUND(B4 / vm_x, 2)))` ### Dalton partial pressure and Henry equilibrium concentration formulas - **URL**: https://sheets.arte-soft.com/en/learn/daltons-law-partial-pressure-and-henrys-law-solubility/ - **Summary**: Calculate ideal-mixture partial pressure and dilute-solution equilibrium concentration with an explicitly defined Henry solubility coefficient. *Table — Keep pressure units and the Henry coefficient convention consistent:* | Quantity | At P=3 atm, y=0.32 | At P=5 atm, y=0.32 | | --- | --- | --- | | Partial pressure | 0.96 atm | 1.60 atm | | Equilibrium concentration using the supplied coefficient | 39.94 mg/L | 66.56 mg/L | - **Formula (Dalton's Law Component Partial Pressure P_i = y_i * P_total)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<0,B3<0,B3>1),"Invalid inputs",ROUND(B3*B2,4)))` - **Formula (Henry's Law Dissolved Gas Concentration in mg/L = k_H * P_i * MolarMass * 1000)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<0,B3>1,B4<=0,B5<=0),"Invalid inputs",ROUND(B4*B3*B2*B5*1000,2)))` ### Damköhler Number (Da): Isothermal First-Order CSTR vs. PFR Conversion - **URL**: https://sheets.arte-soft.com/en/learn/damkohler-number-da-cstr-vs-pfr-reactor-conversion-formula/ - **Summary**: Calculate the first-order reactor Damköhler number Da = k * tau and compare continuous stirred-tank conversion X_CSTR = Da / (1 + Da) against plug-flow conversion X_PFR = 1 - EXP(-Da). *Table — Why a plug-flow tubular reactor beats an equal-volume CSTR at high conversion!:* | Residence Time Scenario (k = 0.25 min^-1) | Damköhler Number Da = k * tau | CSTR Conversion (%) | PFR Conversion (%) | | --- | --- | --- | --- | | Long Residence Time (tau = 12 min) | 3.00 | 75.00% | 95.02% | | Short Residence Time (tau = 2 min) | 0.50 | 33.33% | 39.35% | | Invalid Negative Rate or Residence Time | Guarded Parameter Error | "Invalid Reactor Inputs" | Requires k > 0 and tau >= 0 | - **Formula (Isothermal First-Order CSTR Conversion (%) = 100 * (k * tau) / (1 + k * tau))**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Reactor Inputs", ROUND(100 * ((B2 * B3) / (1 + B2 * B3)), 2))` - **Formula (Isothermal First-Order Plug-Flow (PFR) Conversion (%) = 100 * (1 - EXP(-k * tau)))**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Reactor Inputs", ROUND(100 * (1 - EXP(-(B2 * B3))), 2))` ### Vibration Damping Ratio (zeta), Damped Frequency & Logarithmic Decrement - **URL**: https://sheets.arte-soft.com/en/learn/damping-ratio-zeta-logarithmic-decrement-and-damped-frequency/ - **Summary**: Classify mass-spring-damper dynamics into underdamped, critically damped, and overdamped regimes via zeta = c / (2 * SQRT(k * m)) and compute omega_d and logarithmic decrement. *Table — Free vibration of an ideal linear mass-spring-damper:* | Mechanical Vibration Metric | Formula | m=25 kg, k=3,600 N/m, c=120 N*s/m | c = 600 / c = 750 N*s/m | | --- | --- | --- | --- | | Critical Damping c_c | 2 * SQRT(B3 * B2) | 600 N*s/m | 600 N*s/m | | Damping Ratio zeta | B4 / (2 * SQRT(B3 * B2)) | 0.20 (Underdamped) | 1.00 (Critical) / 1.25 (Over) | | Damped Freq omega_d (rad/s) | SQRT(B3/B2) * SQRT(1 - zeta^2) | 11.7576 rad/s (vs 12.00 omega_n) | No oscillatory frequency | | Logarithmic Decrement delta | 2*PI()*zeta / SQRT(1 - zeta^2) | 1.2825 | N/A for zeta >= 1 | - **Formula (Dimensionless Damping Ratio zeta = c / (2 * SQRT(k * m)))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0),"Invalid inputs",ROUND(B4 / (2 * SQRT(B3 * B2)), 4)))` - **Formula (Damped angular frequency in the oscillatory regime)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0),"Invalid inputs",IF((B4/(2*SQRT(B3*B2)))>=1,"Non-oscillatory",ROUND(SQRT(B3/B2)*SQRT(1-(B4/(2*SQRT(B3*B2)))^2),4))))` - **Formula (Logarithmic decrement for same-sign peaks)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0),"Invalid inputs",IF((B4/(2*SQRT(B3*B2)))>=1,"Not applicable",ROUND(2*PI()*(B4/(2*SQRT(B3*B2)))/SQRT(1-(B4/(2*SQRT(B3*B2)))^2),4))))` - **Formula (Classify the unrounded damping ratio)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0),"Invalid inputs",IF(B4=0,"Undamped",IFS((B4/(2*SQRT(B3*B2)))<1,"Underdamped",(B4/(2*SQRT(B3*B2)))=1,"Critically Damped",TRUE,"Overdamped"))))` ### DAPT Score (Yeh 2016) Prolonged Dual Antiplatelet Therapy Formula (-2 to +10) - **URL**: https://sheets.arte-soft.com/en/learn/dapt-score-yeh-prolonged-dual-antiplatelet-benefit-risk-formula/ - **Summary**: Calculate Robert Yeh’s ACC/AHA-endorsed DAPT Study Score (-2 to +10 points) after 12 event-free months post-coronary stenting—balancing older-age bleeding penalty (-2 or -1) against 8 ischemic stent-thrombosis predictors (+1 or +2) around the >= 2 continuation cutoff. *Table — Weigh late stent-thrombosis protection against major bleeding after 12 event-free months of DAPT!:* | DAPT Score Component (12 Months Post-PCI, Event-Free) | Points Assigned | Clinical Regimen Decision | | --- | --- | --- | | Patient Age (Bleeding Penalty) | >= 75 yr (-2), 65–74 yr (-1), < 65 yr (0) | Total Possible Range: -2 to +10 | | 6 One-Point Ischemic Predictors | Smoking, DM, Index MI, Prior PCI/MI, PES, Stent < 3mm | +1 Point Each | | 2 Two-Point High-Risk Predictors | CHF or LVEF < 30% (+2), Vein Graft PCI (+2) | >= 2 Favor Prolonged DAPT; < 2 Stop at 12m | - **Formula (Total Yeh (2016) DAPT Study Score (-2 to +10 Points))**: `=IF(B2 < 18, "Invalid Adult Age", IF(B2 >= 75, -2, IF(B2 >= 65, -1, 0)) + SUM(B3:B8) + 2 * SUM(B9:B10))` - **Formula (ACC / AHA 12-Month vs. 30-Month DAPT Regimen Recommendation)**: `=IF(B2 < 18, "Invalid Adult Age", IF((IF(B2 >= 75, -2, IF(B2 >= 65, -1, 0)) + SUM(B3:B8) + 2 * SUM(B9:B10)) >= 2, "DAPT Score >= 2: Net Ischemic Benefit — Favor Prolonged DAPT (30 mo)", "DAPT Score < 2: Excess Bleeding Risk — Favor Standard 12-mo Discontinuation"))` ### Darcy's Law Groundwater Flow, Hydraulic Gradient & Pore Seepage Velocity - **URL**: https://sheets.arte-soft.com/en/learn/darcy-groundwater-seepage-velocity-and-hydraulic-gradient/ - **Summary**: Compute signed Darcy discharge, hydraulic gradient, specific discharge and average pore-water velocity under a one-dimensional saturated-flow model. *Table — Distinguish specific discharge from average pore-water velocity:* | Hydrogeology Flow Metric | Formula | Sand Aquifer (K=12 m/d, dh=3m/150m, A=200, ne=0.30) | Flat Water Table (h1 = h2) | | --- | --- | --- | --- | | Hydraulic Gradient i | (B3 - B4) / B5 | (48 - 45) / 150 = 0.0200 m/m | 0.0000 | | Darcy Flux q (m/day) | B2 * ((B3 - B4) / B5) | 12 * 0.02 = 0.24 m/day | 0.00 m/day | | Aquifer Discharge Q (m^3/day) | B2 * ((B3 - B4) / B5) * B6 | 0.24 * 200 = 48.00 m^3/day | 0.00 m^3/day | | Average pore-water velocity | (B2 * ((B3 - B4) / B5)) / B7 | 0.24 / 0.30 = 0.80 m/day (3.3x q!) | 0.00 m/day | - **Formula (Volumetric Aquifer Discharge Q = K * ((h1 - h2) / L) * A)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B5<=0,B6<=0,B7<=0,B7>1),"Invalid inputs",ROUND(B2 * ((B3 - B4) / B5) * B6, 2)))` - **Formula (Average pore-water velocity)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B5<=0,B6<=0,B7<=0,B7>1),"Invalid inputs",ROUND((B2 * ((B3 - B4) / B5)) / B7, 4)))` - **Formula (Signed hydraulic gradient)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B5<=0,B6<=0,B7<=0,B7>1),"Invalid inputs",(B3-B4)/B5))` - **Formula (Darcy specific discharge)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B5<=0,B6<=0,B7<=0,B7>1),"Invalid inputs",ROUND(B2 * ((B3 - B4) / B5), 4)))` ### Darcy-Weisbach pipe friction head loss (hf) and pressure drop (kPa) formula - **URL**: https://sheets.arte-soft.com/en/learn/darcy-weisbach-pipe-head-loss-and-pressure-drop/ - **Summary**: Calculate major pipe friction head loss in meters (hf = f*(L/D)*(v^2/2g)) and pressure drop in kilopascals (kPa) across water, HVAC, and process piping. *Table — Straight-pipe friction loss with a supplied Darcy factor:* | Piping Metric (f=0.020, L=150 m, D=0.10 m, rho=1000 kg/m^3) | Formula | Result | | --- | --- | --- | | Head Loss hf at v = 2 m/s | 0.020 * (150 / 0.10) * (2^2 / (2 * 9.81)) | 6.12 m of head | | Pressure Drop DeltaP at v = 2 m/s | 0.020 * 1500 * (1000 * 4 / 2) / 1000 | 60.0 kPa (0.60 bar) | | Pressure Drop DeltaP at v = 4 m/s (2x speed) | Quadratic v^2 scaling (4x) | 240.0 kPa (2.40 bar) | - **Formula (Darcy-Weisbach friction head loss (meters of fluid))**: `=IF(OR(COUNT(A2:F2)<>6,A2<0,B2<0,C2<=0,D2<0,E2<=0,F2<=0),"Invalid inputs",ROUND(A2 * (B2 / C2) * ((D2 ^ 2) / (2 * E2)), 2))` - **Formula (Pipe friction pressure drop in kilopascals (kPa))**: `=IF(OR(COUNT(A2:F2)<>6,A2<0,B2<0,C2<=0,D2<0,E2<=0,F2<=0),"Invalid inputs",ROUND(A2 * (B2 / C2) * (F2 * (D2 ^ 2) / 2) / 1000, 2))` ### Darken's Equations: Alloy Interdiffusion Coefficient & Kirkendall Marker Velocity - **URL**: https://sheets.arte-soft.com/en/learn/darken-interdiffusion-and-kirkendall-marker-velocity/ - **Summary**: Calculate the chemical interdiffusion coefficient D_tilde = (1 - X_A) * D_A + X_A * D_B and Kirkendall inert-marker velocity v_K = (D_A - D_B) * (dX_A / dx) in solid-state diffusion couples and solder joints. *Table — Why Cu-Sn solder joints and Cu-Zn brass form Kirkendall voids!:* | Diffusion Couple State (785 °C Brass) | Mole Fraction X_Zn | Interdiffusivity D_tilde (10^-13 m^2/s) | Kirkendall Drift v_K (um/hr) | | --- | --- | --- | --- | | 30 at.% Zn Alpha-Brass (grad = 250 m^-1) | X_Zn = 0.30 | 4.110 (0.70*5.1 + 0.30*1.8) | 0.2970 um/hr | | Dilute 10 at.% Zn Brass | X_Zn = 0.10 | 4.770 (Approaches fast D_Zn!) | 0.2970 um/hr | | Equal Tracer Diffusivities (D_A = D_B = 1.8) | X_Zn = 0.30 | 1.800 | 0.0000 um/hr (Zero Kirkendall shift!) | - **Formula (Darken Chemical Interdiffusion Coefficient D_tilde (10^-13 m^2/s))**: `=IF(OR(B2 < 0, B2 > 1, B3 <= 0, B4 <= 0), "Invalid Diffusion Inputs", ROUND(((1 - B2) * B3) + (B2 * B4), 3))` - **Formula (Kirkendall Inert-Marker Drift Velocity v_K (Micrometers per Hour, um/hr))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Diffusion Inputs", ROUND((B3 - B4) * B5 * 0.00036, 4))` ### Darrieus & Savonius VAWT Solidity, TSR & Torque Formula - **URL**: https://sheets.arte-soft.com/en/learn/darrieus-and-savonius-vertical-axis-wind-turbine-swept-area-solidity-and-betz-power/ - **Summary**: Calculate Vertical-Axis Wind Turbine Blade Chord Solidity (N*c/R), Tip-Speed Ratio lambda, Rectangular Swept-Area Shaft Power (kW), and Aerodynamic Rotor Torque (N·m). *Table — Why low-solidity Darrieus H-rotors capture 2x the wind power of Savonius S-buckets—yet cannot self-start without starter torque at TSR < 1!:* | VAWT Aerodynamic KPI (Sea-Level Air 1.225 kg/m³: Darrieus Lift vs Savonius Drag) | Formula | Verified Output | | --- | --- | --- | | Rotor Chord Solidity sigma (N*c/R) | (Blade_Count_N * Chord_c_m) / Radius_R_m | 0.3375 Darrieus (2.0000 Savonius) | | Tip-Speed Ratio lambda (TSR) | (2 * PI() * Radius_m * (RPM / 60)) / Wind_m_s | 3.64 lift-driven (0.95 drag-limited) | | Aerodynamic Shaft Power (kW) | (0.5 * 1.225 * (2*R*H) * V^3 * Cp) / 1000 | 18.24 kW (0.55 kW compact Savonius) | | Direct-Drive Rotor Torque (N·m) | (Shaft_Power_kW * 1000) / (2 * PI() * RPM / 60) | 1,393.7 N·m (76.7 N·m Savonius) | - **Formula (VAWT Rectangular Swept-Area Power, Chord Solidity & Direct-Drive Torque Formula)**: `=LET(rr_m, B2, hb_m, B3, nb_c, B4, ch_m, B5, vw_s, B6, nr_p, B7, cp_f, B8, pk_w, (0.5 * 1.225 * (2 * rr_m * hb_m) * (vw_s ^ 3) * cp_f) / 1000, IF(OR(rr_m < 0.2, rr_m > 60, hb_m < 0.3, hb_m > 120, nb_c < 2, nb_c > 6, ch_m <= 0.03, vw_s < 2, vw_s > 40, nr_p <= 1, cp_f < 0.05, cp_f > 0.5926), "Invalid VAWT Input", ROUND((pk_w * 1000) / (2 * PI() * (nr_p / 60)), 1)))` - **Formula (2-Scoop Savonius Drag Rotor (`R = 1.2` m, `H = 3` m, `c = 1.2` m, `Cp = 0.17`) Comparison Check)**: `=IF(ISTEXT(E5), E5, ROUND((0.5 * 1.225 * (2 * B2 * B3) * (B6 ^ 3) * B8) / 1000, 2))` ### DAS28-ESR & DAS28-CRP Rheumatoid Arthritis Activity Calculator - **URL**: https://sheets.arte-soft.com/en/learn/das28-esr-and-das28-crp-rheumatoid-arthritis-remission-formula/ - **Summary**: Calculate EULAR 28-joint Disease Activity Scores DAS28-ESR and DAS28-CRP from Tender Joint Count (0–28), Swollen Joint Count (0–28), ESR (mm/h) or CRP (mg/L), and Patient Global VAS (0–100 mm). *Table — Quantify EULAR treat-to-target rheumatoid arthritis remission (< 2.6) with SQRT & LN!:* | Rheumatoid Arthritis Joint & Lab State | DAS28-ESR Score | DAS28-CRP Score (CRP mg/L) | EULAR Activity Classification | | --- | --- | --- | --- | | Sustained Remission (TJC 0, SJC 0, ESR 8, GH 10) | 1.60 (< 2.6) | 1.89 | EULAR Clinical Remission (< 2.6) | | Moderate Synovitis (TJC 3, SJC 2, ESR 22, GH 35) | 4.02 (3.2–5.1) | 3.66 | Moderate Activity — Optimize DMARD | | Severe Flare (TJC 8, SJC 5, ESR 38, CRP 18, GH 55) | 5.53 (> 5.1) | 5.00 | High Activity — Escalate Biologic | - **Formula (4-Variable EULAR DAS28-ESR Score)**: `=IF(OR(B2 < 0, B2 > 28, B3 < 0, B3 > 28, B4 < 1, B5 < 0, B6 < 0, B6 > 100), "Invalid Joint / Lab Input", ROUND(0.56 * SQRT(B2) + 0.28 * SQRT(B3) + 0.7 * LN(B4) + 0.014 * B6, 2))` - **Formula (4-Variable EULAR DAS28-CRP Score (CRP in mg/L))**: `=IF(OR(B2 < 0, B2 > 28, B3 < 0, B3 > 28, B4 < 1, B5 < 0, B6 < 0, B6 > 100), "Invalid Joint / Lab Input", ROUND(0.56 * SQRT(B2) + 0.28 * SQRT(B3) + 0.36 * LN(B5 + 1) + 0.014 * B6 + 0.96, 2))` ### Quadratic Hotelling Maximal Differentiation Price Formula - **URL**: https://sheets.arte-soft.com/en/learn/daspremont-gabszewicz-thisse-quadratic-hotelling-spatial-pricing-formula/ - **Summary**: Calculate d’Aspremont, Gabszewicz, and Thisse’s (1979) quadratic-transport spatial Nash equilibrium prices p_1* = c + t*(1 - a - b)*(1 + (a - b)/3) and prove maximal product differentiation. *Table — Resolve Hotelling’s linear-city price-war breakdown with quadratic transport costs!:* | Quadratic Spatial Competition Metric (a=0.10, b=0.10, t=30, c=10) | Formula | Verified Output | | --- | --- | --- | | Firm 1 Nash Price (p_1*) | c + t * (1 - a - b) * (1 + (a - b) / 3) | 34.00 | | Firm 2 Nash Price (p_2*) | c + t * (1 - a - b) * (1 + (b - a) / 3) | 34.00 | | Indifferent Consumer Boundary (x_hat) | 0.5 + (a - b) / 6 | 0.5000 (50.0% Share) | | Firm 1 Equilibrium Profit (Pi_1*) | (p_1* - c) * x_hat | 12.00 (15.00 at a=b=0) | - **Formula (d’Aspremont-Gabszewicz-Thisse (1979) Nash Equilibrium Mill Price Formula)**: `=LET(a_in, B2, b_in, B3, t_qd, B4, c_mc, B5, IF(OR(a_in < 0, b_in < 0, a_in + b_in >= 1, t_qd <= 0, c_mc < 0), "Invalid Spatial Location", ROUND(c_mc + t_qd * (1 - a_in - b_in) * (1 + (a_in - b_in) / 3), 4)))` - **Formula (Equilibrium Market Share & Firm 1 Profit Formula)**: `=IF(ISTEXT(E2), E2, ROUND((E2 - B5) * (0.5 + (B2 - B3) / 6), 4))` ### Data Validation: Allow Letters and Numbers Only Without Punctuation or Spaces - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-allow-letters-and-numbers-only-no-punctuation/ - **Summary**: Enforce strict ASCII alphanumeric input (A–Z, a–z, 0–9) with zero hyphens, spaces, or punctuation marks using an auditable CODE and MID character-range check. *Table — Why ISTEXT and ISNUMBER cannot validate mixed alphanumeric codes:* | Candidate Token | Length | Violating Character | Strict Alphanumeric? | | --- | --- | --- | --- | | BIN408A | 7 | None (digits & letters only) | TRUE | | promo2026 | 9 | None (case-insensitive A–Z / 0–9) | TRUE | | QA-104 | 6 | Hyphen "-" (ASCII 45) | FALSE | | USER 09 | 7 | Space " " (ASCII 32) | FALSE | | VIP#1 | 5 | Hash "#" (ASCII 35) | FALSE | - **Formula (Strict 1-to-10 Character ASCII Alphanumeric Validation Rule)**: `=LET(txt, A2, n_len, LEN(txt), AND(NOT(ISBLANK(A2)), n_len >= 1, n_len <= 10, IF(1 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 1, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(2 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 2, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(3 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 3, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(4 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 4, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(5 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 5, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(6 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 6, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(7 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 7, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(8 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 8, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(9 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 9, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90)))), IF(10 > n_len, TRUE, LET(ch, CODE(UPPER(MID(txt, 10, 1))), OR(AND(ch >= 48, ch <= 57), AND(ch >= 65, ch <= 90))))))` - **Formula (Count Valid Alphanumeric Codes Across an Intake Column)**: `=COUNTIF(B2:B6, TRUE)` ### Custom Data Validation: Numbers Only, Text Only, Whole %, & Weekdays Only - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-allow-numbers-only-text-only-or-weekday-only/ - **Summary**: Enforce strict type, whole-percentage integer step, and Monday–Friday business-day rules on intake rows using ISNUMBER, ISTEXT, MOD, and WEEKDAY(date, 2) <= 5. *Table — Four essential custom data-validation gates that stop dirty ERP uploads at the door!:* | Field Rule | Validation Predicate | Passes Example | Rejected Example | | --- | --- | --- | --- | | Numeric Amount Only | ISNUMBER(B2) | 4250 | "$4,250" text string | | Whole Percentage (0%–100%) | MOD(ROUND(B3 * 100, 6), 1) = 0 | 0.15 (15%) | 0.155 (15.5% fractional) | | Text Label Only | ISTEXT(B4) | "ACCT-North" | 10400 bare number | | Monday–Friday Weekday Only | WEEKDAY(B5, 2) <= 5 | 2026-10-30 (Fri = 5) | 2026-10-31 (Sat = 6) | - **Formula (Composite Row Intake Gate (Number + Whole % + Text + Weekday))**: `=IF(AND(ISNUMBER(B2), ISNUMBER(B3), B3 >= 0, B3 <= 1, MOD(ROUND(B3 * 100, 6), 1) = 0, ISTEXT(B4), WEEKDAY(B5, 2) <= 5), "Valid Record", "Validation Failed")` - **Formula (ISO Day-of-Week Audit Index (1 = Monday .. 7 = Sunday))**: `=WEEKDAY(B5, 2)` ### Check a budget cap, allocation total, and order-pack multiples - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-budget-cap-and-multiple-rules/ - **Summary**: Build TRUE/FALSE audit formulas for a budget cap, allocation weights and pack quantities. A formula result alone does not block data entry. *Table — Separate audit checks from enforced validation:* | Business Constraint | Validation Formula | Pass / Fail Example | | --- | --- | --- | | Dept Spend <= $50,000 Cap | =SUM($B$2:$B$4) <= $E$2 | $18k + $20k + $10k = $48k -> TRUE | | Order Qty in 12-Packs | =AND(C2 > 0, MOD(C2, 12) = 0) | 36 -> TRUE; 30 -> FALSE | | Weights Sum to 100% | =ROUND(SUM($D$2:$D$4), 6) = 1 | 30% + 45% + 25% -> TRUE | - **Formula (Combined budget and allocation audit)**: `=AND(COUNT(B2:B4)=3,MIN(B2:B4)>=0,ISNUMBER(E2),E2>=0,SUM(B2:B4)<=E2,COUNT(D2:D4)=3,MIN(D2:D4)>=0,MAX(D2:D4)<=1,ROUND(SUM(D2:D4),6)=1)` - **Formula (Validate positive whole case-pack multiple (PackSize = 12))**: `=IF(ISNUMBER(C2),AND(C2>0,MOD(C2,12)=0),FALSE)` ### Validate & Highlight Dates Strictly Within the Next 30 Days (Type-Safe Window) - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-date-within-next-30-days-rolling-window/ - **Summary**: Enforce or highlight scheduling and renewal dates falling inside a 30-day forward window [Anchor, Anchor + 30] while rejecting text strings, blanks, and past dates. *Table — Why ISNUMBER(A2) is essential in custom date validation rules:* | Candidate Entry (Anchor = 2026-06-01) | Offset from Anchor | Validation / Highlight Result | | --- | --- | --- | | 2026-06-01 (Same day) | 0 days | TRUE (Valid) | | 2026-07-01 (30th day) | +30 days | TRUE (Valid upper boundary) | | 2026-07-02 (31st day) | +31 days | FALSE (Too far ahead) | | 2026-05-31 (Yesterday) | -1 day | FALSE (Past date) | | "TBD" or Blank | Non-numeric | FALSE (Type-rejected) | - **Formula (Inclusive Next-N-Days Validation & Highlight Rule)**: `=AND(ISNUMBER(A2), A2 >= $D$2, A2 <= $D$2 + $D$3)` - **Formula (Strictly Future Tomorrow-Through-N-Days Variant)**: `=AND(ISNUMBER(A2), A2 > $D$2, A2 <= $D$2 + $D$3)` ### Data Validation: Require Cells to Contain a Specific Substring (SEARCH vs. FIND) - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-must-contain-required-substring-isnumber-search/ - **Summary**: Enforce mandatory ticket prefixes, domain tags, or currency codes inside text inputs using ISNUMBER(SEARCH(...)) for case-insensitive rules or ISNUMBER(FIND(...)) for exact-case tokens. *Table — How ISNUMBER + SEARCH/FIND converts character offsets into boolean gates:* | Candidate Input | Required Token ($D$2 = "PO-") | Case-Insensitive (SEARCH) | Case-Sensitive (FIND) | | --- | --- | --- | --- | | "Vendor PO-4082" | "PO-" | TRUE | TRUE | | "vendor po-4082" | "PO-" | TRUE | FALSE | | "INV-4082" | "PO-" | FALSE | FALSE | | (Blank cell) | "PO-" | FALSE | FALSE | - **Formula (Case-Insensitive Required Substring Rule)**: `=AND(NOT(ISBLANK(A2)), ISNUMBER(SEARCH($D$2, A2)))` - **Formula (Exact-Case Required Substring Rule)**: `=AND(NOT(ISBLANK(A2)), ISNUMBER(FIND($D$2, A2)))` ### Data Validation: Reject Forbidden Substrings, Placeholders, or Disposable Domains - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-reject-forbidden-substrings-or-disposable-domains/ - **Summary**: Block cell entries containing prohibited tokens such as "TBD", "test@", or disposable email domains case-insensitively using ISERROR(SEARCH(...)) rules. *Table — Case-insensitive "must not contain" validation with SEARCH:* | Submitted Email / Note | Triggered Block Rule | Validation Passes? | | --- | --- | --- | | ops@nordicfreight.eu | None (clean corporate email) | TRUE | | test@nordicfreight.eu | Contains "test@" | FALSE | | lead@mailinator.com | Contains "@mailinator.com" | FALSE | | Owner TBD | Contains "tbd" (case-insensitive) | FALSE | | | Blank after TRIM | FALSE | - **Formula (Multi-Token "Must Not Contain" Validation Formula)**: `=AND(LEN(TRIM(A2)) > 0, ISERROR(SEARCH($D$2, A2)), ISERROR(SEARCH($D$3, A2)), ISERROR(SEARCH($D$4, A2)))` - **Formula (Count Clean Approved Entries vs. Blocked Submissions)**: `=COUNTIF(B2:B6, TRUE)` ### Data Validation Formula: Enforce Unique IDs & Approved Master-List Membership - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-require-unique-id-and-master-list-check/ - **Summary**: Prevent duplicate badge/PO numbers AND rogue unapproved codes simultaneously using AND(COUNTIF($B$2:$B$6, B2) = 1, COUNTIF($E$2:$E$5, B2) > 0). *Table — Enforcing foreign-key integrity + primary-key uniqueness in a single spreadsheet rule!:* | Assigned Tag Entry in B2:B6 | COUNTIF in Assigned (Unique = 1) | COUNTIF in Master E2:E5 (> 0) | Combined Validation Flag | | --- | --- | --- | --- | | "TAG-101" (Assigned Once, In Master) | 1 | 1 | 1 (Valid Assignment) | | "TAG-102" (Entered Twice in B3 & B5!) | 2 (Duplicate!) | 1 | 0 (Rejected — Duplicate) | | "TAG-999" (Once, Not in Master List) | 1 | 0 (Unapproved!) | 0 (Rejected — Unknown Tag) | - **Formula (Count Fully Validated Unique & Master-Approved Assignments)**: `=SUM(C2:C6)` - **Formula (Single-Cell Validation Status Audit for Row 2 Entry B2)**: `=IF(B2 = "", "Blank Entry", IF(COUNTIF($E$2:$E$5, B2) = 0, "Not in Master List", IF(COUNTIF($B$2:$B$6, B2) > 1, "Duplicate Entry", "Valid Unique Master ID")))` ### Data Validation Restricting Dates to a Specific Year (ISNUMBER, INT & YEAR) - **URL**: https://sheets.arte-soft.com/en/learn/data-validation-restrict-dates-to-specific-year/ - **Summary**: Enforce that entered journal dates are genuine numeric whole dates falling inside an authorized calendar or fiscal year, rejecting text strings, fractional timestamps, and out-of-period dates. *Table — Why YEAR(cell) = 2026 alone lets bad inputs slip through:* | Candidate Entry (B2) | ISNUMBER(B2) | INT(B2) = B2 | YEAR(B2) = 2026 | Validation Result | | --- | --- | --- | --- | --- | | 2026-06-15 (Serial) | TRUE | TRUE | TRUE | TRUE (Accepted) | | 2025-12-31 (Prior year) | TRUE | TRUE | FALSE | FALSE (Closed period) | | 2026-06-15 14:30 | TRUE | FALSE | TRUE | FALSE (Has time fraction) | | "June 15, 2026" (Text) | FALSE | — | — | FALSE (Text rejected) | - **Formula (Strict Calendar-Year Whole-Date Validation Rule)**: `=IF(ISNUMBER(B2), AND(INT(B2) = B2, YEAR(B2) = $E$2), FALSE)` - **Formula (Fiscal-Year Window Validation (Custom Start Month, e.g. July–June FY))**: `=IF(ISNUMBER(B2), AND(INT(B2) = B2, B2 >= $F$2, B2 <= EDATE($F$2, 12) - 1), FALSE)` ### Check if two dates are in the same month and year - **URL**: https://sheets.arte-soft.com/en/learn/date-same-month-and-year-check/ - **Summary**: Compare EOMONTH(Date1, 0) = EOMONTH(Date2, 0) so prior-year dates in the same month number never trigger false matches. *Table — Why MONTH(A2) = MONTH(B2) fails on multi-year ledgers:* | InvoiceDate (A) | CutoffDate (B) | MONTH Match? | EOMONTH Same Period? | | --- | --- | --- | --- | | 2026-04-03 | 2026-04-29 | TRUE | TRUE | | 2025-04-15 | 2026-04-29 | TRUE (bug!) | FALSE | - **Formula (EOMONTH equality vs explicit YEAR + MONTH check)**: `=EOMONTH(A2, 0) = EOMONTH(B2, 0)` - **Formula (Explicit AND(YEAR, MONTH) alternative)**: `=AND(YEAR(A2)=YEAR(B2), MONTH(A2)=MONTH(B2))` ### DATE function: build calendar dates from year, month, and day numbers - **URL**: https://sheets.arte-soft.com/en/learn/date-function-year-month-day/ - **Summary**: Construct unambiguous numeric dates from separate year, month, and day columns—and understand why DATE rolls invalid days like February 29, 2026 forward instead of raising an error. *Table — Assemble dates without DD/MM vs MM/DD text ambiguity:* | Year (A) | Month (B) | Day (C) | Calendar meaning | | --- | --- | --- | --- | | 2026 | 2 | 28 | 28 February 2026 (serial 46081) | | 2026 | 2 | 29 | Rolls to 1 March 2026 (serial 46082) | - **Formula (Build the date and inspect its serial value)**: `=DATE(A2,B2,C2)` - **Formula (DATE rolls overflow days forward—it does not reject bad input)**: `=AND(MONTH(DATE(A2,B2,C2))=B2,DAY(DATE(A2,B2,C2))=C2)` ### DATEDIF function: calculate completed years and remaining months - **URL**: https://sheets.arte-soft.com/en/learn/datedif-years-and-months-between-dates/ - **Summary**: Measure service tenure in completed years ("Y") and leftover months ("YM") without double-counting total months ("M"), and catch reversed start/end dates (#NUM!). *Table — Completed anniversaries vs partial months:* | Unit code | Meaning | 2023-05-20 to 2026-08-10 | | --- | --- | --- | | "Y" | Completed full years | 3 | | "YM" | Completed months after full years | 2 | | "M" | Total completed months overall | 38 | - **Formula (Pair "Y" with "YM" rather than "M")**: `=DATEDIF(A2,B2,"Y")` - **Formula (Check the anniversary day and reversed dates)**: `=DATEDIF(A2,B2,"YM")` ### DATEVALUE function: convert text dates to serial numbers safely - **URL**: https://sheets.arte-soft.com/en/learn/datevalue-convert-text-to-date-serial/ - **Summary**: Turn imported ISO date strings into real spreadsheet serial dates with DATEVALUE, and guard mixed columns where some cells are already numeric dates. *Table — Why text dates fail in date math and SUMIFS:* | Cell | Stored Value | ISTEXT | DATEVALUE Result | Safe Mixed Formula | | --- | --- | --- | --- | --- | | A2 | ="2026-04-15" (text) | TRUE | 46127 | 46127 | | A3 | ="2026-04-30" (text) | TRUE | 46142 | 46142 | | A4 | 2026-04-01 (already numeric 46113) | FALSE | #VALUE! | 46113 | - **Formula (The mixed-column trap: DATEVALUE rejects numeric dates)**: `=IF(ISNUMBER(A4), A4, DATEVALUE(A4))` - **Formula (Prefer unambiguous ISO YYYY-MM-DD strings)**: `=DATEVALUE(A3) - DATEVALUE(A2)` ### Davies Equation Formula: Aqueous Ion Activity Coefficient Up to I = 0.5 mol/L - **URL**: https://sheets.arte-soft.com/en/learn/davies-equation-electrolyte-ionic-strength-activity-coefficient/ - **Summary**: Extend Debye-Hückel electrolyte thermodynamics up to moderate ionic strength (I <= 0.5 M) without ion-size parameters using Cecil W. Davies’s 1962 equation log10(gamma_i) = -A * z_i² * (SQRT(I)/(1 + SQRT(I)) - 0.3 * I). *Table — Why geochemical and water-chemistry models (PHREEQC, MINTEQ) use Davies up to I = 0.5 M!:* | Aqueous Ion Species at I = 0.08 mol/L (25 °C) | Charge Squared z² | Davies log10(gamma_i) | Activity Coefficient gamma_i | | --- | --- | --- | --- | | Divalent Ion Ca²⁺ / CO₃²⁻ (\|z\| = 2) | 4 | -0.4000 | 0.3981 (Strong electrostatic shielding) | | Monovalent Ion Na⁺ / HCO₃⁻ (\|z\| = 1) | 1 | -0.1000 | 0.7943 | | Concentrated Brine I = 0.85 M (> 0.5 M) | Outside Davies Window | "Outside Davies Range (0 <= I <= 0.5 M)" | Requires Pitzer / SIT Model | - **Formula (Davies Single-Ion Activity Coefficient gamma_i = 10^(-A * z² * (SQRT(I)/(1+SQRT(I)) - 0.3*I)))**: `=IF(OR(B2 = 0, B3 < 0, B3 > 0.5, B4 <= 0), "Outside Davies Range (0 <= I <= 0.5 M)", ROUND(10 ^ (-B4 * (B2 ^ 2) * (SQRT(B3) / (1 + SQRT(B3)) - 0.3 * B3)), 4))` - **Formula (Davies Base-10 Log Activity Coefficient log10(gamma_i))**: `=IF(OR(B2 = 0, B3 < 0, B3 > 0.5, B4 <= 0), "Outside Davies Range (0 <= I <= 0.5 M)", ROUND(-B4 * (B2 ^ 2) * (SQRT(B3) / (1 + SQRT(B3)) - 0.3 * B3), 4))` ### Daylight Hours (Photoperiod) Formula: Solar Declination & Sunrise-to-Sunset Duration - **URL**: https://sheets.arte-soft.com/en/learn/daylight-hours-sunrise-to-sunset-solar-declination-formula/ - **Summary**: Calculate astronomical daylight duration N = (24 / PI()) * ACOS(-TAN(phi) * TAN(delta)) for any latitude phi and day-of-year J (1..365) using Cooper’s (1969) / FAO-56 solar declination equation, including 24-hour polar day and 0-hour polar night bounds. *Table — From agronomy & FAO-56 evapotranspiration to solar PV yield: exact astronomical photoperiod N!:* | Location Latitude phi & Day of Year J | Cooper Solar Declination delta (deg) | Geometric Daylight Hours N | | --- | --- | --- | | 40.0° N (New York / Madrid), Summer Solstice J = 172 | +23.45° | 14.91 hours (14h 55m) | | 40.0° N, Winter Solstice J = 355 | -23.45° | 9.09 hours (9h 05m — Symmetrical 24 - 14.91!) | | 70.0° N (Tromsø, Norway), Summer Solstice J = 172 | +23.45° (-tan*tan = -1.19 <= -1) | 24.00 hours (Polar Midnight Sun!) | - **Formula (Cooper (1969) Solar Declination Angle delta (Degrees) from Day of Year J (1..366))**: `=IF(OR(ABS(B2) > 90, B3 < 1, B3 > 366), "Invalid Latitude (-90..90) or Day of Year (1..366)", ROUND(23.45 * SIN(RADIANS(360 * (284 + B3) / 365)), 4))` - **Formula (Polar-Safe Astronomical Daylight Hours N = (24 / PI()) * ACOS(Clamped -TAN(phi)*TAN(delta)))**: `=IF(OR(ABS(B2) > 90, B3 < 1, B3 > 366), "Invalid Latitude (-90..90) or Day of Year (1..366)", IF(ABS(B2) = 90, IF(B2 * SIN(RADIANS(360 * (284 + B3) / 365)) > 0, 24, 0), ROUND((24 / PI()) * ACOS(MAX(-1, MIN(1, -TAN(RADIANS(B2)) * TAN(RADIANS(23.45 * SIN(RADIANS(360 * (284 + B3) / 365))))))), 2)))` ### Days Until Next Anniversary or Renewal Ignoring Year (DATE Rollover) - **URL**: https://sheets.arte-soft.com/en/learn/days-between-dates-ignoring-year-anniversary-countdown-date/ - **Summary**: Calculate exact calendar days remaining from a reference date until the next annual birthday, contract renewal, or calibration month/day—rolling cleanly into YEAR(ref) + 1 when this year’s date has passed. *Table — Why DATEDIF("yd") has leap-year quirks—and explicit DATE rollover never misses!:* | Origin Date (Hire / Contract) | Reference Date (2026-10-15) | Next Annual Occurrence | Days Remaining | | --- | --- | --- | --- | | 2022-11-10 (Upcoming This Year) | 2026-10-15 | 2026-11-10 (Same Year) | 26 days | | 2019-03-20 (Already Passed in 2026) | 2026-10-15 | 2027-03-20 (Year + 1 Rollover) | 156 days | | 2021-10-15 (Exact Anniversary Today) | 2026-10-15 | 2026-10-15 (Today!) | 0 days | - **Formula (Days Remaining Until Next Annual Month/Day Occurrence (Ignoring Origin Year))**: `=IF(DATE(YEAR($E$2), MONTH(B2), DAY(B2)) >= $E$2, DATE(YEAR($E$2), MONTH(B2), DAY(B2)) - $E$2, DATE(YEAR($E$2) + 1, MONTH(B2), DAY(B2)) - $E$2)` - **Formula (30-Day Renewal / Anniversary Alert Flag)**: `=IF(IF(DATE(YEAR($E$2), MONTH(B2), DAY(B2)) >= $E$2, DATE(YEAR($E$2), MONTH(B2), DAY(B2)) - $E$2, DATE(YEAR($E$2) + 1, MONTH(B2), DAY(B2)) - $E$2) <= 30, "Due Within 30 Days", "Future")` ### DAYS function: count elapsed calendar days between two dates - **URL**: https://sheets.arte-soft.com/en/learn/days-function-days-between-dates/ - **Summary**: Calculate exact calendar days between an issue date and settlement date, remember that end_date comes first, and interpret negative results for early settlements. *Table — Invoice settlement vs due-date variance:* | Invoice (A) | Issued (B) | Due (C) | Settled (D) | | --- | --- | --- | --- | | INV-71 | 2026-04-01 (46113) | 2026-04-15 (46127) | 2026-04-19 (46131) | - **Formula (Put end_date first and start_date second)**: `=DAYS(D2,B2)` - **Formula (Early payments return negative days)**: `=DAYS(D2,C2)` ### Get days, hours, and minutes between two timestamps ("3d 15h 30m") - **URL**: https://sheets.arte-soft.com/en/learn/days-hours-and-minutes-elapsed-between-timestamps/ - **Summary**: Calculate multi-day incident or transit durations into clean "Xd Yh Zm" labels without losing 24-hour rollovers or suffering floating-point minute drift. *Table — Convert total span to rounded integer minutes first!:* | Opened (A) | Resolved (B) | Total Minutes | Duration Label | | --- | --- | --- | --- | | 2026-05-01 09:00 | 2026-05-05 00:30 | 5,250 min | 3d 15h 30m | | 2026-05-01 09:00 | 2026-05-01 11:45 | 165 min | 0d 2h 45m | - **Formula (Rounded-minute "Xd Yh Zm" elapsed duration formula)**: `=IF(B22,"Enter valid date serials",IF(OR(B2<1,$E$2<1),"Enter valid date serials",IF(COUNTBLANK(C2)=0,IF(COUNT(C2)<>1,"Enter valid close date",IF(INT(C2)1,"Enter a nonnegative whole-day limit",IF(OR($E$3<0,$E$3<>INT($E$3)),"Enter a nonnegative whole-day limit",IF(COUNTBLANK(C2)=0,IF(INT(C2)<=INT($E$2),"Closed",IF(F2>$E$3,"Overdue","Current")),IF(F2>$E$3,"Overdue","Current")))))` ### Days Until Next Annual Birthday or Contract Renewal (Ignoring Original Year) - **URL**: https://sheets.arte-soft.com/en/learn/days-until-next-annual-anniversary-or-birthday-ignoring-year/ - **Summary**: Calculate exact calendar days from a reference date until the next annual birthday, SaaS renewal, or calibration date—wrapping cleanly across December 31 into next calendar year. *Table — Count down to annual renewals and birthdays across year-end boundaries!:* | Original Hire / Sign Date (B2) | Reference Date (B3) | Next Occurrence Date | Days Remaining | | --- | --- | --- | --- | | 2021-11-15 (Upcoming in 2026) | 2026-10-30 | 2026-11-15 (Same Year) | 16 days | | 2021-01-10 (Passed in 2026 -> +1 yr) | 2026-10-30 | 2027-01-10 (Wraps to 2027!) | 72 days | | 2019-10-30 (Anniversary Today!) | 2026-10-30 | 2026-10-30 | 0 days ("Due Today!") | - **Formula (Days Remaining Until Next Annual Anniversary (Year-Wrap Safe))**: `=DATE(YEAR(B3) + --(DATE(YEAR(B3), MONTH(B2), DAY(B2)) < B3), MONTH(B2), DAY(B2)) - B3` - **Formula (Formatted Next Upcoming Annual Renewal Date (ISO yyyy-mm-dd))**: `=TEXT(DATE(YEAR(B3) + --(DATE(YEAR(B3), MONTH(B2), DAY(B2)) < B3), MONTH(B2), DAY(B2)), "yyyy-mm-dd")` ### Days until next birthday: rollover-safe annual countdown - **URL**: https://sheets.arte-soft.com/en/learn/days-until-next-birthday/ - **Summary**: Project a birthdate into the current calendar year with EDATE, advance 12 months if it already passed, and subtract AsOfDate. *Table — Why EDATE beats DATE(YEAR(AsOf), MONTH(Birth), DAY(Birth)):* | BirthDate (A) | AsOfDate (B) | Next Birthday | Days Remaining | | --- | --- | --- | --- | | 1992-06-20 | 2026-06-05 | 2026-06-20 | 15 | | 1992-03-10 | 2026-03-25 | 2027-03-10 | 350 | | 1996-02-29 | 2026-02-20 | 2026-02-28 | 8 | - **Formula (Countdown formula with LET and EDATE)**: `=LET(b, EDATE(A2, (YEAR(B2) - YEAR(A2)) * 12), IF(b < B2, EDATE(A2, (YEAR(B2) - YEAR(A2) + 1) * 12), b) - B2)` - **Formula (Exact-birthday and leap-day checks)**: `=LET(b, EDATE(A3, (YEAR(B3) - YEAR(A3)) * 12), IF(b < B3, EDATE(A3, (YEAR(B3) - YEAR(A3) + 1) * 12), b) - B3)` ### Fixed-Declining Balance Depreciation (DB Rate, Partial First-Year & Final Stub) - **URL**: https://sheets.arte-soft.com/en/learn/db-fixed-declining-balance-depreciation-rate-and-first-year-stub/ - **Summary**: Compute exact fixed-declining balance depreciation rates rounded to 3 decimal places, prorate partial first-year months, and close out final stub periods cleanly. *Table — How fixed-declining balance differs from double-declining balance:* | Period | Formula Logic (Cost=100,000, Salvage=12,960, Life=4, Months=6) | Rate r | Period Expense | | --- | --- | --- | --- | | Fixed Rate r | ROUND(1 - (Salvage / Cost) ^ (1 / Life), 3) | 0.400 | — | | Year 1 (6 mo) | ROUND(Cost * r * Months / 12, 2) | 0.400 | 20,000 | | Year 2 (12 mo) | ROUND((Cost - Y1) * r, 2) | 0.400 | 32,000 | | Year 3 (12 mo) | ROUND((Cost - Y1 - Y2) * r, 2) | 0.400 | 19,200 | | Year 4 (12 mo) | ROUND((Cost - Y1 - Y2 - Y3) * r, 2) | 0.400 | 11,520 | | Year 5 (6 mo stub) | ROUND((Cost - Sum(Y1:Y4)) * r * (12 - Months) / 12, 2) | 0.400 | 3,456 | - **Formula (3-Decimal Fixed-Declining Rate & Partial Year-1 Charge)**: `=ROUND(B2 * ROUND(1 - (B3 / B2) ^ (1 / B4), 3) * B5 / 12, 2)` - **Formula (Subsequent Full-Year & Final-Stub Charges)**: `=ROUND((B2 - SUM($E$2:E2)) * $B$6, 2)` ### Ideal Buck, Boost and Inverting Buck-Boost Calculations - **URL**: https://sheets.arte-soft.com/en/learn/dc-dc-boost-and-buck-boost-converter-duty-cycle-and-ripple/ - **Summary**: Compare ideal steady-state CCM voltage ratios and calculate boost inductor current ripple with explicit units and input checks. - **Formula (Boost output voltage)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric voltage and duty",IF(OR(B2<=0,B3<=0,B3>=1),"Require Vin>0 and 02,"Enter numeric voltage and duty",IF(OR(B2<=0,B3<=0,B3>=1),"Require Vin>0 and 02,"Enter numeric voltage and duty",IF(OR(B2<=0,B3<=0,B3>=1),"Require Vin>0 and 04,"Enter numeric inputs",IF(OR(B2<=0,B3<=0,B3>=1,B4<=0,B5<=0),"Require positive Vin, f, L and 0 Vmin=300V) | Formula | Verified Output | | --- | --- | --- | | Dropout Energy Demand (Joules) | (P_out_W / eta_dc) * (t_hold_ms / 1000) | 14.00 J | | Usable Capacitor Energy Fraction | 1 - (V_min / V_nom) ^ 2 | 0.4375 (43.75% Extractable) | | Required Bulk Capacitance (uF) | (2000*P_out*t_ms) / (eta*(Vnom^2 - Vmin^2)) | 400.00 uF (1,600 uF @ 200->150V!) | | Total Stored Energy at V_nom (J) | 0.5 * (C_uF / 10^6) * V_nom^2 | 32.00 J (18.00 J Residual @ 300V) | - **Formula (Bulk PFC Hold-Up Capacitance (uF) Sizing Formula)**: `=LET(p_ot, B2, et_d, B3, t_ms, B4, v_nm, B5, v_mn, B6, IF(OR(p_ot <= 0, et_d <= 0, et_d > 1, t_ms <= 0, v_mn <= 0, v_nm <= v_mn), "Invalid Holdup Bus Spec", ROUND((2000 * p_ot * t_ms) / (et_d * ((v_nm ^ 2) - (v_mn ^ 2))), 2)))` - **Formula (Voltage-Squared Scaling Check (Halve Bus to 200 V -> 150 V))**: `=IF(ISTEXT(E4), E4, ROUND(0.5 * (E4 / 1000000) * (B5 ^ 2), 2))` ### De-SPAC Redemption Dilution & Net Cash Per Share Formula - **URL**: https://sheets.arte-soft.com/en/learn/de-spac-redemption-dilution-promote-overhang-and-net-cash-per-share/ - **Summary**: Calculate Post-Redemption De-SPAC Net Cash Delivered to Target Balance Sheet, Total Public + PIPE + Sponsor Promote Shares Issued, Effective Net Cash Per Share vs $10.00 Nominal Merger Price, and Total Dilution Cost % of Net Cash. *Table — Expose why 80% SPAC trust redemptions slash actual net cash delivered per $10 merger share!:* | De-SPAC Dilution Metric ($250M Trust, 80% Redeemed, $100M PIPE, 6.25M Promote, $18M Fees) | Formula | Verified Output | | --- | --- | --- | | Net Cash to Balance Sheet ($M) | Trust*(1 - Red) + PIPE - Deal_Fees | $132.00M ($332.00M @ 0% Red) | | Total Financing + Promote Sh (M) | (Trust/10)*(1-Red) + PIPE/10 + Promote | 21.25M sh (41.25M @ 0% Red) | | Net Cash Per Issued Share ($/sh) | Net_Cash_Delivered / Total_Shares | $6.21/sh ($8.05/sh @ 0% Red) | | Fee + Promote Cost % Net Cash | (Total_Sh * 10 - Net_Cash) / Net_Cash | 0.6098 (60.98% Effective Cost) | - **Formula (De-SPAC Post-Redemption Net Cash Per Financing Share Formula)**: `=LET(tr_c, B2, rd_r, B3, pp_c, B4, pr_s, B5, fe_m, B6, nt_c, tr_c * (1 - rd_r) + pp_c - fe_m, IF(OR(tr_c <= 0, rd_r < 0, rd_r >= 1, pp_c < 0, pr_s < 0, fe_m < 0, nt_c <= 0), "Invalid De-SPAC Merger Input", LET(sh_t, (tr_c / 10) * (1 - rd_r) + (pp_c / 10) + pr_s, ROUND(nt_c / sh_t, 2))))` - **Formula (Zero-Redemption Bull-Market Baseline Check (Set Redemption Rate = 0%))**: `=IF(ISTEXT(E4), E4, ROUND((E3 * 10 - E2) / E2, 4))` ### Deal-Grove Silicon Thermal Oxidation Thickness & Tau Formula - **URL**: https://sheets.arte-soft.com/en/learn/deal-grove-silicon-thermal-oxidation-linear-parabolic-oxide-thickness-formula/ - **Summary**: Calculate Pre-Existing Oxide Time Shift tau (hr), Final SiO2 Gate/Field Oxide Thickness x_o (nm), Net Oxide Grown (nm), and Consumed Silicon Substrate Depth (0.46 * dx nm). *Table — Why thin dry oxides grow linearly (reaction-limited B/A) while thick wet field oxides slow to SQRT(B*t) diffusion—and eat 46% into the silicon wafer!:* | Deal-Grove Oxidation KPI (xi=20 nm, A=100 nm, B=20,000 nm²/hr, t=2 hr) | Formula | Verified Output | | --- | --- | --- | | Equivalent Time Shift tau (hr) | (xi^2 + A * xi) / B | 0.120 hr | | Final SiO2 Thickness x_o (nm) | (A/2) * (SQRT(1 + (t+tau)/(A^2/(4*B))) - 1) | 161.90 nm (356.08 @ t = 8 hr) | | Net New SiO2 Grown dx (nm) | Final_Oxide_xo - Initial_Oxide_xi | 141.90 nm (336.08 @ t = 8 hr) | | Silicon Substrate Consumed (nm) | 0.46 * (Final_Oxide_xo - Initial_Oxide_xi) | 65.27 nm (154.60 @ t = 8 hr) | - **Formula (Exact Deal-Grove Linear-Parabolic Oxide Thickness Formula)**: `=LET(xi_n, B2, a_ln, B3, b_pr, B4, tm_h, B5, IF(OR(xi_n < 0, a_ln <= 0, b_pr <= 0, tm_h <= 0), "Invalid Deal-Grove Input", LET(ta_u, ((xi_n ^ 2) + a_ln * xi_n) / b_pr, ch_t, (a_ln ^ 2) / (4 * b_pr), ROUND((a_ln / 2) * (SQRT(1 + (tm_h + ta_u) / ch_t) - 1), 2))))` - **Formula (Parabolic Diffusion Slowdown Check (Quadruple Time t from 2.0 hr to 8.0 hr))**: `=IF(ISTEXT(E3), E3, LET(ta_u, ((B2 ^ 2) + B3 * B2) / B4, ch_t, (B3 ^ 2) / (4 * B4), xo_f, (B3 / 2) * (SQRT(1 + (B5 + ta_u) / ch_t) - 1), ROUND(0.46 * (xo_f - B2), 2)))` ### Dean Number (De) Curved-Pipe Vortices & Ito Critical Reynolds Formula - **URL**: https://sheets.arte-soft.com/en/learn/dean-number-curved-pipe-secondary-vortex-and-critical-reynolds/ - **Summary**: Calculate W. R. Dean’s secondary-vortex number De = Re * SQRT(D / (2 * R_c)) in helical coils and pipe bends alongside Hidesato Ito’s curved-pipe laminar-to-turbulent stabilization threshold Re_crit = 2100 * (1 + 12 * SQRT(D / (2 * R_c))). *Table — Why helical heat-exchanger coils stay laminar way past Re = 2,100 while boosting radial mixing!:* | Coil Curvature Scenario (D = 10 mm, Re = 1,800) | Curvature Ratio D / (2 * Rc) | Dean Number De | Ito Critical Reynolds Re_crit | | --- | --- | --- | --- | | Compact Helical Coil (Rc = 125 mm) | 0.0400 (SQRT = 0.20) | 360.0 (Strong Vortices) | 7,140 (3.4x Straight Pipe!) | | Gentle Pipeline Bend (Rc = 1,250 mm) | 0.0040 (SQRT = 0.0632) | 113.8 | 3,694 | | Invalid Geometry (Rc <= D / 2 or D <= 0) | Physical Kink Guard | "Invalid Coil Geometry" | Requires 2 * Rc > D > 0 | - **Formula (Dimensionless Curved-Pipe Dean Number De = Re * SQRT(D / (2 * R_c)))**: `=IF(OR(B2 <= 0, B3 <= 0, 2 * B4 <= B3), "Invalid Coil Geometry", ROUND(B2 * SQRT(B3 / (2 * B4)), 1))` - **Formula (Ito (1959) Curved-Tube Critical Laminar-to-Turbulent Reynolds Number Re_crit)**: `=IF(OR(B3 <= 0, 2 * B4 <= B3), "Invalid Coil Geometry", ROUND(2100 * (1 + 12 * SQRT(B3 / (2 * B4))), 0))` ### Real estate underwriting formulas: NOI, Cap Rate, and DSCR - **URL**: https://sheets.arte-soft.com/en/learn/debt-service-coverage-ratio-dscr-and-ltv-real-estate/ - **Summary**: Underwrite rental and commercial properties by calculating Net Operating Income (NOI), Capitalization Rate, Annual Debt Service, and lender DSCR covenants. *Table — Connect property NOI to unlevered Cap Rate and levered DSCR:* | Underwriting Line | Formula ($1M Property) | Result | | --- | --- | --- | | Effective Gross Income | $120,000 * (1 - 5% Vacancy) | $114,000 / yr | | Net Operating Income (NOI) | $114,000 - $34,000 OpEx | $80,000 / yr | | Cap Rate | $80,000 / $1,000,000 | 8.00% | | DSCR ($64k Debt Service) | $80,000 / $64,000 | 1.25x (Passes >= 1.25x) | - **Formula (DSCR, Cap Rate, and NOI formulas)**: `=LET(noi, B2 * (1 - C2) - D2, ROUND(noi / E2, 2))` - **Formula (Unlevered Capitalization Rate (Cap Rate))**: `=ROUND((B2 * (1 - C2) - D2) / A2, 4)` ### Debt Sustainability (r - g) & Stabilizing Primary Balance - **URL**: https://sheets.arte-soft.com/en/learn/debt-sustainability-r-minus-g-and-stabilizing-primary-balance/ - **Summary**: Project public debt-to-GDP d_t = ((1 + r)/(1 + g)) * d_{t-1} - pb_t and calculate the exact debt-stabilizing primary balance pb* = ((r - g)/(1 + g)) * d_{t-1}. *Table — Audit IMF / Blanchard debt snowball dynamics using exact discrete (1 + r) / (1 + g):* | DSA Regime (d_{t-1} = 90%, r = 4.5%, pb_t = +0.50%) | Stabilizing Primary Balance pb* | Next-Year Debt d_t | | --- | --- | --- | | Positive Snowball (g = 2.5%, r > g) | +0.0176 (+1.76% Surplus Needed) | 0.9126 (91.26%, Rising) | | Neutral Growth (g = 4.5%, r = g) | 0.0000 (Balanced Primary) | 0.8950 (89.50%, Falling) | | Favorable Growth (g = 5.5%, r < g) | -0.0085 (-0.85% Deficit Allowed) | 0.8865 (88.65%, Falling) | - **Formula (Exact Debt-Stabilizing Primary Balance ((r - g) / (1 + g)) * d_{t-1} Formula)**: `=LET(d_pr, B2, r_eff, B3, g_gdp, B4, IF(OR(d_pr < 0, r_eff <= -1, g_gdp <= -1), "Invalid DSA Input", ROUND(((r_eff - g_gdp) / (1 + g_gdp)) * d_pr, 4)))` - **Formula (Next-Year Debt-to-GDP Ratio d_t and Fiscal Effort Gap (pb* - pb_t) Formula)**: `=LET(d_pr, B2, r_eff, B3, g_gdp, B4, pb_ac, B5, IF(OR(d_pr < 0, r_eff <= -1, g_gdp <= -1), "Invalid DSA Input", ROUND(((1 + r_eff) / (1 + g_gdp)) * d_pr - pb_ac, 4)))` ### Solution Ionic Strength (I) & Debye-Huckel Activity Coefficient - **URL**: https://sheets.arte-soft.com/en/learn/debye-huckel-ionic-strength-and-activity-coefficient-formula/ - **Summary**: Calculate concentration-based ionic strength from a complete ion list, then explore a dilute-water Debye–Hückel limiting-law estimate at 25 °C. - **Formula (Concentration-based ionic strength)**: `=IF(COUNT(B2:C5)<>8,"Enter numeric ion inputs",IF(OR(MIN(B2:B5)<0,C2<>INT(C2),C3<>INT(C3),C4<>INT(C4),C5<>INT(C5),C2=0,C3=0,C4=0,C5=0),"Invalid ion inputs",0.5*SUMPRODUCT(B2:B5,C2:C5^2)))` - **Formula (Dilute-water limiting-law estimate)**: `=IF(NOT(ISNUMBER(E2)),"Enter numeric target charge",IF(OR(E2=0,E2<>INT(E2)),"Invalid target charge",IF(NOT(ISNUMBER(G2)),G2,IF(ABS(SUMPRODUCT(B2:B5,C2:C5))>0.000000001,"Check charge balance",IF(G2>0.001,"Outside this dilute exercise",10^(-0.509*E2^2*SQRT(G2)))))))` ### Plasma Debye Screening Length (λ_D) & Debye Sphere Parameter (N_D) - **URL**: https://sheets.arte-soft.com/en/learn/debye-screening-length-and-plasma-parameter-nd-formula/ - **Summary**: Calculate electrostatic charge-shielding length λ_D = 7433.94 * SQRT(T_e_eV / n_e_m3) and weakly coupled plasma parameter N_D = (4/3) * π * n_e * λ_D^3 in RF etching tools and tokamaks. *Table — Sizing semiconductor RF plasma sheaths and checking ideal collective plasma behavior (N_D >> 1)!:* | Plasma Environment | Electron Temp T_e (eV) | Density n_e (m^-3) | Debye Length λ_D (mm) & N_D | | --- | --- | --- | --- | | Semiconductor ICP Etcher | 10 eV | 1.0 × 10^16 m^-3 | 0.2351 mm (N_D = 544,184) | | Tokamak Scrape-Off Layer | 100 eV | 1.0 × 10^19 m^-3 | 0.0235 mm (N_D = 544,184) | | Invalid T_e <= 0 or n_e <= 0 | Error Guard | Undefined | "Invalid Plasma State" | - **Formula (Electron Debye Electrostatic Screening Length λ_D (mm))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Plasma State", ROUND(7433.94 * SQRT(B2 / B3) * 1000, 4))` - **Formula (Plasma Parameter N_D (Electrons Inside One Debye Sphere))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Plasma State", ROUND((4 / 3) * PI() * B3 * ((7433.94 * SQRT(B2 / B3)) ^ 3), 0))` ### Debye T³ Law: Low-Temperature Phonon Molar Heat Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/debye-t3-low-temperature-phonon-molar-heat-capacity-formula/ - **Summary**: Calculate cryogenic lattice molar heat capacity C_V = (12/5) * π^4 * R * (T / Θ_D)^3 (J/(mol·K)) from crystal Debye temperature Θ_D vs. the classical 3R Dulong-Petit ceiling. *Table — Why Einstein’s optical-oscillator model froze out too fast—and Peter Debye’s acoustic phonons hit T³!:* | Cryogenic Temperature T (Copper Θ_D = 343 K) | Reduced Ratio T / Θ_D | Debye Phonon C_V (J/(mol·K)) | Share of Classical 3R (24.94) | | --- | --- | --- | --- | | T = 20 K (Liquid H2 Boil-Off) | 0.0583 | 0.3853 J/(mol·K) | 1.54% of Dulong-Petit | | T = 10 K (8× Cubic Drop!) | 0.0292 | 0.0482 J/(mol·K) | 0.19% of Dulong-Petit | | Invalid T <= 0 or Θ_D <= 0 | Undefined | "Invalid Temperature Inputs" | Cryogenic Guard | - **Formula (Debye T³ Cryogenic Lattice Molar Heat Capacity C_V (J/(mol·K)))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Temperature Inputs", ROUND((12 / 5) * (PI() ^ 4) * 8.31446 * ((B2 / B3) ^ 3), 4))` - **Formula (Classical High-Temperature Dulong-Petit Limit 3R (J/(mol·K)))**: `=ROUND(3 * 8.31446, 2)` ### DECAF Score Calculator: Acute Exacerbation of COPD In-Hospital Mortality Triage - **URL**: https://sheets.arte-soft.com/en/learn/decaf-score-acute-exacerbation-of-copd-in-hospital-mortality/ - **Summary**: Calculate John Steer et al.’s (2012, Thorax) DECAF Score (0–6 points) for patients hospitalized with Acute Exacerbation of COPD (AECOPD) to identify Low-Risk Hospital-at-Home candidates (0–1) vs High-Risk inpatient mortality (>= 3). *Table — Why NICE and BTS guidelines use DECAF (not CURB-65!) for hospitalized COPD exacerbations!:* | DECAF Predictor | Condition | Points | | --- | --- | --- | | D — Extended MRC Dyspnoea (eMRCD) | Grades 1–4 (0) \| eMRCD 5a (+1) \| eMRCD 5b (+2) | 0, 1, or 2 pts | | E — Eosinopenia | Blood eosinophils < 0.05 x 10^9/L | +1 pt | | C — Consolidation | New chest-radiograph consolidation | +1 pt | | A — Acidaemia | Arterial blood gas pH < 7.30 | +1 pt | | F — Atrial Fibrillation | Admission AF or history of AF | +1 pt | - **Formula (Total Steer (2012) DECAF AECOPD Score (0 to 6 Points))**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "1-4", UPPER(TRIM(B2 & "")) <> "5A", UPPER(TRIM(B2 & "")) <> "5B"), B3 < 0, AND(B4 <> 0, B4 <> 1), B5 < 6.7, B5 > 7.8, AND(B6 <> 0, B6 <> 1)), "Invalid DECAF Inputs", IF(UPPER(TRIM(B2 & "")) = "5B", 2, IF(UPPER(TRIM(B2 & "")) = "5A", 1, 0)) + IF(B3 < 0.05, 1, 0) + B4 + IF(B5 < 7.3, 1, 0) + B6)` - **Formula (DECAF Mortality Risk Tier & Hospital-at-Home Triage)**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "1-4", UPPER(TRIM(B2 & "")) <> "5A", UPPER(TRIM(B2 & "")) <> "5B"), B3 < 0, AND(B4 <> 0, B4 <> 1), B5 < 6.7, B5 > 7.8, AND(B6 <> 0, B6 <> 1)), "Invalid DECAF Inputs", IF((IF(UPPER(TRIM(B2 & "")) = "5B", 2, IF(UPPER(TRIM(B2 & "")) = "5A", 1, 0)) + IF(B3 < 0.05, 1, 0) + B4 + IF(B5 < 7.3, 1, 0) + B6) <= 1, "DECAF 0–1: Low Risk (~1–1.4% Mortality — Hospital-at-Home Candidate)", IF((IF(UPPER(TRIM(B2 & "")) = "5B", 2, IF(UPPER(TRIM(B2 & "")) = "5A", 1, 0)) + IF(B3 < 0.05, 1, 0) + B4 + IF(B5 < 7.3, 1, 0) + B6) = 2, "DECAF 2: Intermediate Risk (~5.4–8.4% Mortality — Inpatient Monitoring)", "DECAF 3–6: High Risk (>=21% Mortality — Urgent Respiratory / NIV Escalation)")))` ### Modified Jones Discretionary Accruals Formula - **URL**: https://sheets.arte-soft.com/en/learn/dechow-sloan-sweeney-modified-jones-discretionary-accruals-formula/ - **Summary**: Calculate Dechow, Sloan, and Sweeney’s (1995) Modified Jones Non-Discretionary Accruals NDA_t and Discretionary Accruals DA_t by subtracting credit-sales receivable growth from revenue growth. *Table — Catch end-of-quarter credit-sales channel stuffing missed by the original Jones model!:* | Forensic Accrual Model Metric (A_{t-1}=1,000, TA=40, dRev=150, dRec=100) | Formula | Verified Output | | --- | --- | --- | | Original Jones (1991) Normal Accruals | a_1/A + a_2*(dRev/A) + a_3*(PPE/A) | 0.0000 (DA_Jones = +0.0400) | | Modified Jones (1995) Normal Accruals | a_1/A + a_2*((dRev - dRec)/A) + a_3*(PPE/A) | -0.0120 (-1.20% of Assets) | | Modified Jones Discretionary Accruals | (TA_t / A_{t-1}) - NDA_Mod | +0.0520 (+5.20% of Assets) | | Unmasked Credit-Sales Manipulation Wedge | DA_Mod - DA_Jones = a_2 * (dRec / A_{t-1}) | +0.0120 (+120 bps) | - **Formula (Modified Jones (1995) Non-Discretionary & Discretionary Accruals Formula)**: `=LET(as_lg, B2, ta_cr, B3, dv_rv, B4, dv_rc, B5, pp_gr, B6, a_on, B7, a_tw, B8, a_th, B9, IF(OR(as_lg <= 0, pp_gr < 0), "Invalid Forensic Input", LET(nd_md, a_on * (1 / as_lg) + a_tw * ((dv_rv - dv_rc) / as_lg) + a_th * (pp_gr / as_lg), ROUND((ta_cr / as_lg) - nd_md, 4))))` - **Formula (Original Jones Comparison & Receivable-Wedge Audit Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - ((B3 / B2) - E2), 4))` ### Decibel (dB) Power Gain, Voltage Gain & Logarithmic Sound Addition - **URL**: https://sheets.arte-soft.com/en/learn/decibel-power-ratio-voltage-gain-and-logarithmic-db-addition/ - **Summary**: Calculate 10*LOG10(P2/P1) power gain vs 20*LOG10(V2/V1) amplitude gain and add independent decibel sound levels accurately via 10*LOG10(10^(L1/10) + 10^(L2/10)). *Table — Keep power, voltage and sound-level calculations separate:* | Decibel Calculation | Formula | 50 W / 0.5 W (100x Ratio) \| Two 80 dB Fans | Half-Power Cutoff (0.25 W / 0.5 W) | | --- | --- | --- | --- | | Power Gain (10 * LOG10) | 10 * LOG10(B2 / B3) | +20.00 dB (100x power) | -3.01 dB (50% power cutoff!) | | Amplitude / Voltage Gain (20 * LOG10) | 20*LOG10(B6/B7), separate voltage inputs | +40.00 dB (100x voltage = 10,000x P) | -6.02 dB (50% voltage) | | Combined Sound Level (L1 (+) L2) | 10 * LOG10(10^(B4/10) + 10^(B5/10)) | 83.01 dB (+3.01 dB above 80 dB) | 83.01 dB | - **Formula (Power Ratio Decibel Gain = 10 * LOG10(P2 / P1))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(10*(LOG10(B2)-LOG10(B3)),2)))` - **Formula (Logarithmic Addition of Two Independent Noise Levels (dB))**: `=IF(COUNT(B4:B5)<>2,"Invalid inputs",ROUND(MAX(B4,B5)+10*LOG10(10^((B4-MAX(B4,B5))/10)+10^((B5-MAX(B4,B5))/10)),2))` - **Formula (Voltage amplitude gain)**: `=IF(COUNT(B6:B7)<>2,"Invalid inputs",IF(OR(B6<=0,B7<=0),"Invalid inputs",ROUND(20*(LOG10(B6)-LOG10(B7)),2)))` ### Deeks’ Funnel Plot Asymmetry Test: Diagnostic Meta-Analysis Effective Sample Size (ESS) - **URL**: https://sheets.arte-soft.com/en/learn/deeks-funnel-plot-asymmetry-diagnostic-test-meta-analysis/ - **Summary**: Avoid spurious Egger false positives in Diagnostic Test Accuracy (DTA) meta-analyses by computing Deeks’ Effective Sample Size ESS = (4*n_1*n_2)/(n_1 + n_2) and regressing ln(DOR) on 1/SQRT(ESS). *Table — Why Cochrane DTA Guidelines forbid Egger’s SE test on Diagnostic Odds Ratios—and mandate Deeks’ 1/√ESS!:* | DTA Meta-Analysis Scenario (5 Studies) | Study 1 ESS (25 Cases / 75 Controls) | Deeks Asymmetry Slope on 1/√ESS | Cochrane DTA Bias Assessment | | --- | --- | --- | --- | | Small Studies Inflated (ln DOR 3.40 -> 2.20) | 75.00 (vs Raw N = 100) | +16.95 | Positive Small-Study DTA Asymmetry | | Constant Accuracy Across Sizes (All ln DOR = 2.50) | 75.00 | 0.00 | Symmetric DTA Funnel | | Zero Diseased or Non-Diseased Arm (n_1 or n_2 <= 0) | Undefined ESS | "Arm Sample Sizes Must Be Positive" | Two-Gate Study Guard | - **Formula (Deeks Funnel-Asymmetry Regression Slope of ln(DOR) on 1 / SQRT(ESS))**: `=IF(OR(MIN(B2:B6) <= 0, MIN(C2:C6) <= 0), "Arm Sample Sizes Must Be Positive", ROUND(SLOPE(D2:D6, F2:F6), 2))` - **Formula (Deeks Effective Sample Size ESS_1 = (4 * n_1 * n_2) / (n_1 + n_2))**: `=IF(OR(B2 <= 0, C2 <= 0), "Arm Sample Sizes Must Be Positive", ROUND(E2, 2))` ### Deep-Drawing LDR & Siebel Blank-Holder Cushion Formula - **URL**: https://sheets.arte-soft.com/en/learn/deep-drawing-limiting-draw-ratio-ldr-blank-holder-wrinkling-pressure-and-redraw/ - **Summary**: Calculate First-Draw Ratio Beta (D0 / dp), Siebel Anti-Wrinkling Blank-Holder Pressure pbh (MPa), Required Nitrogen/Pneumatic Die-Cushion Force (kN), and LDR Single-Stage Gate. *Table — Too little blank-holder cushion pressure buckles cup flanges into radial wrinkles—too much or exceeding beta = 2.10 LDR rips the bottom right off the punch nose!:* | Siebel Cushion & LDR Gate KPI (dp=100 mm, t=1.2 mm, UTS=360 MPa, k=0.0025) | Formula | Verified Output | | --- | --- | --- | | First-Stage Draw Ratio Beta | Blank_Diameter_D0_mm / Punch_Diameter_dp_mm | 1.95 (2.35 @ 235 mm oversize blank!) | | Siebel Holder Pressure pbh (MPa) | k * (((beta - 1) ^ 2) + (dp / (200 * t))) * UTS | 1.187 MPa (2.015 MPa flange friction) | | Die-Cushion Clamp Force (kN) | (pbh * (PI/4) * (D0^2 - (dp + 2.5*t)^2)) / 1000 | 25.56 kN (70.62 kN cushion load) | | Limiting Draw Ratio Gate | IF(beta <= 2.10, "SINGLE-STAGE...", "EXCEEDS LDR...") | SINGLE-STAGE DRAW SAFE (<=2.10) | - **Formula (Erich Siebel (1954) Anti-Wrinkling Binder Pressure & 2.10 LDR Redraw Formula)**: `=LET(dz_m, B2, dp_m, B3, th_m, B4, ut_m, B5, sk_f, B6, IF(OR(dp_m < 10, dp_m > 1500, dz_m <= dp_m * 1.05, dz_m > dp_m * 3.5, th_m < 0.1, th_m > 15, ut_m < 80, ut_m > 1500, sk_f < 0.001, sk_f > 0.006), "Invalid Draw Input", ROUND(dz_m / dp_m, 2)))` - **Formula (Taller Cup Blank (`D_0 = 235` mm -> `beta = 2.35 > 2.10`) Bottom-Split Redraw Check)**: `=IF(ISTEXT(E2), E2, LET(bt_r, B2 / B3, pb_m, B6 * (((bt_r - 1) ^ 2) + (B3 / (200 * B4))) * B5, ROUND((pb_m * (PI() / 4) * ((B2 ^ 2) - ((B3 + 2.5 * B4) ^ 2))) / 1000, 2)))` ### Deere Rock Quality Designation (RQD) & Joint Frequency - **URL**: https://sheets.arte-soft.com/en/learn/deere-rock-quality-designation-rqd-core-recovery-and-priest-hudson-joint-frequency/ - **Summary**: Calculate Total Core Recovery TCR (%), ASTM D6032 Measured Deere RQD (%), Priest & Hudson Theoretical RQD* (%) from Scanline Frequency lambda, and Palmstrom Volumetric Joint Count Jv. *Table — 92% Total Core Recovery does NOT mean good rock—fifteen 90 mm rubble sticks score 90%+ TCR yet ZERO percent Deere RQD!:* | ASTM D6032 Core Logging KPI (1,500 mm NQ3 Run: Moderately Jointed vs Fault Breccia) | Formula | Verified Output | | --- | --- | --- | | Total Core Recovery TCR (%) | (Total_Recovered_mm / Total_Core_Run_mm) * 100 | 92.0% (76.0% in fault zone) | | Measured Deere RQD (%) | (Sound_Sticks_100mm / Total_Core_Run_mm) * 100 | 73.0% Fair/Good (22.0% Very Poor!) | | Priest-Hudson Scanline RQD* (%) | 100 * EXP(-0.1 * lambda_m) * (0.1 * lambda_m + 1) | 79.1% @ 8.5/m (30.8% @ 24/m) | | Palmström Volumetric Joints Jv (/m³) | (115 - Measured_RQD_Pct) / 3.3 | 12.73 joints/m³ (28.18 sugar-cube!) | - **Formula (ASTM D6032 Deere RQD, Priest-Hudson Poisson Spacing & Palmström Jv Formula)**: `=LET(lr_n, B2, lt_r, B3, ls_d, B4, lm_j, B5, rq_m, (ls_d / lr_n) * 100, IF(OR(lr_n < 300, lr_n > 6000, lt_r < 0, lt_r > lr_n, ls_d < 0, ls_d > lt_r, lm_j < 0.1, lm_j > 60), "Invalid RQD Input", ROUND((115 - rq_m) / 3.3, 2)))` - **Formula (Shattered Fault-Zone Rubble (`L_rec = 1,140` mm, `Sound >= 100mm = 330` mm, `lambda = 24`/m) Check)**: `=IF(ISTEXT(E5), E5, ROUND(100 * EXP(-0.1 * B5) * (0.1 * B5 + 1), 1))` ### Six Sigma DPMO and Rolled Throughput Yield (RTY) formulas - **URL**: https://sheets.arte-soft.com/en/learn/defect-rate-dpmo-and-first-pass-yield-six-sigma/ - **Summary**: Calculate Defects Per Million Opportunities (DPMO) across multi-checkpoint units and chain step-by-step First Pass Yields with PRODUCT. *Table — Defects vs Defective Units—and why RTY compounds with PRODUCT:* | Quality Metric | Formula | Result | | --- | --- | --- | | Total Opportunities | 2,500 units * 8 opps/unit | 20,000 | | DPMO (68 defects) | (68 / 20,000) * 1,000,000 | 3,400 DPMO | | Opportunity Yield | 1 - (68 / 20,000) | 99.66% | | 3-Step Rolled Yield (98%, 95%, 96%) | =PRODUCT(0.98, 0.95, 0.96) | 89.38% (0.8938) | - **Formula (DPMO and Rolled Throughput Yield (RTY) formulas)**: `=ROUND((C2 / (A2 * B2)) * 1000000, 1)` - **Formula (Multi-step Rolled Throughput Yield (RTY))**: `=ROUND(PRODUCT(D2:F2), 4)` ### Define a Dynamic Range Sized by a Cell Value (TAKE & OFFSET) - **URL**: https://sheets.arte-soft.com/en/learn/define-range-from-cell-count-take-and-offset/ - **Summary**: Choose the first N rows of a fixed revenue range with TAKE or OFFSET, enforcing an integer count and complete numeric data before computing totals and averages. - **Formula (Total of the first N periods)**: `=IF(COUNT(D2)<>1,"Enter numeric period count",IF(OR(D2<1,D2>ROWS(B2:B7),D2<>INT(D2)),"Invalid Period Count",IF(COUNT(TAKE(B2:B7,D2))<>D2,"Selected periods require numeric revenue",SUM(TAKE(B2:B7,D2)))))` - **Formula (Average through an OFFSET reference)**: `=IF(COUNT(D2)<>1,"Enter numeric period count",IF(OR(D2<1,D2>ROWS(B2:B7),D2<>INT(D2)),"Invalid Period Count",IF(COUNT(TAKE(B2:B7,D2))<>D2,"Selected periods require numeric revenue",AVERAGE(OFFSET(B2,0,0,D2,1)))))` ### Degree of Operating (DOL), Financial (DFL), and Combined Leverage (DCL) formulas - **URL**: https://sheets.arte-soft.com/en/learn/degree-of-operating-financial-and-combined-leverage-dol-dfl/ - **Summary**: Measure how fixed operating costs and debt interest magnify revenue swings into EBIT and EPS volatility via DOL, DFL, and DCL = DOL * DFL. *Table — Quantify fixed-cost operating risk vs. debt-interest financial risk:* | Leverage Metric ($1,000k Rev, $400k Var, $400k Fixed, $50k Int) | Formula | Multiplier & Impact of +10% Sales | | --- | --- | --- | | Contribution Margin & EBIT | $1,000k - $400k = $600k CM | EBIT = $600k - $400k = $200k | | Degree of Operating Leverage (DOL) | CM / EBIT = $600k / $200k | 3.00x (+30.0% EBIT) | | Degree of Financial Leverage (DFL) | EBIT / (EBIT - Int) = $200k / $150k | 1.33x | | Degree of Combined Leverage (DCL) | DOL * DFL = CM / EBT = $600k / $150k | 4.00x (+40.0% EBT / EPS) | - **Formula (Degree of Operating Leverage (DOL))**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0),"Invalid inputs",IF(A2-B2-C2=0,"Undefined",LET(cm, A2 - B2, ebit, cm - C2, ROUND(cm / ebit, 2))))` - **Formula (Combined leverage (DCL))**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0),"Invalid inputs",IF(A2-B2-C2-D2=0,"Undefined",LET(cm, A2 - B2, ebt, cm - C2 - D2, ROUND(cm / ebt, 2))))` - **Formula (Financial leverage (DFL))**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0),"Invalid inputs",IF(A2-B2-C2-D2=0,"Undefined",LET(ebit, A2 - B2 - C2, ROUND(ebit / (ebit - D2), 2))))` ### DEGREES function: convert radian outputs from ATAN, ASIN, and ACOS into degrees - **URL**: https://sheets.arte-soft.com/en/learn/degrees-convert-radians-to-angle/ - **Summary**: Turn radian arc values and inverse-trigonometric results into readable degree angles using DEGREES. *Table — Make inverse trigonometry human-readable:* | Radian Input | Formula | Degrees | | --- | --- | --- | | 0 | =DEGREES(0) | 0 | | PI()/4 (0.785398) | =DEGREES(ATAN(1)) | 45 | | PI()/2 (1.570796) | =DEGREES(PI()/2) | 90 | | PI() (3.141593) | =DEGREES(PI()) | 180 | | -PI()/6 (-0.523599) | =ROUND(DEGREES(-PI()/6), 4) | -30 | - **Formula (Convert curved track arc angle to degrees)**: `=ROUND(DEGREES(A2 / B2), 4)` - **Formula (Guard zero radius and preserve negative angles)**: `=IF(B2<=0, "Check radius", ROUND(DEGREES(A2 / B2), 4))` ### Deming & Orthogonal Regression Slope Formula (Errors-in-Variables CLSI EP09) - **URL**: https://sheets.arte-soft.com/en/learn/deming-orthogonal-errors-in-variables-regression-slope-formula/ - **Summary**: Eliminate regression dilution bias when both X and Y contain measurement noise using W. Edwards Deming’s exact variance-ratio slope b_1 = (s_yy - δ*s_xx + SQRT((s_yy - δ*s_xx)^2 + 4*δ*s_xy^2)) / (2*s_xy). *Table — Why ordinary least squares (OLS) systematically underestimates slope when the X analyzer has imprecision!:* | Error-Variance Ratio δ = σ_εy² / σ_εx² (sxx=144, syy=169, sxy=150) | Regression Slope Estimate | Comparison Model | Analytical Assumption | | --- | --- | --- | --- | | δ = 1.00 (Equal Analytical CV / Variance) | 1.0868 | Orthogonal / Major Axis TLS | Both X and Y Noisy Equally | | δ = 2.25 (Y Imprecision 1.5× Higher Than X) | 1.0698 | General Weighted Deming | Repeatability Ratio Calibrated | | δ → ∞ (OLS Limit s_xy / s_xx) | 1.0417 | Ordinary Least Squares | Assumes X Error-Free (Diluted!) | - **Formula (Deming Errors-in-Variables Regression Slope b_Deming)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 = 0, B5 <= 0), "Invalid Covariance Inputs", ROUND((B3 - B5 * B2 + SQRT(((B3 - B5 * B2) ^ 2) + 4 * B5 * (B4 ^ 2))) / (2 * B4), 4))` - **Formula (Attenuated Ordinary Least Squares (OLS) Slope s_xy / s_xx)**: `=IF(B2 <= 0, "Invalid Covariance Inputs", ROUND(B4 / B2, 4))` ### Dennard Scaling Breakdown & Dark Silicon Formula - **URL**: https://sheets.arte-soft.com/en/learn/dennard-mosfet-scaling-dynamic-power-density-and-dark-silicon-formula/ - **Summary**: Calculate Full-Chip Unthrottled Dynamic Power alpha * C_nF * V_DD^2 * f_GHz, Total Unthrottled Die Power, Thermal Design Power (TDP) Active Lit-Silicon Fraction, and Power-Gated Dark Silicon Share. *Table — Quantify why post-Dennard voltage floors force modern SoCs to power-gate Dark Silicon!:* | Post-Dennard Thermal Metric (C=250nF, alpha=0.20, VDD=0.8V, f=5GHz, Pleak=40W, TDP=100W) | Formula | Verified Output | | --- | --- | --- | | Unthrottled Dynamic Power (W) | alpha_sw * C_nF * V_DD^2 * f_GHz | 160.00 W (32.00 W @ 1 GHz) | | Full-Chip All-Tiles-On Power (W) | P_dynamic_full + P_leak_full | 200.00 W (300.00 W next node) | | Active Lit-Silicon Fraction | MIN(1, TDP_Cap / P_full) | 0.5000 (50.00% Lit Area) | | Power-Gated Dark Silicon Share | 1 - Active_Lit_Fraction | 0.5000 (0.6667 next node; 0 @ 1 GHz) | - **Formula (Post-Dennard Dark Silicon Fraction Formula)**: `=LET(c_nf, B2, al_s, B3, v_dd, B4, f_gh, B5, p_lk, B6, td_p, B7, IF(OR(c_nf <= 0, al_s <= 0, al_s > 1, v_dd <= 0, f_gh <= 0, p_lk < 0, td_p <= 0), "Invalid CMOS Power Envelope", LET(p_fl, al_s * c_nf * (v_dd ^ 2) * f_gh + p_lk, ph_l, MIN(1, td_p / p_fl), ROUND(1 - ph_l, 4))))` - **Formula (Next-Node Density Scaling vs Underclocked Mobile Sweep)**: `=IF(ISTEXT(E3), E3, ROUND(MIN(1, B7 / E3), 4))` ### Dependent Dropdown Conditional List Formula (FILTER & Parent-Child Audit) - **URL**: https://sheets.arte-soft.com/en/learn/dependent-dropdown-conditional-list-filter-choosecols/ - **Summary**: Generate a dynamic cascading list of valid child options for a selected parent category using FILTER and UNIQUE, and audit existing rows to catch mismatched parent-child pairs. *Table — Replace brittle INDIRECT named ranges with a single normalized mapping table:* | Parent Department | Valid Cost Center | Selected Parent (E2) | Spilled Child Options | | --- | --- | --- | --- | | Engineering | CC-Cloud | Engineering | CC-Cloud | | Engineering | CC-QA | Engineering | CC-QA | | Engineering | CC-Security | Engineering | CC-Security | | Finance | CC-Treasury | (Excluded) | — | | Finance | CC-Audit | (Excluded) | — | | Operations | CC-Logistics | (Excluded) | — | - **Formula (Dynamic Conditional List Spill for Selected Parent Category)**: `=TEXTJOIN(", ", TRUE, UNIQUE(FILTER(B2:B7, A2:A7 = E2, "Invalid Department")))` - **Formula (Stale Selection Integrity Check (Parent-Child Pair Validation))**: `=IF(SUMPRODUCT((A2:A7 = E2) * (B2:B7 = F2)) > 0, "Valid Pair", "Mismatched Child Option")` ### Depreciation methods compared: Straight-Line (SLN), SYD, and Double-Declining - **URL**: https://sheets.arte-soft.com/en/learn/depreciation-schedule-ddb-syd-vs-straight-line/ - **Summary**: Calculate Year-1..N asset depreciation under Straight-Line, Sum-of-Years'-Digits, and salvage-capped Double-Declining Balance. *Table — Even vs front-loaded asset depreciation schedules:* | Method ($55k cost, $5k salvage, 5 yr) | Year 1 Expense | Year 2 Expense | | --- | --- | --- | | Straight-Line (SLN) | 10,000.00 | 10,000.00 | | Sum-of-Years'-Digits (SYD) | 16,666.67 (5/15 * 50k) | 13,333.33 (4/15 * 50k) | | Double-Declining (200% DB) | 22,000.00 (40% * 55k) | 13,200.00 (40% * 33k) | - **Formula (Universal algebraic SYD, DDB, and SLN formulas)**: `=ROUND((A2 - B2) * (C2 - D2 + 1) / (C2 * (C2 + 1) / 2), 2)` - **Formula (Salvage-floored Year-1 Double-Declining Balance)**: `=ROUND(MIN(A2 - B2, A2 * (2 / C2)), 2)` ### DerSimonian-Laird Random-Effects Variance (τ²) & Higgins I² Meta-Analysis - **URL**: https://sheets.arte-soft.com/en/learn/dersimonian-laird-random-effects-tau-squared-heterogeneity/ - **Summary**: Calculate between-study random-effects heterogeneity variance τ^2 = MAX(0, (Q - (k - 1)) / (Σw - Σw^2 / Σw)) and Higgins I^2 (%) from Cochran’s Q and fixed-effect weights. *Table — Accounting for genuine between-trial clinical diversity with DerSimonian & Laird’s 1986 τ² estimator!:* | Cochran’s Q (k = 6 Studies, df = 5, C = 33.9048) | DerSimonian-Laird τ² | Higgins I² (%) | Meta-Analytic Model | | --- | --- | --- | --- | | Q = 14.80 (> df = 5) | 0.2890 | 66.22% (Substantial) | Random-Effects w* = 1 / (v_i + 0.2890) | | Q = 3.80 (<= df = 5) | 0.0000 (Truncated at 0) | 0.00% (Homogeneous) | Reduces Exactly to Fixed-Effect | | Invalid k < 2 or Non-Positive C | "Invalid Meta-Analysis Weights" | Error Guard | Requires >= 2 Studies | - **Formula (DerSimonian-Laird Between-Study Variance Estimator τ²)**: `=IF(OR(B3 < 2, B4 <= 0, B5 <= 0, (B4 - B5 / B4) <= 0), "Invalid Meta-Analysis Weights", ROUND(MAX(0, (B2 - (B3 - 1)) / (B4 - (B5 / B4))), 4))` - **Formula (Higgins-Thompson Inconsistency Percentage I² (%))**: `=IF(OR(B3 < 2, B2 <= 0), 0, ROUND(MAX(0, (B2 - (B3 - 1)) / B2) * 100, 2))` ### Highlight & Count Duplicate Columns in a Matrix (TEXTJOIN Signature + COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/detect-duplicate-columns-across-matrix-textjoin-countif/ - **Summary**: Detect accidentally duplicated import columns across a multi-row table by serializing each column vector with TEXTJOIN("|", FALSE, A2:A4) and flagging signatures with COUNTIF($A$5:$D$5, A5) > 1. *Table — Why row-wise duplicate rules miss duplicated vertical columns—and how column signatures catch them!:* | Matrix Column Vector (Rows 2–4) | TEXTJOIN("\|", FALSE, Col) Signature | COUNTIF($A$5:$D$5, Sig) > 1 | Audit Status | | --- | --- | --- | --- | | Col A: [120, 145, 160] | "120\|145\|160" | TRUE (Count = 2, matches Col C) | Duplicate Column Flagged! | | Col B: [85, 92, 110] | "85\|92\|110" | FALSE (Count = 1) | Unique Column | | Col C: [120, 145, 160] | "120\|145\|160" | TRUE (Count = 2, matches Col A) | Duplicate Column Flagged! | | Col D: [40, 55, 62] | "40\|55\|62" | FALSE (Count = 1) | Unique Column | - **Formula (Per-Column Duplicate Detection Rule = COUNTIF($A$5:$D$5, A5) > 1)**: `=COUNTIF(A5:D5, A5) > 1` - **Formula (Total Count of Colliding Columns Across the Matrix)**: `=SUM(A6:D6)` ### Detect Schedule & Room Double-Booking Conflicts (COUNTIFS Overlap) - **URL**: https://sheets.arte-soft.com/en/learn/detect-schedule-booking-conflicts-countifs-date-overlap/ - **Summary**: Flag overlapping conference-room, vehicle, or shift reservations on the same resource using De Morgan's interval overlap rule COUNTIFS(Resource, A2, Start, "<" & C2, End, ">" & B2) - 1 > 0. *Table — Catch overlapping reservations while allowing back-to-back handoffs!:* | Resource (A) | Start_Hour (B) | End_Hour (C) | Other Overlaps & Status | | --- | --- | --- | --- | | Room-A | 9.0 (09:00) | 11.0 (11:00) | 1 overlap (with 10:30–12:00) -> Conflict! | | Room-A | 10.5 (10:30) | 12.0 (12:00) | 1 overlap (with 09:00–11:00) -> Conflict! | | Room-A | 12.0 (12:00) | 13.5 (13:30) | 0 overlaps (Back-to-back at 12.0 is Clear!) | | Room-B | 10.0 (10:00) | 11.5 (11:30) | 0 overlaps (Different room Room-B!) | - **Formula (Double-Booking Conflict Status Formula (Back-to-Back Safe))**: `=IF(C2 <= B2, "Invalid Window (End <= Start)", IF(COUNTIFS($A$2:$A$5, A2, $B$2:$B$5, "<" & C2, $C$2:$C$5, ">" & B2) - 1 > 0, "Conflict", "Clear"))` - **Formula (Count Conflicting Reservations Against Row 2)**: `=COUNTIFS($A$2:$A$5, A2, $B$2:$B$5, "<" & C2, $C$2:$C$5, ">" & B2) - 1` ### Deurenberg Body Fat % from BMI Formula: Adult (>= 16 yr) & Child Age-Sex Equations - **URL**: https://sheets.arte-soft.com/en/learn/deurenberg-bmi-age-sex-body-fat-percentage-prediction-formula/ - **Summary**: Estimate underwater-weighing Percent Body Fat (%BF) from BMI, Age, and Sex using Paul Deurenberg et al.’s (1991, Br. J. Nutr.) adult equation (1.20*BMI + 0.23*Age - 10.8*Male - 5.4) and pediatric equation (1.51*BMI - 0.70*Age - 3.6*Male + 1.4). *Table — Why two adults with identical BMI = 25 kg/m^2 differ by > 13% in true body fat!:* | Subject Profile at Identical BMI = 25.0 kg/m^2 | Deurenberg Equation | Predicted Body Fat (%) | | --- | --- | --- | | 25-yr-old Adult Male (Male = 1) | 1.20*25 + 0.23*25 - 10.8 - 5.4 | 19.55% BF | | 65-yr-old Adult Male (Male = 1) | 1.20*25 + 0.23*65 - 10.8 - 5.4 | 28.75% BF | | 65-yr-old Adult Female (Male = 0) | 1.20*25 + 0.23*65 - 0 - 5.4 | 39.55% BF | - **Formula (Deurenberg (1991) Age-Branched Adult & Child Body Fat Percentage (%BF))**: `=IF(OR(B2 < 12, B2 > 65, B3 < 7, B3 > 95, AND(B4 <> 0, B4 <> 1)), "Invalid BMI, Age (7–95 yr), or Sex_Male (0/1)", ROUND(IF(B3 >= 16, 1.2 * B2 + 0.23 * B3 - 10.8 * B4 - 5.4, 1.51 * B2 - 0.7 * B3 - 3.6 * B4 + 1.4), 2))` - **Formula (Estimated Fat Mass (kg) = Body_Weight * (%BF / 100))**: `=IF(OR(B2 < 12, B2 > 65, B3 < 16, B3 > 95, AND(B4 <> 0, B4 <> 1), B5 <= 0), "Invalid Adult Anthropometric Inputs", ROUND(B5 * (1.2 * B2 + 0.23 * B3 - 10.8 * B4 - 5.4) / 100, 2))` ### Deutsch-Anderson Electrostatic Precipitator (ESP) SCA Formula - **URL**: https://sheets.arte-soft.com/en/learn/deutsch-anderson-electrostatic-precipitator-migration-velocity-and-sca/ - **Summary**: Calculate Electrostatic Precipitator Specific Collection Area (s/m), Deutsch-Anderson Collection Efficiency (%), Outlet Stack Dust Concentration (mg/m³), and Plate Area Required for 99.9% Removal (m²). *Table — Why jumping from 99.0% to 99.9% ESP capture requires +50% more steel plate area—not +1%!:* | Deutsch-Anderson ESP Metric (4,800 m² Plate, 100 m³/s, w_e = 0.10 m/s, 10 g/m³) | Formula | Verified Output | | --- | --- | --- | | Specific Collection Area SCA (s/m) | Total_Plate_Area_m2 / Gas_Flow_m3_s | 48.00 s/m | | ESP Collection Efficiency (%) | (1 - EXP(-w_e * SCA)) * 100 | 99.18% (94.39% High-Resistivity) | | Outlet Stack Dust Loading (mg/m³) | Inlet_g_m3 * 1000 * EXP(-w_e * SCA) | 82.30 mg/m³ (561.35 mg/m³ @ 0.06) | | Plate Area for 99.9% Capture (m²) | -(Q_gas / w_e) * LN(1 - 0.999) | 6,907.76 m² | - **Formula (Deutsch-Anderson Exponential ESP Efficiency Formula)**: `=LET(ar_p, B2, q_fl, B3, w_em, B4, c_in, B5, IF(OR(ar_p <= 0, q_fl <= 0, w_em <= 0, w_em > 1, c_in <= 0), "Invalid ESP Design Input", LET(sc_a, ar_p / q_fl, ROUND((1 - EXP(-w_em * sc_a)) * 100, 2))))` - **Formula (Low-Sulfur Coal Back-Corona Check (Set Migration Velocity w_e = 0.06 m/s))**: `=IF(ISTEXT(E3), E3, ROUND(B5 * 1000 * EXP(-B4 * (B2 / B3)), 2))` ### Dew Point temperature formula (Magnus equation) & condensation risk check - **URL**: https://sheets.arte-soft.com/en/learn/dew-point-magnus-formula-and-relative-humidity/ - **Summary**: Estimate dew point over liquid water from air temperature and relative humidity using a Magnus approximation. *Table — Estimate dew point rather than promise exact condensation behavior:* | Air Temp (°C) | Relative Humidity (B2) | Magnus Dew Point (°C) | 15 °C Chilled Pipe Status | | --- | --- | --- | --- | | 25.0 °C | 60% (0.60) | 16.70 °C | Condensation Risk! (16.70 >= 15) | | 25.0 °C | 40% (0.40) | 10.47 °C | Above estimated dew point (10.47 < 15) | | 25.0 °C | 100% (1.00) | 25.00 °C (Exact T!) | Saturated Air | - **Formula (Estimated Magnus Dew Point (°C) and surface condensation flag)**: `=IF(OR(COUNT(A2:B2)<>2,A2< -40,A2>50,B2<=0,B2>1),"Invalid temperature or RH",LET(g, LN(B2) + (17.625 * A2) / (243.04 + A2), ROUND((243.04 * g) / (17.625 - g), 2)))` - **Formula (Automated cold-surface condensation alert against Surface Temp C2)**: `=IF(OR(COUNT(A2:B2)<>2,A2< -40,A2>50,B2<=0,B2>1,NOT(ISNUMBER(C2))),"Invalid temperature or RH",LET(g, LN(B2) + (17.625 * A2) / (243.04 + A2), dp, (243.04 * g) / (17.625 - g), IF(C2 <= dp, "Condensation Risk", "Above estimated dew point")))` ### Strict Single-Match Lookup (DGET Uniqueness Guard vs. Silent XLOOKUP First-Match) - **URL**: https://sheets.arte-soft.com/en/learn/dget-unique-single-match-lookup-with-duplicate-error-guard/ - **Summary**: Enforce primary-key uniqueness in lookup formulas by reproducing DGET's exact single-record behavior—returning the value when 1 row matches, NO_MATCH when 0 match, and DUPLICATE_KEY when 2+ rows collide. *Table — Why XLOOKUP and VLOOKUP silently hide duplicate master-data keys:* | Matching Rows (n) | XLOOKUP Behavior | DGET Guard Behavior | Audit Action | | --- | --- | --- | --- | | n = 0 | Returns if_not_found | "NO_MATCH" | Flag missing master record | | n = 1 | Returns single match | Returns exact value | Clean primary-key lookup | | n >= 2 | Silently returns 1st row | "DUPLICATE_KEY" | Halt & deduplicate master table | - **Formula (Cell-Referenced DGET Uniqueness Guard Formula)**: `=LET(hit_count, COUNTIF($A$2:$A$6, E2), IF(hit_count = 0, "NO_MATCH", IF(hit_count > 1, "DUPLICATE_KEY", XLOOKUP(E2, $A$2:$A$6, $C$2:$C$6))))` - **Formula (Collaborative Duplicate Resolution in Arte Sheets)**: `=COUNTIF(D2:D6, ">1")` ### d’Hondt vs Sainte-Laguë Seat Apportionment Formula - **URL**: https://sheets.arte-soft.com/en/learn/dhondt-vs-sainte-lague-proportional-seat-apportionment-quotients/ - **Summary**: Compare Victor d’Hondt (divisors 1, 2, 3) against André Sainte-Laguë (odd divisors 1, 3, 5) highest-averages apportionment using LARGE and COUNTIF across multi-party seat allocations. *Table — See how switching divisors from (1, 2, 3) to (1, 3, 5) shifts seats from large parties to smaller entrants!:* | Party & Votes (Total = 100,000, K = 5 Seats) | d’Hondt Quotients (1, 2, 3) -> Cutoff 15,500 | Sainte-Laguë Quotients (1, 3, 5) -> Cutoff 11,000 | | --- | --- | --- | | Party_A (42,000 — 42%) | 42,000 \| 21,000 \| 14,000 -> 2 Seats | 42,000 \| 14,000 \| 8,400 -> 2 Seats | | Party_B (31,000 — 31%) | 31,000 \| 15,500 \| 10,333 -> 2 Seats | 31,000 \| 10,333 \| 6,200 -> 1 Seat | | Party_C (16,000 — 16%) | 16,000 \| 8,000 \| 5,333 -> 1 Seat | 16,000 \| 5,333 \| 3,200 -> 1 Seat | | Party_D (11,000 — 11%) | 11,000 \| 5,500 \| 3,667 -> 0 Seats! | 11,000 \| 3,667 \| 2,200 -> 1 Seat! | - **Formula (K-th Winning Quotient Cutoff LARGE(Matrix, K) Formula)**: `=IF(OR(J2 < 1, J2 > 8, INT(J2) <> J2), "Require Integer 1 <= K <= 8", ROUND(LARGE(C2:E5, J2), 2))` - **Formula (Party Seat Count via COUNTIF(Row_Quotients, ">=" & Cutoff) Formula)**: `=COUNTIF(F5:H5, ">=" & LARGE($F$2:$H$5, $J$2))` ### How to Diagnose and Fix #NAME? Errors: Unquoted Strings & Function Typos - **URL**: https://sheets.arte-soft.com/en/learn/diagnose-and-fix-name-error-unquoted-text-and-function-typos/ - **Summary**: Trace #NAME? errors to unquoted text criteria (Billing vs "Billing"), misspelled function identifiers (SUMIFF), or cell-coordinate LET names, and verify fixes with parameterized input cells. *Table — Spot why unquoted text and function typos produce #NAME? (or a silent 0 in SUMIF):* | Formula Attempt | Engine Result | Why It Happens | | --- | --- | --- | | =IF(B2 = Billing, C2, 0) | #NAME? | Unquoted Billing is looked up as an undefined named range | | =SUMIFF(B2:B5, "Billing", C2:C5) | #NAME? | Function typo SUMIFF is not a recognized function | | =SUMIF(B2:B5, E2, C2:C5) (with E2 = Billing) | 42 | Cell E2 supplies text cleanly with zero inline quotes | - **Formula (Parameterized Cell-Reference SUMIF Formula)**: `=SUMIF(B2:B5, E2, C2:C5)` - **Formula (Practice with a Hint-Only Prompt & Input Mutation)**: `=IF(ISERROR(F4), "UNQUOTED_OR_UNKNOWN_NAME", F4)` ### Diagnose & Prevent #NUM!, #REF!, and #NAME? Formula Errors - **URL**: https://sheets.arte-soft.com/en/learn/diagnose-and-fix-num-ref-and-name-formula-errors/ - **Summary**: Prevent #NUM! domain errors (negative SQRT/LOG or k > COUNT in LARGE/SMALL), #REF! out-of-bounds INDEX lookups, and #NAME? unquoted strings or function typos using proactive boundary guards. *Table — Catch domain and bounds violations BEFORE #NUM! or #REF! cascades!:* | Error Code | Typical Root Cause | Silent IFERROR Risk | Targeted Domain Guard | | --- | --- | --- | --- | | #NUM! | SQRT(x) with x < 0, or LARGE(rng, k) with k > COUNT(rng) | Masks invalid rank k or negative variance | IF(k > COUNT(rng), "Rank Exceeds Count", LARGE(rng, k)) | | #REF! | INDEX(rng, r) where r < 1 or r > ROWS(rng) | Returns 0 as if row existed | IF(OR(r < 1, r > ROWS(rng)), "Row Out of Bounds", INDEX(rng, r)) | | #NAME? | Misspelled function VLLOKUP or unquoted text Active | Hides broken formula syntax! | Fix spelling/quotes—do NOT mask #NAME? with IFERROR! | - **Formula (Domain-Guarded K-th Largest Value (Prevents #NUM! When k > Count))**: `=IF(OR(D2 < 1, D2 > COUNT(A2:A5)), "Invalid Rank k (Exceeds Count)", LARGE(A2:A5, D2))` - **Formula (Bounds-Guarded INDEX Row Lookup (Prevents #REF! Out-of-Range))**: `=IF(OR(D3 < 1, D3 > ROWS(A2:A5)), "Row Index Out of Bounds", INDEX(A2:A5, D3))` ### How to Fix #VALUE! Errors in Math (+ vs SUM) & Text Slicing - **URL**: https://sheets.arte-soft.com/en/learn/diagnose-and-fix-value-errors-in-text-and-math-formulas/ - **Summary**: Diagnose text in arithmetic and missing delimiters. Choose deliberately between a numeric subtotal and a complete-data total, and keep missing quantities distinct from zero. - **Formula (A subtotal of available numeric values)**: `=SUM(B2:B4)` - **Formula (Require all planned amounts before reporting a total)**: `=IF(COUNT(B2:B4)<>ROWS(B2:B4),"Incomplete numeric inputs",SUM(B2:B4))` - **Formula (Keep pending quantity separate from a free or zero-quantity order)**: `=IF(COUNT(D2:E2)<>2,"Enter numeric price and quantity",IF(OR(D2<0,E2<0,E2<>INT(E2)),"Use nonnegative price and whole quantity",D2*E2))` - **Formula (Extract a prefix only when the delimiter exists)**: `=IF(COUNTBLANK(A2)>0,"Enter a code",IF(NOT(ISTEXT(A2)),"Enter a text code",IF(ISNUMBER(FIND("-",A2)),LEFT(A2,FIND("-",A2)-1),A2)))` ### Fix and Prevent #REF! Errors in VLOOKUP, INDEX, and Structural Edits - **URL**: https://sheets.arte-soft.com/en/learn/diagnose-and-guard-ref-error-out-of-bounds-index-and-vlookup/ - **Summary**: Reproduce #REF! when col_index_num or INDEX coordinates exceed table dimensions, guard column bounds dynamically with COLUMNS/ROWS, and prevent broken column counts with MATCH or XLOOKUP. *Table — Reproduce a live #REF! error without deleting a single column:* | Failure Mode | Broken Formula | Root-Cause Fix | | --- | --- | --- | | col_index_num > table width | =VLOOKUP("SKU-20", A2:C4, 4, FALSE) -> #REF! | Check col_num <= COLUMNS(A2:C4) or use XLOOKUP | | INDEX row > table height | =INDEX(A2:C4, 5, 2) -> #REF! | Check row_num <= ROWS(A2:C4) before indexing | | Hardcoded column count breaks after delete | Static 3 after deleting column B | Replace static 3 with MATCH("List_Price", $A$1:$C$1, 0) | - **Formula (Bounds-Checked VLOOKUP Diagnostic Formula)**: `=IF(OR(F3 < 1, F3 > COLUMNS($A$2:$C$4)), "COL_OUT_OF_BOUNDS", VLOOKUP(F2, $A$2:$C$4, F3, FALSE))` - **Formula (Header-Driven Lookup & Peer Suggestion Check)**: `=VLOOKUP(F2, $A$2:$C$4, MATCH(F4, $A$1:$C$1, 0), FALSE)` ### Fix #CALC! & #SPILL! Dynamic Array Errors (Empty FILTER Guard) - **URL**: https://sheets.arte-soft.com/en/learn/diagnose-and-prevent-calc-empty-filter-and-spill-errors/ - **Summary**: Handle an empty FILTER result without confusing zero totals with undefined averages, and distinguish empty results from blocked spill output. *Table — An empty result, invalid input and blocked output are different problems:* | Formula Pattern (Threshold D2 = $60,000) | Result When 0 Rows Match | Dashboard Safety | | --- | --- | --- | | FILTER(A2:A5, B2:B5 >= D2) | #CALC! error! | Breaks downstream charts & totals | | FILTER(A2:A5, B2:B5 >= D2, "No Qualifying Deals") | "No Qualifying Deals" | Clean human-readable empty state | | SUM(FILTER(B2:B5, B2:B5 >= D2, 0)) | 0 | Numeric-safe $0 total! | - **Formula (Empty-Safe Text List with FILTER [if_empty])**: `=FILTER(A2:A5, B2:B5 >= D2, "No Qualifying Deals")` - **Formula (Empty-Safe Numeric Aggregation SUM(FILTER(..., 0)))**: `=SUM(FILTER(B2:B5, B2:B5 >= D2, 0))` - **Formula (Validate numeric inputs)**: `=IF(OR(COUNT(B2:B5)<>4,NOT(ISNUMBER(D2))),"Invalid inputs","Ready")` - **Formula (Do not invent an average for an empty result)**: `=IF(OR(COUNT(B2:B5)<>4,NOT(ISNUMBER(D2))),"Invalid inputs",IF(COUNTIF(B2:B5,">="&D2)=0,"No qualifying values",AVERAGE(FILTER(B2:B5,B2:B5>=D2,0))))` ### Fix & Prevent #### Negative Date/Time Errors & #NULL! Space-Operator Typos - **URL**: https://sheets.arte-soft.com/en/learn/diagnose-and-prevent-null-intersection-and-hashtag-width-errors/ - **Summary**: Eliminate Excel’s #### negative-duration display error with IF(End < Start, ...) guards and replace accidental space-separated #NULL! range intersections with comma unions. *Table — Two misunderstood spreadsheet failures: #### isn’t always column width, and a missing comma triggers #NULL!!:* | Error Symptom | Root Formula Cause | Defensive Fix | Verified Output | | --- | --- | --- | --- | | #### on Date/Time Cell | Negative duration C2 - B2 < 0 | IF(C2 < B2, "End Before Start", C2 - B2) | 8 days (or clean alert) | | #NULL! Error | Missing comma =SUM(D2:D3 E2:E3) | Comma union =SUM(D2:D3, E2:E3) | $4,800 combined sum | | Inverted Ship Date 2026-10-08 | Earlier than Order 2026-10-12 | Caught before negative serial | "End Before Start" | - **Formula (####-Safe Non-Negative Lead-Time Subtraction)**: `=IF(C2 < B2, "End Before Start", C2 - B2)` - **Formula (#NULL!-Free Multi-Range Union Sum (Comma Separator))**: `=SUM(D2:D3, E2:E3)` ### Diagnostic Sensitivity, Specificity, Youden's J & Likelihood Ratios (LR+/LR-) - **URL**: https://sheets.arte-soft.com/en/learn/diagnostic-sensitivity-specificity-youdens-j-and-likelihood-ratios/ - **Summary**: Calculate sensitivity, specificity, Youden’s J and likelihood ratios from a fictional binary-classification table, with explicit checks for undefined ratios. *Table — Describe a binary classifier at a fixed threshold:* | Biostatistical Test Metric | Formula | Assay Data (TP=85, FN=15, TN=360, FP=40) | Random Coin Flip (50%/50%) | | --- | --- | --- | --- | | Sensitivity (True Pos Rate) | B2 / (B2 + B3) | 85 / 100 = 85.0% (0.8500) | 50.0% (0.5000) | | Specificity (True Neg Rate) | B4 / (B4 + B5) | 360 / 400 = 90.0% (0.9000) | 50.0% (0.5000) | | Youden's J Index (ROC Cutoff) | Sens + Spec - 1 | 0.85 + 0.90 - 1 = 0.7500 | 0.0000 (Zero diagnostic power) | | Likelihood Ratios LR+ / LR- | Sens/(1-Spec) & (1-Sens)/Spec | LR+ = 8.50 \| LR- = 0.1667 | LR+ = 1.00 \| LR- = 1.00 | - **Formula (Youden's J Index = (TP / (TP + FN)) + (TN / (TN + FP)) - 1)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0),"Not estimable",ROUND(B2/(B2+B3)+B4/(B4+B5)-1,4))))` - **Formula (Positive Likelihood Ratio LR+ = Sensitivity / (1 - Specificity))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0,B5=0),"Not estimable",ROUND((B2/(B2+B3))/(B5/(B4+B5)),4))))` - **Formula (Sensitivity)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(B2+B3=0,"Not estimable",B2/(B2+B3))))` - **Formula (Specificity)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(B4+B5=0,"Not estimable",B4/(B4+B5))))` - **Formula (Negative likelihood ratio)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0,B4=0),"Not estimable",ROUND((B3/(B2+B3))/(B4/(B4+B5)),4))))` ### Diamond Delegated Monitoring & Diversification Formula - **URL**: https://sheets.arte-soft.com/en/learn/diamond-delegated-monitoring-intermediary-diversification-cost/ - **Summary**: Calculate Douglas Diamond’s (1984) delegated-monitoring cost advantage of a diversified bank over duplicated direct saver monitoring (m*K) and unmonitored debt. *Table — See how pooling independent loans collapses the cost of monitoring the monitor!:* | Financing Architecture (m=100, K=0.02, p=0.80, R_H=1.70, R_L=0.50) | Formula | Total Cost / Loan | | --- | --- | --- | | Direct Duplicated Monitoring (m Savers) | m * K_mon | 2.0000 (200.00%) | | Undiversified 1-Loan Intermediary (N = 1) | K_mon + (1 - p)*(F_1 - R_L) | 0.1575 (15.75% > 8% Direct) | | Diversified 2-Loan Intermediary (N = 2) | K_mon + (1 - p)^2 * (F_2 - R_L) | 0.0429 (4.29% Beats Direct!) | | Asymptotic Diversified Bank (N -> inf) | K_mon + 0 (LLN Limit) | 0.0200 (2.00% First-Best Monitor) | - **Formula (Undiversified (N = 1) vs Two-Loan Diversified (N = 2) Bank Cost Formula)**: `=LET(m_sv, B2, k_mn, B3, p_ok, B5, r_hi, B6, r_lo, B7, r_dp, B8, e_rt, p_ok * r_hi + (1 - p_ok) * r_lo, IF(OR(m_sv < 1, k_mn < 0, p_ok <= 0, p_ok >= 1, r_lo < 0, r_dp <= r_lo, e_rt <= r_dp), "Invalid Diamond Input", LET(p_bb, (1 - p_ok) ^ 2, r_md, (r_hi + r_lo) / 2, f_lw, (r_dp - p_bb * r_lo) / (1 - p_bb), d_tw, IF(f_lw <= r_md, p_bb * (f_lw - r_lo), LET(p_mx, 2 * p_ok * (1 - p_ok), f_hi, (r_dp - p_mx * r_md - p_bb * r_lo) / (p_ok ^ 2), p_mx * (f_hi - r_md) + p_bb * (f_hi - r_lo))), ROUND(k_mn + d_tw, 4))))` - **Formula (Net Intermediation Advantage Over Unmonitored Debt Formula)**: `=IF(ISTEXT(E4), E4, ROUND(B4 - E4, 4))` ### Diamond-Dybvig Bank-Run Threshold & Liquidity Formula - **URL**: https://sheets.arte-soft.com/en/learn/diamond-dybvig-bank-run-threshold-and-liquidity-reserve-formula/ - **Summary**: Solve the Diamond-Dybvig optimal risk-sharing deposit contract (c_1*, c_2*), liquid reserve share t * c_1*, and critical withdrawal fraction f_crit* triggering a rational bank run. *Table — Show how socially optimal maturity transformation simultaneously creates bank-run fragility!:* | Diamond-Dybvig Metric (t_imp=0.25, R=1.96, gamma=2.0) | Formula | Verified Output | | --- | --- | --- | | Optimal Early Deposit Payout (c_1*) | R / (t_imp*R + (1 - t_imp)*R^(1/gamma)) | 1.2727 (> 1.00 Autarky) | | Optimal Patient Payout (c_2*) | R^(1 / gamma) * c_1* | 1.7818 (< 1.96 Long Asset) | | Planned Liquid Cash Reserve (L*) | t_imp * c_1* | 0.3182 (31.82% of Assets) | | Critical Run Threshold (f_crit*) | (R - c_1*) / (c_1* * (R - 1)) | 0.5625 (56.25% Withdrawals) | - **Formula (Diamond-Dybvig Optimal Early Withdrawal Payout c_1* Formula)**: `=LET(t_im, B2, r_lg, B3, gam_c, B4, IF(OR(t_im <= 0, t_im >= 1, r_lg <= 1, gam_c <= 1), "Require 0 < t < 1, R > 1, gamma > 1", ROUND(r_lg / (t_im * r_lg + (1 - t_im) * POWER(r_lg, 1 / gam_c)), 4)))` - **Formula (Self-Fulfilling Bank-Run Critical Withdrawal Threshold f_crit* Formula)**: `=LET(t_im, B2, r_lg, B3, gam_c, B4, IF(OR(t_im <= 0, t_im >= 1, r_lg <= 1, gam_c <= 1), "Require 0 < t < 1, R > 1, gamma > 1", LET(c_1s, r_lg / (t_im * r_lg + (1 - t_im) * POWER(r_lg, 1 / gam_c)), ROUND((r_lg - c_1s) / (c_1s * (r_lg - 1)), 4))))` ### Diamond-Saez Optimal Top Marginal Rate & Pareto Formula - **URL**: https://sheets.arte-soft.com/en/learn/diamond-saez-optimal-top-marginal-rate-pareto-elasticity-formula/ - **Summary**: Estimate the Pareto income tail index a = z_bar / (z_bar - z*) and compute the Diamond-Saez optimal top bracket rate tau* = (1 - g) / (1 - g + a * e). *Table — Combine top-income Pareto thickness, behavioral elasticity, and welfare weights in one formula:* | Diamond-Saez Quantity (z*=400k, z_bar=1M, e=0.25) | Formula | Verified Output | | --- | --- | --- | | Empirical Pareto Tail Index (a_par) | z_bar / (z_bar - z*) | 1.6667 (Thicker Tail < 2) | | Revenue-Maximizing Rate (g_top = 0) | 1 / (1 + a_par * e_eti) | 0.7059 (70.59%) | | Optimal Welfare-Weighted Rate (g = 0.10) | (1 - g_top) / (1 - g_top + a_par * e_eti) | 0.6835 (68.35%) | - **Formula (Empirical Pareto Tail Index a_par = z_bar / (z_bar - z*) Formula)**: `=IF(OR(B2 <= 0, B3 <= B2), "Require z_bar > z* > 0", ROUND(B3 / (B3 - B2), 4))` - **Formula (Diamond-Saez Optimal Top Marginal Rate tau* Formula)**: `=LET(z_cut, B2, z_mn, B3, e_bh, B4, g_wt, B5, IF(OR(z_cut <= 0, z_mn <= z_cut, e_bh <= 0, g_wt < 0, g_wt >= 1), "Invalid Diamond-Saez Input", LET(a_pr, z_mn / (z_mn - z_cut), ROUND((1 - g_wt) / (1 - g_wt + a_pr * e_bh), 4))))` ### Diebold-Mariano and HLN Forecast Accuracy Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/diebold-mariano-and-harvey-leybourne-newbold-forecast-accuracy-test/ - **Summary**: Test whether two competing models have equal out-of-sample forecast accuracy using Diebold-Mariano loss differentials d_t and Harvey-Leybourne-Newbold’s finite-sample correction. *Table — Stop declaring a forecast winner from raw RMSE differences without testing d_t variance!:* | Forecast Comparison Metric (T=8, h=1) | Formula Expression | Sample Output | | --- | --- | --- | | Mean Loss Differential d_bar | AVERAGE(e_1t^2 - e_2t^2) | +5.0000 (Model 2 beats Model 1) | | Asymptotic Diebold-Mariano DM | d_bar / SQRT(VARP(d_t) / T) | +7.5593 (Overstated in small T) | | HLN Finite-Sample Factor k_HLN | SQRT((T + 1 - 2*h + h*(h-1)/T) / T) | 0.9354 (SQRT(7/8) at h = 1) | | HLN-Modified Statistic DM_HLN | k_HLN * DM | +7.0711 (5 * SQRT(2)) | - **Formula (Harvey-Leybourne-Newbold Finite-Sample Scaling Factor k_HLN Formula)**: `=LET(t_len, ROWS(D2:D9), h_hor, G2, num_k, t_len + 1 - 2 * h_hor + (h_hor * (h_hor - 1)) / t_len, IF(OR(h_hor < 1, num_k <= 0), "Horizon Too Long for Sample", ROUND(SQRT(num_k / t_len), 4)))` - **Formula (HLN-Adjusted Diebold-Mariano Statistic DM_HLN Formula)**: `=LET(t_len, ROWS(D2:D9), h_hor, G2, v_pop, VARP(D2:D9), num_k, t_len + 1 - 2 * h_hor + (h_hor * (h_hor - 1)) / t_len, IF(OR(h_hor < 1, num_k <= 0, v_pop <= 0), "Invalid DM Series", ROUND((AVERAGE(D2:D9) / SQRT(v_pop / t_len)) * SQRT(num_k / t_len), 4)))` ### Calculate difference from last non-blank entry in a sparse log (TAKE & FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/difference-from-last-non-blank-entry-sparse-log/ - **Summary**: Subtract the previous numeric reading in source-row order, preserving gaps and numeric zero. *Table — Compare recorded readings across blank rows:* | Log Day (A) | Meter Reading (B) | Prior Non-Blank Found | Interval Delta | | --- | --- | --- | --- | | Day 1 (Row 2) | 100 | — (Baseline start) | "" (First entry) | | Day 2 (Row 3) | "" (Skipped) | — | "" | | Day 3 (Row 4) | 108 | 100 (from Row 2) | +8 | | Day 4–5 (Rows 5–6) | "" (Skipped) | — | "" | | Day 6 (Row 7) | 115 | 108 (from Row 4) | +7 (or -5 if Row 6 = 120) | - **Formula (Difference between current reading and most recent non-blank entry above)**: `=IF(COUNTBLANK(B7)>0,"",IF(OR(COUNT(B7)<>1,COUNT(B$2:B6)+COUNTBLANK(B$2:B6)<>5),"Invalid inputs",IF(COUNT(B$2:B6)=0,"No prior reading",B7-TAKE(FILTER(B$2:B6,ISNUMBER(B$2:B6)),-1))))` - **Formula (Retrieve the last non-blank value above by itself)**: `=IF(COUNT(B$2:B6)+COUNTBLANK(B$2:B6)<>5,"Invalid inputs",IF(COUNT(B$2:B6)=0,"No prior reading",TAKE(FILTER(B$2:B6,ISNUMBER(B$2:B6)),-1)))` ### Difference-in-Differences (DiD) Causal Estimator and Pre-Trend Check - **URL**: https://sheets.arte-soft.com/en/learn/difference-in-differences-did-two-way-cell-means-and-pre-trend-check/ - **Summary**: Calculate the canonical 2x2 Difference-in-Differences ATT = (Y_T,post - Y_T,pre) - (Y_C,post - Y_C,pre), counterfactual level, and pre-intervention placebo trend test. *Table — Subtract both baseline selection differences and shared macro shocks:* | Causal Comparison | Formula Expression | Sample Output | | --- | --- | --- | | Naive Cross-Sectional Diff (Biased) | D2 - D3 (Post Treated - Post Control) | +41.00 (Inflated by +25 baseline gap!) | | Naive Before-After Diff (Biased) | D2 - C2 (Post Treated - Pre Treated) | +28.00 (Inflated by +12 macro trend!) | | Placebo Pre-Trend Check (t=-2 -> -1) | (C2 - B2) - (C3 - B3) | 0.00 (Parallel pre-trend verified) | | Difference-in-Differences ATT_DiD | (D2 - C2) - (D3 - C3) = D2 - Counterfactual | +16.00 (Counterfactual = 132.00) | - **Formula (Placebo Pre-Intervention Parallel-Trend Diagnostic Formula)**: `=ROUND((C2 - B2) - (C3 - B3), 4)` - **Formula (Canonical 2x2 Difference-in-Differences ATT & Counterfactual Percentage Lift Formula)**: `=IF(COUNT(B2:D3) < 6, "Missing Panel Cell", ROUND((D2 - C2) - (D3 - C3), 4))` ### Check if a value is within a percentage tolerance (±%) - **URL**: https://sheets.arte-soft.com/en/learn/difference-within-percentage-tolerance/ - **Summary**: Test symmetric upper and lower tolerance bands in one step with ABS(Measured - Target) / ABS(Target) <= Tolerance. *Table — Collapse upper and lower bounds into one ABS ratio:* | SpecTarget (A) | Measured (B) | MaxTolPct (C) | Relative Diff | Within Spec? | | --- | --- | --- | --- | --- | | 200 | 207 | 0.05 | 3.5% | TRUE | | 200 | 188 | 0.05 | 6.0% | FALSE | | 0 | 0 | 0.05 | Undefined; zero-target branch | TRUE | - **Formula (Zero-safe tolerance check formula)**: `=IF(A2=0, B2=0, ROUND(ABS(B2 - A2) / ABS(A2), 8) <= C2)` - **Formula (Exact boundary and zero-target checks)**: `=IF(A3=0, B3=0, ROUND(ABS(B3 - A3) / ABS(A3), 8) <= C3)` ### Differential Band Brake Force & Self-Locking Check Formula - **URL**: https://sheets.arte-soft.com/en/learn/differential-band-brake-self-energizing-lever-force-and-self-locking-check/ - **Summary**: Calculate Euler Band Tension Ratio exp(mu*theta), Tight & Slack Band Tensions T1 & T2 (N), Differential Lever Actuating Force F (N), and Self-Locking Grab Detection. *Table — Move a differential brake’s tight-side pin 15 mm too far from the pivot and the hoist drum violently self-locks with ZERO hand force!:* | Differential Band Brake KPI (Mb=960 N·m, r=0.20 m, 225°, mu=0.32, b=110, a=25, L=550 mm) | Formula | Verified Output | | --- | --- | --- | | Band Tension Ratio (T1 / T2) | EXP(Friction_mu * Wrap_rad) | 3.514 | | Tight-Side Band Tension T1 (N) | k * ((Torque_Nm / r_m) / (k - 1)) | 6,709.6 N | | Slack-Side Band Tension T2 (N) | (Torque_Nm / r_m) / (k - 1) | 1,909.6 N | | Actuating Lever Force F (N) | (b*T2 - a*T1) / L (grab if <= 0!) | 76.94 N (15.95 N @ a=30; GRAB @ a=40 mm!) | - **Formula (Euler-Band Tension Split & Differential Fulcrum Self-Locking Criterion Formula)**: `=LET(mb_n, B2, rd_m, B3, th_r, B4 * (PI() / 180), mu_f, B5, bs_m, B6, at_m, B7, lv_m, B8, kr_t, EXP(mu_f * th_r), t2_n, (mb_n / rd_m) / (kr_t - 1), t1_n, kr_t * t2_n, nm_t, bs_m * t2_n - at_m * t1_n, IF(OR(mb_n <= 0, rd_m <= 0, B4 < 90, B4 > 330, mu_f <= 0.05, mu_f > 0.8, bs_m <= 0, at_m < 0, lv_m <= bs_m), "Invalid Brake Input", IF(nm_t <= 0, "SELF-LOCKING GRAB DANGER", ROUND(nm_t / lv_m, 2))))` - **Formula (Over-Energized Tight Pin (a = 30 mm vs 40 mm) Violent Grab Check (Set Tight Arm B7 = 30 then 40 mm))**: `=IF(ISTEXT(E2), E2, LET(kr_t, EXP(B5 * (B4 * (PI() / 180))), t2_n, (B2 / B3) / (kr_t - 1), ROUND(kr_t * t2_n, 1)))` ### Dilution (C1*V1 = C2*V2) and two-stock blending (Pearson Square) formulas - **URL**: https://sheets.arte-soft.com/en/learn/dilution-and-solution-concentration-c1v1-c2v2/ - **Summary**: Calculate a stock volume from concentration balance and illustrate two-stock blending under an additive-volume assumption. *Table — Generalize C1*V1 = C2*V2 to two-concentration Pearson Square blending:* | Scenario (Final = 360 mL @ 5%) | High 20% Stock Needed | Low stock / diluent (additive-volume model) | | --- | --- | --- | | Dilute 20% with Pure Water (0%) | 360 * (5 - 0) / (20 - 0) = 90 mL | 270 mL water | | Blend 20% Stock + 2% Stock | 360 * (5 - 2) / (20 - 2) = 60 mL | 300 mL of 2% stock | - **Formula (Concentration-balance formulas with input guards)**: `=IF(OR(B2A2, A2<=D2, D2<0, C2<0), "Out of Range", ROUND(C2 * (B2 - D2) / (A2 - D2), 2))` - **Formula (Volume of solvent / low-concentration stock required)**: `=IF(OR(B2A2,A2<=D2,D2<0,C2<0),"Out of Range",ROUND(C2 - (C2 * (B2 - D2) / (A2 - D2)), 2))` ### Dimensional Weight (DIM Weight) vs. Actual Weight billable shipping formula - **URL**: https://sheets.arte-soft.com/en/learn/dimensional-weight-dim-weight-vs-actual-billable-freight/ - **Summary**: Compare dimensional and scale weight using a supplied divisor and an explicit whole-pound rounding assumption. *Table — Compare two weight bases under a stated shipping rule:* | Carton Profile (Divisor = 139 in^3/lb) | Scale Weight (Rounded Up) | DIM Weight ROUNDUP(L*W*H/139, 0) | Billable Weight | | --- | --- | --- | --- | | Bulky Pillow Box (24×18×12 in, 19.4 lb) | 20 lb | ROUNDUP(5184 / 139, 0) = 38 lb | 38 lb (DIM Wins!) | | Dense Steel Parts (24×18×12 in, 44.2 lb) | 45 lb | 38 lb | 45 lb (Scale Wins!) | | Negotiated Divisor 166 (24×18×12 in, 19.4 lb) | 20 lb | ROUNDUP(5184 / 166, 0) = 32 lb | 32 lb (Saves 6 lb!) | - **Formula (Calculate carrier Billable Weight (MAX of Scale vs. DIM))**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:E2)<=0),"Invalid inputs",MAX(ROUNDUP(D2, 0), ROUNDUP((A2 * B2 * C2) / E2, 0)))` - **Formula (Increase in modeled billable pounds due to volume)**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:E2)<=0),"Invalid inputs",MAX(0, ROUNDUP((A2 * B2 * C2) / E2, 0) - ROUNDUP(D2, 0)))` ### Age-Standardized Rate & SMR Simpson’s Paradox Formula - **URL**: https://sheets.arte-soft.com/en/learn/direct-age-standardized-rate-and-indirect-smr-epidemiology-formula/ - **Summary**: Resolve hospital mortality Simpson’s Paradox using Direct Age-Standardized Rate (DASR per 1,000) and Indirect Standardized Mortality Ratio SMR = Observed / Expected. *Table — Catch Simpson’s Paradox when a top referral hospital’s crude mortality looks 65% worse than average!:* | Hospital Quality Metric (10,000 Patients, 560 Deaths) | Formula | Verified Output | | --- | --- | --- | | Confounded Crude Rate (per 1,000) | 1,000 * SUM(E2:E4) / SUM(D2:D4) | 56.00 / 1,000 (Simpson’s Paradox!) | | Direct Age-Standardized Rate (DASR) | 1,000 * SUMPRODUCT(B2:B4, F2:F4) | 27.20 / 1,000 (vs 34.00 National!) | | Expected Case-Mix Deaths | SUMPRODUCT(D2:D4, C2:C4) | 700.00 expected deaths | | Indirect Standardized Mortality Ratio | SUM(E2:E4) / Expected_Deaths | 0.8000 (20% Below Expected!) | - **Formula (Direct Age-Standardized Rate per 1,000 (DASR) Formula)**: `=IF(OR(MIN(B2:B4) < 0, SUM(B2:B4) <= 0, MIN(D2:D4) <= 0), "Invalid Stratum Input", ROUND(1000 * SUMPRODUCT(B2:B4, F2:F4) / SUM(B2:B4), 2))` - **Formula (Indirect Standardized Mortality Ratio (SMR = Observed / Expected) Formula)**: `=LET(obs_d, SUM(E2:E4), exp_d, SUMPRODUCT(D2:D4, C2:C4), IF(OR(MIN(D2:D4) < 0, MIN(C2:C4) < 0, exp_d <= 0), "Invalid Stratum Input", ROUND(obs_d / exp_d, 4)))` ### Directional Drilling Dogleg Severity & Minimum Curvature Formula - **URL**: https://sheets.arte-soft.com/en/learn/directional-drilling-minimum-curvature-dogleg-severity-dls-and-tvd-step-formula/ - **Summary**: Calculate 3D Spherical Dogleg Angle beta (deg), Normalized Dogleg Severity DLS (deg/30 m), Minimum-Curvature Ratio Factor RF, and True Vertical Depth Step Delta_TVD (m). *Table — Turning azimuth at high inclination spikes 3D Dogleg Severity—even when inclination barely changes!:* | MWD Minimum-Curvature KPI (dMD=30 m, I: 15°->18°, Az: 45°->55°) | Formula | Verified Output | | --- | --- | --- | | 3D Dogleg Angle beta (deg) | DEGREES(ACOS(COS(I1)*COS(I2)+SIN(I1)*SIN(I2)*COS(dA))) | 4.121° (10.858° @ I2=21°, Az2=75°) | | Dogleg Severity DLS (deg/30 m) | (beta_deg / Course_dMD_m) * 30 | 4.12 °/30m (10.86 °/30m sharp!) | | Minimum-Curvature Factor RF | IF(beta=0, 1, (2/beta_rad)*TAN(beta_rad/2)) | 1.00043 (1.00300 @ sharp turn) | | True Vertical Depth Step dTVD (m) | (dMD / 2) * (COS(I1) + COS(I2)) * RF | 28.77 m (28.58 m @ sharp turn) | - **Formula (API / SPE Minimum-Curvature Dogleg Severity & Delta_TVD Formula)**: `=LET(md_m, B2, ia_d, B3, ib_d, B4, aa_d, B5, ab_d, B6, IF(OR(md_m <= 0, ia_d < 0, ia_d > 180, ib_d < 0, ib_d > 180, aa_d < 0, aa_d > 360, ab_d < 0, ab_d > 360), "Invalid Survey Input", LET(dr_f, PI() / 180, ia_r, ia_d * dr_f, ib_r, ib_d * dr_f, da_r, (ab_d - aa_d) * dr_f, cs_b, MIN(1, MAX(-1, COS(ia_r) * COS(ib_r) + SIN(ia_r) * SIN(ib_r) * COS(da_r))), bt_r, ACOS(cs_b), rf_m, IF(bt_r < 0.000001, 1, (2 / bt_r) * TAN(bt_r / 2)), ROUND((md_m / 2) * (COS(ia_r) + COS(ib_r)) * rf_m, 2))))` - **Formula (Aggressive Rotary-Steerable Build & 30° Azimuth Turn Check (Set I_2 = 21° & Az_2 = 75°))**: `=IF(ISTEXT(E5), E5, LET(dr_f, PI() / 180, ia_r, B3 * dr_f, ib_r, B4 * dr_f, da_r, (B6 - B5) * dr_f, bt_d, ACOS(MIN(1, MAX(-1, COS(ia_r) * COS(ib_r) + SIN(ia_r) * SIN(ib_r) * COS(da_r)))) / dr_f, ROUND((bt_d / B2) * 30, 2)))` ### DCF valuation formula: NPV of cash flows plus Gordon Growth Terminal Value - **URL**: https://sheets.arte-soft.com/en/learn/discounted-cash-flow-dcf-terminal-value/ - **Summary**: Calculate Enterprise Value by combining NPV of explicit forecast Free Cash Flows with discounted perpetuity Terminal Value. *Table — Remember to discount Terminal Value back to Year 0:* | Component | Formula (WACC=10%, g=3%) | Value ($M) | | --- | --- | --- | | PV of Yr 1–3 FCF (100, 120, 150) | =NPV(0.10, B2:B4) | 302.78 | | Undiscounted TV at Yr 3 | =150 * 1.03 / (0.10 - 0.03) | 2,207.14 | | PV of TV at Yr 0 | =2207.14 / 1.10^3 | 1,658.26 | | Enterprise Value | =PV(FCF) + PV(TV) | 1,961.04 | - **Formula (Full DCF Enterprise Value formula)**: `=IF(C2<=D2, "Invalid g>=WACC", ROUND(NPV(C2, B2:B4) + (B4 * (1 + D2) / (C2 - D2)) / (1 + C2)^ROWS(B2:B4), 2))` - **Formula (Present Value of explicit forecast stage only)**: `=ROUND(NPV(C2, B2:B4), 2)` ### Zero-Coupon Commercial Paper: PRICEDISC, YIELDDISC, RECEIVED & INTRATE Formulas - **URL**: https://sheets.arte-soft.com/en/learn/discounted-commercial-paper-pricedisc-yielddisc-received/ - **Summary**: Price discounted money-market bills and commercial paper per $100 par (PRICEDISC), compute true money-market investment yield (YIELDDISC & INTRATE), and determine maturity redemption value (RECEIVED). *Table — Bank discount rate on par vs true investment yield on purchase outlay:* | Money-Market Metric | Closed-Form Equation | 90-Day Paper (d = 5.20%, Actual/360) | Economic Interpretation | | --- | --- | --- | --- | | PRICEDISC (per $100 par) | 100 * (1 - d * DSM / B) | $98.70 | $1.30 discount deducted upfront | | YIELDDISC / INTRATE | ((100 - P) / P) * (B / DSM) | 5.2685% | True return on $98.70 invested | | RECEIVED ($987,000 outlay) | Inv / (1 - d * DSM / B) | $1,000,000.00 | Par payout redeemed at maturity | - **Formula (Discounted Security Price per $100 Par (PRICEDISC))**: `=IF(OR(B3 <= B2, B5 < 0, B6 <= 0), "Invalid Terms", ROUND(B4 * (1 - B5 * (B3 - B2) / B6), 4))` - **Formula (Money-Market Yield (YIELDDISC / INTRATE) & Maturity Proceeds (RECEIVED))**: `=LET(dsm, B3 - B2, price, B4 * (1 - B5 * dsm / B6), ROUND(((B4 - price) / price) * (B6 / dsm), 6))` ### Discrete Probability Mass Interval, Expected Value & Variance (PROB & SUMIFS) - **URL**: https://sheets.arte-soft.com/en/learn/discrete-probability-interval-and-expected-value-prob/ - **Summary**: Validate discrete probability mass tables (sum = 1, non-negative weights), calculate interval probabilities P(L <= X <= U) via SUMIFS (PROB), and compute distribution mean and standard deviation. *Table — Validate probability axioms before summing discrete outcome intervals:* | Daily Claims (x) | Probability p(x) | Weighted x * p(x) | In Window [1, 3]? | | --- | --- | --- | --- | | 0 claims | 0.25 | 0.00 | Excluded (< 1) | | 1 claim | 0.35 | 0.35 | Included (0.35) | | 2 claims | 0.20 | 0.40 | Included (+0.20 = 0.55) | | 3 claims | 0.15 | 0.45 | Included (+0.15 = 0.70) | | 4 claims | 0.05 | 0.20 | Excluded (> 3) \| Mean = 1.40 | - **Formula (Axiom-Guarded Interval Probability P(Lower <= X <= Upper))**: `=IF(OR(MIN(B2:B6) < 0, ABS(SUM(B2:B6) - 1) > 0.000001), "Invalid Probability Mass", ROUND(SUMIFS(B2:B6, A2:A6, ">=" & D2, A2:A6, "<=" & D3), 6))` - **Formula (Discrete Expected Value E[X] and Standard Deviation)**: `=LET(mu, SUMPRODUCT(A2:A6, B2:B6), ROUND(SQRT(SUMPRODUCT(B2:B6, (A2:A6 - mu) ^ 2)), 4))` ### Dissolved Air Flotation (DAF) Air-to-Solids Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/dissolved-air-flotation-daf-recycle-air-to-solids-ratio-and-saturator-formula/ - **Summary**: Calculate DAF Saturator Net Released Air Factor (f*P - 1), Released Microbubble Air Concentration (mg/L), Mass Air-to-Solids Ratio A/S (kg air / kg TSS), and Recycle Pump Flow (m³/hr). *Table — Subtract 1.0 atm atmospheric saturation—only EXCESS dissolved air precipitates microbubbles!:* | DAF Microbubble Sizing KPI (200 m³/hr, 1,500 mg/L TSS, P = 5.0 atm, R = 30%) | Formula | Verified Output | | --- | --- | --- | | Net Saturation Factor (f*P - 1) | Saturator_Eff * Abs_Pressure_atm - 1 | 3.25 | | Released Air in Recycle (mg/L) | 1.3 * Solubility_mL_L * (f * P_abs - 1) | 76.05 mg/L | | Air-to-Solids Ratio A/S (kg/kg) | (Released_Air_mg_L * Recycle_R) / TSS_mg_L | 0.0152 (0.0051 @ R = 10%!) | | Pressurized Recycle Flow (m³/hr) | Influent_Flow_m3_hr * Recycle_Ratio_R | 60.00 m³/hr (20.00 @ R = 10%) | - **Formula (Pressurized-Recycle DAF Air-to-Solids (A/S) Formula)**: `=LET(q_in, B2, xf_t, B3, sa_m, B4, ef_s, B5, p_at, B6, rc_r, B7, IF(OR(q_in <= 0, xf_t <= 0, sa_m <= 0, ef_s <= 0.4, ef_s > 1, ef_s * p_at <= 1.2, rc_r <= 0.02, rc_r > 2), "Invalid DAF Saturator Input", LET(rl_a, 1.3 * sa_m * (ef_s * p_at - 1), ROUND((rl_a * rc_r) / xf_t, 4))))` - **Formula (Under-Recycled Floc Sinking Failure Check (Set Recycle Ratio R = 0.10))**: `=IF(ISTEXT(E4), E4, ROUND(B2 * B7, 2))` ### Dittus–Boelter and Gnielinski: Pipe Nusselt Number and Heat Transfer - **URL**: https://sheets.arte-soft.com/en/learn/dittus-boelter-and-gnielinski-turbulent-pipe-nusselt-number/ - **Summary**: Compare two turbulent circular-tube correlations, validate their input ranges and compute h from unrounded Nusselt values. - **Formula (Dittus–Boelter with an explicit heating/cooling choice)**: `=IF(COUNT(B2:B3,B7)<>3,"Enter numeric Re, Pr and L/D",IF(OR(B2<10000,B3<0.6,B3>160,B7<10),"Outside Dittus-Boelter example range",IF(AND(LOWER(TRIM(B4))<>"heating",LOWER(TRIM(B4))<>"cooling"),"Choose Heating or Cooling",0.023*B2^0.8*B3^IF(LOWER(TRIM(B4))="heating",0.4,0.3))))` - **Formula (Calculate h without bypassing the model checks)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(COUNT(B5:B6)<>2,"Enter numeric conductivity and diameter",IF(OR(B5<=0,B6<=0),"Require positive conductivity and diameter",E2*B5/B6)))` - **Formula (Compare Gnielinski using a supplied Darcy friction factor)**: `=IF(COUNT(B2:B3,B7:B8)<>4,"Enter numeric Re, Pr, L/D and Darcy f",IF(OR(B2<3000,B2>5000000,B3<=0.5,B3>2000,B7<10,B8<=0,B8>=1),"Outside Gnielinski example range",IF(1+12.7*SQRT(B8/8)*(B3^(2/3)-1)<=0,"Check Darcy factor and Pr",(B8/8)*(B2-1000)*B3/(1+12.7*SQRT(B8/8)*(B3^(2/3)-1)))))` ### Diverging Likert Stacked Bar Chart Formula: Neutral Midpoint Split & Padding Spacer - **URL**: https://sheets.arte-soft.com/en/learn/diverging-likert-stacked-bar-neutral-split-spacer-formula/ - **Summary**: Align 5-point Likert survey responses around a vertical zero spine on a 100% Stacked Bar Chart by splitting Neutral responses in half and computing each row’s exact left-padding spacer. *Table — Align survey disagreement left and agreement right around a shared center spine!:* | Likert Bucket (Question 1) | Response Share | Diverging Stacked Placement (Spine at 50%) | | --- | --- | --- | | Invisible Left Spacer | 15.0% (0.15) | 0.0% -> 15.0% (No Fill) | | Strongly Disagree (8%) + Disagree (17%) | 25.0% (0.25) | 15.0% -> 40.0% (Left of Neutral) | | Neutral Split (20% = 10% + 10%) | 20.0% (0.20) | 40.0% -> 50.0% Spine -> 60.0% | | Agree (35%) + Strongly Agree (20%) | 55.0% (0.55) | 60.0% -> 115.0% (Net Favorability = +30.0 pts) | - **Formula (Invisible Left-Padding Spacer Aligning Neutral Midpoint to Spine B7)**: `=IF(OR(ABS(SUM(B2:B6) - 1) > 0.001, B7 < B2 + B3 + B4 / 2), "Invalid Shares or Increase Spine Anchor B7", ROUND(B7 - (B2 + B3 + B4 / 2), 4))` - **Formula (Net Top-2 Minus Bottom-2 Favorability Score (Percentage Points))**: `=ROUND(100 * ((B5 + B6) - (B2 + B3)), 2)` ### Dividend Yield, Yield on Cost, Payout Ratio, and Sustainable Growth (g) - **URL**: https://sheets.arte-soft.com/en/learn/dividend-yield-payout-ratio-and-drip-growth/ - **Summary**: Evaluate dividend stocks with Current Yield, Yield on Original Cost Basis, Earnings Payout Ratio, and Sustainable Growth Rate ROE * (1 - Payout). *Table — Current Yield vs Yield on Cost—plus safety check via Payout Ratio:* | Equity Income Metric ($3.20 Div, $64 Price, $40 Basis, $8 EPS, 15% ROE) | Formula | Result | | --- | --- | --- | | Current Dividend Yield | =3.20 / 64.00 | 5.00% (0.05) | | Yield on Cost (YOC) | =3.20 / 40.00 | 8.00% (0.08) | | Earnings Payout Ratio | =3.20 / 8.00 | 40.0% (60% Retained) | | Sustainable Growth Rate (g) | =0.15 * (1 - 0.40) | 9.00% (0.09) | - **Formula (Dividend Yield, Payout Ratio, and Sustainable Growth formulas)**: `=ROUND(E2 * (1 - A2 / D2), 4)` - **Formula (Current Dividend Yield vs Yield on Cost)**: `=ROUND(A2 / B2, 4)` - **Formula (Additional worked calculation)**: `=ROUND(A2 / C2, 4)` - **Formula (Additional worked calculation)**: `=ROUND(A2 / D2, 4)` ### Dixit-Spence Capacity Commitment & Entry Deterrence - **URL**: https://sheets.arte-soft.com/en/learn/dixit-spence-strategic-capacity-commitment-entry-deterrence-formula/ - **Summary**: Calculate Avinash Dixit’s (1980) entry-deterring limit capacity K_det = (a - w - r - 2*SQRT(b*F)) / b and audit subgame-perfect credibility against K_max = (a - w + r) / (3*b). *Table — Distinguish credible sunk-capacity deterrence from empty non-credible threats!:* | Dixit Capacity Metric (a=120, b=1, w=15, r=45, F=100) | Formula | Verified Output | | --- | --- | --- | | Required Entry-Deterring Capacity (K_det) | ((a - w - r) - 2*SQRT(b*F)) / b | 40.00 units (vs Monopoly 30) | | Dixit Max Credible Threat Ceiling (K_max) | (a - w + r) / (3 * b) | 50.00 units (>= 40.00!) | | Credible Deterrence Incumbent Profit | (a - b*K_det - w - r) * K_det | 800.00 (at P = 80.00) | | Regime Audit if F Drops to 16 (K_det = 52) | IF(K_det <= K_max, ...) | Non-Credible Deterrence (Accommodate) | - **Formula (Dixit Entry-Deterring Limit Capacity K_det Formula)**: `=LET(a_dm, B2, b_sl, B3, w_op, B4, r_cp, B5, f_en, B6, IF(OR(b_sl <= 0, w_op < 0, r_cp <= 0, a_dm <= w_op + r_cp, f_en <= 0), "Invalid Dixit Input", ROUND(MAX(0, ((a_dm - w_op - r_cp) - 2 * SQRT(b_sl * f_en)) / b_sl), 2)))` - **Formula (Subgame-Perfect Credibility Regime Audit Formula)**: `=LET(a_dm, B2, b_sl, B3, w_op, B4, r_cp, B5, f_en, B6, IF(OR(b_sl <= 0, w_op < 0, r_cp <= 0, a_dm <= w_op + r_cp, f_en <= 0), "Invalid Dixit Input", LET(k_dt, ((a_dm - w_op - r_cp) - 2 * SQRT(b_sl * f_en)) / b_sl, q_mn, (a_dm - w_op - r_cp) / (2 * b_sl), k_mx, (a_dm - w_op + r_cp) / (3 * b_sl), IFS(k_dt <= q_mn, "Blockaded Entry", k_dt <= k_mx, "Credible Deterrence", TRUE, "Non-Credible Deterrence (Accommodate)"))))` ### DLQI (Dermatology Life Quality Index 0–30) Hongbo Banding Calculator - **URL**: https://sheets.arte-soft.com/en/learn/dlqi-dermatology-life-quality-index-finlay-khan-score-formula/ - **Summary**: Score Andrew Finlay and Gul Karim Khan’s 10-question Dermatology Life Quality Index (0–30 points) using Hongbo clinical severity bands and the NICE/EADV DLQI > 10 biologic "Rule of Tens" threshold. *Table — Why localized palm, scalp, or facial psoriasis with low PASI still qualifies for biologics via DLQI > 10!:* | Total DLQI Score (0–30 Points) | Hongbo Validated QoL Band | Rule of Tens / Biologic Eligibility | | --- | --- | --- | | 0–1 Points / 2–5 Points | No Effect / Small Effect on Life | Topical Therapy Adequately Controlling QoL | | 6–10 Points | Moderate Effect on Patient’s Life | Optimize Phototherapy / Conventional Regimen | | 11–20 (e.g., 15) / 21–30 Points | Very Large / Extremely Large Effect | Meets DLQI > 10 Severe Biologic Criterion! | - **Formula (Total 10-Item Dermatology Life Quality Index (0–30 Points))**: `=IF(OR(COUNT(B2:B11) < 10, MIN(B2:B11) < 0, MAX(B2:B11) > 3), "Invalid DLQI Item (0-3)", SUM(B2:B11))` - **Formula (Hongbo DLQI Impact Band & NICE / EADV Rule-of-Tens Flag)**: `=IF(OR(COUNT(B2:B11) < 10, MIN(B2:B11) < 0, MAX(B2:B11) > 3), "Invalid DLQI Item (0-3)", IF(SUM(B2:B11) >= 21, "Extremely Large Effect on Life (DLQI 21-30) — Meets DLQI > 10 Severe Biologic Criterion", IF(SUM(B2:B11) >= 11, "Very Large Effect on Life (DLQI 11-20) — Meets DLQI > 10 Severe Biologic Criterion", IF(SUM(B2:B11) >= 6, "Moderate Effect on Patient’s Life (DLQI 6-10)", IF(SUM(B2:B11) >= 2, "Small Effect on Patient’s Life (DLQI 2-5)", "No Effect at All on Patient’s Life (DLQI 0-1)")))))` ### Doherty RF Amplifier Back-Off Efficiency & PAPR Formula - **URL**: https://sheets.arte-soft.com/en/learn/doherty-rf-power-amplifier-backoff-efficiency-and-papr-headroom-formula/ - **Summary**: Calculate OFDM Peak-to-Average Crest Ratio P_peak / P_avg, Classical Class-B Back-Off Drain Efficiency (PI()/4)*SQRT(P_avg/P_peak), Symmetric 2-Way Doherty Load-Modulated Efficiency, and DC Heat-Loss Saving Ratio. *Table — Double 5G macro-cell PA efficiency at 6 dB PAPR back-off with Doherty load modulation!:* | RF PA Back-Off Metric (P_avg=25 W, P_peak=100 W -> 4.0x / 6.02 dB OBO) | Formula | Verified Output | | --- | --- | --- | | Linear Power Crest Ratio (PAPR) | P_peak / P_avg | 4.0000x (1.0000x @ P_avg=100W) | | Class-B Drain Efficiency | (PI() / 4) * SQRT(P_avg / P_peak) | 0.3927 (39.27%; 0.7854 @ Peak) | | Symmetric 2-Way Doherty Eff | Load-Modulated Carrier + Peaking | 0.7854 (78.54% Twin Efficiency Peak!) | | Doherty vs Class-B Gain Ratio | eta_Doherty / eta_ClassB | 2.0000x (1.0000x @ Full Saturation) | - **Formula (Symmetric 2-Way Doherty Drain Efficiency Piecewise Formula)**: `=LET(p_av, B2, p_pk, B3, IF(OR(p_av <= 0, p_pk <= 0, p_av > p_pk), "Invalid RF Backoff Power", LET(v_rt, SQRT(p_av / p_pk), et_m, PI() / 4, IF(v_rt <= 0.5, ROUND(et_m * 2 * v_rt, 4), ROUND(et_m * ((v_rt ^ 2) / (1.5 * v_rt - 0.5)), 4)))))` - **Formula (Full-Saturation Convergence Check (Set P_avg = 100 W))**: `=IF(ISTEXT(E4), E4, ROUND(E4 / E3, 4))` ### Dollar-Cost Averaging (DCA) Formula: Harmonic Average Cost Basis & Unrealized Gain - **URL**: https://sheets.arte-soft.com/en/learn/dollar-cost-averaging-dca-average-cost-basis-and-gain-formula/ - **Summary**: Calculate exact share-weighted Dollar-Cost Averaging cost basis SUM(Invested) / SUMPRODUCT(Invested / Share_Price)—showing why fixed-dollar contributions beat the arithmetic average share price—plus unrealized P&L. *Table — Why fixed-dollar DCA buys more shares at lows and achieves the HARMONIC mean price ($25.81 < $27.50)!:* | Portfolio Valuation Metric ($500 × 4 Months at $25, $20, $25, $40) | Formula Output | Comparison / Portfolio Insight | | --- | --- | --- | | True DCA Cost Basis per Share | $25.8065 | $1.6935 lower than $27.50 arithmetic mean! | | Total Shares Accumulated | 77.50 shares | 20 + 25 + 20 + 12.50 fractional shares | | Unrealized Gain at Market Price E2 = $32 | +$480.00 | Market value $2,480 - $2,000 invested | | Unrealized P&L at Market Drop E2 = $22 | -$295.00 | Market value $1,705 - $2,000 invested | - **Formula (Exact DCA Share-Weighted Average Cost Basis = SUM(Invested) / SUMPRODUCT(Invested / Price))**: `=IF(OR(MIN(B2:B5) < 0, MIN(C2:C5) <= 0, E2 <= 0), "Invalid Investment or Share Price", ROUND(SUM(B2:B5) / SUMPRODUCT(B2:B5 / C2:C5), 4))` - **Formula (Unrealized Portfolio Dollar Gain / Loss at Current Market Price E2)**: `=IF(OR(MIN(B2:B5) < 0, MIN(C2:C5) <= 0, E2 <= 0), "Invalid Investment or Share Price", ROUND(SUMPRODUCT(B2:B5 / C2:C5) * E2 - SUM(B2:B5), 2))` ### Donchian Channel & Turtle Position Sizing Formula: N-Bar High/Low Midpoint & 1% Risk Unit - **URL**: https://sheets.arte-soft.com/en/learn/donchian-price-channel-midpoint-and-turtle-breakout-position-formula/ - **Summary**: Compute Richard Donchian’s N-period breakout channel (MAX High, MIN Low, Equilibrium Midpoint) paired with Dennis & Eckhardt’s volatility-parity 1% ATR Unit Size. *Table — Combine N-bar Donchian breakout bounds with volatility-normalized unit sizing!:* | Donchian / Turtle Metric | Inputs | Computed Value | | --- | --- | --- | | 5-Bar Highs [52..60] & Lows [46..53] | Upper = 60, Lower = 46 | Midpoint = 53.00 \| Span = 14.00 | | 1% Volatility Risk Unit ($100k Equity) | Dollar ATR per Share = $2.50 | INT($1,000 / $2.50) = 400 shares | - **Formula (Donchian N-Bar Channel Equilibrium Midpoint)**: `=IF(MIN(C2:C6) > MAX(B2:B6), "Low Exceeds High", ROUND((MAX(B2:B6) + MIN(C2:C6)) / 2, 2))` - **Formula (Volatility-Normalized 1% Equity Risk Unit Size (Whole Shares))**: `=IF(OR(B7 <= 0, B8 <= 0), "Requires Positive Equity and ATR", INT((0.01 * B7) / B8))` ### Dorfman-Steiner Optimal Advertising-to-Sales Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/dorfman-steiner-optimal-advertising-to-sales-intensity-rule/ - **Summary**: Size profit-maximizing advertising spend A* / Revenue = e_A / |e_P| = ((P - MC) / P) * e_A using the Dorfman-Steiner theorem in Excel and Arte Sheets. *Table — Tie marketing budget intensity directly to gross Lerner margin and demand elasticities:* | Dorfman-Steiner Quantity | Formula | Verified Output | | --- | --- | --- | | Lerner Gross Margin (P - MC) / P | (50 - 30) / 50 | 0.4000 (40.00%) | | Elasticity Ratio Intensity e_A / \|e_P\| | 0.15 / 2.50 | 0.0600 (6.00% of Sales) | | Margin-Rule Intensity Margin * e_A | 0.4000 * 0.15 | 0.0600 (Matches at Optimum) | | Optimal Advertising Budget (A*) | Revenue * (e_A / \|e_P\|) | 240,000.00 | - **Formula (Dorfman-Steiner Optimal Advertising-to-Sales Ratio e_A / |e_P| Formula)**: `=LET(e_pr, B4, e_ad, B5, IF(OR(e_pr <= 1, e_ad < 0, e_ad >= e_pr), "Require |e_P| > 1 and 0 <= e_A < |e_P|", ROUND(e_ad / e_pr, 4)))` - **Formula (Fixed-Price Margin-Weighted Optimal Ad Spend Revenue * ((P - MC) / P) * e_A Formula)**: `=LET(px_u, B2, mc_u, B3, e_ad, B5, rev_s, B6, IF(OR(px_u <= 0, mc_u < 0, mc_u >= px_u, e_ad < 0, rev_s < 0), "Invalid Price-Margin Input", ROUND(rev_s * ((px_u - mc_u) / px_u) * e_ad, 2)))` ### Dornbusch Exchange-Rate Overshooting Model Formula - **URL**: https://sheets.arte-soft.com/en/learn/dornbusch-exchange-rate-overshooting-monetary-shock-formula/ - **Summary**: Calculate impact FX depreciation Delta_e0 = Delta_m * (1 + 1 / (lambda * theta)), overshoot ratio, liquidity interest-rate drop, and exponential convergence path. *Table — Explain why spot FX jumps BEYOND its long-run PPP level after a monetary shock:* | Dornbusch FX Metric (dm=0.05, lam=4, theta=0.5) | Formula | Verified Output | | --- | --- | --- | | Overshoot Multiplier | 1 + 1 / (lambda_semi * theta_adj) | 1.5000x | | Impact Spot Depreciation (Delta_e0) | Delta_m * (1 + 1 / (lambda * theta)) | 0.0750 (+7.50%) | | Impact Rate Drop (Delta_i0) | -Delta_m / lambda_semi | -0.0125 (-125 bps) | | Depreciation at t = 2 Years | Delta_m + (Delta_e0 - Delta_m)*EXP(-theta*t) | 0.0592 (+5.92%) | - **Formula (Dornbusch Impact FX Overshoot Delta_e0 Formula)**: `=LET(dm_sh, B2, lam_m, B3, th_ad, B4, IF(OR(lam_m <= 0, th_ad <= 0), "Invalid Overshoot Input", ROUND(dm_sh * (1 + 1 / (lam_m * th_ad)), 4)))` - **Formula (Saddle-Path Spot Exchange-Rate Trajectory Delta_e(t) Formula)**: `=LET(dm_sh, B2, lam_m, B3, th_ad, B4, t_yr, B5, IF(OR(lam_m <= 0, th_ad <= 0, t_yr < 0), "Invalid Overshoot Input", LET(ov_ex, dm_sh / (lam_m * th_ad), ROUND(dm_sh + ov_ex * EXP(-th_ad * t_yr), 4))))` ### Dot Plot Formula: Wilkinson Vertical Stack Y-Index & Cleveland Category Dot Gap - **URL**: https://sheets.arte-soft.com/en/learn/dot-plot-cleveland-and-wilkinson-vertical-stack-rank-formula/ - **Summary**: Build Wilkinson stacked frequency dot plots using an expanding running-occurrence counter COUNTIF($B$2:B2, B2) for Scatter Y coordinates, plus William S. Cleveland’s category-comparison dot gap and relative advantage. *Table — Turn overlapping ties into neat vertical dot stacks using an expanding COUNTIF anchor!:* | Batch Sample ID | Measured Defect Count (X Coordinate) | Expanding Formula =COUNTIF($B$2:B_row, B_row) | Scatter Y Stack Height | | --- | --- | --- | --- | | Lot_01 | 12 | =COUNTIF($B$2:B2, B2) | Y = 1 (First 12) | | Lot_02 | 14 | =COUNTIF($B$2:B3, B3) | Y = 1 (First 14) | | Lot_03 | 14 | =COUNTIF($B$2:B4, B4) | Y = 2 (Second 14) | | Lot_04 | 14 | =COUNTIF($B$2:B5, B5) | Y = 3 (Third 14 — Mode Peak) | - **Formula (Wilkinson Vertical Dot-Stack Height Y_i via Expanding COUNTIF($B$2:B5, B5))**: `=IF(B5 < 0, "Invalid Negative Observation", COUNTIF($B$2:B5, B5))` - **Formula (Total Mode Stack Height at Target Value X_target)**: `=IF(E2 < 0, "Invalid Query Value", COUNTIF(B2:B8, E2))` ### Two-way XLOOKUP: dynamic row and column matrix lookup - **URL**: https://sheets.arte-soft.com/en/learn/double-nested-xlookup-two-way/ - **Summary**: Nest one XLOOKUP inside another to retrieve the intersection of a row label and a column header without hardcoded column numbers. *Table — How inner XLOOKUP returns an entire column vector:* | Region (A) | Q1 (B) | Q2 (C) | Q3 (D) | | --- | --- | --- | --- | | North | 120 | 145 | 160 | | South | 95 | 130 | 150 | | West | 110 | 125 | 140 | - **Formula (Nested XLOOKUP formula)**: `=XLOOKUP(E2, A2:A4, XLOOKUP(F2, B1:D1, B2:D4))` - **Formula (Guard both missing column headers and missing row labels)**: `=IF(ISNA(XMATCH(F2, B1:D1, 0)), "No quarter", XLOOKUP(E2, A2:A4, XLOOKUP(F2, B1:D1, B2:D4), "No region"))` ### Put double quotes inside a formula: "" escaping vs CHAR(34) - **URL**: https://sheets.arte-soft.com/en/learn/double-quotes-inside-formula-strings/ - **Summary**: Generate quoted CSV fields, JSON payloads, and HTML attributes cleanly using doubled "" quotes or readable CHAR(34). *Table — Why spreadsheets use "" (not \") to escape quote characters:* | Goal | Sku (A) / Price (B) | Output String | | --- | --- | --- | | Quoted CSV row | PRO-10 / 49 | "PRO-10",49 | | JSON object | PRO-10 / 49 | {"sku":"PRO-10","price":49} | | HTML anchor | PRO-10 / 49 | PRO-10 | - **Formula (Doubled quotes "" vs CHAR(34) JSON builder)**: `=CHAR(34) & SUBSTITUTE(A2,CHAR(34),CHAR(34)&CHAR(34)) & CHAR(34) & "," & B2` - **Formula (Readable JSON builder with LET(q, CHAR(34), ...))**: `=LET(q, CHAR(34), "{" & q & "sku" & q & ":" & q & A2 & q & "," & q & "price" & q & ":" & B2 & "}")` ### Doughnut Progress Ring Formula: Clamped Fill, Remainder Arc & Over-Target Guard - **URL**: https://sheets.arte-soft.com/en/learn/doughnut-progress-ring-clamped-remainder-and-overtarget-formula/ - **Summary**: Prevent broken Doughnut Progress Charts when attainment exceeds 100% by clamping the unfilled remainder slice with MAX(0, 1 - Actual/Goal) instead of raw 1 - Actual/Goal. *Table — Why naive =1 - Completion% breaks every Doughnut Gauge above 100%!:* | Attainment Scenario (Goal = 1,000) | Actual (B2) | Clamped Ring Fill | Clamped Remainder Slice | | --- | --- | --- | --- | | In Progress (78.0%) | 780 | 0.7800 (78% arc) | 0.2200 (22% grey arc) | | Goal Met (100.0%) | 1,000 | 1.0000 (Full ring) | 0.0000 (Zero gap) | | Over-Target (125.0%) | 1,250 | 1.0000 (Full ring, +25% badge) | 0.0000 (Prevents -0.25 ABS bug!) | - **Formula (Clamped Unfilled Remainder Arc Slice [0, 1])**: `=IF(OR(B3 <= 0, B2 < 0), "Target Must Be Positive", ROUND(MAX(0, 1 - B2 / B3), 4))` - **Formula (Clamped Primary Completion Arc Slice [0, 1])**: `=IF(OR(B3 <= 0, B2 < 0), 0, ROUND(MIN(1, MAX(0, B2 / B3)), 4))` ### Dowell Transformer AC Winding Resistance (Fr) & Proximity Loss - **URL**: https://sheets.arte-soft.com/en/learn/dowell-high-frequency-transformer-ac-to-dc-winding-resistance-fr-formula/ - **Summary**: Calculate High-Frequency Transformer Normalized Foil Thickness Δ = h / δ, Dowell Sub-Skin AC-to-DC Resistance Ratio Fr = 1 + ((5*m² - 1)/45)*Δ⁴, DC Copper Loss (W), and Total AC Winding Loss Before and After P-S-P-S Layer Interleaving. *Table — Debunk the "thinner than 1 skin depth" myth—m² proximity fields dominate multi-layer windings!:* | Dowell Proximity Metric (h=0.15 mm, δ=0.25 mm, m=8 Layers, R_dc=0.02 Ω, I=20 A) | Formula | Verified Output | | --- | --- | --- | | Normalized Foil Thickness Δ | Foil_Thickness_h / Skin_Depth_δ | 0.6000 (< 1 Skin Depth!) | | Dowell AC/DC Ratio Fr | 1 + ((5 * m^2 - 1) / 45) * (Δ^4) | 1.9187 (1.0547 Interleaved m=2) | | DC Copper Loss P_dc (W) | (I_rms^2) * R_dc | 8.00 W | | Total AC Winding Loss P_ac (W) | P_dc * Dowell_Fr | 15.35 W (8.44 W Interleaved m=2) | - **Formula (Dowell Sub-Skin Proximity AC Winding Loss Formula)**: `=LET(th_h, B2, sk_d, B3, ly_m, B4, rd_c, B5, ir_a, B6, dl_r, th_h / sk_d, IF(OR(th_h <= 0, sk_d <= 0, dl_r > 1.25, ly_m < 1, rd_c <= 0, ir_a <= 0), "Invalid Sub-Skin Dowell Input (Delta > 1.25)", LET(fr_d, 1 + ((5 * (ly_m ^ 2) - 1) / 45) * (dl_r ^ 4), ROUND((ir_a ^ 2) * rd_c * fr_d, 2))))` - **Formula (P-S-P-S Winding Interleaving Breakthrough Check (Set Effective Section Layers m = 2))**: `=IF(ISTEXT(E5), E5, ROUND(1 + ((5 * (B4 ^ 2) - 1) / 45) * ((B2 / B3) ^ 4), 4))` ### Downes-Vidyasagar Score Formula: Neonatal Respiratory Distress CPAP vs. Intubation (0 to 10) - **URL**: https://sheets.arte-soft.com/en/learn/downes-vidyasagar-neonatal-respiratory-distress-clinical-score/ - **Summary**: Assess preterm and term newborn respiratory distress without arterial blood gases using John Downes & Dharmapuri Vidyasagar’s 5-sign clinical score (0–10 points). *Table — Complementing Silverman-Andersen chest mechanics with respiratory rate, cyanosis, and air entry!:* | Downes-Vidyasagar Total (0–10) | Neonatal RDS Severity | Delivery Room / NICU Respiratory Support | | --- | --- | --- | | Downes 0–3 (Mild Distress) | Compensated Tachypnea | Warmth, Monitoring, Low-Flow O2 if Needed | | Downes 4–6 (Moderate RDS, e.g., 5) | Alveolar Atelectasis / Surfactant Deficit | Initiate Nasal CPAP (5–6 cm H2O) ± INSURE | | Downes >= 7 (Severe / Impending Failure) | Severe Hypoxemia / Hypercapnia | Blood Gas + Intubation / Surfactant Readiness | - **Formula (Total 5-Sign Downes-Vidyasagar Neonatal RDS Score (0 to 10))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 2), "Each Downes Sign Must Be 0, 1, or 2", SUM(B2:B6))` - **Formula (NICU Nasal CPAP vs. Mechanical Ventilation Escalation Tier)**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 2), "Each Downes Sign Must Be 0, 1, or 2", IF(SUM(B2:B6) >= 7, "Severe Distress (Downes >= 7 — Impending Failure / Ventilation Prep)", IF(SUM(B2:B6) >= 4, "Moderate Distress (Downes 4–6 — Initiate Nasal CPAP)", "Mild Distress (Downes 0–3 — Observe / Titrate O2)")))` ### Dowson-Higginson EHL Line-Contact Minimum Film Thickness Formula - **URL**: https://sheets.arte-soft.com/en/learn/dowson-higginson-elastohydrodynamic-line-contact-minimum-film/ - **Summary**: Calculate elastohydrodynamic lubrication (EHL) dimensionless speed U, materials G, load W, and minimum film thickness h_min = 2.65 * R_eq * U^0.70 * G^0.54 * W^(-0.13) in microns. *Table — Why rolling speed governs EHL oil-film thickness 5x more strongly than load:* | Dowson-Higginson Dimensionless Group | Definition | Sample Value | | --- | --- | --- | | Speed Parameter U | (eta_0 * u_roll) / (E_prime * R_eq) | 4.5455E-11 (Exponent +0.70) | | Materials Parameter G | alpha_pv * E_prime | 4,400 (Exponent +0.54) | | Load Parameter W | w_line / (E_prime * R_eq) | 5.0000E-5 (Exponent -0.13) | | Minimum Film Thickness h_min | 2.65 * R_eq * U^0.70 * G^0.54 * W^(-0.13) | 1.0261 microns | - **Formula (Dowson-Higginson Minimum Film Thickness in Microns (h_min_um) Formula)**: `=LET(r_eq, B2, eta_0, B3, u_rl, B4, e_pr, B5, alp_p, B6, w_ln, B7, IF(OR(r_eq <= 0, eta_0 <= 0, u_rl <= 0, e_pr <= 0, alp_p <= 0, w_ln <= 0), "Invalid EHL Input", LET(u_nd, (eta_0 * u_rl) / (e_pr * r_eq), g_nd, alp_p * e_pr, w_nd, w_ln / (e_pr * r_eq), h_nd, 2.65 * POWER(u_nd, 0.7) * POWER(g_nd, 0.54) * POWER(w_nd, -0.13), ROUND(h_nd * r_eq * 1000000, 4))))` - **Formula (Load-Doubling vs Speed-Doubling Film Retention Ratio Check)**: `=LET(g_nd, B6 * B5, IF(g_nd <= 0, "Invalid EHL Input", ROUND(g_nd, 1)))` ### DRAGON Score Formula: Post-IV Thrombolysis Stroke 3-Month Outcome (0 to 10) - **URL**: https://sheets.arte-soft.com/en/learn/dragon-score-post-thrombolysis-iv-tpa-ischemic-stroke-outcome/ - **Summary**: Predict 3-month functional independence vs. dismal outcome (mRS 5–6) immediately at IV alteplase initiation using Daniel Strbian’s 6-domain DRAGON score (0–10 points). *Table — Six admission variables spelt out by the D-R-A-G-O-N mnemonic!:* | DRAGON Total Score (0–10) | 3-Month Functional Prognosis (IV tPA) | Acute Neurovascular Implication | | --- | --- | --- | | DRAGON 0–3 (Favorable) | High mRS 0–2 Independence Rate | Standard Stroke Unit Thrombolysis Pathway | | DRAGON 4–6 (Intermediate) | Mixed Independence vs Disability | Close Neuro-ICU & LVO Angiography Check | | DRAGON >= 7 (Poor IV-tPA-Alone Prognosis, e.g., 8) | High Risk of mRS 5–6 Dismal Outcome | Prioritize Thrombectomy Evaluation / Goals Review | - **Formula (Total 6-Domain DRAGON Post-Thrombolysis Score (0 to 10))**: `=IF(OR(MIN(B2:B7) < 0, B2 > 2, B3 > 1, B4 > 2, B5 > 1, B6 > 1, B7 > 3), "Invalid DRAGON Component", SUM(B2:B7))` - **Formula (DRAGON 3-Month Stroke Outcome Stratification)**: `=IF(OR(MIN(B2:B7) < 0, B2 > 2, B3 > 1, B4 > 2, B5 > 1, B6 > 1, B7 > 3), "Invalid DRAGON Component", IF(SUM(B2:B7) >= 7, "Poor IV-tPA-Alone Prognosis (DRAGON >= 7 — High mRS 5–6 Risk)", IF(SUM(B2:B7) >= 4, "Intermediate Prognosis (DRAGON 4–6)", "Favorable Prognosis (DRAGON 0–3 — High mRS 0–2 Rate)")))` ### Drilled & Grouted Micropile Bond & Structural Load Formula - **URL**: https://sheets.arte-soft.com/en/learn/drilled-and-grouted-micropile-grout-to-ground-bond-capacity-and-casing-plunging-load/ - **Summary**: Calculate Ultimate Grout-to-Ground Bond Capacity (kN), Allowable Geotechnical Bond Load (FS = 2.0, kN), Composite Casing+Grout Structural Capacity (kN), and Governing Load. *Table — Small-diameter micropiles ignore end-bearing completely—and switch from geotechnical skin-friction failure in sand to structural steel yielding in bedrock!:* | FHWA Micropile Limit-State KPI (Db=200 mm, Lb=9.0 m, N80 Steel, alpha=320 vs 680 kPa) | Formula | Verified Output | | --- | --- | --- | | Ultimate Grout-Ground Bond (kN) | alpha_kPa * PI() * (Db_mm / 1000) * Lb_m | 1,809.6 kN (3,845.3 kN in granite!) | | Allowable Geotech Bond PG_all (kN) | 0.50 * Ultimate_Bond_kN (FS=2.0) | 904.8 kN (1,922.7 kN in granite) | | Allowable Structural Pc_all (kN) | (0.47 * Fy * As + 0.40 * fc * Ag) / 1000 | 1,234.5 kN | | Governing Micropile Capacity (kN) | MIN(Allowable_Bond, Allowable_Structural) | 904.8 kN (switches to 1,234.5 kN in rock!) | - **Formula (FHWA Dual-Envelope Geotechnical Bond vs Composite Casing Compression Formula)**: `=LET(db_m, B2 / 1000, lb_m, B3, ab_k, B4, as_m, B5, fy_m, B6, ag_m, B7, fc_m, B8, pg_a, 0.5 * ab_k * PI() * db_m * lb_m, pc_a, (0.47 * fy_m * as_m + 0.4 * fc_m * ag_m) / 1000, IF(OR(B2 < 100, B2 > 400, lb_m <= 1, ab_k <= 30, as_m <= 200, fy_m < 250, fy_m > 700, ag_m <= 2000, fc_m < 20, fc_m > 60), "Invalid Micropile Input", ROUND(MIN(pg_a, pc_a), 1)))` - **Formula (Sound Granite Rock Socket (alpha = 680 kPa) Structural Casing Ceiling Switch Check (Set Bond B4 = 680 kPa))**: `=IF(ISTEXT(E5), E5, ROUND((0.47 * B6 * B5 + 0.4 * B8 * B7) / 1000, 1))` ### Drilling Kill Mud Weight, ICP & FCP Well-Control Formula - **URL**: https://sheets.arte-soft.com/en/learn/drilling-hydrostatic-mud-pressure-kill-mud-weight-and-icp-fcp-formula/ - **Summary**: Calculate True-Vertical-Depth Hydrostatic Mud Pressure 0.052 * MW * TVD, Required Kill Mud Weight KMW = MW_orig + SIDPP / (0.052 * TVD), Initial Circulating Pressure (ICP), and Final Circulating Pressure (FCP). *Table — Size oilfield kick-control Kill Sheets with TVD—never Measured Depth!:* | Wait-and-Weight Kill Sheet Metric (TVD=10,000 ft, MW=10.0 ppg, SIDPP=520 psi, SCRP=600 psi) | Formula | Verified Output | | --- | --- | --- | | Original Hydrostatic Pressure (psi) | 0.052 * MW_orig * TVD_ft | 5,200.00 psi | | Exact Kill Mud Weight KMW (ppg) | MW_orig + SIDPP / (0.052 * TVD_ft) | 11.00 ppg | | Initial Circulating Pressure ICP | SCRP + SIDPP | 1,120.00 psi | | Final Circulating Pressure FCP | SCRP * (KMW / MW_orig) | 660.00 psi | - **Formula (Kill Mud Weight (KMW) & Final Circulating Pressure (FCP) Formula)**: `=LET(tv_d, B2, mw_0, B3, si_d, B4, sc_r, B5, IF(OR(tv_d <= 0, mw_0 < 7, si_d < 0, sc_r <= 0), "Invalid Kill Sheet Input", LET(km_w, mw_0 + si_d / (0.052 * tv_d), ROUND(sc_r * (km_w / mw_0), 2))))` - **Formula (Balanced Wellbore Sanity Check (SIDPP = 0))**: `=IF(ISTEXT(E5), E5, ROUND(B3 + B4 / (0.052 * B2), 2))` ### DROP function: strip opening balances, headers, or total rows dynamically - **URL**: https://sheets.arte-soft.com/en/learn/drop-function-exclude-rows-columns/ - **Summary**: Exclude N rows or columns from the start or end of an imported range with DROP so summary rows never double-count. *Table — Cleanly remove wrapper rows from exported reports:* | Entry (A) | Amount (B) | | --- | --- | | Opening Balance | 1000 | | Invoice 101 | 320 | | Invoice 102 | 180 | | Invoice 103 | 250 | | Report Subtotal | 1750 | - **Formula (Sum only transaction lines without manual range edits)**: `=SUM(DROP(DROP(B2:B6, 1), -1))` - **Formula (Dropping every row returns #CALC!)**: `=DROP(B2:B6, 5)` ### Dashboard SUMIFS with an "All" dropdown option - **URL**: https://sheets.arte-soft.com/en/learn/dropdown-sum-with-all-option/ - **Summary**: Switch cleanly between total revenue when a filter cell equals "All" and filtered SUMIFS when a specific category is chosen. *Table — Why IF(Filter="All", SUM(...), SUMIFS(...)) beats the "*" wildcard shortcut:* | Channel (A) | Revenue (B) | Filter = "All" | Filter = "Direct" | | --- | --- | --- | --- | | Direct | 4200 | Included | Included | | Partner | 3100 | Included | Excluded | | Direct | 1800 | Included | Included | | Self-Serve | 2900 | Included | Excluded | - **Formula (Explicit All-or-filtered total)**: `=IF(C2="All", SUM(B2:B5), SUMIFS(B2:B5, A2:A5, C2))` - **Formula (Text-only wildcard alternative)**: `=SUMIFS(B2:B5, A2:A5, IF(C2="All", "*", C2))` ### Drude Free-Electron Metal Conductivity & UV Plasma Frequency Formula - **URL**: https://sheets.arte-soft.com/en/learn/drude-free-electron-conductivity-and-plasma-frequency-formula/ - **Summary**: Calculate DC electrical conductivity sigma = (n * e^2 * tau) / m_e in MS/m and plasmon energy hbar * omega_p (in eV) explaining both metal Ohm's Law and why metals turn transparent in the deep ultraviolet! *Table — Connect femtosecond electron scattering tau to copper conductivity & UV transparency!:* | Noble Metal Free-Electron Gas | Carrier Density n & Scattering tau | Drude Conductivity sigma (MS/m) | Bulk Plasmon Energy Ep (eV) | | --- | --- | --- | --- | | Copper (Cu, 300 K) | n = 8.47e28 m^-3, tau = 25 fs | 59.67 MS/m | 10.81 eV (Reflects visible + near-UV) | | Silver (Ag, 300 K) | n = 5.86e28 m^-3, tau = 40 fs | 66.05 MS/m (Highest metal!) | 8.99 eV (Free-electron edge) | | Invalid Density or Tau <= 0 | Domain Guard | Guarded Input Error | "Invalid Drude Inputs" | - **Formula (Drude DC Electrical Conductivity sigma in MegaSiemens per Meter (MS/m = 10^6 S/m))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Drude Inputs", ROUND(((B2 * (1.6021766e-19 ^ 2) * (B3 * 1e-15)) / 9.1093837e-31) / 1000000, 2))` - **Formula (Free-Electron Bulk Plasmon Photon Energy E_p = hbar * omega_p (eV))**: `=IF(B2 <= 0, "Invalid Drude Inputs", ROUND(6.582119569e-16 * SQRT((B2 * (1.6021766e-19 ^ 2)) / (8.8541878e-12 * 9.1093837e-31)), 2))` ### Drum-Buffer-Rope (DBR) Buffer Penetration % & TOC Green/Yellow/Red Expedite Priority - **URL**: https://sheets.arte-soft.com/en/learn/drum-buffer-rope-toc-time-buffer-and-buffer-penetration/ - **Summary**: Calculate Theory of Constraints (TOC) time-buffer consumption percentage 100 * (Buffer_Hours - Remaining_Hours) / Buffer_Hours and classify work orders into Region I Green (<33.3%), Region II Yellow (33.3%–66.7%), or Region III Red (>66.7%) expedite zones. *Table — Prioritize shop-floor expediting by TOC Buffer Penetration—not local machine efficiency!:* | Work Order (24 hr Constraint Buffer) | Hours Remaining to Drum | Buffer Penetration % | TOC Buffer Management Zone | | --- | --- | --- | --- | | WO-101 (Upstream Smooth) | 18 hr remaining | 25.0% consumed | Green Zone (<33.3%: Do Not Expedite) | | WO-102 (Delayed at Prep) | 12 hr remaining | 50.0% consumed | Yellow Zone (33.3%-66.7%: Locate & Watch) | | WO-103 (Machine Breakdown) | 6 hr remaining | 75.0% consumed | Red Zone (>66.7%: Expedite Immediately!) | | WO-104 (Past Drum Schedule!) | -3 hr remaining | 112.5% consumed | Black / Late (>100%: Buffer Exhausted!) | - **Formula (TOC Time-Buffer Penetration Percentage (%))**: `=IF(B2 <= 0, "Invalid Buffer Size", ROUND(100 * (B2 - B3) / B2, 1))` - **Formula (Three-Zone TOC Buffer Management Priority Status)**: `=IF(B2 <= 0, "Invalid Buffer Size", IF(((B2 - B3) / B2) > 1, "Black Zone (>100%: Late!)", IF(((B2 - B3) / B2) > (2 / 3), "Red Zone (>66.7%: Expedite!)", IF(((B2 - B3) / B2) > (1 / 3), "Yellow Zone (Watch)", "Green Zone (On Track)"))))` ### DuPont ROE analysis formula: Margin x Asset Turnover x Financial Leverage - **URL**: https://sheets.arte-soft.com/en/learn/du-pont-return-on-equity-roe-3-step-decomposition/ - **Summary**: Break Return on Equity (NetIncome / Equity) into 3 diagnostic levers—Net Profit Margin, Total Asset Turnover, and Equity Multiplier—to see what drives ROE. *Table — Why two 24% ROE companies can have completely different risk profiles:* | DuPont Lever ($120M NI, $1B Rev, $800M Assets, $500M Eq) | Formula | Ratio | | --- | --- | --- | | 1. Net Profit Margin | =120 / 1,000 | 12.0% (0.12) | | 2. Asset Turnover | =1,000 / 800 | 1.25x | | 3. Return on Assets (ROA = 1 x 2) | =0.12 * 1.25 = 120 / 800 | 15.0% (0.15) | | 4. Equity Multiplier (Leverage) | =800 / 500 | 1.60x (-> ROE = 24.0%) | - **Formula (Three-factor DuPont ROE and reconciliation check)**: `=ROUND((A2 / B2) * (B2 / C2) * (C2 / D2), 4)` - **Formula (Equity multiplier: average assets / average equity)**: `=ROUND(C2 / D2, 2)` ### Du Bois & Haycock Body Surface Area (BSA) & Capped mg/m^2 Dosing - **URL**: https://sheets.arte-soft.com/en/learn/dubois-and-haycock-body-surface-area-bsa-chemotherapy-dosing/ - **Summary**: Calculate physiological Body Surface Area (m^2) using the foundational Du Bois & Du Bois (1916) power law 0.007184 * W^0.425 * H^0.725, Haycock pediatric BSA, and protocol-capped mg/m^2 chemotherapy doses. *Table — Compare the gold-standard Du Bois BSA power law against Mosteller and Haycock!:* | Patient Anthropometrics | Du Bois BSA (m^2) | Protocol Dose (100 mg/m^2, Optional 2.0 m^2 Cap) | Verified Output | | --- | --- | --- | --- | | 75 kg, 175 cm Adult | 0.007184 * 75^0.425 * 175^0.725 | 1.9031 m^2 * 100 | 190.31 mg (Uncapped = Capped) | | 110 kg, 180 cm High-BSA Adult | 0.007184 * 110^0.425 * 180^0.725 | 2.2858 m^2 (Uncapped 228.58 mg) | 200.00 mg if 2.0 m^2 Cap Active | - **Formula (Du Bois & Du Bois (1916) Adult Body Surface Area (m^2))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Weight or Height", ROUND(0.007184 * (B2 ^ 0.425) * (B3 ^ 0.725), 4))` - **Formula (Protocol-Capped mg/m^2 Regimen Dose = MIN(BSA_DuBois, Cap_m2) * Dose_mg_m2)**: `=ROUND(MIN(0.007184 * (B2 ^ 0.425) * (B3 ^ 0.725), B5) * B4, 2)` ### Calculate due date by category or SLA priority (business or calendar days) - **URL**: https://sheets.arte-soft.com/en/learn/due-date-by-priority-or-sla-category/ - **Summary**: Look up turnaround days by ticket priority or vendor payment tier with XLOOKUP and add business days via WORKDAY. *Table — Data-driven SLA turnaround tables beat hardcoded IFs:* | OpenDate (A) | Priority (B) | SLA Tier (D) | BizDays (E) | Due Date | | --- | --- | --- | --- | --- | | 2026-05-08 (Fri) | High | Critical | 1 | 2026-05-13 (Wed) | | | | High | 3 | | | | | Normal | 10 | | - **Formula (Business-day SLA due date formula)**: `=TEXT(WORKDAY(A2, XLOOKUP(B2, D2:D4, E2:E4, 5)), "yyyy-mm-dd")` - **Formula (Calendar-day turnaround variant)**: `=TEXT(A2 + XLOOKUP(B2, D2:D4, E2:E4, 30), "yyyy-mm-dd")` ### Duke Treadmill Score (DTS): Bruce Protocol Exercise Stress Test Prognosis - **URL**: https://sheets.arte-soft.com/en/learn/duke-treadmill-score-exercise-stress-test-prognosis-formula/ - **Summary**: Calculate Mark's Duke Treadmill Score DTS = Exercise_Minutes - (5 * Max_ST_Deviation_mm) - (4 * Treadmill_Angina_Index) to stratify 1-year and 5-year coronary mortality into Low (>= +5), Moderate (-10 to +4), and High (<= -11) risk. *Table — Combine Bruce exercise duration, ST depression, and limiting angina into one prognostic score!:* | Bruce Treadmill Test Result | DTS Calculation | Duke Treadmill Score | ACC/AHA Risk Tier | | --- | --- | --- | --- | | 10.0 min, 0 mm ST, No Angina (0) | 10.0 - 0 - 0 | +10.0 (>= +5) | Low Risk (~0.25%/yr mortality) | | 9.5 min, 1.5 mm ST, Non-Limiting Angina (1) | 9.5 - 7.5 - 4.0 | -2.0 (-10 to +4) | Moderate Risk (~1.25%/yr mortality) | | 5.0 min, 2.5 mm ST, Limiting Angina (2) | 5.0 - 12.5 - 8.0 | -15.5 (<= -11) | High Risk (~5%/yr: Cath Evaluation!) | - **Formula (Duke Treadmill Score DTS = Minutes - (5 * ST_mm) - (4 * Angina_0_1_2))**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B4 > 2, B4 <> INT(B4)), "Invalid Stress Test Inputs", ROUND(B2 - (5 * B3) - (4 * B4), 1))` - **Formula (ACC/AHA Duke Treadmill Prognostic Risk Stratum)**: `=IF((B2 - (5 * B3) - (4 * B4)) >= 5, "Low Risk (DTS >= +5: ~0.25%/yr Mortality)", IF((B2 - (5 * B3) - (4 * B4)) <= -11, "High Risk (DTS <= -11: ~5%/yr Mortality)", "Moderate Risk (-10 to +4: ~1.25%/yr Mortality)"))` ### Duncan Dissimilarity Index & Karmel-MacLachlan Formula - **URL**: https://sheets.arte-soft.com/en/learn/duncan-index-of-dissimilarity-and-karmel-maclachlan-segregation/ - **Summary**: Calculate the Duncan Index of Dissimilarity D = 0.5 * SUM(|a_k/A - b_k/B|) and Karmel-MacLachlan replacement-preserving index I_p = 2 * p * (1 - p) * D. *Table — Separate group-share relocation D from margin-preserving workforce reallocation I_p:* | Occupation Tier | Group A (a_k / A) vs Group B (b_k / B) | Absolute Share Gap \|a_k/A - b_k/B\| | | --- | --- | --- | | Engineering_1 | 50 / 100 (50%) vs 10 / 100 (10%) | 0.4000 | | Product_2 | 30 / 100 (30%) vs 20 / 100 (20%) | 0.1000 | | Operations_3 | 15 / 100 (15%) vs 40 / 100 (40%) | 0.2500 | | Support_4 | 5 / 100 (5%) vs 30 / 100 (30%) | 0.2500 (D = 0.5000, I_p = 0.2500) | - **Formula (Duncan Index of Dissimilarity D = 0.5 * SUM(|a_k / A - b_k / B|) Formula)**: `=LET(tot_a, SUM(B2:B5), tot_b, SUM(C2:C5), IF(OR(tot_a <= 0, tot_b <= 0, MIN(B2:C5) < 0), "Invalid Group Counts", ROUND(0.5 * SUM(D2:D5), 4)))` - **Formula (Karmel-MacLachlan Margin-Preserving Segregation Index I_p = 2 * p * (1 - p) * D Formula)**: `=LET(tot_a, SUM(B2:B5), tot_b, SUM(C2:C5), tot_all, tot_a + tot_b, IF(OR(tot_a <= 0, tot_b <= 0, MIN(B2:C5) < 0), "Invalid Group Counts", LET(p_sh, tot_a / tot_all, d_idx, 0.5 * SUM(D2:D5), ROUND(2 * p_sh * (1 - p_sh) * d_idx, 4))))` ### Dunkerley Shaft Critical Whirling Speed & Margin Formula - **URL**: https://sheets.arte-soft.com/en/learn/dunkerley-shaft-first-critical-whirling-speed-and-operating-margin-formula/ - **Summary**: Calculate Dunkerley Cumulative Static Deflection Equivalent (mm), Conservative First Lateral Critical Speed N_cr (RPM), Operating Speed Separation Margin (%), and Sub/Supercritical Regime. *Table — Reciprocal squared critical speeds add like capacitors in series—summing static deflections gives Dunkerley N_cr directly!:* | Dunkerley Rotordynamics KPI (d1=0.04, d2=0.06, ds=0.025 mm, 1,800 RPM) | Formula | Verified Output | | --- | --- | --- | | Combined Dunkerley Deflection (mm) | d_rotor1 + d_rotor2 + d_shaft_modal | 0.125 mm (0.500 @ flexible shaft) | | Dunkerley 1st Critical Speed (RPM) | (30 / PI()) * SQRT(9810 / Sum_Defl_mm) | 2,675.17 RPM (1,337.58 @ 0.50 mm) | | Critical Speed Margin (%) | ((N_cr - Operating_RPM) / Operating_RPM) * 100 | +48.62% (-25.69% @ 0.50 mm) | | API ±20% Resonance Regime | \|Ncr-Nop\|/Nop < 20% -> RESONANCE DANGER | STIFF SUBCRITICAL | - **Formula (Dunkerley Lower-Bound First Critical Speed Formula)**: `=LET(d_r1, B2, d_r2, B3, d_sh, B4, n_op, B5, IF(OR(d_r1 < 0, d_r2 < 0, d_sh <= 0, n_op <= 0), "Invalid Shaft Input", LET(d_sm, d_r1 + d_r2 + d_sh, ROUND((30 / PI()) * SQRT(9810 / d_sm), 2))))` - **Formula (Slender Shaft Supercritical Crossover & Resonance Check (Set Deflections = 0.15, 0.25, 0.10 mm))**: `=IF(ISTEXT(E3), E3, LET(nc_r, (30 / PI()) * SQRT(9810 / (B2 + B3 + B4)), IF(ABS(nc_r - B5) / B5 < 0.2, "RESONANCE DANGER", IF(nc_r > B5, "STIFF SUBCRITICAL", "FLEXIBLE SUPERCRITICAL"))))` ### 5-Factor DuPont ROE: Tax Burden, Interest Burden & EBIT Margin - **URL**: https://sheets.arte-soft.com/en/learn/dupont-5-factor-roe-tax-interest-ebit-turnover-leverage/ - **Summary**: Decompose ROE into five accounting ratios, reconcile their unrounded product to net income over average equity, and distinguish undefined factors from a still-defined direct ROE. - **Formula (Tax-burden ratio NI/EBT, D2)**: `=IF(COUNT(B5,B4)<>2,"Enter numeric numerator and denominator",IF(B4=0,"Ratio undefined: zero denominator",B5/B4))` - **Formula (Interest-burden ratio EBT/EBIT, D3)**: `=IF(COUNT(B4,B3)<>2,"Enter numeric numerator and denominator",IF(B3=0,"Ratio undefined: zero denominator",B4/B3))` - **Formula (EBIT margin, D4)**: `=IF(COUNT(B3,B2)<>2,"Enter numeric numerator and denominator",IF(B2=0,"Ratio undefined: zero denominator",B3/B2))` - **Formula (Asset turnover, D5)**: `=IF(COUNT(B2,B6)<>2,"Enter numeric numerator and denominator",IF(B6=0,"Ratio undefined: zero denominator",B2/B6))` - **Formula (Equity multiplier, D6)**: `=IF(COUNT(B6,B7)<>2,"Enter numeric numerator and denominator",IF(B7=0,"Ratio undefined: zero denominator",B6/B7))` - **Formula (Five-factor product, D7)**: `=IF(COUNT(B2:B7)<>6,"Enter all six numeric financial inputs",IF(OR(B2<=0,B6<=0,B7<=0),"Require positive revenue, average assets and equity",IF(OR(B3=0,B4=0),"Five-factor product undefined: zero EBIT or EBT",D2*D3*D4*D5*D6)))` - **Formula (Direct ROE, D8)**: `=IF(COUNT(B5,B7)<>2,"Enter numeric net income and equity",IF(B7<=0,"Average equity must be positive",B5/B7))` - **Formula (Combined NI/EBIT ratio, D9)**: `=IF(COUNT(B5,B3)<>2,"Enter numeric numerator and denominator",IF(B3=0,"Ratio undefined: zero denominator",B5/B3))` ### Dupuit-Forchheimer Unconfined Aquifer Seepage & Parabolic Water Table - **URL**: https://sheets.arte-soft.com/en/learn/dupuit-forchheimer-unconfined-groundwater-seepage-mound/ - **Summary**: Calculate steady unconfined groundwater seepage per unit width q' = K * (h1^2 - h2^2) / (2 * L) (m^2/day) and parabolic phreatic water-table elevation h(x) between two canals or earthen dam faces. *Table — Quantify earthen levee seepage and phreatic water-table profiles!:* | Unconfined Seepage Case (Sand K = 12 m/d, Width L = 200 m) | Boundary Heads h_1, h_2 (m) | Discharge q' (m^2/day/m) | Midpoint Water Table h(L/2) | | --- | --- | --- | --- | | Steep Canal Drawdown | h_1 = 15.0 m, h_2 = 9.0 m | 4.320 m^2/d | 12.37 m (vs 12.00 m linear!) | | Moderate Head Drop | h_1 = 15.0 m, h_2 = 12.0 m | 2.430 m^2/d | 13.58 m | | Reversed Gradient | h_1 = 9.0 m, h_2 = 15.0 m | -4.320 m^2/d (Flow right-to-left) | 12.37 m | - **Formula (Dupuit-Forchheimer Unit-Width Seepage Discharge q' (m^2/day))**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B5 <= 0), "Invalid Aquifer Input", ROUND((B2 * ((B3 ^ 2) - (B4 ^ 2))) / (2 * B5), 3))` - **Formula (Mid-Span Phreatic Water-Table Elevation h(L / 2) = SQRT((h1^2 + h2^2) / 2))**: `=ROUND(SQRT(((B3 ^ 2) + (B4 ^ 2)) / 2), 2)` ### Duration-Neutral Barbell-Bullet Butterfly Weights and Convexity Pickup - **URL**: https://sheets.arte-soft.com/en/learn/duration-neutral-fifty-fifty-butterfly-barbell-weights-and-convexity/ - **Summary**: Construct cash-and-duration-neutral 2s5s10s fixed-income butterflies in Excel and Arte Sheets and quantify exact barbell convexity pickup over a bullet bond. *Table — Immunize parallel yield shifts while harvesting positive barbell convexity:* | Butterfly Quantity (2s5s10s) | Closed-Form Expression | Sample Output | | --- | --- | --- | | Short-Wing Weight w_2 | (D_10 - D_5) / (D_10 - D_2) | 0.5806 (58.06% in 2y) | | Long-Wing Weight w_10 | (D_5 - D_2) / (D_10 - D_2) | 0.4194 (41.94% in 10y) | | Net Barbell Convexity Pickup | w_2*C_2 + w_10*C_10 - C_5 | +10.9290 (Positive gamma!) | | Parallel +/-100 bps Shift P&L | 0.5 * Net_Convexity * (dy)^2 * 10000 | +5.46 bps symmetric gain | - **Formula (Cash-and-Duration-Neutral Short-Wing Weight w_short Formula)**: `=IF(OR(B2 <= 0, B3 <= B2, B4 <= B3), "Require D_short < D_mid < D_long", ROUND((B4 - B3) / (B4 - B2), 4))` - **Formula (Net Butterfly Convexity Pickup & Parallel-Shift P&L Check Formula)**: `=LET(d_sh, B2, d_md, B3, d_lg, B4, c_sh, C2, c_md, C3, c_lg, C4, IF(OR(d_sh <= 0, d_md <= d_sh, d_lg <= d_md), "Require D_short < D_mid < D_long", LET(w_sh, (d_lg - d_md) / (d_lg - d_sh), w_lg, 1 - w_sh, ROUND(w_sh * c_sh + w_lg * c_lg - c_md, 4))))` ### Durbin-Wu-Hausman Control-Function Residual Endogeneity Test - **URL**: https://sheets.arte-soft.com/en/learn/durbin-wu-hausman-control-function-residual-endogeneity-test/ - **Summary**: Test regressor endogeneity in Excel and Arte Sheets by augmenting the structural equation with first-stage IV residuals v_hat = X - X_hat and computing the exact DWH t- and F-statistics. *Table — Turn endogeneity testing into a transparent first-stage residual check:* | Estimator / Diagnostic | Spreadsheet Relationship | Verified Result | | --- | --- | --- | | Naive OLS Slope (beta_OLS) | SLOPE(Y, X) | 1.6452 (Endogeneity Bias) | | Consistent 2SLS / CF Slope (beta_2SLS) | COV(Z, Y) / COV(Z, X) | 1.5000 (True Causal Slope) | | Control-Function Loading (phi_CF) | Slope on v_hat controlling for X | 1.5000 | | DWH Endogeneity t-Statistic | phi_CF / SE(phi_CF) (df = N - 3 = 3) | 4.2767 (F = 18.2903) | - **Formula (Control-Function Residual Loading phi_CF and 2SLS Slope Formula)**: `=LET(z_col, B2:B7, x_col, C2:C7, y_col, D2:D7, n_obs, ROWS(z_col), ss_z, VAR_P(z_col) * n_obs, IF(ss_z <= 1E-9, "Invalid DWH Design", LET(pi_1, SLOPE(x_col, z_col), ss_x, VAR_P(x_col) * n_obs, ss_xh, pi_1^2 * ss_z, ss_v, ss_x - ss_xh, IF(OR(ss_xh <= 1E-9, ss_v <= 1E-9), "Invalid DWH Design", LET(b_2sls, SLOPE(y_col, z_col) / pi_1, s_xy, SUMPRODUCT(x_col, y_col) - n_obs * AVERAGE(x_col) * AVERAGE(y_col), s_zy, SUMPRODUCT(z_col, y_col) - n_obs * AVERAGE(z_col) * AVERAGE(y_col), gam_v, (s_xy - pi_1 * s_zy) / ss_v, ROUND(gam_v - b_2sls, 4))))))` - **Formula (Exact Durbin-Wu-Hausman Endogeneity t-Statistic Formula)**: `=LET(z_col, B2:B7, x_col, C2:C7, y_col, D2:D7, n_obs, ROWS(z_col), ss_z, VAR_P(z_col) * n_obs, IF(OR(n_obs <= 3, ss_z <= 1E-9), "Invalid DWH Design", LET(pi_1, SLOPE(x_col, z_col), ss_x, VAR_P(x_col) * n_obs, ss_y, VAR_P(y_col) * n_obs, ss_xh, pi_1^2 * ss_z, ss_v, ss_x - ss_xh, IF(OR(ss_xh <= 1E-9, ss_v <= 1E-9), "Invalid DWH Design", LET(b_2sls, SLOPE(y_col, z_col) / pi_1, s_xy, SUMPRODUCT(x_col, y_col) - n_obs * AVERAGE(x_col) * AVERAGE(y_col), s_zy, SUMPRODUCT(z_col, y_col) - n_obs * AVERAGE(z_col) * AVERAGE(y_col), gam_v, (s_xy - pi_1 * s_zy) / ss_v, phi_cf, gam_v - b_2sls, sse_cf, MAX(0, ss_y - b_2sls^2 * ss_xh - gam_v^2 * ss_v), s2_cf, sse_cf / (n_obs - 3), se_phi, SQRT(s2_cf * (1 / ss_v + 1 / ss_xh)), ROUND(phi_cf / se_phi, 4))))))` ### Durnin-Womersley 4-Site Skinfold Calculator: LOG10 Skinfold Sum Body Density & %BF - **URL**: https://sheets.arte-soft.com/en/learn/durnin-womersley-4-site-skinfold-logarithmic-body-density-formula/ - **Summary**: Calculate Whole-Body Density D_b = c - m * LOG10(Biceps + Triceps + Subscapular + Suprailiac) and Siri Percent Body Fat across adult age-sex bands using J. V. G. A. Durnin and J. Womersley’s (1974, Br. J. Nutr.) general-population reference equations. *Table — Linearize subcutaneous fat compression via base-10 logarithm LOG10(S_4)!:* | Durnin-Womersley Cohort (20–29 vs 30–39 yr) | Intercept c & Slope m | At 4-Site Sum S_4 = 45 mm (LOG10 = 1.6532) | Siri Body Fat (%) | | --- | --- | --- | --- | | Adult Male 20–29 yr | c = 1.1631, m = 0.0632 | D_b = 1.05862 g/cm^3 | 17.59% BF | | Adult Male 30–39 yr | c = 1.1422, m = 0.0544 | D_b = 1.05227 g/cm^3 | 20.41% BF | | Adult Female 20–29 yr | c = 1.1599, m = 0.0717 | D_b = 1.04136 g/cm^3 | 25.34% BF | | Adult Female 30–39 yr | c = 1.1423, m = 0.0632 | D_b = 1.03782 g/cm^3 | 26.96% BF | - **Formula (Durnin-Womersley Predicted Body Density D_b = c - m * LOG10(SUM(4 Sites)))**: `=IF(OR(MIN(B2:B5) <= 1, SUM(B2:B5) > 250, B6 < 1.1, B6 > 1.2, B7 <= 0, B7 > 0.12), "Invalid 4-Site Skinfolds (mm) or Durnin-Womersley Constants (c, m)", ROUND(B6 - B7 * LOG10(SUM(B2:B5)), 5))` - **Formula (Durnin-Womersley + Siri Percent Body Fat (%BF = 495 / D_b - 450))**: `=IF(OR(MIN(B2:B5) <= 1, SUM(B2:B5) > 250, B6 < 1.1, B6 > 1.2, B7 <= 0, B7 > 0.12), "Invalid 4-Site Skinfolds (mm) or Durnin-Womersley Constants (c, m)", ROUND((495 / (B6 - B7 * LOG10(SUM(B2:B5)))) - 450, 2))` ### Dynamic monthly calendar grid formula (SEQUENCE + WEEKDAY) - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-calendar-grid-sequence-weekday/ - **Summary**: Spill a complete 6-week x 7-day monthly calendar grid for any Year and Month (Sunday-start or Monday-start) with one SEQUENCE formula. *Table — Anchor on the Sunday (or Monday) on or before the 1st of the month:* | Calendar Style (May 2026, May 1 = Fri) | Start Formula | Top-Left Cell (Row 1, Col 1) | | --- | --- | --- | | Sunday–Saturday (US) | f - WEEKDAY(f, 1) + 1 | 2026-04-26 (Sun, Apr 26) | | Monday–Sunday (Monday-start) | f - WEEKDAY(f, 2) + 1 | 2026-04-27 (Mon, Apr 27) | - **Formula (6x7 Sunday-start and Monday-start calendar formulas)**: `=LET(f, DATE(A2, B2, 1), SEQUENCE(6, 7, f - WEEKDAY(f, 1) + 1, 1))` - **Formula (Full Monday-start calendar grid)**: `=LET(f, DATE(A2, B2, 1), SEQUENCE(6, 7, f - WEEKDAY(f, 2) + 1, 1))` ### Dynamic Category and Monthly Totals With Percent-of-Total (GROUPBY, PIVOTBY & PERCENTOF Patterns) - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-category-and-month-summary-with-percent-of-total-groupby-pivotby/ - **Summary**: Build live category summaries, category-by-month cross-tab totals, and share-of-grand-total ratios using UNIQUE, SORT, SUMIF, and SUMIFS. *Table — Cross-version dynamic summaries without GROUPBY / PIVOTBY lock-in:* | Category | 2026-01 Spend | 2026-02 Spend | Category Total | Share of Total (PERCENTOF) | | --- | --- | --- | --- | --- | | Analytics | 500 | 400 | 900 | 0.15 (15%) | | Cloud | 1,200 | 2,400 | 3,600 | 0.60 (60%) | | Security | 800 | 700 | 1,500 | 0.25 (25%) | | Grand Total | 2,500 | 3,500 | 6,000 | 1.00 (100%) | - **Formula (Category Share of Grand Total (PERCENTOF Equivalent))**: `=IF(SUM($C$2:$C$8) = 0, 0, ROUND(SUMIF($A$2:$A$8, E2, $C$2:$C$8) / SUM($C$2:$C$8), 4))` - **Formula (2D Category-by-Month Cross-Tab Cell (PIVOTBY Equivalent))**: `=SUMIFS($C$2:$C$8, $A$2:$A$8, E2, $B$2:$B$8, F2)` ### Dynamic Chart Title Formula: Formatted KPI Headline & Signed YoY Delta Banner - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-chart-title-kpi-summary-and-delta-banner-formula/ - **Summary**: Build a self-updating executive Chart Title cell using TEXT formatting and directional + / - variance logic so chart headlines never show stale numbers or raw floating-point decimals. *Table — Format numbers explicitly with TEXT() before concatenating chart headlines!:* | Scenario | Current (B3) vs Prior (B4) | Generated Dynamic Chart Title | | --- | --- | --- | | Expansion Quarter | $1,450,000 vs $1,250,000 | Q3 2026 Revenue: $1,450,000 (+16.0% vs Prior) | | Contraction Quarter | $1,100,000 vs $1,250,000 | Q3 2026 Revenue: $1,100,000 (-12.0% vs Prior) | - **Formula (Self-Updating Executive KPI Chart Title String)**: `=IF(B4 <= 0, "Prior Baseline Must Be Positive", B2 & " Revenue: $" & TEXT(B3, "#,##0") & " (" & IF(B3 >= B4, "+", "-") & TEXT(ABS(B3 - B4) / B4, "0.0%") & " vs Prior)")` - **Formula (Signed Dollar Variance Callout ($k))**: `=ROUND((B3 - B4) / 1000, 1)` ### Join dates with text in report headers (and auto-updating copyright years) - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-copyright-year-and-report-header/ - **Summary**: Prevent raw date serial numbers like 46143 when concatenating report titles by wrapping dates in TEXT(..., "yyyy-mm-dd") and YEAR. *Table — Why "As of " & DateCell prints "As of 46143":* | Formula Pattern | Output | | --- | --- | | ="Period: " & TEXT(B2,"yyyy-mm-dd") & " to " & TEXT(C2,"yyyy-mm-dd") | Period: 2026-05-01 to 2026-05-31 | | ="Copyright " & A2 & IF(YEAR(B2)>A2, "-" & YEAR(B2), "") & " " & D2 | Copyright 2021-2026 Acme Corp | - **Formula (Date-range report banner and dynamic copyright formulas)**: `="Period: " & TEXT(B2, "yyyy-mm-dd") & " to " & TEXT(C2, "yyyy-mm-dd")` - **Formula (Auto-updating copyright notice (single year vs year span))**: `="Copyright " & A2 & IF(YEAR(B2) > A2, "-" & YEAR(B2), "") & " " & D2` ### Dynamic Line Chart Ignore Empty Future Months: NA() Formula vs. Zero-Cliff Drop - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-line-chart-ignore-empty-future-months-with-na-formula/ - **Summary**: Stop YTD actuals line charts from plunging vertically to 0 in unrecorded future months by returning NA() instead of "" or 0—while using COUNT(B2:B7) to aggregate completed months cleanly! *Table — Why =IF(B2="", "", ...) STILL plots as zero on a line chart—and why NA() stops the line cleanly!:* | Unrecorded Future Month Return Value in Chart Helper Column | Line Chart Visual Behavior | Downstream SUM / AVERAGE Impact | | --- | --- | --- | | Formula Empty String "" or Numeric 0 | Plunges vertically to 0 ("Zero Cliff"!) | 0 dilutes AVERAGE; "" ignored by SUM | | =NA() (#N/A Marker) | Stops line cleanly at last recorded month! | Propagates #N/A if summed directly -> Sum raw Actuals B2:B7 instead! | - **Formula (Chart-Ready YTD Cumulative Series Stopping Cleanly at Unrecorded Months with NA())**: `=IF(OR(ISBLANK(B4), LEN(TRIM(B4 & "")) = 0), NA(), ROUND(SUM($B$2:B4), 2))` - **Formula (Annualized Run-Rate Forecast Based Strictly on Recorded Months = 12 * AVERAGE(B2:B7))**: `=IF(COUNT(B2:B7) = 0, "No Closed Months Yet", ROUND(12 * AVERAGE(B2:B7), 2))` ### Dynamic range between two matches: sum or extract rows between markers - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-range-between-two-matches-index/ - **Summary**: Locate any Start milestone and End milestone with XMATCH and slice all rows inclusively between them using TAKE(DROP(...)). *Table — Slice rows dynamically between two named milestones:* | RowIdx | Milestone (A) | Budget (B) | Included in Phase2 Slice? | | --- | --- | --- | --- | | 1 | Discovery | $120 | Dropped (before s = 2) | | 2 (s) | Phase2-Start | $250 | Yes | | 3 | Core Build | $400 | Yes | | 4 | QA Testing | $150 | Yes | | 5 (e) | Phase2-End | $200 | Yes (Sum = $1,000) | | 6 | Handover | $90 | Trimmed (after e = 5) | - **Formula (Inclusive slice sum and row-count formulas)**: `=LET(startPosition, XMATCH(D2, A2:A7), endPosition, XMATCH(E2, A2:A7), s, MIN(startPosition, endPosition), e, MAX(startPosition, endPosition), IF(s=1,SUM(TAKE(B2:B7,e)),SUM(TAKE(DROP(B2:B7,s-1),e-s+1))))` - **Formula (List step names inside the matched boundary window)**: `=LET(startPosition, XMATCH(D2, A2:A7), endPosition, XMATCH(E2, A2:A7), s, MIN(startPosition, endPosition), e, MAX(startPosition, endPosition), IF(s=1,TEXTJOIN(" -> ",TRUE,TAKE(A2:A7,e)),TEXTJOIN(" -> ",TRUE,TAKE(DROP(A2:A7,s-1),e-s+1))))` ### Dynamic two-way average by row category and column header (CHOOSECOLS + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-two-way-average-matrix-averageifs/ - **Summary**: Average rows matching a region or department while dynamically switching which quarter or metric column is aggregated via XMATCH + CHOOSECOLS. *Table — Aggregate a user-selected metric column without rewriting AVERAGEIFS ranges:* | Region (A) | Q1 (B) | Q2 (C) | Q3 (D) | | --- | --- | --- | --- | | West (Row 2) | 120 | 150 | 180 | | East (Row 3) | 90 | 110 | 130 | | West (Row 4) | 180 | 210 | 240 | | East (Row 5) | 110 | 130 | 150 | | West (Row 6) | 150 | 180 (West Q2 Avg = 180) | 210 | - **Formula (Dynamic two-way conditional average)**: `=IF(COUNTIF(B1:D1,G2)<>1,"Choose a unique header",LET(values,CHOOSECOLS(B2:D6,XMATCH(G2,B1:D1)),mask,(A2:A6=F2)*ISNUMBER(values),IF(SUM(mask)=0,"No numeric observations",AVERAGE(FILTER(values,mask)))))` - **Formula (Dynamic two-way conditional sum using the same pattern)**: `=IF(COUNTIF(B1:D1,G2)<>1,"Choose a unique header",LET(values,CHOOSECOLS(B2:D6,XMATCH(G2,B1:D1)),mask,(A2:A6=F2)*ISNUMBER(values),IF(SUM(mask)=0,"No numeric observations",SUM(FILTER(values,mask)))))` ### Build a Dynamic Two-Way Count Matrix (Mixed-Reference COUNTIFS Cross-Tab) - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-two-way-count-matrix-countifs-dashboard/ - **Summary**: Cross-tabulate ticket or order counts by Priority (rows) and Channel (columns) using mixed-reference COUNTIFS that updates instantly without manual PivotTable refreshes. *Table — Mixed references ($E2 and F$1) turn one COUNTIFS into a full 2D matrix:* | Reference Token | Dollar Lock Type | Behavior When Copied Across & Down | | --- | --- | --- | | $B$2:$B$9, $C$2:$C$9 | Full absolute | Always points to Priority & Channel columns | | $E2 | Column-locked mixed | Tracks row label down rows 2..4, stays in col E | | F$1 | Row-locked mixed | Tracks column header across cols F..G, stays in row 1 | - **Formula (Two-Way COUNTIFS Cross-Tab Formula)**: `=COUNTIFS($B$2:$B$9, $E2, $C$2:$C$9, F$1)` - **Formula (Multi-Step Dashboard Scaffolding & Live Review in Arte Sheets)**: `=SUM(F2:G4) = COUNTA(A2:A9)` ### Dynamic two-way sum and average: aggregate a chosen column by row criteria - **URL**: https://sheets.arte-soft.com/en/learn/dynamic-two-way-sum-index-match/ - **Summary**: Select a monthly metric column with XLOOKUP, filter its rows, and calculate a dynamic sum or average. *Table — Two-way aggregation when row labels repeat:* | Line (A) | Jan (B) | Feb (C) | Mar (D) | | --- | --- | --- | --- | | Cloud | 120 | 150 | 180 | | Support | 40 | 50 | 60 | | Cloud | 80 | 110 | 130 | - **Formula (SUM with FILTER and XLOOKUP, or a SUMPRODUCT matrix formula)**: `=SUM(FILTER(XLOOKUP(F2, B1:D1, B2:D4), A2:A4=E2, 0))` - **Formula (Dynamic two-way average)**: `=AVERAGE(FILTER(XLOOKUP(F2, B1:D1, B2:D4), A2:A4=E2))` ### Get Earliest Start & Latest Finish Project Dates by Phase (MINIFS & MAXIFS) - **URL**: https://sheets.arte-soft.com/en/learn/earliest-start-and-latest-finish-project-dates-minifs-maxifs/ - **Summary**: Summarize valid task dates by phase using MINIFS and MAXIFS, with explicit checks for missing tasks, incomplete dates and reversed date ranges. - **Formula (Earliest start date)**: `=IF(H2<>"Ready",H2,TEXT(MINIFS(C2:C6,B2:B6,G2),"yyyy-mm-dd"))` - **Formula (Latest finish date)**: `=IF(H2<>"Ready",H2,TEXT(MAXIFS(D2:D6,B2:B6,G2),"yyyy-mm-dd"))` - **Formula (Inclusive calendar span)**: `=IF(H2<>"Ready",H2,MAXIFS(D2:D6,B2:B6,G2)-MINIFS(C2:C6,B2:B6,G2)+1)` ### Earned Value Management (EVM) formulas: EV, PV, CPI, SPI, and EAC - **URL**: https://sheets.arte-soft.com/en/learn/earned-value-management-evm-cpi-spi-eac-formula/ - **Summary**: Distinguish true physical progress from raw budget burn using Cost Performance Index (CPI = EV / AC), Schedule Performance Index (SPI = EV / PV), and EAC. *Table — Why comparing Actual Spend vs Planned Budget alone hides cost overruns!:* | EVM Metric (BAC = $200k, Plan 50%, Done 45%, AC = $100k) | Formula | Result | | --- | --- | --- | | Planned Value (PV) & Earned Value (EV) | BAC*50% / BAC*45% | $100,000 / $90,000 | | Cost Performance Index (CPI) | =EV / AC = 90k / 100k | 0.90 (Over budget < 1.0) | | Schedule Performance Index (SPI) | =EV / PV = 90k / 100k | 0.90 (Behind schedule < 1.0) | | Estimate at Completion (EAC) | =BAC / CPI = 200k / 0.90 | $222,222.22 | - **Formula (CPI, SPI, and Estimate at Completion (EAC) formulas)**: `=ROUND((A2 * C2) / D2, 4)` - **Formula (Estimate at Completion (EAC = BAC / CPI))**: `=ROUND(A2 / ((A2 * C2) / D2), 2)` - **Formula (Additional worked calculation)**: `=ROUND((A2 * C2) / (A2 * B2), 4)` ### Earned Value TCPI & Lipke Earned Schedule Formula - **URL**: https://sheets.arte-soft.com/en/learn/earned-value-tcpi-to-complete-performance-index-and-earned-schedule/ - **Summary**: Audit unrecoverable cost overruns via To-Complete Performance Index TCPI = (BAC - EV) / (BAC - AC) and fix late-project SPI = 1.00 convergence distortion with Walt Lipke’s Earned Schedule SPI(t) = ES / AT. *Table — Catch two classic EVM blind spots: optimistic BAC forecasts and late-project SPI = 1.00!:* | Project Controls Metric (BAC=1000, EV=450, AC=550, AT=6 mo) | Formula | Verified Output | | --- | --- | --- | | Required Efficiency to Hit BAC (TCPI_BAC) | (BAC - EV) / (BAC - AC) | 1.2222 (> 1.10 Unrecoverable!) | | Walt Lipke Earned Schedule (ES) | 4 + (450 - 400) / (500 - 400) | 4.5000 months earned | | Time-Based Schedule Index SPI(t) | ES / AT = 4.50 / 6.00 | 0.7500 (25.0% Behind Schedule) | | Forecast Completion Duration IEAC(t) | PD / SPI(t) = 10 / 0.75 | 13.33 months (+3.33 mo Delay) | - **Formula (To-Complete Performance Index (TCPI_BAC) Formula)**: `=LET(bac_t, B2, ev_cr, B3, ac_cr, B4, IF(OR(bac_t <= 0, ev_cr < 0, ev_cr > bac_t, ac_cr < 0), "Invalid EVM Input", IF(AND(ev_cr < bac_t, ac_cr >= bac_t), "Budget Exhausted (AC >= BAC)", IF(ev_cr = bac_t, 0, ROUND((bac_t - ev_cr) / (bac_t - ac_cr), 4)))))` - **Formula (Lipke (2003) Interpolated Earned Schedule & SPI(t) Formula)**: `=LET(ev_cr, B3, at_mo, B5, c_int, B9, pv_c, B7, pv_n, B8, IF(OR(at_mo <= 0, c_int < 0, pv_n <= pv_c, ev_cr < pv_c, ev_cr > pv_n), "Invalid Earned Schedule Bracket", LET(es_mo, c_int + (ev_cr - pv_c) / (pv_n - pv_c), ROUND(es_mo / at_mo, 4))))` ### Probability of Informed Trading (PIN) & Spread Formula - **URL**: https://sheets.arte-soft.com/en/learn/easley-kiefer-ohara-probability-of-informed-trading-pin-formula/ - **Summary**: Calculate Easley, Kiefer, O’Hara, and Paperman’s (1996) Probability of Informed Trading PIN = (alpha * mu) / (alpha * mu + epsilon_b + epsilon_s) and Bayesian opening bid-ask quotes. *Table — Extract informed order-flow toxicity from Poisson buy and sell arrival rates!:* | EKOP (1996) PIN Microstructure Metric | Formula | Verified Output | | --- | --- | --- | | Probability of Informed Trading (PIN) | (alpha * mu) / (alpha * mu + eps_b + eps_s) | 0.2000 (20.00% Toxicity) | | Bayesian Opening Ask Quote E[V \| Buy] | V_0 + (alpha*(1-delta)*mu / (eps_b + alpha*(1-delta)*mu))*(V_H - V_0) | 50.4000 | | Bayesian Opening Bid Quote E[V \| Sell] | V_0 - (alpha*delta*mu / (eps_s + alpha*delta*mu))*(V_0 - V_L) | 49.6000 | | Opening Adverse-Selection Spread | Ask - Bid | 0.8000 ($0.80 / share) | - **Formula (Easley-Kiefer-O’Hara-Paperman (1996) PIN Formula)**: `=LET(al_ev, B2, dl_bd, B3, ep_b, B4, ep_s, B5, mu_in, B6, vh_vl, B7, vl_vl, B8, IF(OR(al_ev < 0, al_ev > 1, dl_bd < 0, dl_bd > 1, ep_b <= 0, ep_s <= 0, mu_in < 0, vh_vl <= vl_vl), "Invalid PIN Input", ROUND((al_ev * mu_in) / (al_ev * mu_in + ep_b + ep_s), 4)))` - **Formula (General Asymmetric Bayesian Opening Ask & Bid Quotes Formula)**: `=LET(al_ev, B2, dl_bd, B3, ep_b, B4, mu_in, B6, vh_vl, B7, vl_vl, B8, IF(ISTEXT(E2), E2, LET(v_pr, (1 - dl_bd) * vh_vl + dl_bd * vl_vl, ROUND(v_pr + ((al_ev * (1 - dl_bd) * mu_in) / (ep_b + al_ev * (1 - dl_bd) * mu_in)) * (vh_vl - v_pr), 4))))` ### Eaton-Kortum Trade Share & ACR Gains-from-Trade Formula - **URL**: https://sheets.arte-soft.com/en/learn/eaton-kortum-ricardian-trade-share-and-acr-gains-from-trade/ - **Summary**: Compute multi-country Eaton-Kortum Fréchet import shares pi_ni = T_i*(c_i*d_ni)^(-theta) / Phi_n and Arkolakis-Costinot-Rodríguez-Clare welfare gain pi_nn^(-1/theta). *Table — Unify Ricardian comparative advantage and sufficient-statistic welfare gains:* | Source Country i (theta = 4) | T_i / Cost c_i / Iceberg d_1i | Potential & Expenditure Share pi_1i | | --- | --- | --- | | Home (i = 1, Domestic) | 32 / 2.0 / 1.0 | 2.0000 -> pi_11 = 0.5000 (50%) | | Partner 2 (i = 2) | 81 / 2.0 / 1.5 | 1.0000 -> pi_12 = 0.2500 (25%) | | Partner 3 (i = 3) | 16 / 1.0 / 2.0 | 1.0000 -> pi_13 = 0.2500 (25%) | | ACR Welfare Ratio W / W_aut | pi_11^(-1 / theta) | 1.1892 (+18.92% Real Income) | - **Formula (Eaton-Kortum Bilateral Sourcing Potential T_i * (c_i * d_1i)^(-theta) Formula)**: `=IF(OR(B2 <= 0, C2 <= 0, D2 < 1, $H$2 <= 0), "Invalid EK Input", B2 * POWER(C2 * D2, -$H$2))` - **Formula (ACR Sufficient-Statistic Real-Income Welfare Ratio pi_11^(-1 / theta) Formula)**: `=LET(th_ek, H2, p_dom, F2, IF(OR(ISTEXT(E2), ISTEXT(E3), ISTEXT(E4), th_ek <= 0, p_dom <= 0, p_dom > 1), "Invalid EK Input", ROUND(POWER(p_dom, -1 / th_ek), 4)))` ### Eccentric Column Secant Formula Max Compressive Stress - **URL**: https://sheets.arte-soft.com/en/learn/eccentric-column-secant-formula-maximum-compressive-stress-and-yield-limit/ - **Summary**: Calculate Eccentric Column Direct Axial Stress P/A (MPa), Stability Secant Angle (rad), Exact Secant Maximum Fiber Compressive Stress (MPa), and Naive Linear Stress Without P-Delta (MPa). *Table — Superposition P/A + M*c/I fails on slender eccentric columns—use 1/COS(angle) for P-Delta amplification!:* | Beam-Column Secant KPI (P=200 kN, A=2,500 mm², ec/r²=0.30, Le/r=120, E=200 GPa) | Formula | Verified Output | | --- | --- | --- | | Direct Axial Stress P/A (MPa) | (Axial_Load_kN * 1000) / Area_mm2 | 80.00 MPa (125.00 @ 312.5 kN) | | Stability Angle theta (rad) | (Le / (2*r)) * SQRT(P_N / (E_MPa * A)) | 1.2000 rad (1.5000 @ 312.5 kN) | | Exact Secant Max Stress (MPa) | (P / A) * (1 + (ec_r2) / COS(theta)) | 146.23 MPa (655.13 @ 312.5 kN!) | | Naive No-P-Delta Stress (MPa) | (P / A) * (1 + ec_r2) | 104.00 MPa (162.50 False Safe!) | - **Formula (Exact Beam-Column Secant Stress & Euler-Limit Guard Formula)**: `=LET(ld_k, B2, ar_m, B3, ec_r, B4, le_m, B5, rg_m, B6, md_g, B7, IF(OR(ld_k <= 0, ar_m <= 0, ec_r < 0, le_m <= 0, rg_m <= 0, md_g <= 0), "Invalid Column Input", LET(p_nw, ld_k * 1000, th_r, (le_m / (2 * rg_m)) * SQRT(p_nw / (md_g * 1000 * ar_m)), IF(th_r >= PI() / 2, "EULER BUCKLED: Angle >= PI/2", ROUND((p_nw / ar_m) * (1 + ec_r / COS(th_r)), 2)))))` - **Formula (Near-Euler Non-Linear Blow-Up Check (Set Axial Load P = 312.5 kN vs 360 kN))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Column Input", ROUND(((B2 * 1000) / B3) * (1 + B4), 2))` ### Eckert GPDC Packed-Column Flooding Formula: Flow Parameter F_LV & Tower Diameter - **URL**: https://sheets.arte-soft.com/en/learn/eckert-gpdc-packed-column-flooding-flow-parameter-and-capacity-formula/ - **Summary**: Size random and structured packed absorption, stripping, and distillation towers using Sherwood-Eckert Generalized Pressure Drop Correlation (GPDC) Flow Parameter F_LV = (L / G) * SQRT(rho_G / rho_L), Flooding Gas Velocity u_flood, and Column Diameter. *Table — Prevent packed-tower liquid backup (flooding) by balancing gas kinetic head against liquid drainage!:* | Packed Scrubber Sizing Quantity (2-in Pall Rings F_p = 24 ft^-1, L = 8 kg/s, G = 4 kg/s) | Formula | Evaluated Result | | --- | --- | --- | | Sherwood-Eckert Flow Parameter F_LV (rho_G = 2.0, rho_L = 998 kg/m^3) | (L / G) * SQRT(rho_G / rho_L) | 0.0895 | | GPDC Flooding Ordinate Y_flood | EXP(-3.5021 - 1.028*LN(F_LV) - 0.11093*LN(F_LV)^2) | 0.1895 | | Superficial Flooding Gas Velocity u_G,flood (nu = 1.0 cSt) | 0.3048 * SQRT(32.174 * Y_flood * (rho_L - rho_G) / (F_p * rho_G * nu^0.1)) | 3.421 m/s (11.22 ft/s) | | Design Column Inner Diameter at 75% Flood (Q_G = G/rho_G = 2.0 m^3/s) | SQRT(4 * Q_G / (PI() * 0.75 * u_flood)) | 0.995 m (~1.00 m ID) | - **Formula (Sherwood-Eckert Packed-Tower Flow Parameter F_LV = (L / G) * SQRT(rho_G / rho_L))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= B4), "Requires Positive L, G, and 0 < rho_G < rho_L", ROUND((B2 / B3) * SQRT(B4 / B5), 4))` - **Formula (Eckert GPDC Superficial Flooding Gas Velocity u_G,flood (m/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= B4, B6 <= 0, B7 <= 0), "Invalid Packed-Column Flooding Inputs", ROUND(0.3048 * SQRT((32.174 * EXP(-3.5021 - 1.028 * LN((B2 / B3) * SQRT(B4 / B5)) - 0.11093 * ((LN((B2 / B3) * SQRT(B4 / B5))) ^ 2)) * (B5 - B4)) / (B6 * B4 * (B7 ^ 0.1))), 3))` ### Contribution Margin CM1, CM2, and CM3 formulas (e-commerce unit economics) - **URL**: https://sheets.arte-soft.com/en/learn/ecommerce-contribution-margin-cm1-cm2-cm3-unit-economics/ - **Summary**: Build an illustrative per-order contribution waterfall from net revenue through product, fulfillment, payment and advertising costs. *Table — Define the costs included at each contribution level:* | Per-Order Waterfall ($100 AOV, 10% Disc/Ret) | Formula | Dollar / Order | | --- | --- | --- | | Net Order Revenue | =$100 * (1 - 0.10) | $90.00 | | CM1 (Product Margin after $28 COGS) | =$90.00 - $28.00 | $62.00 (68.9% of Net) | | CM2 (After $9.50 Ship & $2.91 Gateway) | =$62 - $9.50 - ($90*2.9%+$0.30) | $49.59 (Break-Even CPA!) | | CM3 (After $30.00 Paid Ad CPA) | =$49.59 - $30.00 | $19.59 (21.77% Net CM3) | - **Formula (CM2 (Break-Even CPA) and CM3 per-order contribution formulas)**: `=LET(net, A2 * (1 - B2), fee, ROUND(net * 0.029 + 0.3, 2), contributionBeforeAds, net - C2 - D2 - fee, ROUND(contributionBeforeAds - E2, 2))` - **Formula (Maximum Break-Even Paid CPA per order (equals CM2))**: `=LET(net, A2 * (1 - B2), fee, ROUND(net * 0.029 + 0.3, 2), ROUND(net - C2 - D2 - fee, 2))` ### Inventory EOQ and Reorder Point formulas: Economic Order Quantity - **URL**: https://sheets.arte-soft.com/en/learn/economic-order-quantity-eoq-reorder-point/ - **Summary**: Balance fixed ordering costs against annual holding costs with SQRT(2 * D * S / H), and set lead-time Reorder Points. *Table — Minimize total ordering + carrying cost with EOQ:* | AnnualDemand (A) | OrderCost (B) | HoldCost (C) | EOQ Units | Orders / Year | | --- | --- | --- | --- | --- | | 3600 | 50 | 4 | 300 | 12 | | 3600 | 200 | 4 | 600 | 6 | - **Formula (EOQ and Reorder Point formulas)**: `=ROUND(SQRT((2 * A2 * B2) / C2), 0)` - **Formula (Reorder Point (ROP) formula)**: `=ROUNDUP((A2 / 360) * D2 + E2, 0)` ### Economic Production Quantity (EPQ) Finite-Rate Lot-Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/economic-production-quantity-epq-finite-replenishment-lot-size/ - **Summary**: Calculate an idealized finite-rate production lot, peak inventory and annual setup-plus-holding cost, deriving daily demand from annual demand on a consistent operating-day basis. - **Formula (Find the continuous optimum)**: `=IF(COUNT(B2:B4,B6:B7)<>5,"Enter five numeric model inputs",IF(OR(B2<=0,B3<=0,B4<=0,B6<=0,B7<=0),"Require positive model inputs",IF(B6<=B2/B7,"Production rate must exceed demand rate",SQRT(2*B2*B3/(B4*(1-B2/(B7*B6)))))))` - **Formula (Show inventory and both annual cost components)**: `=IF(ISNUMBER(E2),E4+E5,E2)` - **Formula (Compare the instantaneous-replenishment limit)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric demand,setup,holding cost",IF(OR(B2<=0,B3<=0,B4<=0),"Require positive demand and costs",SQRT(2*B2*B3/B4)))` - **Formula (Experiment with the workbook)**: `=IF(ISNUMBER(E2),E2*(1-B2/(B7*B6)),E2)` ### Economic Value Added (EVA), NOPAT & ROIC vs WACC Economic Spread - **URL**: https://sheets.arte-soft.com/en/learn/economic-value-added-eva-nopat-roic-wacc-spread-formula/ - **Summary**: Calculate Net Operating Profit After Tax NOPAT = EBIT * (1 - Tax), Economic Value Added EVA = NOPAT - (Invested_Capital * WACC), and the ROIC - WACC value-creation spread. *Table — Measure true economic profit after charging the full opportunity cost of capital!:* | Business Unit (IC = $1,000M, Tax = 25%, WACC = 9.5%) | EBIT / NOPAT ($M) | ROIC - WACC Spread | Annual EVA ($M) | | --- | --- | --- | --- | | Core Cloud Platform | $180M / $135.0M | 13.5% - 9.5% = +4.00% | +$40.00M (Value Creating) | | Cost-of-Capital Breakeven | $126.67M / $95.0M | 9.5% - 9.5% = 0.00% | $0.00M (Zero Economic Profit) | | Legacy Hardware Division | $110M / $82.5M | 8.25% - 9.5% = -1.25% | -$12.50M (Value Destroying!) | - **Formula (Economic Value Added EVA = EBIT * (1 - Tax) - (IC * WACC))**: `=IF(OR(B4 <= 0, B3 < 0, B3 >= 1), "Invalid Capital or Tax Rate", ROUND(B2 * (1 - B3) - (B4 * B5), 2))` - **Formula (Economic Return Spread (ROIC - WACC))**: `=IF(B4 <= 0, "Invalid Invested Capital", ROUND((B2 * (1 - B3)) / B4 - B5, 4))` ### EDATE function: add calendar months and handle month-end clipping - **URL**: https://sheets.arte-soft.com/en/learn/edate-add-months-to-date/ - **Summary**: Schedule monthly equipment checks from a start date with EDATE, and see why anchoring offsets to the original start date preserves the 31st after February. *Table — Starting a monthly schedule on January 31:* | Anchor start (B2) | Months ahead | Resulting calendar date | 1900 serial | | --- | --- | --- | --- | | 31 January 2026 (46053) | 1 | 28 February 2026 | 46081 | | 31 January 2026 (46053) | 2 | 31 March 2026 | 46112 | - **Formula (Clip shorter months without losing the original day)**: `=EDATE($B$2,C2)` ### Eddington Luminosity Limit & Black-Hole Accretion Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/eddington-luminosity-limit-and-mass-accretion-rate-formula/ - **Summary**: Compute a hydrogen electron-scattering Eddington luminosity and the associated rest-mass inflow at a chosen radiative efficiency, using consistent luminosity units and retaining very small nonzero rates. - **Formula (Keep luminosity conversions consistent)**: `=IF(B5<>"OK",B5,B8/3.828E26)` - **Formula (Calculate reference rest-mass inflow)**: `=IF(B5<>"OK",B5,IF(B6<>"OK",B6,B8/(B3*299792458^2)*31557600/1.98847E30))` - **Formula (Distinguish supplied mass from retained growth)**: `=IF(ISNUMBER(B10),(1-B3)*B10,B10)` ### Eddy-Current Dynamometer Torque, Critical RPM & Cooling - **URL**: https://sheets.arte-soft.com/en/learn/eddy-current-dynamometer-and-retarder-braking-torque-critical-speed-and-rotor-heat/ - **Summary**: Calculate Speed Ratio (N / Ncrit), Kloss-Type Skin-Effect Braking Torque (N·m), Absorbed Rotor Thermal Power (kW), and Required Cooling-Water Flow at 25 K Rise (L/min). *Table — Overspeeding an eddy-current retarder past its 1,450 RPM critical speed makes magnetic skin-shielding DROP braking torque by 33% right when rotor heat triples to 185 kW!:* | Eddy-Current Brake / Dyno KPI (Tmax=680 N·m @ Ncrit=1,450 RPM) | Formula | Verified Output | | --- | --- | --- | | Normalized Speed Ratio (N / Ncrit) | Operating_RPM / Critical_Peak_RPM | 0.655 (2.897 @ 4,200 RPM overspeed) | | Skin-Limited Braking Torque (N·m) | (2 * Tmax_Nm) / ((N / Ncrit) + (Ncrit / N)) | 623.4 N·m (419.5 N·m reaction fade!) | | Absorbed Rotor Thermal Load (kW) | (Torque_Nm * RPM * 2 * PI() / 60) / 1000 | 62.02 kW (184.52 kW thermal surge!) | | Cooling Water @ 25 K Rise (L/min) | (Thermal_kW * 60) / (4.184 * 25) | 35.58 L/min (105.84 L/min jacket demand) | - **Formula (Eddy-Current Brake Reluctance-Shielding Torque & Water-Jacket Heat Balance Formula)**: `=LET(tm_n, B2, nc_r, B3, no_r, B4, sr_x, no_r / nc_r, tq_n, (2 * tm_n) / (sr_x + (1 / sr_x)), kw_h, (tq_n * no_r * 2 * PI() / 60) / 1000, IF(OR(tm_n < 10, tm_n > 50000, nc_r < 100, nc_r > 15000, no_r < 10, no_r > 25000), "Invalid Dyno Input", ROUND((kw_h * 60) / (4.184 * 25), 2)))` - **Formula (High-RPM Downhill / Rated-Power Sweep (`N = 4,200` RPM) Torque-Fade & Scale-Boiling Check)**: `=IF(ISTEXT(E5), E5, ROUND((2 * B2) / ((B4 / B3) + (B3 / B4)), 1))` ### Edinburgh Postnatal Depression Scale (EPDS) & Item-10 Safety Override - **URL**: https://sheets.arte-soft.com/en/learn/edinburgh-postnatal-depression-scale-epds-perinatal-screening/ - **Summary**: Score the 10-item Edinburgh Postnatal Depression Scale (0–30) for antepartum and postpartum mood screening while enforcing an immediate Item-10 self-harm safety override regardless of total score. *Table — Why perinatal mood screening omits somatic sleep/appetite noise—and never ignores Item 10!:* | EPDS Total Score (0–30) | Item 10 (Self-Harm Thoughts) | Clinical Triage Tier | ACOG / Obstetric Follow-Up | | --- | --- | --- | --- | | Any Total Score (0–30) | Item 10 >= 1 (1, 2, or 3) | URGENT SAFETY ALERT | Immediate Same-Day Suicide Risk Assessment | | EPDS >= 13 (e.g., 15) | Item 10 = 0 | Probable Perinatal Depression | Diagnostic Interview & Treatment Plan | | EPDS 10–12 / EPDS 0–9 | Item 10 = 0 | Possible Distress / Low Risk | Repeat EPDS in 2–4 Weeks / Routine Care | - **Formula (Total 10-Item Edinburgh Postnatal Depression Score (0–30))**: `=IF(OR(COUNT(B2:B11) < 10, MIN(B2:B11) < 0, MAX(B2:B11) > 3), "Invalid EPDS Item (0-3)", SUM(B2:B11))` - **Formula (Perinatal Triage Classification With Mandatory Item-10 Safety Override)**: `=IF(OR(COUNT(B2:B11) < 10, MIN(B2:B11) < 0, MAX(B2:B11) > 3), "Invalid EPDS Item (0-3)", IF(B11 > 0, "URGENT SAFETY ALERT — Positive Item 10 Self-Harm Endorsement", IF(SUM(B2:B11) >= 13, "Probable Perinatal Depression (EPDS >= 13) — Diagnostic Evaluation", IF(SUM(B2:B11) >= 10, "Possible Perinatal Distress (EPDS 10-12) — Repeat Screen in 2 Weeks", "Low Perinatal Depression Risk (EPDS 0-9)"))))` ### EDLC Supercapacitor 75% Usable Energy & ESR Drop Formula - **URL**: https://sheets.arte-soft.com/en/learn/edlc-supercapacitor-usable-voltage-window-esr-drop-and-ragone-power/ - **Summary**: Calculate Electric Double-Layer Supercapacitor (EDLC) Usable Extractable Energy (Wh) Between V_max and Converter Cutoff V_min, Usable Energy Fraction (75% at 0.5*V_max), Instantaneous ESR Voltage Sag (V), and Matched-Impedance Peak Power (kW). *Table — Never size supercapacitor banks with 0.5*C*V²—apply the 50%-voltage 75%-usable-energy rule!:* | EDLC Supercapacitor Metric (500 F, 48 V -> 24 V Cutoff, 12 mΩ ESR, 250 A Pulse) | Formula | Verified Output | | --- | --- | --- | | Usable Extractable Energy (Wh) | (0.5 * C * (V_max^2 - V_min^2)) / 3600 | 120.00 Wh (81.60 Wh @ 33.6 V) | | Usable Energy Fraction | 1 - (V_min / V_max)^2 | 0.7500 (0.5100 @ 33.6 V Min) | | Instantaneous ESR Sag (V) | Peak_Pulse_Current_A * ESR_Ohm | 3.00 V | | Matched-Load Max Power (kW) | (V_max^2) / (4 * ESR_Ohm * 1000) | 48.00 kW | - **Formula (Supercapacitor Usable Energy Window Formula (Wh))**: `=LET(cp_f, B2, vm_x, B3, vm_n, B4, es_r, B5, ip_a, B6, IF(OR(cp_f <= 0, vm_x <= 0, vm_n < 0, vm_n >= vm_x, es_r <= 0, ip_a < 0), "Invalid EDLC Bank Input", ROUND((0.5 * cp_f * ((vm_x ^ 2) - (vm_n ^ 2))) / 3600, 2)))` - **Formula (Narrow 70% Voltage Floor Check (Set Converter Cutoff V_min = 33.6 V))**: `=IF(ISTEXT(E2), E2, ROUND(1 - ((B4 / B3) ^ 2), 4))` ### Edmonton Frail Scale (EFS 0–17) Formula: 9-Domain Perioperative & Geriatric Frailty Tier - **URL**: https://sheets.arte-soft.com/en/learn/edmonton-frail-scale-efs-multidimensional-geriatric-frailty-score/ - **Summary**: Calculate Darryl B. Rolfson et al.’s (2006) 17-point Edmonton Frail Scale across all 9 clinical domains (Cognition clock-draw, General health, Functional independence, Social support, Medication polypharmacy/adherence, Nutrition, Mood, Continence, and Timed Up & Go performance) to stratify Fit (0–5), Vulnerable (6–7), and Mild/Moderate/Severe Frailty (8–17). *Table — Why pre-anesthesia & geriatric clinics favor the 5-minute, 17-point Edmonton Frail Scale (EFS)!:* | Edmonton Frail Scale Total (0–17 Points) | Rolfson et al. (2006) Frailty Classification | Perioperative & Geriatric Pathway | | --- | --- | --- | | 0 to 5 Points | Not Frail (Fit) | Standard surgical & anesthesia pathway | | 6 to 7 Points | Vulnerable (Pre-Frail) | Delirium prevention, medication review & early mobilization | | 8 to 9 Points | Mild Frailty | Prehabilitation, nutrition optimization & geriatric co-management | | 10 to 11 Points | Moderate Frailty | Comprehensive Geriatric Assessment (CGA) & discharge planning | | 12 to 17 Points | Severe Frailty | Shared surgical risk-benefit goals-of-care & intensive CGA | - **Formula (Validated 9-Domain Edmonton Frail Scale Total Score (0–17 Points))**: `=IF(OR(COUNT(B2:B10) < 9, MIN(B2:B10) < 0, B2 > 2, B3 > 4, B4 > 2, B5 > 2, B6 > 2, B7 > 1, B8 > 1, B9 > 1, B10 > 2), "Invalid Edmonton Frail Scale Domain Score", SUM(B2:B10))` - **Formula (5-Tier Edmonton Frail Scale Severity Classifier (0–5 Not Frail to 12–17 Severe Frailty))**: `=IF(OR(COUNT(B2:B10) < 9, MIN(B2:B10) < 0, B2 > 2, B3 > 4, B4 > 2, B5 > 2, B6 > 2, B7 > 1, B8 > 1, B9 > 1, B10 > 2), "Invalid Edmonton Frail Scale Domain Score", IF(SUM(B2:B10) >= 12, "Severe Frailty (EFS 12–17)", IF(SUM(B2:B10) >= 10, "Moderate Frailty (EFS 10–11)", IF(SUM(B2:B10) >= 8, "Mild Frailty (EFS 8–9)", IF(SUM(B2:B10) >= 6, "Vulnerable / Pre-Frail (EFS 6–7)", "Not Frail (EFS 0–5)")))))` ### EFFECT function: convert stated APR into effective annual interest rate (APY) - **URL**: https://sheets.arte-soft.com/en/learn/effect-function-effective-annual-rate/ - **Summary**: Compare loan or savings offers with different compounding frequencies on an apples-to-apples annual basis using EFFECT. *Table — Why 12% compounded monthly costs more than 12% annually:* | Offer (A) | StatedAPR (B) | PeriodsPerYear (C) | EffectiveRate | | --- | --- | --- | --- | | Card Monthly | 0.12 | 12 | 0.126825 (12.68%) | | Note Quarterly | 0.12 | 4 | 0.125509 (12.55%) | - **Formula (Compare monthly vs quarterly compounding)**: `=ROUND(EFFECT(B2, C2), 6)` - **Formula (Zero or negative rates and periods return #NUM!)**: `=EFFECT(0, 12)` ### Effective-Date Rate & Price Lookup by Transaction Date (XLOOKUP Mode -1 & VLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/effective-date-rate-lookup-by-transaction-date/ - **Summary**: Resolve the historical price, billing rate, or FX rate in effect on any transaction date using XLOOKUP with match_mode = -1 (exact or next earlier effective date) while guarding dates prior to contract inception. *Table — Match the latest effective date on or before the transaction date:* | Effective Date | Hourly Rate | Sample Invoice Date | Resolved Rate | | --- | --- | --- | --- | | 2026-01-01 | $125 | 2025-12-15 | "Prior to Effective Schedule" | | 2026-04-01 | $140 | 2026-04-01 | $140 (Exact revision boundary) | | 2026-07-15 | $155 | 2026-06-20 | $140 (Apr 1 tier still active) | | 2026-10-01 | $165 | 2026-11-10 | $165 (Latest tier active) | - **Formula (Effective-Dated Rate Lookup (XLOOKUP Exact or Next Earlier Date))**: `=XLOOKUP(D2, $A$2:$A$5, $B$2:$B$5, "Prior to Effective Schedule", -1)` - **Formula (Extended Line Amount With Pre-Inception Guard)**: `=LET(rate, XLOOKUP(D2, $A$2:$A$5, $B$2:$B$5, -1, -1), IF(rate < 0, "Invalid Date", ROUND(E2 * rate, 2)))` ### Effective Duration & Key-Rate Duration (Callable Bond Finite Difference) - **URL**: https://sheets.arte-soft.com/en/learn/effective-duration-and-key-rate-duration-finite-difference/ - **Summary**: Calculate effective duration, convexity and individual key-rate sensitivities from supplied repriced bond values, with a reproducible three-tenor example and input validation. - **Formula (Enter the shock in decimal yield units)**: `=IF(COUNT(B2:B5)<>4,"Check numeric inputs",IF(OR(B2<=0,B3<0,B4<0,B5<=0),"Check prices and shock","OK"))` - **Formula (Calculate effective duration)**: `=IF(B7<>"OK",B7,(B3-B4)/(2*B2*B5))` - **Formula (Calculate effective convexity)**: `=IF(B7<>"OK",B7,(B3+B4-2*B2)/(B2*B5^2))` - **Formula (Calculate key-rate duration for each tenor)**: `=IF(B7<>"OK",B7,IF(COUNT(E2:F2)<>2,"Check key prices",IF(MIN(E2:F2)<0,"Check key prices",(E2-F2)/(2*$B$2*$B$5))))` - **Formula (Reconcile the key-rate sum)**: `=IF(COUNT(G2:G4)<>3,"Check key-rate inputs",SUM(G2:G4))` ### Calculate Effective Hourly Pay Rate (Weighted Shift Pay vs Simple Mean) - **URL**: https://sheets.arte-soft.com/en/learn/effective-hourly-pay-rate-from-tips-commissions-and-hours/ - **Summary**: Compare gross earnings per worked hour with the simple average of shift rates, and calculate an illustrative gap to a chosen target without confusing it with a statutory payroll calculation. - **Formula (Define the money and time consistently)**: `=IF(E6<>"OK",E6,E10/E9)` - **Formula (Compare with an illustrative target)**: `=IF(E6<>"OK",E6,IF(E7<>"OK",E7,MAX(0,E2*E9-E10)))` ### Egger’s Linear Regression Test: Funnel Plot Asymmetry & Small-Study Publication Bias - **URL**: https://sheets.arte-soft.com/en/learn/egger-weighted-regression-funnel-plot-publication-bias-test/ - **Summary**: Detect small-study publication bias in meta-analysis by regressing Standardized Normal Deviate SND_i = θ_i / SE_i on Precision P_i = 1 / SE_i via INTERCEPT and SLOPE. *Table — How Matthias Egger transformed weighted inverse-variance regression into a simple OLS INTERCEPT test!:* | Meta-Analysis Funnel Pattern (5 Studies) | Egger Asymmetry Intercept β_0 | Precision Slope β_1 (Large-Study Limit) | Publication Bias Conclusion | | --- | --- | --- | --- | | Exaggerated Small Studies (-0.95 to -0.25) | -1.9917 | -0.0429 (Attenuated True Effect) | Strong Small-Study Asymmetry | | Symmetric Constant Effect (All θ_i = -0.30) | 0.0000 | -0.3000 (Exact True Effect) | Zero Publication Bias | | Non-Positive Standard Error (SE <= 0) | Error Guard | "SE Values Must Be Positive" | Variance Audit Guard | - **Formula (Egger Funnel-Asymmetry Regression Intercept β_0 = INTERCEPT(SND, Precision))**: `=IF(MIN(C2:C6) <= 0, "SE Values Must Be Positive", ROUND(INTERCEPT(E2:E6, D2:D6), 4))` - **Formula (Large-Study Bias-Adjusted Effect Slope β_1 = SLOPE(SND, Precision))**: `=IF(MIN(C2:C6) <= 0, "SE Values Must Be Positive", ROUND(SLOPE(E2:E6, D2:D6), 4))` ### Ehrenberg NBD Brand Penetration & Double Jeopardy Formula - **URL**: https://sheets.arte-soft.com/en/learn/ehrenberg-nbd-brand-penetration-purchase-frequency-and-double-jeopardy-formula/ - **Summary**: Calculate Andrew Ehrenberg’s Negative Binomial Distribution (NBD) Non-Buyer Share P_0 = (1 + m/k)^(-k), Household Penetration b = 1 - P_0, Average Purchase Frequency per Buyer w = m/b, and Duplication of Purchase D*b_Y. *Table — Diagnose brand growth realism using Ehrenberg’s NBD and Double Jeopardy Law!:* | Ehrenberg NBD Panel Metric (m=1.00/HH, k=2.0, Rival b_Y=30%, D=1.25) | Formula | Verified Output | | --- | --- | --- | | Zero-Purchase Non-Buyer Share P_0 | (1 + m / k) ^ (-k) | 0.4444 (0.8264 @ m=0.20 Small Brand) | | Household Penetration b | 1 - (1 + m / k) ^ (-k) | 0.5556 (0.1736 @ m=0.20 Small Brand) | | Purchase Frequency per Buyer w | m / b (Double Jeopardy!) | 1.8000 (1.1524 @ m=0.20 Small Brand!) | | Duplication of Purchase b_Y\|X | MIN(1, D * b_Y) | 0.3750 (37.50% Shared Buyers) | - **Formula (Ehrenberg NBD Buyer Frequency & Penetration Formula)**: `=LET(m_hh, B2, k_sh, B3, b_rv, B4, dp_c, B5, IF(OR(m_hh <= 0, k_sh <= 0, b_rv <= 0, b_rv >= 1, dp_c <= 0), "Invalid NBD Panel Input", LET(p_zr, (1 + m_hh / k_sh) ^ (-k_sh), bn_p, 1 - p_zr, ROUND(m_hh / bn_p, 4))))` - **Formula (Small-Brand Double Jeopardy Verification (Set m = 0.20))**: `=IF(ISTEXT(E4), E4, ROUND(MIN(1, B5 * B4), 4))` ### Original Sin & Currency Mismatch Debt Shock Formula - **URL**: https://sheets.arte-soft.com/en/learn/eichengreen-goldstein-original-sin-currency-mismatch-debt-shock-formula/ - **Summary**: Calculate post-depreciation sovereign Debt-to-GDP valuation jump d_1 = d_0*(1 + alpha_fx * Delta_S)/(1 + g_y) under Eichengreen-Hausmann "Original Sin" and Goldstein-Turner Net FX Debt / Exports mismatch. *Table — Quantify instant balance-sheet debt explosions when sovereign debt is in foreign currency!:* | Currency Mismatch Sovereign Metric (d_0=60%, fx=50%, dS=+40%, g=-4%) | Formula | Verified Output | | --- | --- | --- | | Post-Shock Debt-to-GDP Ratio (d_1) | d_0 * (1 + alpha_fx * Delta_S) / (1 + g_y) | 0.7500 (75.00% of GDP) | | Balance-Sheet Valuation Debt Jump | d_1 - d_0 | +0.1500 (+15.00% of GDP) | | Net FX Debt-to-Exports Mismatch | (alpha_fx * d_0 - Reserves_GDP) / Exports_GDP | 1.0000 (100% of Exports) | | Local-Currency Debt Benchmark (alpha_fx = 0) | d_0 / (1 + g_y) | 0.6250 (+2.50% vs +15.00%) | - **Formula (Original-Sin Balance-Sheet Debt-to-GDP Valuation Formula)**: `=LET(d_in, B2, fx_s, B3, x_gd, B4, rs_g, B5, ds_sh, B6, gy_r, B7, IF(OR(d_in < 0, fx_s < 0, fx_s > 1, x_gd <= 0, rs_g < 0, ds_sh <= -1, gy_r <= -1), "Invalid Mismatch Input", ROUND((d_in * (1 + fx_s * ds_sh)) / (1 + gy_r), 4)))` - **Formula (Goldstein-Turner Net FX Debt-to-Exports Mismatch Ratio Formula)**: `=IF(ISTEXT(E2), E2, ROUND((B3 * B2 - B5) / B4, 4))` ### Einstein-Brown Bedload Transport Formula: Stochastic Low-Shear & 40 * theta^3 Law - **URL**: https://sheets.arte-soft.com/en/learn/einstein-brown-bedload-sediment-transport-shields-cubic-law-formula/ - **Summary**: Calculate river and coastal bedload transport intensity Phi across stochastic incipient saltation (theta < 0.18) and sheet-flow high-shear transport (Phi = 40 * K_R * theta^3) using Hans Albert Einstein (1942) and Carl B. Brown (1950). *Table — Replace hard zero-transport cutoffs with Hans Albert Einstein’s probabilistic turbulent lift law!:* | Shields Mobility Parameter theta (with Rubey Factor F_1 = 0.75) | Active Einstein-Brown Regime | Dimensionless Intensity Phi | | --- | --- | --- | | Weak Baseflow (theta = 0.05 < 0.18) | Stochastic Burst Regime: 2.15 * F_1 * EXP(-0.391 / theta) | 0.00065 (Trace Creep) | | Moderate Flood (theta = 0.15 < 0.18) | Stochastic Saltation: 2.15 * F_1 * EXP(-0.391 / theta) | 0.1189 | | High-Shear Sheet Flow (theta = 0.30 >= 0.18) | Cubic Regime: 40 * F_1 * theta^3 | 0.8100 | - **Formula (Piecewise Einstein-Brown (1950) Dimensionless Bedload Intensity Phi)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 0.85), "Requires Shields theta > 0 and Rubey Factor F_1 in (0, 0.85]", ROUND(IF(B2 < 0.18, 2.15 * B3 * EXP(-0.391 / B2), 40 * B3 * (B2 ^ 3)), 5))` - **Formula (Volumetric Unit Bedload Rate q_b (m^2/s) = Phi * SQRT((s - 1) * g * D^3))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 0.85, B4 <= 0, B5 <= 1), "Invalid Einstein-Brown Inputs", ROUND(IF(B2 < 0.18, 2.15 * B3 * EXP(-0.391 / B2), 40 * B3 * (B2 ^ 3)) * SQRT((B5 - 1) * 9.80665 * (B4 ^ 3)), 6))` ### Einstein Quantum Solid Molar Heat Capacity (CV) vs. Dulong-Petit 3R Limit - **URL**: https://sheets.arte-soft.com/en/learn/einstein-solid-molar-heat-capacity-vs-dulong-petit-limit/ - **Summary**: Calculate quantized lattice molar heat capacity C_V = 3 * R * (theta_E / T)^2 * EXP(theta_E / T) / (EXP(theta_E / T) - 1)^2 (J/(mol*K)) and % of the classical Dulong-Petit 3R = 24.943 J/(mol*K) limit. *Table — Why room-temperature diamond has less than 20% of the classical Dulong-Petit heat capacity!:* | Crystal Lattice at T = 300 K | Einstein Temp thetaE (K) | Quantum CV (J/(mol*K)) | % of Classical 3R (24.943) | | --- | --- | --- | --- | | Diamond (Stiff Covalent Bonds) | 1,450 K | 4.713 J/(mol*K) | 18.89% (Quantum Frozen-Out) | | Copper / Silver Lattice | 240 K | 23.655 J/(mol*K) | 94.83% (Near Dulong-Petit) | | Absolute Zero / Invalid T <= 0 | Guarded Singularity | "Invalid Thermodynamic Temp" | Requires thetaE > 0 and T > 0 | - **Formula (Einstein Quantum Solid Molar Heat Capacity C_V (J/(mol*K)))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Thermodynamic Temp", ROUND(3 * 8.31446 * ((B2 / B3) ^ 2) * EXP(B2 / B3) / ((EXP(B2 / B3) - 1) ^ 2), 3))` - **Formula (Fraction of Classical Dulong-Petit 3R Limit (%))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Thermodynamic Temp", ROUND(100 * (((B2 / B3) ^ 2) * EXP(B2 / B3) / ((EXP(B2 / B3) - 1) ^ 2)), 2))` ### Ocean Ekman Spiral Depth (DE) & Wind-Driven Ekman Transport Formula - **URL**: https://sheets.arte-soft.com/en/learn/ekman-spiral-layer-depth-and-wind-driven-ekman-transport/ - **Summary**: Calculate Vagn Walfrid Ekman’s turbulent upper-ocean boundary layer thickness D_E = PI() * SQRT((2 * A_z) / |f|) (m) and depth-integrated 90°-deflected Ekman mass transport M_E = tau_wind / |f| (kg/(m*s)). *Table — Why coastal winds parallel to shore drive cold nutrient-rich ocean upwelling 90° offshore!:* | Upper-Ocean Wind State (45° Lat, tau = 0.15 N/m^2) | Eddy Viscosity Az (m^2/s) | Ekman Layer Depth DE (m) | Ekman Mass Transport ME (kg/(m*s)) | | --- | --- | --- | --- | | Moderate Trade/Westerly Mixing | 0.02 m^2/s | 61.9 m | 1,454.5 kg/(m*s) (90° to wind) | | Storm-Enhanced Eddy Mixing (4x Az) | 0.08 m^2/s | 123.7 m (2x Deeper) | 1,454.5 kg/(m*s) (Unchanged!) | | Equator (0° Latitude -> f = 0) | Any Az | Coriolis Singularity Guard | "Equatorial / Invalid Ekman Inputs" | - **Formula (Ocean Surface Ekman Boundary-Layer Depth D_E (m) = PI() * SQRT((2 * A_z) / |f|))**: `=IF(OR(B2 = 0, ABS(B2) > 90, B3 <= 0, B4 < 0), "Equatorial / Invalid Ekman Inputs", ROUND(PI() * SQRT((2 * B3) / (2 * 0.000072921 * ABS(SIN(RADIANS(B2))))), 1))` - **Formula (Depth-Integrated Ekman Mass Transport M_E (kg/(m*s)) = tau_wind / |f|)**: `=IF(OR(B2 = 0, ABS(B2) > 90, B3 <= 0, B4 < 0), "Equatorial / Invalid Ekman Inputs", ROUND(B4 / (2 * 0.000072921 * ABS(SIN(RADIANS(B2)))), 1))` ### El-Ganzouri Multivariate Airway Risk Index (EGRI) for Difficult Intubation - **URL**: https://sheets.arte-soft.com/en/learn/el-ganzouri-airway-risk-index-egri-difficult-intubation-formula/ - **Summary**: Calculate Abdel Raouf El-Ganzouri’s 7-variable preoperative airway score (0–12 points across Mouth Opening, Thyromental Distance, Mallampati Class, Neck Mobility, Jaw Protrusion, Body Weight, and Prior Difficult Intubation). *Table — Outperform isolated Mallampati exams with a 7-factor multivariate airway risk score!:* | El-Ganzouri Risk Index (0–12) | Predicted Laryngoscopy Difficulty | First-Pass Airway Plan | | --- | --- | --- | | EGRI 0–3 Points | Low Risk | Standard Direct or Routine Video Laryngoscopy | | EGRI 4–6 Points | Intermediate Difficult-Airway Risk | First-Choice Video Laryngoscope + Bougie Ready | | EGRI >= 7 Points (e.g., 7) | High Difficult-Intubation Risk | Consider Awake Fiberoptic / Senior Airway Team | - **Formula (Total 7-Variable El-Ganzouri Airway Risk Index (0–12 Points))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 1, B4 > 4, B5 < 0, B6 < 0, B6 > 1, B7 <= 0, B8 < 0, B8 > 2), "Invalid Airway Exam Input", IF(B2 < 4, 1, 0) + IF(B3 > 6.5, 0, IF(B3 >= 6, 1, 2)) + IF(B4 = 1, 0, IF(B4 = 2, 1, 2)) + IF(B5 > 90, 0, IF(B5 >= 80, 1, 2)) + IF(B6 = 1, 0, 1) + IF(B7 < 90, 0, IF(B7 <= 110, 1, 2)) + B8)` - **Formula (Preoperative Airway Management & Video-Laryngoscopy Triage)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 1, B4 > 4, B5 < 0, B6 < 0, B6 > 1, B7 <= 0, B8 < 0, B8 > 2), "Invalid Airway Exam Input", IF((IF(B2 < 4, 1, 0) + IF(B3 > 6.5, 0, IF(B3 >= 6, 1, 2)) + IF(B4 = 1, 0, IF(B4 = 2, 1, 2)) + IF(B5 > 90, 0, IF(B5 >= 80, 1, 2)) + IF(B6 = 1, 0, 1) + IF(B7 < 90, 0, IF(B7 <= 110, 1, 2)) + B8) >= 7, "High Difficult-Airway Risk (EGRI >= 7) — Awake Intubation Evaluation & Difficult Airway Cart", IF((IF(B2 < 4, 1, 0) + IF(B3 > 6.5, 0, IF(B3 >= 6, 1, 2)) + IF(B4 = 1, 0, IF(B4 = 2, 1, 2)) + IF(B5 > 90, 0, IF(B5 >= 80, 1, 2)) + IF(B6 = 1, 0, 1) + IF(B7 < 90, 0, IF(B7 <= 110, 1, 2)) + B8) >= 4, "Intermediate Difficult-Airway Risk (EGRI 4-6) — First-Pass Video Laryngoscopy", "Low Difficult-Airway Risk (EGRI 0-3) — Standard Tracheal Intubation")))` ### Elastomer O-Ring Squeeze % & Gland Fill Swell Formula - **URL**: https://sheets.arte-soft.com/en/learn/elastomer-o-ring-diametral-squeeze-percent-and-gland-fill-thermal-swell-formula/ - **Summary**: Calculate Linear Diametral Interference Squeeze (mm), Percentage Cross-Sectional Squeeze (%), Swollen-Elastomer Rectangular Gland Fill (%), and Parker Static Gland Compliance. *Table — Rubber is incompressible (`nu ≈ 0.499`)—machining an O-ring groove to 100% fill hydraulic-locks the flange or shears the O-ring on hot oil swell!:* | ISO 3601 / Parker O-Ring Gland KPI (CS=3.53 mm, Depth h=2.75 mm, Width w=4.80 mm, 12% Swell) | Formula | Verified Output | | --- | --- | --- | | Diametral Compression Squeeze (mm) | Cord_CS_mm - Gland_Depth_h_mm | 0.78 mm | | Cross-Sectional Squeeze (%) | ((CS_mm - h_mm) / CS_mm) * 100 | 22.10% (inside 15%–30% static window) | | Swollen Gland Fill (%) | (((PI()/4)*CS^2*(1+Swell/100)) / (h*w))*100 | 83.04% (110.72% > 100% LOCK @ w=3.60 mm!) | | Parker Static Gland Design Gate | 15% <= Squeeze <= 30% AND Fill <= 85% | PARKER STATIC GLAND PASS | - **Formula (ISO 3601-2 O-Ring Cross-Section Squeeze & Swollen Gland-Fill Formula)**: `=LET(cs_m, B2, gh_m, B3, gw_m, B4, sw_p, B5, sq_p, ((cs_m - gh_m) / cs_m) * 100, ao_m, (PI() / 4) * (cs_m ^ 2) * (1 + sw_p / 100), fl_p, (ao_m / (gh_m * gw_m)) * 100, IF(OR(gh_m <= 0, cs_m <= gh_m, gw_m < cs_m, sw_p < 0, sw_p > 50), "Invalid O-Ring Gland", IF(AND(sq_p >= 15, sq_p <= 30, fl_p <= 85), "PARKER STATIC GLAND PASS", "EXTRUSION OR UNDER-SQUEEZE")))` - **Formula (Cramped 3.60 mm Groove Width Hydraulic-Lock & Nibbling Extrusion Check (Set Groove Width B4 = 3.60 mm))**: `=IF(ISTEXT(E2), E2, ROUND((((PI() / 4) * (B2 ^ 2) * (1 + B5 / 100)) / (B3 * B4)) * 100, 2))` ### EV Regenerative Braking Kinetic Energy & Power Cap Formula - **URL**: https://sheets.arte-soft.com/en/learn/electric-vehicle-regenerative-braking-kinetic-recovery-motor-torque-cap-formula/ - **Summary**: Calculate Deceleration Kinetic Energy Shed Delta_KE (kJ), Average Braking Power (kW), Peak Initial High-Speed Braking Power (kW), and BMS-Capped Battery Energy Recovered (Wh). *Table — Why highway decelerations clip against Inverter/BMS kW charge caps—blending friction pads even when total kinetic kJ looks small!:* | EV Regen Braking KPI (2,100 kg, 108 -> 36 km/h in 5.0 s, 150 kW Cap, 85% Eff) | Formula | Verified Output | | --- | --- | --- | | Kinetic Energy Shed Delta_KE (kJ) | 0.5 * m * ((V1/3.6)^2 - (V2/3.6)^2) / 1000 | 840.00 kJ (233.33 Wh mech) | | Average Braking Power Pavg (kW) | Delta_KE_kJ / Braking_Duration_s | 168.00 kW | | Peak Initial Braking Power (kW) | (m * ((V1 - V2)/3.6 / t) * (V1/3.6)) / 1000 | 252.00 kW | | Capped Battery Energy Recovered | (MIN(Pavg, Pcap) * t * eta_regen) / 3.6 | 177.08 Wh (70.83 Wh @ 60 kW cold!) | - **Formula (BMS-Capped EV Regenerative Braking Energy Recovery Formula)**: `=LET(mv_k, B2, v1_k, B3, v2_k, B4, dt_s, B5, cp_k, B6, ef_r, B7, IF(OR(mv_k <= 100, v1_k <= 0, v2_k < 0, v2_k >= v1_k, dt_s <= 0, cp_k < 0, ef_r <= 0, ef_r > 1), "Invalid Regen Input", LET(ke_j, (0.5 * mv_k * (((v1_k / 3.6) ^ 2) - ((v2_k / 3.6) ^ 2))) / 1000, av_k, ke_j / dt_s, ROUND((MIN(av_k, cp_k) * dt_s * ef_r) / 3.6, 2))))` - **Formula (Sub-Zero Winter Lithium-Plating BMS Charge Derating Check (Set Regen Cap = 60.0 kW))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * (((B3 - B4) / 3.6) / B5) * (B3 / 3.6)) / 1000, 2))` ### Electricity kWh and utility cost calculator formula (Watts to $ bill) - **URL**: https://sheets.arte-soft.com/en/learn/electricity-kwh-energy-consumption-and-cost-formula/ - **Summary**: Estimate energy use and the energy component of a bill from average input power, operating hours and a flat tariff. *Table — From Watts to Kilowatt-Hours (kWh) and monthly utility cost:* | Load Scenario (8 hrs/day, 30 days, $0.18/kWh) | Monthly kWh | Monthly Cost | | --- | --- | --- | | 1,500 W assumed load | 360.0 kWh | $64.80 | | 450 W assumed load | 108.0 kWh | $19.44 (Saves $45.36/mo) | - **Formula (Monthly kWh and utility cost formulas)**: `=ROUND(((A2 * B2 * C2) / 1000) * D2, 2)` - **Formula (Monthly energy consumption in kWh)**: `=(A2 * B2 * C2) / 1000` ### Electrochemical Machining (ECM) Gap & Brine Boiling Formula - **URL**: https://sheets.arte-soft.com/en/learn/electrochemical-machining-ecm-faraday-equilibrium-gap-feed-rate-and-electrolyte-rise/ - **Summary**: Calculate Anodic Dissolution Current Density J (A/cm²), Self-Regulating Equilibrium Inter-Electrode Gap heq (mm), Total Rectifier Current (A), and Brine Joule Temperature Rise (°C). *Table — Doubling ECM cathode feed rate halves the equilibrium machining gap to 0.161 mm—and if brine flow sags, a +68.6°C Joule jump boils the electrolyte into an electrode-welding arc!:* | Faraday ECM Equilibrium Gap & Thermal KPI (Ueff=14 V, kappa=18.5 S/m, ev=0.0372 mm³/As) | Formula | Verified Output | | --- | --- | --- | | Anodic Current Density J (A/cm²) | (Feed_vf_mm_min / 60) / (ev_mm3_As / 100) | 80.65 A/cm² (161.29 A/cm² @ 3.6 mm/min) | | Equilibrium Gap heq (mm) | (Cond_S_m * Ueff_V * ev) / ((vf / 60) * 1000) | 0.321 mm (0.161 mm tight spark risk!) | | Total DC Cell Current (A) | Current_Density_J_A_cm2 * Area_cm2 | 1,290.3 A (2,580.6 A rectifier load) | | Single-Pass Brine Rise dT (°C) | (Ueff_V * Total_I_A) / ((Flow_L_min / 60) * 3950) | 11.43°C safe (+68.60°C BOILING LOCK!) | - **Formula (Faraday Anodic Equilibrium Inter-Electrode Gap & Electrolyte Joule Rise Formula)**: `=LET(ug_v, B2, kp_s, B3, vf_m, B4, ev_m, B5, qb_l, B6, ac_m, B7, jd_c, (vf_m / 60) / (ev_m / 100), it_a, jd_c * ac_m, IF(OR(ug_v < 4, ug_v > 35, kp_s < 4, kp_s > 40, vf_m < 0.1, vf_m > 10, ev_m < 0.015, ev_m > 0.08, qb_l < 1, qb_l > 500, ac_m < 0.5, ac_m > 500), "Invalid ECM Input", ROUND((ug_v * it_a) / ((qb_l / 60) * 3950), 2)))` - **Formula (Double Feed (`v_f = 3.6` mm/min) + Clogged Filter (`Q = 8` L/min) Vapor-Blanketing Arc Check)**: `=IF(ISTEXT(E5), E5, ROUND((B3 * B2 * B5) / ((B4 / 60) * 1000), 3))` ### Electron-Positron Pair & Triplet Production Gamma Threshold Formula - **URL**: https://sheets.arte-soft.com/en/learn/electron-positron-pair-production-threshold-and-kinetic-energy/ - **Summary**: Evaluate gamma-ray nuclear pair-production threshold (2 * m_e * c^2 = 1.022 MeV), atomic-electron triplet-production threshold (4 * m_e * c^2 = 2.044 MeV), and total lepton kinetic energy K_e- + K_e+ = E_gamma - 1.022 MeV. *Table — Why pair production needs 1.022 MeV near a heavy nucleus—but 2.044 MeV off an atomic electron!:* | Gamma Radioisotope Source | Photon Energy E_gamma (MeV) | Total Pair Kinetic Energy (MeV) | Open Interaction Channels | | --- | --- | --- | --- | | Thallium-208 Calibration Line | 2.614 MeV | 1.592 MeV (0.796 MeV sym.) | Nuclear Pair + Electronic Triplet (> 2.044 MeV) | | Cobalt-60 Radiotherapy Line | 1.332 MeV | 0.310 MeV | Nuclear Pair Only (1.022 <= E < 2.044 MeV) | | Cesium-137 Gamma Line | 0.662 MeV (< 1.022) | 0 MeV (Below Threshold) | Compton & Photoelectric Only (No Pair Production) | - **Formula (Total Electron + Positron Kinetic Energy K_total (MeV) = E_gamma - 1.022)**: `=IF(B2 <= 0, "Invalid Photon Energy", IF(B2 < 1.022, 0, ROUND(B2 - 1.022, 3)))` - **Formula (Gamma-Ray Pair vs. Triplet Production Channel Classification)**: `=IF(B2 <= 0, "Invalid Photon Energy", IF(B2 >= 2.044, "Nuclear Pair + Electronic Triplet Open (>= 2.044 MeV)", IF(B2 >= 1.022, "Nuclear Pair Only (1.022 to < 2.044 MeV)", "Below 1.022 MeV Pair Threshold")))` ### Electrospinning Taylor-Cone Critical Voltage & GSM Formula - **URL**: https://sheets.arte-soft.com/en/learn/electrospinning-taylor-cone-critical-voltage-polymer-jet-and-nanofiber-packing/ - **Summary**: Calculate G. I. Taylor Critical Cone-Jet Onset Voltage Vc (kV), Mean Inter-Electrode Field Vc/H (kV/cm), Dry Nanofiber Production Rate (g/h), and Nonwoven Mat GSM (g/m²). *Table — Why neat aqueous PEO/PVA solutions spark corona discharges before spinning—until surfactant cuts 72 dyn/cm surface tension below the Taylor threshold!:* | Taylor (1969) Electrospinning KPI (H=15 cm, L=2.5 cm, R=0.041 cm, gamma=38 vs 72 dyn/cm) | Formula | Verified Output | | --- | --- | --- | | Taylor Critical Voltage Vc (kV) | SQRT((4*H^2/L^2)*(LN(2*L/R)-1.5)*(0.117*PI()*R*gam)) | 16.51 kV (22.72 kV corona risk @ 72 dyn/cm!) | | Mean Onset Field Vc / H (kV/cm) | Critical_Voltage_Vc_kV / Gap_H_cm | 1.100 kV/cm (1.515 kV/cm @ neat water) | | Dry Nanofiber Mass Rate (g/h) | Syringe_Flow_mL_h * Polymer_Conc_g_mL | 0.216 g/h / nozzle | | Nanofiber Veil Basis Wt (g/m²) | Dry_Nanofiber_g_h / Web_Area_Rate_m2_h | 0.90 g/m² (HEPA slip-flow veil) | - **Formula (G. I. Taylor (1969) Electrostatic Meniscus Instability & Nanofiber Web Formula)**: `=LET(hg_c, B2, ln_c, B3, rn_c, B4, gm_d, B5, qf_m, B6, cp_g, B7, aw_m, B8, lg_t, LN((2 * ln_c) / rn_c) - 1.5, IF(OR(ln_c < 0.3, hg_c <= ln_c, rn_c <= 0.003, lg_t <= 0.3, gm_d < 10, gm_d > 90, qf_m <= 0, cp_g <= 0.005, cp_g > 0.6, aw_m <= 0), "Invalid Electrospin Input", ROUND((qf_m * cp_g) / aw_m, 2)))` - **Formula (Un-Surfactanted Neat Water Solvent (gamma = 72 dyn/cm) Corona Breakdown Check (Set B5 = 72 dyn/cm))**: `=IF(ISTEXT(E5), E5, ROUND(SQRT(((4 * (B2 ^ 2)) / (B3 ^ 2)) * (LN((2 * B3) / B4) - 1.5) * (0.117 * PI() * B4 * B5)), 2))` ### Eley-Rideal Catalytic Rate Law Formula & Apparent Reaction Order Diagnostic - **URL**: https://sheets.arte-soft.com/en/learn/eley-rideal-gas-surface-collision-catalytic-rate-law/ - **Summary**: Compute Daniel Eley and Eric Rideal’s (1940) gas-surface collision rate r_ER = k_ER * K_A * P_A * P_B / (1 + K_A * P_A) and Apparent Reaction Order n_app,A = 1 / (1 + K_A * P_A) to distinguish Eley-Rideal from Langmuir-Hinshelwood kinetics. *Table — How high-pressure saturation distinguishes Eley-Rideal from Langmuir-Hinshelwood mechanisms!:* | P_A Pressure (k_ER = 1.80, K_A = 3.0 bar^-1, P_B = 0.60 bar) | Coverage theta_A | Apparent Order n_app,A = 1 - theta_A | Rate r_ER | | --- | --- | --- | --- | | Low P_A = 0.05 bar | 0.1304 | +0.8696 (Near 1st Order) | 0.1409 | | Moderate P_A = 1.00 bar | 0.7500 | +0.2500 | 0.8100 | | High P_A = 19.00 bar (Saturation) | 0.9828 | +0.0172 (Zero-Order Plateau -> 1.08) | 1.0614 | - **Formula (Eley-Rideal Catalytic Reaction Rate r_ER = k_ER * K_A * P_A * P_B / (1 + K_A * P_A))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 < 0), "Requires k_ER > 0, K_A > 0, and Partial Pressures >= 0", ROUND((B2 * B3 * B4 * B5) / (1 + B3 * B4), 4))` - **Formula (Apparent Reaction Order in Adsorbing Reactant A: n_app,A = 1 / (1 + K_A * P_A))**: `=IF(OR(B3 <= 0, B4 < 0), "Requires K_A > 0 and P_A >= 0", ROUND(1 / (1 + B3 * B4), 4))` ### Elmore RC Wire Delay & Repeater Insertion Formula - **URL**: https://sheets.arte-soft.com/en/learn/elmore-rc-interconnect-wire-delay-quadratic-length-and-repeater-formula/ - **Summary**: Calculate Distributed-Line Elmore RC Time Constant tau_D, 50% Propagation Delay t_p50 = 0.69 * tau_D, Naive Lumped-RC Overprediction Error, and Bakoglu Optimal CMOS Repeater Count. *Table — Model on-chip metal wires as distributed RC Pi-ladders with the 0.5*R_w*C_w quadratic term!:* | VLSI Interconnect Metric (Rdrv=200, Cload=50fF, rw=100, cw=200, L=10 mm) | Formula | Verified Output | | --- | --- | --- | | Elmore Distributed Time Constant | (Rdrv*(Cl+Cw) + Rw*Cl + 0.5*Rw*Cw)/1000 | 1,460.00 ps (65.00 ps @ L=1 mm) | | Elmore 50% Propagation Delay | 0.69 * tau_Elmore | 1,007.40 ps (44.85 ps @ L=1 mm) | | Naive Lumped-RC 50% Delay | 0.69 * (Rdrv*(Cl+Cw) + Rw*(Cl+Cw))/1000 | 1,697.40 ps (+690.0 ps Error) | | Optimal Bakoglu Repeater Count K* | ROUND(SQRT((0.5*Rw*Cw)/(Rdrv*Cload)), 0) | 10 repeaters (1 @ L=1 mm) | - **Formula (Distributed Elmore 50% Wire Propagation Delay Formula)**: `=LET(r_dr, B2, c_ld, B3, r_wr, B4, c_wr, B5, ln_m, B6, IF(OR(r_dr <= 0, c_ld <= 0, r_wr <= 0, c_wr <= 0, ln_m <= 0), "Invalid Interconnect Input", LET(rw_t, r_wr * ln_m, cw_t, c_wr * ln_m, t_el, (r_dr * (c_ld + cw_t) + rw_t * c_ld + 0.5 * rw_t * cw_t) / 1000, ROUND(0.69 * t_el, 2))))` - **Formula (Bakoglu Optimal CMOS Repeater Count Formula)**: `=IF(ISTEXT(E3), E3, ROUND(SQRT((0.5 * (B4 * B6) * (B5 * B6)) / (B2 * B3)), 0))` ### Illustrative logistic Elo expected score and one-game rating update - **URL**: https://sheets.arte-soft.com/en/learn/elo-chess-rating-expected-score-and-k-factor-update-formula/ - **Summary**: Calculate Arpad Elo's logistic expected match score E_A = 1 / (1 + 10^((R_B - R_A) / 400)) and post-game rating update R'_A = R_A + K * (S_A - E_A) for chess, esports, and LLM arenas. *Table — Expected score is not necessarily win probability:* | Elo Match Metric | Formula | Underdog R_A = 1600 vs R_B = 1800 (K = 32) | Equal Match R_A = R_B = 1600 (Draw) | | --- | --- | --- | --- | | Expected Score E_A | 1 / (1 + (10 ^ ((B3 - B2) / 400))) | 24.03% (0.2403) | 50.00% (0.5000) | | New Rating After Win (S_A = 1) | B2 + B4 * (1 - E_A) | 1600 + 24.3 = 1624.3 | 1600 + 16.0 = 1616.0 | | New Rating After Draw (S_A = 0.5) | B2 + B4 * (0.5 - E_A) | 1600 + 8.3 = 1608.3 | 1600.0 (Zero change!) | - **Formula (Elo Logistic Expected Match Score E_A (0 to 1))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<0,AND(B5<>0,B5<>0.5,B5<>1)),"Invalid inputs",ROUND(1 / (1 + (10 ^ ((B3 - B2) / 400))), 4)))` - **Formula (Updated Post-Match Elo Rating R'_A = R_A + K * (S_A - E_A))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<0,AND(B5<>0,B5<>0.5,B5<>1)),"Invalid inputs",ROUND(B2 + B4 * (B5 - (1 / (1 + (10 ^ ((B3 - B2) / 400))))), 1)))` ### Elovich (Roginsky-Zeldovich) Chemisorption Kinetics Formula: Uptake q(t) & Rate Decay - **URL**: https://sheets.arte-soft.com/en/learn/elovich-chemisorption-kinetics-and-initial-sorption-rate-formula/ - **Summary**: Model activated chemisorption on energetically heterogeneous catalysts, biochars, and soils using the integrated Elovich kinetic equation q(t) = (1 / beta) * LN(1 + alpha * beta * t) and instantaneous rate dq/dt = alpha * EXP(-beta * q). *Table — Why chemisorption slows exponentially with coverage: activation energy rises linearly as low-energy sites fill first!:* | Contact Time t (alpha = 18 mg/(g*min), beta = 0.12 g/mg) | Exact Elovich Uptake q(t) = LN(1 + alpha*beta*t)/beta | Instantaneous Rate dq/dt (mg/(g*min)) | | --- | --- | --- | | t = 0 min (Fresh Clean Surface) | 0.0000 mg/g | 18.0000 (Maximum Initial Rate alpha) | | t = 5 min | 20.5816 mg/g | 1.5254 | | t = 30 min | 34.8885 mg/g | 0.2736 | - **Formula (Exact Integrated Elovich Chemisorption Uptake q(t) = (1 / beta) * LN(1 + alpha * beta * t))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Elovich Kinetic Parameters", ROUND((1 / B3) * LN(1 + B2 * B3 * B4), 4))` - **Formula (Instantaneous Sorption Rate dq/dt = alpha / (1 + alpha * beta * t))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Elovich Kinetic Parameters", ROUND(B2 / (1 + B2 * B3 * B4), 4))` ### Email Deliverability, CTOR vs CTR & List Churn Formula - **URL**: https://sheets.arte-soft.com/en/learn/email-crm-deliverability-click-to-open-rate-ctor-and-list-churn/ - **Summary**: Calculate Delivered Rate, Open Rate on Delivered, Click-to-Open Rate (CTOR = Unique_Clicks / Unique_Opens) vs Unique CTR, Opt-Out Rate, and Net Subscriber List Growth. *Table — Separate inbox placement, subject-line hook, and body creative conversion!:* | CRM Email Funnel Metric (Sent=50k, Bounces=1k, Opens=12,250, Clicks=1,960) | Formula | Verified Output | | --- | --- | --- | | Inbox Delivery Rate | (Sent - Bounces) / Sent | 0.9800 (98.00% — 49,000 Delivered) | | Open Rate (on Delivered) | Unique_Opens / Delivered | 0.2500 (25.00%) | | Click-to-Open Rate (CTOR) | Unique_Clicks / Unique_Opens | 0.1600 (16.00%; CTR = 4.00%) | | Opt-Out Rate & Net List Growth | OptOuts / Deliv; (New - Bounces - OptOuts) / Sent | 0.0050 Opt-Out; +0.0051 Net | - **Formula (Click-to-Open Rate (CTOR) With Strict Funnel Monotonicity Guard Formula)**: `=LET(sn_em, B2, bn_em, B3, op_uq, B4, cl_uq, B5, dl_em, sn_em - bn_em, IF(OR(sn_em <= 0, bn_em < 0, dl_em <= 0, op_uq <= 0, op_uq > dl_em, cl_uq < 0, cl_uq > op_uq, B6 < 0, B6 > dl_em, B7 < 0), "Invalid CRM Funnel Input", ROUND(cl_uq / op_uq, 4)))` - **Formula (Net Active Subscriber List Growth Rate Formula)**: `=IF(ISTEXT(E4), E4, ROUND((B7 - B3 - B6) / B2, 4))` ### Employee Salary Band Lookup, Compa-Ratio & Pay-Range Penetration Formulas - **URL**: https://sheets.arte-soft.com/en/learn/employee-salary-band-compa-ratio-and-range-penetration-lookup/ - **Summary**: Join employee grades to compensation band minimums, midpoints, and maximums with XLOOKUP to compute Compa-Ratio, Range Penetration %, and Green-Circle / Red-Circle outlier flags. *Table — Why HR compensation reviews track both Compa-Ratio and Range Penetration:* | Employee (Grade) | Salary | Band (Min / Mid / Max) | Compa-Ratio | Penetration | Status | | --- | --- | --- | --- | --- | --- | | Emp_1 (L3) | $85,000 | $70k / $85k / $100k | 1.0000 | 0.5000 | In_Band | | Emp_2 (L4) | $125,000 | $95k / $115k / $135k | 1.0870 | 0.7500 | In_Band | | Emp_3 (L5) | $200,000 | $130k / $160k / $190k | 1.2500 | 1.1667 | Above_Max | - **Formula (Grade-Linked Compa-Ratio & Range Penetration with LET + XLOOKUP)**: `=LET(b_min, XLOOKUP(B2, $G$2:$G$4, $H$2:$H$4), b_max, XLOOKUP(B2, $G$2:$G$4, $J$2:$J$4), ROUND((C2 - b_min) / (b_max - b_min), 4))` - **Formula (Band Outlier Status (Below_Min / In_Band / Above_Max))**: `=LET(b_min, XLOOKUP(B2, $G$2:$G$4, $H$2:$H$4), b_max, XLOOKUP(B2, $G$2:$G$4, $J$2:$J$4), IF(C2 < b_min, "Below_Min", IF(C2 > b_max, "Above_Max", "In_Band")))` ### Increment letters (Rev A -> Rev B) and wrap A–Z shifts with CODE & CHAR - **URL**: https://sheets.arte-soft.com/en/learn/encode-and-decode-caesar-rot13-or-ascii-shift/ - **Summary**: Step engineering revision letters forward ("A" -> "B"), wrap "Z" cleanly back to "A" with MOD(..., 26), and apply symmetric ROT13 character shifts. *Table — Zero-base uppercase ASCII at 65 ("A") so MOD(..., 26) wraps cleanly!:* | Input Letter | Shift +1 (Next Rev) | Shift +13 (ROT13) | Double ROT13 (+13 again) | | --- | --- | --- | --- | | "A" (ASCII 65) | "B" | "N" | "A" (Restored!) | | "C" (ASCII 67) | "D" | "P" | "C" | | "Z" (ASCII 90) | "A" (Wraparound!) | "M" | "Z" | - **Formula (Wraparound letter-shift and engineering revision-step formulas)**: `=IFERROR(IF(AND(LEN(A2)=1,CODE(UPPER(A2))>=65,CODE(UPPER(A2))<=90,ISNUMBER(B2),B2=INT(B2)),CHAR(MOD(CODE(UPPER(A2)) - 65 + B2, 26) + 65),"Use one A-Z letter and an integer shift"),"Use one A-Z letter and an integer shift")` - **Formula (Advance an engineering drawing label ("Rev A" -> "Rev B"))**: `="Rev " & CHAR(MOD(CODE(RIGHT(C2, 1)) - 65 + 1, 26) + 65)` ### EROI & Net Energy Cliff Buffered Grid Formula - **URL**: https://sheets.arte-soft.com/en/learn/energy-return-on-investment-eroi-and-net-energy-cliff-formula/ - **Summary**: Calculate raw and storage-buffered Energy Return on Investment EROI = E_out*(1 - f_curt)/(E_inv + E_stor) and expose Charles Hall’s nonlinear Net Energy Cliff 1 - (1 / EROI). *Table — Visualize the nonlinear Net Energy Cliff: why dropping from EROI 5 to 2 is 7x worse than 20 to 10!:* | Energy System Metric | Formula | Verified Output | | --- | --- | --- | | Busbar Raw EROI (Before Grid Buffer) | E_gross / E_plant | 10.0000 (90.00% Net Energy) | | Grid-Buffered EROI_grid | (E_gross * (1 - f_curt)) / (E_plant + E_stor) | 5.0000 | | Grid Net Usable Energy Share | 1 - (1 / EROI_grid) | 0.8000 (80.00% Net Energy) | | Net Energy Cliff Case (E_gross = 360) | EROI_grid = 1.8000 | 0.4444 (44.44% Net Energy!) | - **Formula (Curtailment- and Storage-Buffered Grid EROI Formula)**: `=LET(e_gr, B2, e_pl, B3, f_ct, B4, e_st, B5, IF(OR(e_gr <= 0, e_pl <= 0, f_ct < 0, f_ct >= 1, e_st < 0), "Invalid EROI Input", ROUND((e_gr * (1 - f_ct)) / (e_pl + e_st), 4)))` - **Formula (Net Societal Energy Share 1 - (1 / EROI_grid) Formula)**: `=LET(e_gr, B2, e_pl, B3, f_ct, B4, e_st, B5, IF(OR(e_gr <= 0, e_pl <= 0, f_ct < 0, f_ct >= 1, e_st < 0), "Invalid EROI Input", LET(er_g, (e_gr * (1 - f_ct)) / (e_pl + e_st), IF(er_g <= 1, "Energy Sink (EROI <= 1)", ROUND(1 - (1 / er_g), 4)))))` ### Engelund-Hansen (1967) Total Alluvial Sand-Bed Sediment Transport Formula - **URL**: https://sheets.arte-soft.com/en/learn/engelund-hansen-total-alluvial-sand-bed-sediment-load-formula/ - **Summary**: Calculate total bed-material sediment load (bedload + suspended sand across dunes and upper-plane beds) via Frank Engelund and Eggert Hansen’s (1967, DTU) energy-balance law f_EH * Phi = 0.1 * theta^2.5 (Phi = 0.05 * (V^2 / (g * R_h * S)) * theta^2.5). *Table — Account automatically for dune form drag via Engelund & Hansen’s energy-work law!:* | Alluvial Sand River Variable (V = 1.35 m/s, R_h = 2.20 m, S = 0.0004, d_50 = 0.0004 m) | Formula | Evaluated Value | | --- | --- | --- | | Total Shields Mobility Parameter theta | (R_h * S) / ((s - 1) * d_50) | 1.3333 | | Darcy-Type Channel Friction Factor f_EH | (2 * g * R_h * S) / V^2 | 0.00947 | | Engelund-Hansen Dimensionless Intensity Phi | 0.1 * theta^2.5 / f_EH | 21.676 | | Dry Mass Sand Load per Meter Width g_s | rho_s * Phi * SQRT((s-1)*g*d_50^3) | 1.848 kg/(m·s) | - **Formula (Engelund-Hansen (1967) Dimensionless Total Sand-Load Intensity Phi)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 1), "Requires Positive V, R_h, Slope S, Grain d_50, and SG s > 1", ROUND(0.05 * ((B2 ^ 2) / (9.80665 * B3 * B4)) * (((B3 * B4) / ((B6 - 1) * B5)) ^ 2.5), 3))` - **Formula (Dry Mass Unit Total Sand Transport Rate g_s (kg / (m · s)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 1), "Requires Positive V, R_h, Slope S, Grain d_50, and SG s > 1", ROUND(1000 * B6 * (0.05 * ((B2 ^ 2) / (9.80665 * B3 * B4)) * (((B3 * B4) / ((B6 - 1) * B5)) ^ 2.5)) * SQRT((B6 - 1) * 9.80665 * (B5 ^ 3)), 3))` ### England-Fraser & Shine-Lal Formulas: Automated Coulter Counter Thalassemia Screening - **URL**: https://sheets.arte-soft.com/en/learn/england-fraser-and-shine-lal-microcytic-anemia-discriminants/ - **Summary**: Screen microcytic CBCs for beta-thalassemia carrier status using England & Fraser’s linear discriminant DF = MCV - RBC - 5*Hb - 3.4 (< 0 Thalassemia vs. > 0 IDA) and Shine & Lal’s high-sensitivity index 0.01 * MCV² * MCH (< 1530). *Table — Combining Shine-Lal’s > 98% screening sensitivity with England-Fraser’s high specificity!:* | Microcytic CBC Profile (MCV < 80 fL) | England-Fraser DF (Cutoff 0) | Shine-Lal Index (Cutoff 1,530) | Combined Hematology Interpretation | | --- | --- | --- | --- | | MCV 63, RBC 5.9, Hb 11.6, MCH 20.5 | -4.30 (< 0 — Thalassemia) | 813.6 (< 1530) | Strong Beta-Thalassemia Trait Signature | | MCV 69, RBC 3.8, Hb 9.0, MCH 21.5 | +16.80 (> 0 — Iron Defic.) | 1,023.6 (< 1530 Microcytic) | England-Fraser > 0 Favors Iron Deficiency | | Normocytic MCV >= 80 fL or Invalid CBC | Not Microcytic | "Requires Microcytic CBC (MCV < 80)" | Screening Pre-Filter Guard | - **Formula (England & Fraser Linear Discriminant Function DF = MCV - RBC - 5*Hb - 3.4)**: `=IF(OR(B2 <= 0, B2 >= 80, B3 <= 0, B4 <= 0, B5 <= 0), "Requires Microcytic CBC (MCV < 80)", ROUND(B2 - B3 - 5 * B4 - 3.4, 2))` - **Formula (Shine & Lal Antenatal Carrier Screening Index = 0.01 * MCV² * MCH)**: `=IF(OR(B2 <= 0, B2 >= 80, B3 <= 0, B4 <= 0, B5 <= 0), "Requires Microcytic CBC (MCV < 80)", ROUND(0.01 * (B2 ^ 2) * B5, 1))` ### EOMONTH function: find the last day of any reporting month - **URL**: https://sheets.arte-soft.com/en/learn/eomonth-last-day-of-month/ - **Summary**: Calculate month-end closing dates from any mid-month transaction date, handling 28-day and 29-day Februaries as well as December-to-January year rollovers. *Table — Turn a mid-month date into a period boundary:* | Reference date (B2) | Months offset | Month-end date | 1900 serial | | --- | --- | --- | --- | | 14 February 2026 (46067) | 0 | 28 February 2026 | 46081 | | 14 February 2026 (46067) | 1 | 31 March 2026 | 46112 | | 14 February 2026 (46067) | -1 | 31 January 2026 | 46053 | - **Formula (Current month end, next month end, and first day of month)**: `=EOMONTH(B2,C2)` ### EOQ with Planned Backorders: Optimal Lot Size, Peak On-Hand & Max Shortage - **URL**: https://sheets.arte-soft.com/en/learn/eoq-with-planned-backorders-optimal-lot-size-and-max-shortage/ - **Summary**: Extend classical Wilson EOQ when customers tolerate backorders at finite annual shortage cost b, computing critical fill fraction b/(h+b), expanded lot size Q*, peak inventory, and annual cost savings. *Table — How finite backorder cost reshapes the sawtooth inventory cycle:* | Backorder EOQ Metric | Formula | Example (D=7200, S=100, h=9, b=16) | | --- | --- | --- | | Standard No-Shortage EOQ | SQRT(2 * D * S / h) | 400 units (Annual cost = 3,600) | | Critical In-Stock Fraction | b / (h + b) | 0.6400 (64% of cycle in stock) | | Backorder-Optimal Lot Q* | EOQ * SQRT((h + b) / b) | 500 units | | Peak On-Hand / Max Backorder | Q* * f and Q* * (1 - f) | 320 on-hand / 180 backordered (Cost = 2,880) | - **Formula (Backorder-Adjusted Optimal Lot Size Q* Formula)**: `=ROUND(SQRT((2 * B2 * B3) / B4) * SQRT((B4 + B5) / B5), 2)` - **Formula (Minimum Total Annual Setup + Holding + Backorder Cost)**: `=ROUND(SQRT(2 * B2 * B3 * B4 * (B5 / (B4 + B5))), 2)` ### Epicyclic Planetary Gear Willis Speed Ratio & Torque Formula - **URL**: https://sheets.arte-soft.com/en/learn/epicyclic-planetary-gear-train-willis-speed-ratio-and-carrier-torque-formula/ - **Summary**: Calculate Coaxial Mesh Planet Tooth Count N_p, Fixed-Ring Sun-to-Carrier Speed Reduction Ratio (1 + N_r / N_s), Carrier Output Speed (RPM), and Carrier Output Torque (N·m). *Table — Why fixed-ring planetary reduction equals 1 + N_r / N_s—NOT N_r / N_s—and requires even (N_r - N_s)!:* | Planetary Gearbox KPI (Ns = 24, Nr = 96, 3,000 RPM, 120 N·m, 97% Eff) | Formula | Verified Output | | --- | --- | --- | | Required Planet Teeth N_p | (Ring_Teeth_Nr - Sun_Teeth_Ns) / 2 | 36 (24 @ Nr = 72) | | Willis Speed Reduction Ratio | 1 + (Ring_Teeth_Nr / Sun_Teeth_Ns) | 5.00 (4.00 @ Nr = 72) | | Carrier Output Speed (RPM) | Sun_Input_RPM / (1 + Nr / Ns) | 600.00 RPM (750.00 @ Nr = 72) | | Carrier Output Torque (N·m) | Sun_Torque * (1 + Nr / Ns) * Efficiency | 582.00 N·m (465.60 @ Nr = 72) | - **Formula (Coaxial Mesh Guard & Willis Planetary Reduction Formula)**: `=LET(ns_t, B2, nr_t, B3, rp_s, B4, tq_s, B5, ef_m, B6, IF(OR(ns_t < 12, INT(ns_t) <> ns_t, nr_t < ns_t + 24, INT(nr_t) <> nr_t, MOD(nr_t - ns_t, 2) <> 0, rp_s <= 0, tq_s <= 0, ef_m <= 0.7, ef_m > 1), "Invalid Planetary Mesh", ROUND(1 + (nr_t / ns_t), 2)))` - **Formula (Smaller Ring Gear 4:1 Ratio & Odd-Tooth Mesh Rejection Check (Set N_r = 72 vs 95))**: `=IF(ISTEXT(E3), E3, ROUND(B5 * (1 + (B3 / B2)) * B6, 2))` ### Eppen Inventory Risk Pooling & Square-Root Law Formula - **URL**: https://sheets.arte-soft.com/en/learn/eppen-inventory-risk-pooling-square-root-safety-stock-formula/ - **Summary**: Calculate centralized safety stock z * sigma * SQRT(N * (1 + (N - 1)*rho)) via Gary Eppen’s (1979) risk-pooling formula and quantify how demand correlation erodes Square-Root Law savings. *Table — Why the famous Square-Root Law of warehouse consolidation fails when regional demand is correlated!:* | Demand Correlation Scenario (N = 4, z = 2.0, sigma = 50) | Pooled Safety Stock Formula | Centralized SS & Units Saved | | --- | --- | --- | | Decentralized Baseline (4 Regional Depots) | N * z * sigma | 400.0000 units (Baseline) | | Independent Regions (rho = 0.00, Sqrt Law) | z * sigma * SQRT(N) | 200.0000 units (200.00 Saved, -50%!) | | Correlated Promo Demand (rho = 0.75) | z * sigma * SQRT(4 * (1 + 3*0.75)) | 360.5551 units (Only 39.4449 Saved!) | | Perfectly Synchronized Shock (rho = 1.00) | N * z * sigma | 400.0000 units (0.0000 Saved!) | - **Formula (Correlation-Adjusted Centralized Pooled Safety Stock Formula)**: `=LET(n_wh, B2, z_sc, B3, sg_d, B4, rh_c, B5, IF(OR(n_wh < 2, INT(n_wh) <> n_wh, z_sc <= 0, sg_d <= 0), "Require Integer N >= 2 and Positive z, sigma", IF(OR(rh_c > 1, 1 + (n_wh - 1) * rh_c < 0), "Invalid Correlation Matrix (Not Positive Semi-Definite)", ROUND(z_sc * sg_d * SQRT(n_wh * (1 + (n_wh - 1) * rh_c)), 4))))` - **Formula (Net Safety-Stock Units Saved by Centralization Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E2 - E3, 4))` ### Epworth Sleepiness Scale (ESS): 8-Item Daytime Somnolence Score (0–24) - **URL**: https://sheets.arte-soft.com/en/learn/epworth-sleepiness-scale-ess-daytime-somnolence-score/ - **Summary**: Sum the 8 situational dozing probabilities (0 = would never doze to 3 = high chance of dozing, total 0 to 24 points) of Murray Johns's Epworth Sleepiness Scale and stratify normal vs. mild, moderate, and severe excessive daytime sleepiness. *Table — Screen obstructive sleep apnea, narcolepsy, and commercial-driver fatigue!:* | Total Epworth Score (0–24) | Daytime Sleepiness Category | Sleep Medicine Action | | --- | --- | --- | | 0 – 10 points (0–5 Low, 6–10 High Normal) | Normal Daytime Alertness | Routine sleep hygiene; check STOP-BANG if snoring | | 11 – 12 points | Mild Excessive Daytime Sleepiness | Evaluate sleep duration, OSA risk, and medications | | 13 – 15 points | Moderate Excessive Daytime Sleepiness | Sleep study (HSAT / PSG) referral indicated | | 16 – 24 points | Severe Excessive Daytime Sleepiness | Urgent OSA / narcolepsy workup & driving safety counsel | - **Formula (Total 8-Item Epworth Sleepiness Scale (ESS) Score (0 to 24 Points))**: `=IF(OR(MIN(B2:B9) < 0, MAX(B2:B9) > 3), "Invalid ESS Item (0 to 3)", SUM(B2:B9))` - **Formula (Clinical Excessive Daytime Sleepiness (EDS) Stratification)**: `=IF(OR(MIN(B2:B9) < 0, MAX(B2:B9) > 3), "Invalid ESS Item (0 to 3)", IF(SUM(B2:B9) <= 10, "Normal Daytime Sleepiness (0-10)", IF(SUM(B2:B9) <= 12, "Mild Excessive Sleepiness (11-12)", IF(SUM(B2:B9) <= 15, "Moderate Excessive Sleepiness (13-15)", "Severe Excessive Sleepiness (16-24)"))))` ### Lease vs. Buy NPV calculator: Net Advantage to Leasing (NAL) after taxes - **URL**: https://sheets.arte-soft.com/en/learn/equipment-lease-vs-buy-npv-net-advantage-to-leasing/ - **Summary**: Explore a simplified annual lease-versus-purchase cash-flow model with assumed usable tax relief, zero residual value and end-of-year payments. *Table — State the cash-flow assumptions before comparing lease and buy:* | Lease vs. Buy Component ($120k Asset, 4 yrs, 25% Tax, 8% Debt) | Formula | Cash Flow / PV | | --- | --- | --- | | After-Tax Discount Rate | 8.0% * (1 - 25%) | 6.00% / year | | Annual Lease Outflow + Lost Tax Shield | $34k*(1-0.25) + ($120k/4)*0.25 | $25,500 + $7,500 = $33,000/yr | | Net Advantage to Leasing (NAL) | $120,000 + PV(6%, 4, $33,000) | +$5,651.51 modeled advantage to leasing | - **Formula (Compute Net Advantage to Leasing (NAL))**: `=IF(OR(COUNT(A2:E2)<>5,A2<=0,B2<=0,B2<>INT(B2),C2<0,C2>1,D2<0,E2<0),"Invalid inputs",LET(rd, E2 * (1 - C2), pmtOut, D2 * (1 - C2) + (A2 / B2) * C2, ROUND(A2 + PV(rd, B2, pmtOut), 2)))` - **Formula (Label the modeled comparison, including break-even)**: `=IF(OR(COUNT(A2:E2)<>5,A2<=0,B2<=0,B2<>INT(B2),C2<0,C2>1,D2<0,E2<0),"Invalid inputs",LET(discountRate,E2*(1-C2),annualOutflow,D2*(1-C2)+(A2/B2)*C2,advantage,ROUND(A2+PV(discountRate,B2,annualOutflow),2),IF(advantage>0,"Lease",IF(advantage<0,"Buy","Indifferent"))))` ### Commercial Fleet TRAC Lease Terminal Adjustment Formula - **URL**: https://sheets.arte-soft.com/en/learn/equipment-trac-lease-terminal-rental-adjustment-and-lessee-cost/ - **Summary**: Calculate Commercial Truck & Tractor IRC Section 7701(h) TRAC Lease Guaranteed Residual Value ($), Terminal Rental Adjustment Deficiency or Rebate ($), Lessee All-In Net Cash Lease Cost ($), and All-In Cost-to-Capex Ratio. *Table — Model two-way TRAC lease residual true-ups on over-the-road tractor and trailer fleets!:* | TRAC Fleet Lease Metric ($150k Cost, 30% TRAC Residual, $122k Rentals, $38k Sale) | Formula | Verified Output | | --- | --- | --- | | Guaranteed TRAC Residual ($) | Original_Cost * TRAC_Residual_Pct | $45,000 | | Terminal Adjustment Owed / (Rebate) | Guaranteed_Residual - Net_Sale_Proceeds | +$7,000 (-$6,000 @ $51k Sale) | | All-In Lessee Cash Cost ($) | Cumulative_Rentals + Terminal_Adjustment | $129,000 ($116,000 @ $51k Sale) | | All-In Cost / Original Capex | AllIn_Cash_Cost / Original_Cost | 0.8600 (0.7733 @ $51k Sale) | - **Formula (TRAC Lease Terminal Adjustment & All-In Lessee Cash Cost Formula)**: `=LET(eq_c, B2, tr_p, B3, rn_c, B4, sl_p, B5, IF(OR(eq_c <= 0, tr_p <= 0, tr_p >= 1, rn_c <= 0, sl_p < 0), "Invalid TRAC Lease Input", LET(rs_g, eq_c * tr_p, ad_t, rs_g - sl_p, ROUND(rn_c + ad_t, 2))))` - **Formula (Strong Used-Truck Resale Rebate Check (Set Auction Proceeds = $51,000))**: `=IF(ISTEXT(E4), E4, ROUND(E4 / B2, 4))` ### Ergun Packed-Bed Pressure Drop Formula (Catalyst & Filter Columns) - **URL**: https://sheets.arte-soft.com/en/learn/ergun-packed-bed-pressure-drop-blake-kozeny-burke-plummer/ - **Summary**: Build a guarded SI-unit spreadsheet for Ergun fixed-bed pressure loss, separating viscous and inertial contributions and testing sensitivity to flow, particle size and porosity. - **Formula (Calculate total pressure loss in kPa)**: `=IF(COUNT(B2:B7)<>6,"Enter six numeric SI inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B6>=1,B7<0),"Require mu,rho,diameter>0; speed,length>=0; 06,"Enter six numeric SI inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B6>=1,B7<0),"Require mu,rho,diameter>0; speed,length>=0; 06,"Enter six numeric SI inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B6>=1,B7<0),"Require mu,rho,diameter>0; speed,length>=0; 0= c!) | 34.62% (if loss trunk) | Unstable Queue (A >= c)! | - **Formula (Exact c = 3 Server Erlang C Probability of Delay C(3, A))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Arrival or Service Rate", IF(B2 >= (3 * B3), "Unstable Queue (Offered Erlangs A >= 3)", ROUND((3 * (((((B2 / B3) ^ 3) / FACT(3)) / (1 + (B2 / B3) + (((B2 / B3) ^ 2) / 2) + (((B2 / B3) ^ 3) / FACT(3)))))) / (3 - ((B2 / B3) * (1 - (((((B2 / B3) ^ 3) / FACT(3)) / (1 + (B2 / B3) + (((B2 / B3) ^ 2) / 2) + (((B2 / B3) ^ 3) / FACT(3)))))))) , 4)))` - **Formula (Erlang B Loss Probability B(3, A) & Average Speed of Answer ASA (Seconds))**: `=ROUND((((B2 / B3) ^ 3) / FACT(3)) / (1 + (B2 / B3) + (((B2 / B3) ^ 2) / 2) + (((B2 / B3) ^ 3) / FACT(3))), 4)` ### Error-Proof a Complex Formula Chain: Targeted Stage Gates vs. Blanket IFERROR - **URL**: https://sheets.arte-soft.com/en/learn/error-proof-multi-stage-formula-chain-defensive-stage-gates/ - **Summary**: Harden multi-step lookup, multiplication, and division pipelines by isolating missing lookup keys (IFNA), non-numeric text inputs (ISNUMBER), and zero denominators separately instead of masking bugs with IFERROR(..., 0). *Table — Why wrapping an entire formula in IFERROR(..., 0) corrupts totals:* | Pipeline Stage | Failure Mode | Targeted Guard | Diagnostic Output | | --- | --- | --- | --- | | 1. Rate Lookup | SKU missing from price table | IFNA(XLOOKUP(...), "UNMAPPED_SKU") | "UNMAPPED_SKU" | | 2. Quantity Type | Text note ("TBD", "N/A") | NOT(ISNUMBER(B2)) | "INVALID_QTY" | | 3. Division Base | Hours <= 0 | C2 <= 0 | "ZERO_HOURS" | | 4. Clean Compute | All gates passed | ROUND((B2 * rate) / C2, 2) | Numeric rate/hr | - **Formula (Multi-Stage Diagnostic Chain with LET)**: `=LET(unit_rate, IFNA(XLOOKUP(A2, $G$2:$G$4, $H$2:$H$4), "UNMAPPED_SKU"), IF(ISTEXT(unit_rate), unit_rate, IF(NOT(ISNUMBER(B2)), "INVALID_QTY", IF(C2 <= 0, "ZERO_HOURS", ROUND((B2 * unit_rate) / C2, 2)))))` - **Formula (Safe Numeric Line Revenue Rollup)**: `=LET(unit_rate, IFNA(XLOOKUP(A2, $G$2:$G$4, $H$2:$H$4), -1), IF(AND(unit_rate >= 0, ISNUMBER(B2)), B2 * unit_rate, 0))` ### IRC Section 423 ESPP 15% Lookback & Minimum Return Formula - **URL**: https://sheets.arte-soft.com/en/learn/espp-section-423-lookback-15-percent-discount-and-guaranteed-return/ - **Summary**: Calculate Qualified IRC Section 423 Employee Stock Purchase Plan (ESPP) Lookback Purchase Price (85% of Lower of Grant or Purchase Price), Shares Acquired, Immediate Dollar Gain ($), and 6-Month Holding Return % across Bull and Bear Markets. *Table — See why a 15% lookback ESPP guarantees at least +17.65% pre-tax return on purchase date!:* | IRC §423 ESPP Metric ($6,800 Contrib, $100 Grant, $125 End, 15% Lookback) | Formula | Verified Output | | --- | --- | --- | | Lookback Purchase Price ($/sh) | (1 - Discount) * MIN(Grant_FMV, End_FMV) | $85.00 ($68.00 @ $80 Crash) | | Shares Purchased (sh) | Payroll_Contribution / Purchase_Price | 80 sh (100 sh @ $80 Crash) | | Immediate Pre-Tax Gain ($) | Shares * End_FMV - Payroll_Contribution | +$3,200.00 (+$1,200 @ $80 Crash) | | 6-Month Return on Contribution | Immediate_Gain / Payroll_Contribution | 0.4706 (0.1765 Floor @ $80 Crash) | - **Formula (Section 423 ESPP Lookback Gain & Return Formula)**: `=LET(ct_d, B2, gp_0, B3, pp_1, B4, ds_r, B5, IF(OR(ct_d <= 0, gp_0 <= 0, pp_1 <= 0, ds_r <= 0, ds_r > 0.15), "Invalid Sec 423 ESPP Input", LET(px_b, (1 - ds_r) * MIN(gp_0, pp_1), sh_n, ct_d / px_b, gn_d, sh_n * pp_1 - ct_d, ROUND(gn_d / ct_d, 4))))` - **Formula (20% Stock Crash Floor Check (Set Purchase-Date Stock Price = $80.00))**: `=IF(ISTEXT(E5), E5, ROUND((B2 / ((1 - B5) * MIN(B3, B4))) * B4 - B2, 2))` ### Eucken & Modified Eucken Polyatomic Gas Thermal Conductivity Formula - **URL**: https://sheets.arte-soft.com/en/learn/eucken-and-modified-eucken-polyatomic-gas-thermal-conductivity/ - **Summary**: Estimate dilute polyatomic gas thermal conductivity k = (μ / M) * (C_v + 2.25 * R) and Modified Eucken k_mod = (μ / M) * (1.32 * C_v + 1.77 * R) (mW/(m·K)) from gas viscosity and molar heat capacity. *Table — Separating translational kinetic energy from internal rotational/vibrational modes in polyatomic gases!:* | Gas at 300 K (μ in μPa·s, M in g/mol, Cv in J/mol·K) | Classic Eucken k (mW/m·K) | Modified Eucken k_mod (mW/m·K) | Experimental Benchmark | | --- | --- | --- | --- | | CO2 (μ = 15.0, M = 44.01, Cv = 28.80) | 16.19 mW/(m·K) | 17.97 mW/(m·K) | 16.8 mW/(m·K) (Bracketed!) | | Monatomic Argon (μ = 22.7, M = 39.95, Cv = 12.47) | 17.72 mW/(m·K) | 17.72 mW/(m·K) | Identical when Cv = 1.5*R! | | Invalid μ <= 0 or M <= 0 | "Invalid Gas Properties" | Error Guard | Positivity Check | - **Formula (Classic Eucken Gas Thermal Conductivity k_Eucken (mW/(m·K)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Gas Properties", ROUND((B2 / B3) * (B4 + 2.25 * 8.31446), 2))` - **Formula (Modified Eucken (Hirschfelder) Thermal Conductivity k_Mod (mW/(m·K)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Gas Properties", ROUND((B2 / B3) * (1.32 * B4 + 1.77 * 8.31446), 2))` ### Distance formula: 2D and 3D Euclidean vs Manhattan grid distance - **URL**: https://sheets.arte-soft.com/en/learn/euclidean-distance-2d-3d-coordinates/ - **Summary**: Calculate straight-line Pythagorean distance in 2D or 3D space with SQRT, and compare right-angle warehouse aisle distance with ABS. *Table — Straight-line Pythagorean vs right-angle aisle distance:* | Point 1 (X1,Y1,Z1) | Point 2 (X2,Y2,Z2) | 2D Euclidean | 3D Euclidean | 2D Manhattan | | --- | --- | --- | --- | --- | | (2, 3, 0) | (5, 7, 12) | 5 | 13 | 7 | | (2, 3, 0) | (2, 3, 0) | 0 | 0 | 0 | - **Formula (2D, 3D, and Manhattan distance formulas)**: `=ROUND(SQRT((D2 - A2)^2 + (E2 - B2)^2), 4)` - **Formula (3D Euclidean distance formula)**: `=ROUND(SQRT((D2 - A2)^2 + (E2 - B2)^2 + (F2 - C2)^2), 4)` ### Euler Column Buckling Load formula: P_cr = PI()^2 * E * I / (K * L)^2 - **URL**: https://sheets.arte-soft.com/en/learn/euler-critical-column-buckling-load-and-slenderness/ - **Summary**: Explore the ideal elastic Euler buckling load and its dependence on effective length, without treating it as a structural design rating. *Table — Calculate an ideal elastic instability load:* | Column Parameter / Support | Cell / Factor K | Steel Strut Input | Critical Load P_cr (kN) | | --- | --- | --- | --- | | Steel E & Weak-Axis I | B2 = 200E9 Pa, B3 = 8E-6 m^4 | Flexural rigidity EI = 1.6 MN*m^2 | Governing weak axis | | Pinned-Pinned (L = 4 m) | B4 = 4 m, B5 K = 1.0 | (1.0 * 4)^2 = 16 m^2 | 986.96 kN | | Fixed-Fixed Both Ends | K set to 0.5 | (0.5 * 4)^2 = 4 m^2 | 3,947.84 kN (4x ideal Euler result) | | Fixed-Free Cantilever | K set to 2.0 | (2.0 * 4)^2 = 64 m^2 | 246.74 kN (one-quarter ideal result) | - **Formula (Euler Critical Buckling Load P_cr in kilonewtons (kN))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND((((PI() ^ 2) * B2 * B3) / ((B5 * B4) ^ 2)) / 1000, 2)))` - **Formula (Illustrative division by a chosen factor)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<1),"Invalid inputs",ROUND(((((PI() ^ 2) * B2 * B3) / ((B5 * B4) ^ 2)) / 1000) / B6, 2)))` ### Euler Portfolio Risk Decomposition: Marginal and Component Volatility - **URL**: https://sheets.arte-soft.com/en/learn/euler-risk-decomposition-marginal-and-component-portfolio-volatility/ - **Summary**: Decompose multi-asset portfolio volatility into exact additive Component Risk CR_i = w_i * (Sigma * w)_i / sig_p and Percentage Risk Contribution in Excel and Arte Sheets. *Table — See why a 60% equity capital allocation actually drives 92.5% of portfolio volatility:* | Asset Sleeve | Capital Weight w_i | Percentage Risk Contribution PCR_i | | --- | --- | --- | | Equities (20% vol) | 0.6000 (60.0%) | 0.9249 (92.49% of portfolio risk!) | | Bonds (6% vol, neg cov) | 0.3000 (30.0%) | -0.0023 (-0.23% risk reducer) | | Commodities (25% vol) | 0.1000 (10.0%) | 0.0774 (7.74% of portfolio risk) | | Portfolio Total (Euler Sum) | SUM(w_i) = 1.0000 | SUM(PCR_i) = 1.0000; sig_p = 0.1258 | - **Formula (Total Portfolio Volatility sig_p Formula)**: `=LET(var_p, SUMPRODUCT(B2:B4, F2:F4), IF(var_p <= 0, "Invalid Covariance Matrix", ROUND(SQRT(var_p), 4)))` - **Formula (Equity Percentage Risk Contribution PCR_1 Formula & Risk-Parity Shift)**: `=LET(var_p, SUMPRODUCT($B$2:$B$4, $F$2:$F$4), IF(var_p <= 0, "Invalid Covariance Matrix", ROUND((B2 * F2) / var_p, 4)))` ### EuroSCORE II Cardiac Surgery In-Hospital Mortality Logistic Formula - **URL**: https://sheets.arte-soft.com/en/learn/euroscore-ii-linear-predictor-cardiac-surgery-mortality-logit/ - **Summary**: Convert EuroSCORE II patient, cardiac, and operative log-odds β coefficients into predicted surgical mortality (%) = 100 / (1 + EXP(-(-5.324537 + Σ β_i x_i))). *Table — Nashef’s 2012 EuroSCORE II logistic link correcting additive EuroSCORE overprediction!:* | EuroSCORE II Risk Profile | Summed Log-Odds Σ β_i | Linear Predictor z | Predicted Operative Mortality (%) | | --- | --- | --- | --- | | Reference Isolated Elective CABG (<=60 y, Normal EF/CrCl) | 0.0000 | -5.3245 | 0.48% | | Urgent Combined Case (Σ β = 2.0251) | 2.0251 | -3.2994 | 3.56% | | Critical Salvage / Redo Multi-Valve (Σ β = 3.8000) | 3.8000 | -1.5245 | 17.88% | - **Formula (EuroSCORE II Predicted In-Hospital Mortality (%))**: `=IF(MIN(B2:B5) < 0, "Beta Weights Must Be Non-Negative", ROUND(100 / (1 + EXP(-(-5.324537 + SUM(B2:B5)))), 2))` - **Formula (EuroSCORE II Linear Log-Odds Predictor z = -5.324537 + Σ β_i)**: `=IF(MIN(B2:B5) < 0, "Beta Weights Must Be Non-Negative", ROUND(-5.324537 + SUM(B2:B5), 4))` ### EV BMS Passive Bleed Resistor Balancing Time & Heat Formula - **URL**: https://sheets.arte-soft.com/en/learn/ev-battery-bms-passive-bleed-resistor-cell-balancing-time-and-heat-dissipation/ - **Summary**: Calculate Excess Imbalance Charge Delta_Q (Ah), Peak Shunt Bleed Current I_bleed (mA), Duty-Cycle Average PCB Resistor Heat P_avg (mW), and Full Top-Balancing Time (hours). *Table — Why 100 mA passive PCB shunt resistors need 34 hours to clear a 3% SOC drift on a 100 Ah LFP cell—unless sized against board thermal limits!:* | BMS Passive Balancing KPI (100 Ah, 3% Imbalance, 3.65 V, 33 Ohm, 80% Duty) | Formula | Verified Output | | --- | --- | --- | | Excess Charge to Bleed (Ah) | Cell_Capacity_Ah * (SOC_Imbalance_Pct / 100) | 3.00 Ah | | Peak Shunt Bleed Current (mA) | (Balancing_Voltage_V / R_Ohm) * 1000 | 110.61 mA (365.00 mA @ 10 Ohm) | | Average SMD Resistor Heat (mW) | ((V_bal^2) / R_Ohm) * 1000 * Duty | 322.97 mW (1,065.80 mW @ 10 Ohm!) | | Total Balancing Time (hours) | Excess_Ah / ((V_bal / R_Ohm) * Duty) | 33.90 hr (10.27 hr @ 10 Ohm) | - **Formula (Passive Shunt Bleed Current, Thermal Load & Balancing Time Formula)**: `=LET(cp_a, B2, im_p, B3, vl_v, B4, rs_o, B5, dt_f, B6, IF(OR(cp_a <= 0, im_p <= 0, im_p >= 100, vl_v < 2, vl_v > 4.5, rs_o <= 0.5, dt_f <= 0, dt_f > 1), "Invalid BMS Input", ROUND((cp_a * (im_p / 100)) / ((vl_v / rs_o) * dt_f), 2)))` - **Formula (High-Current 10-Ohm Shunt PCB Thermal Surge Check (Set R_bleed = 10.0 Ohms))**: `=IF(ISTEXT(E5), E5, ROUND(((B4 ^ 2) / B5) * 1000 * B6, 2))` ### EV Cell-to-Pack (CTP) Gravimetric & Volumetric Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/ev-battery-cell-to-pack-ctp-gravimetric-and-volumetric-packaging-efficiency/ - **Summary**: Calculate Nominal Pack Energy (kWh), Gravimetric Cell-to-Pack Mass Ratio GCTP (%), Volumetric Cell-to-Pack Space Utilization VCTP (%), and Pack-Level Specific Energy (Wh/kg). *Table — Eliminating intermediate module housings lifts volumetric cell-to-pack utilization from ~50% past 65%—letting LFP match older NMC pack range!:* | CTP Packaging KPI (120 Cells x 2.10 kg / 560 Wh / 0.95 L in 315 kg / 175 L) | Formula | Verified Output | | --- | --- | --- | | Nominal Pack Energy (kWh) | (Cell_Count * Cell_Energy_Wh) / 1000 | 67.20 kWh | | Gravimetric CTP Ratio GCTP (%) | ((N * Cell_Mass_kg) / Pack_Mass_kg) * 100 | 80.00% (66.32% @ 380 kg CTM) | | Volumetric CTP Ratio VCTP (%) | ((N * Cell_Vol_L) / Pack_Vol_L) * 100 | 65.14% (49.57% @ 230 L CTM) | | Pack Specific Energy (Wh/kg) | (N * Cell_Energy_Wh) / Pack_Mass_kg | 213.33 Wh/kg (176.84 @ 380 kg CTM) | - **Formula (Cell-to-Pack Gravimetric & Volumetric Integration Efficiency Formula)**: `=LET(nc_l, B2, mc_k, B3, ec_w, B4, vc_l, B5, mp_k, B6, vp_l, B7, IF(OR(nc_l < 1, mc_k <= 0, ec_w <= 0, vc_l <= 0, mp_k <= nc_l * mc_k, vp_l <= nc_l * vc_l), "Invalid CTP Pack Input", ROUND((nc_l * ec_w) / mp_k, 2)))` - **Formula (Legacy Cell-to-Module-to-Pack (CTM) Overhead Penalty Check (Set Pack = 380 kg & 230 L))**: `=IF(ISTEXT(E5), E5, ROUND(((B2 * B5) / B7) * 100, 2))` ### Enterprise value bridge, EBITDA multiple and a simplified Tobin’s Q proxy - **URL**: https://sheets.arte-soft.com/en/learn/ev-ebitda-enterprise-value-bridge-and-tobins-q/ - **Summary**: Calculate a simplified enterprise-to-equity bridge and compare total claim value with estimated replacement assets, with explicit units and assumptions. *Table — Separate operating enterprise value from total claim value:* | Valuation Bridge Line | Cell | Target Co ($M) | Multiple / Per-Share Output | | --- | --- | --- | --- | | Share price and shares outstanding | B2 = $50, B3 = 10M | Market Cap = $500M | Equity Value | | + Debt & Pref/NCI - Cash | +$180M + $20M - $60M | Net Debt + Pref = +$140M | Enterprise Value = $640M | | EBITDA & Replacement Assets | B7 = $80M, B8 = $500M | 640 / 80; 700 / 500 | 8.0x EV/EBITDA; Q proxy = 1.40 | | Implied Price @ 10.0x EBITDA | Target EV = $800M | (800 + 60 - 180 - 20) / 10 | $66.00 per share under the 10x assumption | - **Formula (Enterprise Value (EV) & EV/EBITDA valuation multiple)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(MIN(B2:B6)<0,B3=0,B7<=0),"Invalid inputs",ROUND((B2*B3+B4+B5-B6)/B7,2)))` - **Formula (Reverse EV-to-Equity bridge: Implied Share Price at Target Multiple (B9))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(MIN(B2:B6)<0,B3=0,B7<=0,B9<0),"Invalid inputs",IF(B9*B7+B6-B4-B5<0,"No positive equity residual",ROUND((B9*B7+B6-B4-B5)/B3,2))))` - **Formula (Simplified Q proxy, before the cash deduction)**: `=IF(COUNT(B2:B8)<>7,"Invalid inputs",IF(OR(MIN(B2:B6)<0,B3=0,B8<=0),"Invalid inputs",ROUND((B2*B3+B4+B5)/B8,2)))` ### EVEN and ODD functions: round quantities away from zero to pair or odd counts - **URL**: https://sheets.arte-soft.com/en/learn/even-and-odd-functions/ - **Summary**: Round order quantities up to twin-pack even integers with EVEN or centered odd display counts with ODD. *Table — Why EVEN(3.1) = 4 and ODD(4) = 5:* | RawQty (A) | EVEN(A) | ODD(A) | | --- | --- | --- | | 3.2 | 4 | 5 | | 4 | 4 | 5 | | -3.2 | -4 | -5 | - **Formula (Size twin-pack orders with EVEN)**: `=EVEN(A2)` - **Formula (Check negative symmetry away from zero)**: `=ODD(A4)` ### EWMA (Exponential Smoothing) & Croston Intermittent Demand Forecast formulas - **URL**: https://sheets.arte-soft.com/en/learn/ewma-exponentially-weighted-moving-average-and-croston-forecast/ - **Summary**: Forecast continuous series via EWMA F_{t+1} = alpha * Y_t + (1 - alpha) * F_t and lumpy zero-heavy spare-parts demand via Croston's Size / Interval ratio. *Table — Smooth a regular series and model intermittent demand separately:* | Period / Method | Actual Demand (A) | EWMA Forecast alpha = 0.40 (B) | Croston Spare-Parts Method | | --- | --- | --- | --- | | Week 1 (Seed) | 100 | 100.00 (Seed = Y1) | Smoothed Order Size z_hat = 12 u | | Week 2 | 130 | 0.4*100 + 0.6*100 = 100.00 | Smoothed Interval p_hat = 4 wks | | Week 3 | 115 | 0.4*130 + 0.6*100 = 112.00 | Croston Rate = 12 / 4 = 3.00 u/wk | | Week 4 Forecast | Next Period | 0.4*115 + 0.6*112 = 113.20 | Lead-time demand (2 wks) = 6.00 u | - **Formula (EWMA next-period forecast alpha * Y_t + (1 - alpha) * F_t)**: `=IF(OR(COUNT(A2:A4)<>3,COUNT(D2)<>1,MIN(A2:A4)<0,D2<0,D2>1),"Invalid inputs",ROUND(D2 * A4 + (1 - D2) * B4, 2))` - **Formula (Croston intermittent demand rate per period (z_hat / p_hat))**: `=IF(OR(COUNT(D3:D4)<>2,D3<=0,D4<=0),"Invalid inputs",ROUND(D3 / D4, 4))` - **Formula (Walk through the Croston updates in G:K)**: `=K9` ### EXACT function: compare two text strings with case sensitivity - **URL**: https://sheets.arte-soft.com/en/learn/exact-case-sensitive-text-comparison/ - **Summary**: Standard spreadsheet equality (=) treats uppercase and lowercase letters as identical. Use EXACT when external IDs, coupon tokens, or batch codes depend on letter case. *Table — When = says TRUE even though letter case differs:* | System ID (A) | Scanned ID (B) | A=B | EXACT(A, B) | | --- | --- | --- | --- | | BatchA | batcha | true | false | | BatchA | BatchA | true | true | | BatchA | BatchA | false | false | - **Formula (Test character-for-character equality with EXACT)**: `=EXACT(A2,B2)` - **Formula (Trailing spaces still fail until trimmed)**: `=EXACT(A4,TRIM(B4))` ### One or the Other, Not Both: Exclusive OR (XOR) & Multi-Option Mutual Exclusion - **URL**: https://sheets.arte-soft.com/en/learn/exclusive-or-one-or-the-other-not-both-xor-logic/ - **Summary**: Validate mutually exclusive promotional discounts or approval paths with two-argument XOR, and avoid the 3-argument odd-parity trap using boolean sum equality. *Table — Enforce mutually exclusive incentives without stacking bugs:* | Order | Promo ($) | Rebate ($) | Loyalty ($) | 2-Way XOR(Promo,Rebate) | Exact-1 of 3 Check | | --- | --- | --- | --- | --- | --- | | ORD-01 | 25 | 0 | 0 | TRUE (Valid) | Valid (1 active) | | ORD-02 | 25 | 40 | 0 | FALSE (Stacked!) | Invalid (2 active) | | ORD-03 | 0 | 0 | 0 | FALSE (None) | None (0 active) | | ORD-04 | 25 | 40 | 15 | FALSE | Invalid (3 active — XOR3 would say TRUE!) | - **Formula (Two-Option Strict Exclusive OR Check (Row 2))**: `=IF(XOR(B2 > 0, C2 > 0), "Valid Single Incentive", IF(AND(B2 > 0, C2 > 0), "Invalid Stacked Discounts", "No Incentive"))` - **Formula (Safe 3-Column At-Most-One Policy Validator (Row 5))**: `=IF((--(B5 > 0) + --(C5 > 0) + --(D5 > 0)) <= 1, "Policy OK", "Violation: Stacked")` ### Exclusive Percentile and Quartile Interpolation (PERCENTILE.EXC & QUARTILE.EXC Formula) - **URL**: https://sheets.arte-soft.com/en/learn/exclusive-percentile-exc-and-quartile-exc-interpolation-formula/ - **Summary**: Compute Weibull (N + 1) * k exclusive percentiles and quartiles alongside PERCENTILE_INC so small-sample tail cutoffs match engineering and hydrological standards. *Table — How PERCENTILE.EXC differs from PERCENTILE.INC:* | Percentile (k) | Exclusive Rank (N+1)*k (N=7) | PERCENTILE.EXC Value | PERCENTILE_INC Value | | --- | --- | --- | --- | | 0.25 (Q1) | 8 * 0.25 = 2.0 | 18.0 | 21.0 | | 0.40 (P40) | 8 * 0.40 = 3.2 | 25.2 | 26.4 | | 0.50 (Q2 / Median) | 8 * 0.50 = 4.0 | 30.0 | 30.0 | | 0.75 (Q3) | 8 * 0.75 = 6.0 | 54.0 | 48.0 | | 0.10 (< 1/8) | 8 * 0.10 = 0.8 | #NUM! | 15.6 | - **Formula (Exact PERCENTILE.EXC Linear Interpolation Formula)**: `=LET(n_obs, COUNT(A2:A8), rk, (n_obs + 1) * D2, IF(OR(rk < 1, rk > n_obs), "#NUM!", LET(lo_idx, INT(rk), frac, rk - lo_idx, IF(frac = 0, SMALL(A2:A8, lo_idx), ROUND(SMALL(A2:A8, lo_idx) + frac * (SMALL(A2:A8, lo_idx + 1) - SMALL(A2:A8, lo_idx)), 4)))))` - **Formula (Side-by-Side Inclusive Percentile Comparison)**: `=ROUND(PERCENTILE_INC(A2:A8, D2), 4)` ### Audit Multi-Step Spreadsheet Commands: Row Shifts, Limits, and Rollback - **URL**: https://sheets.arte-soft.com/en/learn/execute-steps-atomic-mcp-worker-vs-in-app-sequential-multi-step-audit/ - **Summary**: Verify 1-based row insertions, formula range expansion, step/cell limits, and rollback differences between in-app sequential execution and atomic worker commits. *Table — Check caps and failure semantics before running a multi-step structural batch:* | execute_steps Guardrail | In-App Pro Assistant | ChatGPT Connector 0.1.0 (In review) | | --- | --- | --- | | Hard Batch Caps | <= 10 steps, <= 100 cells, <= 20 row/col shifts (1-based) | Same caps + base revision & 16–80 char operation_id | | Step-3 Error Behavior | Stops at Step 3; Steps 1–2 remain (use Undo) | Isolated worker aborts; 0 steps written | | Concurrent Peer Edit | Suggest-mode / preview routing in live editor | Returns pendingReview instead of overwriting | | Credit & Plan Rule | Requires Pro; uses metered monthly Pro AI credits | Mutations require Pro; 0 Arte AI credits consumed | - **Formula (Dynamic Row-Insertion Budget Total Formula (Immune to Endpoint Omission))**: `=SUM(B2:B5)` - **Formula (Pre-Flight Multi-Step Batch Validator Formula)**: `=LET(n_stp, E2, n_cel, E3, n_rc, E4, rev_base, E5, rev_live, E6, IF(OR(n_stp < 1, n_stp > 10), "Exceeds 10-Step Cap", IF(n_cel > 100, "Exceeds 100-Cell Cap", IF(OR(n_rc < 1, n_rc > 20), "Row/Col Shift Must Be 1..20", IF(rev_base <> rev_live, "Stale Revision -> pendingReview", "Batch Within Safe Limits")))))` ### EXP function: model continuous compounding and exponential decay - **URL**: https://sheets.arte-soft.com/en/learn/exp-function-continuous-growth-decay/ - **Summary**: Raise Euler's constant e (2.71828...) to any power with EXP to calculate continuous growth P*e^(r*t) and exponential decay. *Table — Continuous growth vs discrete annual compounding:* | Initial Value P (A) | Rate r (B) | Time t (C) | P * EXP(r * t) | | --- | --- | --- | --- | | 1000 | 0.06 | 5 | 1349.86 (continuous growth) | | 1000 | 0.06 | 0 | 1000 (EXP(0) = 1) | | 1000 | -0.15 | 4 | 548.81 (exponential decay) | - **Formula (Continuous compounding and decay formula)**: `=ROUND(A2 * EXP(B2 * C2), 2)` - **Formula (Zero exponent and inverse relationship with LN)**: `=EXP(0)` ### Expense or headcount begins on specific month (FP&A start/end date trigger) - **URL**: https://sheets.arte-soft.com/en/learn/expense-or-revenue-start-month-ramp-schedule/ - **Summary**: Turn planned hires, SaaS subscriptions, and fixed-term contractor costs ON at StartMonth and OFF after EndMonth across a multi-column FP&A forecast. *Table — Drive a monthly cost schedule from start and end inputs:* | Role / Vendor | Start ($B) | End ($C) | Mo Cost ($D) | Jan / Feb / Mar / Apr | | --- | --- | --- | --- | --- | | Sr Engineer | 2026-02-01 | (Blank = Ongoing) | $12,000 | $0 / $12k / $12k / $12k | | Audit Contractor | 2026-01-01 | 2026-02-01 | $5,000 | $5k / $5k / $0 / $0 | - **Formula (Dynamic Start/End month FP&A trigger formula)**: `=IF(AND(G$1 >= $B2, OR(COUNTBLANK($C2) = 1, G$1 <= $C2)), $D2, 0)` - **Formula (Test fixed-term contractor expiration after EndMonth)**: `=IF(AND(G$1 >= $B3, OR(COUNTBLANK($C3) = 1, G$1 <= $C3)), $D3, 0)` ### Exponential Distribution PDF, CDF, and Memoryless Survival Probability (EXPON.DIST Formula) - **URL**: https://sheets.arte-soft.com/en/learn/exponential-distribution-pdf-cdf-and-memoryless-survival-expon-dist/ - **Summary**: Calculate inter-arrival probability density, cumulative failure probability, survival probability P(T > x), and target SLA quantiles using EXP and LN. *Table — Exact closed-form exponential distribution formulas:* | Rate (lambda) | Time Window (x) | CDF 1 - e^(-lx) | PDF l * e^(-lx) | Survival e^(-lx) | | --- | --- | --- | --- | --- | | 0.25 / min (mean 4m) | 4.0 min | 0.632121 | 0.091970 | 0.367879 | | 0.25 / min (mean 4m) | 8.0 min | 0.864665 | 0.033834 | 0.135335 | | 0.25 / min (mean 4m) | 0.0 min | 0.000000 | 0.250000 | 1.000000 | | Median Wait (p = 0.50) | 2.7726 min | 0.500000 | 0.125000 | 0.500000 | - **Formula (Exponential Cumulative Probability Formula (EXPON.DIST Cumulative))**: `=IF(OR(B2 <= 0, B3 < 0), "#NUM!", ROUND(1 - EXP(-B2 * B3), 6))` - **Formula (Exponential Density (PDF) & Percentile Quantile Formula)**: `=ROUND(-LN(1 - B4) / B2, 4)` ### Exponential half-life model: remaining quantity and threshold time - **URL**: https://sheets.arte-soft.com/en/learn/exponential-half-life-and-radioactive-decay-formula/ - **Summary**: Calculate an ideal exponential quantity and the time to a positive mathematical threshold. *Table — A single-exponential decay example:* | Half-Life Equation (N0 = 800 mg, T_half = 5 hrs) | Formula | Result | | --- | --- | --- | | Remaining after t = 15 hrs | =800 * (0.5 ^ (15 / 5)) | 100.0 mg (12.5% left) | | Hours to clear down to 25 mg | =5 * LN(25 / 800) / LN(0.5) | 25.0 hours (5 half-lives) | | Decay Constant lambda | =LN(2) / 5 | 0.1386 hr^-1 | - **Formula (Remaining quantity N(t) and threshold threshold-time formulas)**: `=ROUND(A2 * (0.5 ^ (C2 / B2)), 4)` - **Formula (Solve elapsed time required to decay down to Target D2)**: `=ROUND(B2 * (LN(D2 / A2) / LN(0.5)), 4)` - **Formula (Additional worked calculation)**: `=ROUND(C2 * (LN(0.5) / LN(100 / A2)), 4)` ### Exponential Moving Average (EMA) and exponential smoothing formula - **URL**: https://sheets.arte-soft.com/en/learn/exponential-moving-average-ema-smoothing/ - **Summary**: Smooth noisy time series recursively using Alpha = 2 / (Span + 1) and EMA_t = Alpha * Actual_t + (1 - Alpha) * EMA_{t-1}. *Table — How recursive exponential smoothing works:* | Period (A) | Actual (B) | EMA @ Alpha = 0.5 (C) | | --- | --- | --- | | P1 | 100 | 100.00 (seed = B2) | | P2 | 120 | 0.5*120 + 0.5*100 = 110.00 | | P3 | 106 | 0.5*106 + 0.5*110 = 108.00 | | P4 | 132 | 0.5*132 + 0.5*108 = 120.00 | - **Formula (Alpha smoothing factor and recursive EMA formulas)**: `=$E$2 * B5 + (1 - $E$2) * C4` - **Formula (Convert Span N into standard EMA Alpha)**: `=2 / (D2 + 1)` ### Cooling Fin Efficiency (eta_fin) & Fin Effectiveness (epsilon_fin) Heat-Sink Formula - **URL**: https://sheets.arte-soft.com/en/learn/extended-surface-fin-efficiency-and-fin-effectiveness-formula/ - **Summary**: Calculate the extended-surface fin parameter m*L = L * SQRT((h * P) / (k * Ac)), adiabatic-tip fin efficiency eta_fin = tanh(m*L) / (m*L) (%) via exact EXP identity, and fin effectiveness epsilon_fin. *Table — Design CPU heat sinks, EV inverter cold plates, and air-cooled cylinder fins!:* | Convection Regime (60 mm Al Fin) | Dimensionless m * L | Fin Efficiency eta_fin (%) | Fin Effectiveness epsilon_fin | | --- | --- | --- | --- | | Moderate Forced Air (h = 50 W/m^2*K) | 0.9464 | 78.00% | 47.73 (Highly justified > 2!) | | High-Velocity Air / Spray (h = 150 W/m^2*K) | 1.6392 | 56.58% (Tip cools more) | 34.62 | | Invalid Fin Geometry (L <= 0 or k <= 0) | Domain Guard | Guarded Input Error | "Invalid Fin Parameters" | - **Formula (Adiabatic-Tip Cooling Fin Efficiency eta_fin (%) via Exact Exponential tanh(m*L))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Fin Parameters", ROUND(100 * (((EXP(2 * B6 * SQRT((B2 * B3) / (B4 * B5))) - 1) / (EXP(2 * B6 * SQRT((B2 * B3) / (B4 * B5))) + 1)) / (B6 * SQRT((B2 * B3) / (B4 * B5)))), 2))` - **Formula (Fin Effectiveness Ratio epsilon_fin = Q_fin / Q_bare_base (Target > 2.0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Fin Parameters", ROUND(((EXP(2 * B6 * SQRT((B2 * B3) / (B4 * B5))) - 1) / (EXP(2 * B6 * SQRT((B2 * B3) / (B4 * B5))) + 1)) * SQRT((B4 * B3) / (B2 * B5)), 2))` ### External Financing Needed (EFN) Sales Plug Formula - **URL**: https://sheets.arte-soft.com/en/learn/external-financing-needed-efn-percent-of-sales-plug-formula/ - **Summary**: Forecast pro-forma balance-sheet funding gaps via External Financing Needed EFN = ((A* - L*) / S_0)*Delta_S - PM * S_0 * (1 + g) * (1 - d) and find the zero-EFN internal growth cutoff. *Table — Why profitable fast-growing firms run out of cash: spontaneous working capital outpaces retained earnings!:* | Pro-Forma EFN Line (S_0=$5M, A*=$3.5M, L*=$1.0M, PM=8%, d=25%, g=20%) | Formula | Verified Output | | --- | --- | --- | | Net Spontaneous Capital Need | ((A* - L*) / S_0) * (g * S_0) | +500.00 ($k) | | Projected Retained Earnings Addition | PM * S_0 * (1 + g) * (1 - d) | +360.00 ($k) | | External Financing Needed (EFN Plug) | Net_Asset_Need - Retained_Earnings | +140.00 ($k Deficit) | | Zero-EFN Self-Supporting Growth Cutoff | (PM*(1 - d)) / (((A*-L*)/S_0) - PM*(1 - d)) | 0.1364 (13.64% Sales Growth) | - **Formula (Pro-Forma External Financing Needed (EFN) Formula)**: `=LET(s_0, B2, a_sp, B3, l_sp, B4, pm_n, B5, d_po, B6, g_sl, B7, IF(OR(s_0 <= 0, a_sp < 0, l_sp < 0, d_po < 0, d_po > 1, g_sl <= -1), "Invalid FP&A Input", ROUND((a_sp - l_sp) * g_sl - pm_n * s_0 * (1 + g_sl) * (1 - d_po), 2)))` - **Formula (Zero-EFN Self-Supporting Sales Growth Rate Formula)**: `=LET(s_0, B2, a_sp, B3, l_sp, B4, pm_n, B5, d_po, B6, IF(OR(s_0 <= 0, a_sp <= l_sp, d_po < 0, d_po > 1), "Invalid FP&A Input", LET(rb_s, pm_n * (1 - d_po), cap_i, (a_sp - l_sp) / s_0, IF(cap_i <= rb_s, "Self-Funding At All Growth Rates", ROUND(rb_s / (cap_i - rb_s), 4)))))` ### Extract All Partial Substring Matches Into a Dynamic List (FILTER & SEARCH) - **URL**: https://sheets.arte-soft.com/en/learn/extract-all-partial-substring-matches-filter-search/ - **Summary**: Return every row whose description or SKU contains a partial search string using row-level ISNUMBER(SEARCH(...)) flags paired with FILTER, replacing fragile legacy INDEX/SMALL array formulas. *Table — Why VLOOKUP and XLOOKUP stop at the first partial match:* | SKU | Part Description | Matches "Fiber"? | Returned in Spill? | | --- | --- | --- | --- | | NET-101 | Single-Mode Fiber Patch Cord | TRUE | Yes (Row 1 of spill) | | NET-102 | Cat6A Shielded Copper Cable | FALSE | Excluded | | NET-103 | LC Duplex Fiber Transceiver | TRUE | Yes (Row 2 of spill) | | NET-104 | Rackmount Patch Panel 24-Port | FALSE | Excluded | | NET-105 | Armored Outdoor Fiber Trunk | TRUE | Yes (Row 3 of spill) | - **Formula (Row-Level Case-Insensitive Substring Flag & Dynamic FILTER)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A6, C2:C6, "No Matching Items"))` - **Formula (Count of Partial Substring Matches)**: `=IF(LEN(TRIM(F2)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(F2) & "*"))` ### Inspect Character Code Sequences & Split a String into Characters (CODE & MID) - **URL**: https://sheets.arte-soft.com/en/learn/extract-ascii-and-unicode-character-codes-from-text/ - **Summary**: Audit 4-character SKU prefixes, currency codes, or short tokens by extracting each character with MID and inspecting its numeric code point with CODE. *Table — Catch lookalike hyphens, spaces, and case mismatches at the character level:* | Position | MID("AZ-9", pos, 1) | CODE(...) Decimal | Character Class | | --- | --- | --- | --- | | 1 | A | 65 | Uppercase ASCII (65..90) | | 2 | Z | 90 | Uppercase ASCII (65..90) | | 3 | - | 45 | ASCII Hyphen-Minus | | 4 | 9 | 57 | ASCII Digit (48..57) | - **Formula (Hyphen-Joined 4-Character Code Point Sequence)**: `=IF(LEN(B2) <> 4, "4-Char Token Required", CODE(MID(B2, 1, 1)) & "-" & CODE(MID(B2, 2, 1)) & "-" & CODE(MID(B2, 3, 1)) & "-" & CODE(MID(B2, 4, 1)))` - **Formula (4-Character Code-Point Checksum Total)**: `=IF(LEN(B2) <> 4, 0, CODE(MID(B2, 1, 1)) + CODE(MID(B2, 2, 1)) + CODE(MID(B2, 3, 1)) + CODE(MID(B2, 4, 1)))` ### Extract Common Shared Items Between Two Comma-Delimited Text Strings - **URL**: https://sheets.arte-soft.com/en/learn/extract-common-shared-items-from-two-delimited-strings/ - **Summary**: Tokenize two comma-separated tag or skill strings with TEXTSPLIT and TOCOL, filter the overlapping tokens, and return a clean comma-joined intersection. *Table — Compare delimited tag lists accurately without substring false positives:* | Input Cell | Delimited Token String | Discrete Tokens | Shared Intersection | | --- | --- | --- | --- | | Role Requirements (B2) | SQL, Python, BI, Finance | 4 tokens | Python, Finance | | Candidate Profile (B3) | Finance, Rust, Python, Cloud | 4 tokens | 2 shared skills | - **Formula (Shared Token Intersection Between Two 4-Tag Strings)**: `=LET(reqList, TOCOL(TEXTSPLIT(B2, ", ")), candList, TOCOL(TEXTSPLIT(B3, ", ")), matchMask, (reqList = INDEX(candList, 1)) + (reqList = INDEX(candList, 2)) + (reqList = INDEX(candList, 3)) + (reqList = INDEX(candList, 4)) > 0, TEXTJOIN(", ", TRUE, FILTER(reqList, matchMask, "No Overlap")))` - **Formula (Shared Token Overlap Count)**: `=LET(reqList, TOCOL(TEXTSPLIT(B2, ", ")), candList, TOCOL(TEXTSPLIT(B3, ", ")), SUM(--((reqList = INDEX(candList, 1)) + (reqList = INDEX(candList, 2)) + (reqList = INDEX(candList, 3)) + (reqList = INDEX(candList, 4)) > 0)))` ### Extract common values from two lists (set intersection with FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/extract-common-values-intersection-two-lists/ - **Summary**: Find items that appear in BOTH List A and List B—count shared records and extract a deduplicated overlap list dynamically. *Table — List intersection vs list difference:* | CRM Accounts (A) | In Billing? (B) | Billing Accounts (C) | | --- | --- | --- | | ACC-101 | FALSE | ACC-102 | | ACC-102 | TRUE (Shared) | ACC-104 | | ACC-103 | FALSE | ACC-999 | | ACC-104 | TRUE (Shared) | — | - **Formula (Extract shared items and count intersection size)**: `=TEXTJOIN(", ", TRUE, UNIQUE(FILTER(A2:A5, B2:B5, "None")))` - **Formula (Count overlapping items)**: `=COUNTIF(B2:B5, TRUE)` ### Extract date or time from a timestamp: split serial numbers with INT and MOD - **URL**: https://sheets.arte-soft.com/en/learn/extract-date-from-timestamp/ - **Summary**: Strip the clock fraction from date-time timestamps with INT(timestamp) so date lookups and daily groupings match cleanly. *Table — Why 2026-04-15 15:00 does NOT equal 2026-04-15:* | Timestamp (A) | Raw = Date Check | INT(A) Date Serial | MOD(A, 1)*24 Hours | | --- | --- | --- | --- | | 2026-04-15 15:00 (46127.625) | FALSE | 46127 | 15 | | 2026-04-15 00:00 (46127.000) | TRUE | 46127 | 0 | - **Formula (Extract integer date with INT and clock fraction with MOD)**: `=INT(A2)` - **Formula (Isolate the time-of-day portion)**: `=ROUND(MOD(A2, 1) * 24, 2)` ### Extract domain, clean URL, and page slug from web URLs - **URL**: https://sheets.arte-soft.com/en/learn/extract-domain-and-slug-from-url/ - **Summary**: Strip ?utm query parameters, isolate the hostname after "://", and pull the final URL slug for SEO and analytics audits. *Table — Strip query parameters before slicing URL paths:* | PageUrl (A) | Hostname | Trailing Slug | | --- | --- | --- | | https://sheets.arte-soft.com/guides/sumifs-dates?utm=email | sheets.arte-soft.com | sumifs-dates | | https://arte-soft.com/pricing | arte-soft.com | pricing | - **Formula (Authority, query-free URL, and slug formulas)**: `=LET(u, IFERROR(TEXTBEFORE(A2, "?"), A2), p, TEXTAFTER(u, "://"), IFERROR(TEXTBEFORE(p, "/"), p))` - **Formula (Trailing page slug formula)**: `=LET(clean, IFERROR(TEXTBEFORE(A2, "?"), A2), TEXTAFTER(clean, "/", -1))` ### FILTER to show duplicate rows: inspect all collisions vs 2nd+ repeats - **URL**: https://sheets.arte-soft.com/en/learn/extract-duplicate-rows-from-table-filter/ - **Summary**: Extract every transaction row involved in a duplicate key collision (TotalCount > 1) so AP auditors can compare both copies side by side. *Table — All rows in a collision (TotalCount > 1) vs extra copies only (RunCount > 1):* | InvNum (A) | Amount (B) | TotalCount (C) | RunCount (D) | Audit Role | | --- | --- | --- | --- | --- | | INV-901 | $500 | 2 (Collision) | 1 (Original) | Shown in Collision View | | INV-902 | $320 | 1 (Unique) | 1 | Excluded | | INV-901 | $500 | 2 (Collision) | 2 (Excess Copy!) | Repeated-key $500! | | INV-903 | $180 | 1 (Unique) | 1 | Excluded | | INV-904 | $250 | 2 (Collision) | 1 (Original) | Shown in Collision View | | INV-904 | $250 | 2 (Collision) | 2 (Excess Copy!) | Repeated-key $250! | - **Formula (Repeated-key excess-duplicate sum and collision-extraction formulas)**: `=FILTER(A2:B7,C2:C7>1,"None")` - **Formula (Count total rows involved in any duplicate collision)**: `=COUNTIF(C2:C7,">1")` - **Formula (Additional worked calculation)**: `=SUMIF(D2:D7, ">1", B2:B7)` - **Formula (Additional worked calculation)**: `=TEXTJOIN(", ", TRUE, UNIQUE(FILTER(A2:A7, C2:C7 > 1)))` ### Extract the first or last word from a cell (single-word safe) - **URL**: https://sheets.arte-soft.com/en/learn/extract-first-and-last-word-from-cell/ - **Summary**: Pull the leading prefix token or trailing word from trimmed text with TEXTBEFORE/TEXTAFTER and IFERROR fallback for 1-word cells. *Table — Handle 1-word cells without #N/A delimiter errors:* | Phrase (A) | First Word | Last Word | | --- | --- | --- | | URGENT: replace valve #4 | URGENT: | #4 | | Confirmed | Confirmed | Confirmed | - **Formula (First-word and last-word formulas)**: `=IF(COUNTBLANK(A2:A2)=1,"",LET(t, TRIM(A2), IFERROR(TEXTBEFORE(t, " "), t)))` - **Formula (Last-word formula with negative instance -1)**: `=IF(COUNTBLANK(A2:A2)=1,"",LET(t, TRIM(A2), IFERROR(TEXTAFTER(t, " ", -1), t)))` ### Extract last 2 (or N) words & remove the last word (TEXTAFTER / TEXTBEFORE -N) - **URL**: https://sheets.arte-soft.com/en/learn/extract-last-two-words-or-remove-last-word-textbefore/ - **Summary**: Use negative instance numbers (-1, -2) in TEXTAFTER and TEXTBEFORE to slice from the RIGHT end of any phrase without RIGHT/SUBSTITUTE hacks. *Table — Negative instance_num (-1, -2): right-to-left word slicing made effortless!:* | Operation on "400 Howard St San Francisco" | Formula | Result | | --- | --- | --- | | Extract Last 2 Words (N = 2) | =IF(OR(NOT(ISNUMBER(B2)),B2<1,B2<>INT(B2)),"Invalid word count",IF(COUNTBLANK(A2)>0,"",IFERROR(TEXTAFTER(TRIM(A2)," ",-B2),TRIM(A2)))) | "San Francisco" | | Extract Last 1 Word | =IFERROR(TEXTAFTER(TRIM(A2), " ", -1), TRIM(A2)) | "Francisco" | | Remove Last Word (Drop Suffix) | =IFERROR(TEXTBEFORE(TRIM(A2), " ", -1), "") | "400 Howard St San" | | Single-Word Input ("Austin") | IFERROR fallback | "Austin" (Last 2) / "" (Remove last) | - **Formula (Extract the last B2 words from any text string (single-word safe))**: `=IF(OR(NOT(ISNUMBER(B2)),B2<1,B2<>INT(B2)),"Invalid word count",IF(COUNTBLANK(A2)>0,"",IFERROR(TEXTAFTER(TRIM(A2)," ",-B2),TRIM(A2))))` - **Formula (Remove the last word (or trailing unit code) with TEXTBEFORE(..., -1))**: `=IFERROR(TEXTBEFORE(TRIM(A2), " ", -1), "")` ### Extract Middle Name(s) from Full Name (MID, FIND & SUBSTITUTE) - **URL**: https://sheets.arte-soft.com/en/learn/extract-middle-name-or-initial-from-full-name-mid-substitute/ - **Summary**: Isolate one or multiple middle names between the first and last space of a full name—and cleanly return "" when a person has only a first and last name—using TRIM, SUBSTITUTE nth-instance markers, and MID. *Table — Handling 2-word, 3-word, and 4-word names without #VALUE! crashes!:* | Trimmed Full Name Input | Space Count N_spaces | Middle Name Extracted | Edge-Case Behavior | | --- | --- | --- | --- | | "Elena Marie Kostova" | 2 spaces | "Marie" | Single Middle Name | | "Arthur Conan Ignatius Doyle" | 3 spaces | "Conan Ignatius" | Preserves Multi-Word Middle! | | "Ivan Petrov" (No Middle Name) | 1 space (< 2) | "" (Empty String) | Zero Surname Leakage! | - **Formula (Extract Single or Multi-Word Middle Name Safely)**: `=IF(LEN(TRIM(A2)) - LEN(SUBSTITUTE(TRIM(A2), " ", "")) < 2, "", MID(TRIM(A2), FIND(" ", TRIM(A2)) + 1, FIND("~", SUBSTITUTE(TRIM(A2), " ", "~", LEN(TRIM(A2)) - LEN(SUBSTITUTE(TRIM(A2), " ", "")))) - FIND(" ", TRIM(A2)) - 1))` - **Formula (Formatted Middle Initial with Period (e.g., "M."))**: `=IF(LEN(TRIM(A2)) - LEN(SUBSTITUTE(TRIM(A2), " ", "")) < 2, "", UPPER(MID(TRIM(A2), FIND(" ", TRIM(A2)) + 1, 1)) & ".")` ### Extract display name and company domain from an email address - **URL**: https://sheets.arte-soft.com/en/learn/extract-name-and-domain-from-email/ - **Summary**: Split mailbox handles and domains around "@" with TEXTBEFORE and TEXTAFTER, and turn dot/underscore usernames into Proper Case names. *Table — Split around "@" and clean separator punctuation:* | Email (A) | Cleaned Name | Domain | | --- | --- | --- | | elena.petrova@arte-soft.com | Elena Petrova | arte-soft.com | | liam_chen@sub.example.org | Liam Chen | sub.example.org | - **Formula (Name and domain extraction formulas)**: `=PROPER(SUBSTITUTE(SUBSTITUTE(TEXTBEFORE(A2, "@"), ".", " "), "_", " "))` - **Formula (Normalized lowercase domain extractor)**: `=IFERROR(TEXTAFTER(LOWER(A2), "@"), "Invalid email")` ### Extract the Nth word from a text string (or trim text to N words) - **URL**: https://sheets.arte-soft.com/en/learn/extract-nth-word-from-text-string/ - **Summary**: Normalize irregular spacing with TRIM, pull the exact Nth word with INDEX and TEXTSPLIT, or truncate descriptions to the first N words. *Table — Normalize multiple spaces first with TRIM:* | Raw Description (A) | N (B) | Nth Word | First N Words | | --- | --- | --- | --- | | " Express air freight priority " | 3 | "freight" | "Express air freight" | | " Express air freight priority " | 9 | "" | "Express air freight priority" | - **Formula (Extract Nth word and truncate to N words)**: `=IF(OR(B2<1, B2<>INT(B2)), "Invalid position", IFERROR(INDEX(TEXTSPLIT(TRIM(A2), " "), 1, B2), ""))` - **Formula (Truncate text to the first N words)**: `=IF(OR(B2<1, B2<>INT(B2)), "Invalid position", IFERROR(TEXTBEFORE(TRIM(A2), " ", B2), TRIM(A2)))` ### Extract Clean Hostname / Domain from Any URL (LEFT, FIND & SUBSTITUTE) - **URL**: https://sheets.arte-soft.com/en/learn/extract-root-domain-and-subdomain-host-from-url-mid-find/ - **Summary**: Strip http://, https://, leading www., port numbers (:8443), and trailing /path?query segments from messy referral URLs using sentinel-guarded FIND and SUBSTITUTE. *Table — Why appending "/" and ":" sentinels eliminates every #VALUE! URL edge case!:* | Raw Analytics Referral URL | Protocol & www. Stripped | Clean Hostname Returned | | --- | --- | --- | | "https://www.sheets.arte-soft.com/en/guides?src=nav" | sheets.arte-soft.com/en/... | "sheets.arte-soft.com" | | "http://api.vendor.io:8443/v2/status" | api.vendor.io:8443/v2/... | "api.vendor.io" (Port Stripped!) | | "https://example.org" (No Trailing Slash!) | example.org + "/" Sentinel | "example.org" (Zero #VALUE! Crash) | - **Formula (Clean Domain / Hostname Stripping Protocol, www., Port & Path)**: `=IF(TRIM(A2) = "", "", SUBSTITUTE(LEFT(LEFT(SUBSTITUTE(SUBSTITUTE(LOWER(TRIM(A2)), "https://", ""), "http://", ""), FIND("/", SUBSTITUTE(SUBSTITUTE(LOWER(TRIM(A2)), "https://", ""), "http://", "") & "/") - 1), FIND(":", LEFT(SUBSTITUTE(SUBSTITUTE(LOWER(TRIM(A2)), "https://", ""), "http://", ""), FIND("/", SUBSTITUTE(SUBSTITUTE(LOWER(TRIM(A2)), "https://", ""), "http://", "") & "/") - 1) & ":") - 1), "www.", "", 1))` - **Formula (Detect Secure HTTPS Protocol Compliance)**: `=IF(TRIM(A2) = "", "Blank URL", IF(LEFT(LOWER(TRIM(A2)), 8) = "https://", "HTTPS Secure", "Insecure / Missing HTTPS"))` ### Extract text between parentheses (or brackets) with formulas - **URL**: https://sheets.arte-soft.com/en/learn/extract-text-between-parentheses-or-delimiters/ - **Summary**: Pull SKUs, tickers, or currency codes enclosed in parentheses using TEXTBEFORE/TEXTAFTER or classic MID and FIND. *Table — Two clean ways to isolate enclosed codes:* | ItemLabel (A) | TEXTBEFORE / TEXTAFTER | Legacy MID + FIND | | --- | --- | --- | | Turbine Pump (SKU-4820) - Spare | SKU-4820 | SKU-4820 | | Turbine Pump Direct | No code | No code | | Turbine Pump (SKU-4820 | No code | No code | - **Formula (Modern and legacy parentheses extraction formulas)**: `=IFERROR(TEXTBEFORE(TEXTAFTER(A2, "("), ")"), "No code")` - **Formula (Classic MID + FIND formula for all Excel versions)**: `=IF(OR(ISERROR(FIND("(", A2)), ISERROR(FIND(")", A2, FIND("(", A2)+1))), "No code", MID(A2, FIND("(", A2)+1, FIND(")", A2, FIND("(", A2)+1)-FIND("(", A2)-1))` ### Extract unique multi-column rows and non-adjacent column pairs (UNIQUE & CHOOSECOLS) - **URL**: https://sheets.arte-soft.com/en/learn/extract-unique-multi-column-rows-and-non-adjacent-columns/ - **Summary**: Deduplicate entire multi-column records or specific non-adjacent columns (like Region + Plan) without modifying source data. *Table — Row-level deduplication vs non-adjacent column combinations:* | Region (A) | Dept (B) | Tier (C) | Status (D) | Deduplication Result | | --- | --- | --- | --- | --- | | US | Sales | Pro | Active | Kept (#1 in both) | | US | Sales | Pro | Active | Exact row duplicate -> Removed! | | US | Ops | Pro | Active | Distinct in A:C; same Region/Status pair | | EU | Sales | Enterprise | Trial | Kept | - **Formula (Count or spill distinct multi-column records vs non-adjacent column pairs)**: `=ROWS(UNIQUE(A2:C5))` - **Formula (Deduplicate non-adjacent columns (Column 1 and Column 4))**: `=UNIQUE(CHOOSECOLS(A2:D5,1,4))` ### Extract URL query parameters and UTM tags (utm_source, utm_campaign) by key - **URL**: https://sheets.arte-soft.com/en/learn/extract-url-query-parameters-utm-tags-formula/ - **Summary**: Extract the first raw value of a named query parameter from a controlled URL, excluding its fragment. *Table — Why naive FIND("utm_source=") breaks on sub-keys and #hash anchors!:* | Parameter Key (B2) | Boundary Matched | Extracted Value from Sample URL | | --- | --- | --- | | "utm_source" | "?utm_source=" (1st param) | "google" | | "utm_campaign" | "&utm_campaign=" (strips #faq!) | "q4_launch" | | "utm_content" | Absent from query | "Not Found" | - **Formula (Order-independent, #fragment-safe URL query parameter extractor)**: `=LET(clean,TEXTBEFORE(A2&"#","#"),query,IFERROR(TEXTAFTER(clean,"?"),""),IF(B2="","Enter a key",IFERROR(TEXTBEFORE(TEXTAFTER("&"&query&"&","&"&B2&"="),"&"),"Not Found")))` - **Formula (Remove query and fragment text)**: `=TEXTBEFORE(TEXTBEFORE(A2 & "#", "#") & "?", "?")` ### Extract values that appear ONLY ONCE (UNIQUE 3rd argument: distinct vs singleton) - **URL**: https://sheets.arte-soft.com/en/learn/extract-values-that-appear-only-once-exact-unique/ - **Summary**: List identifiers that occur exactly once in a supplied range, rather than returning every distinct identifier. *Table — Distinct (1+ occurrences) vs Singleton "Exactly Once" (3rd argument = TRUE):* | Ledger Ref (A2:A7) | Occurrences | Standard UNIQUE(A2:A7) | Singleton UNIQUE(A2:A7, FALSE, TRUE) | | --- | --- | --- | --- | | INV-101 (appears 2×) | 2 (Paired) | Included once | Excluded completely! | | INV-102 (appears 2×) | 2 (Paired) | Included once | Excluded completely! | | INV-103 (appears 1×) | 1 (Orphan!) | Included | Included! | | INV-104 (appears 1×) | 1 (Orphan!) | Included (4 total) | Included! (2 orphans) | - **Formula (Extract and list items that appear exactly once)**: `=IFERROR(TEXTJOIN(", ", TRUE, UNIQUE(A2:A7, FALSE, TRUE)), "No singletons")` - **Formula (Compare standard distinct count vs singleton orphan count)**: `=ROWS(UNIQUE(A2:A7))` ### Extract the Full Word Containing Specific Text (REPT Space-Island Method) - **URL**: https://sheets.arte-soft.com/en/learn/extract-word-containing-specific-substring-token/ - **Summary**: Pull an entire SKU, invoice tag, or email handle out of free-form memo text wherever a target prefix or substring appears—using the REPT(" ", 100) space-island pattern. *Table — Why MAX(1, SEARCH(...) - 50) needs an upfront ISNUMBER(SEARCH) guard:* | Memo Input | Substring Key | Extracted Token | | --- | --- | --- | | "Paid wire for INV-88421 on Friday" | "INV-" | "INV-88421" | | "Contact ops@arte-soft.com urgently" | "@" | "ops@arte-soft.com" | | "General retainer adjustment" | "INV-" | "NOT_FOUND" | - **Formula (Guarded Space-Island Token Extraction Formula)**: `=IF(ISNUMBER(SEARCH(B2, A2)), LET(big_txt, SUBSTITUTE(TRIM(A2), " ", REPT(" ", 100)), hit_pos, SEARCH(B2, big_txt), TRIM(MID(big_txt, MAX(1, hit_pos - 50), 100))), "NOT_FOUND")` ### Extract the Single Word Containing a Specific Substring (@, #, SKU-) - **URL**: https://sheets.arte-soft.com/en/learn/extract-word-containing-substring-from-text-mid-search/ - **Summary**: Pull out the exact space-delimited token containing "@", "#INC-", or "ORD-" from unstructured log messages using the padded-space SUBSTITUTE + SEARCH + MID + TRIM island technique. *Table — Isolate @emails, #ticket-IDs, and SKU tokens buried anywhere inside free-text notes!:* | Unstructured Log Note (A2) | Marker Substring (B2) | Padded Island Slice + TRIM | Extracted Token | | --- | --- | --- | --- | | "Escalated ticket #INC-4821 to tier-3 ops" | "#" | Isolates #INC-4821 island | "#INC-4821" | | "Contact billing@northwind.io before Friday" | "@" | Isolates email island | "billing@northwind.io" | | "Routine healthcheck passed cleanly" | "#" | ISERROR(SEARCH) Guard | "Token Not Found" | - **Formula (Extract Space-Delimited Word Containing Marker Substring (Case-Insensitive))**: `=IF(OR(ISBLANK(B2), ISERROR(SEARCH(B2, A2))), "Token Not Found", TRIM(MID(SUBSTITUTE(" " & A2 & " ", " ", REPT(" ", 100)), SEARCH(B2, SUBSTITUTE(" " & A2 & " ", " ", REPT(" ", 100))) - 50, 100)))` - **Formula (Strip Marker Prefix After Extracting Target Token (e.g., "#INC-4821" -> "INC-4821"))**: `=IF(OR(ISBLANK(B2), ISERROR(SEARCH(B2, A2))), "Token Not Found", SUBSTITUTE(TRIM(MID(SUBSTITUTE(" " & A2 & " ", " ", REPT(" ", 100)), SEARCH(B2, SUBSTITUTE(" " & A2 & " ", " ", REPT(" ", 100))) - 50, 100)), B2, ""))` ### Extract words starting with #, @, or a prefix (#hashtags, @mentions, Jira IDs) - **URL**: https://sheets.arte-soft.com/en/learn/extract-word-starting-with-hashtag-mention-or-prefix/ - **Summary**: Pull the 1st, 2nd, or Nth #hashtag, @mention, or PROJ- ticket code from free-form notes using padded " " & TRIM(A2) & " " with TEXTAFTER and TEXTBEFORE. *Table — Pad leading and trailing spaces so boundary words and mid-word symbols never collide!:* | Note Text | Prefix + Instance | Extracted Token | | --- | --- | --- | | "#ops-412 Fixed Item#9 latency with @maya and #perf" | "#" (1st) | #ops-412 (skips Item#9!) | | "#ops-412 Fixed Item#9 latency with @maya and #perf" | "#" (2nd) | #perf | | "#ops-412 Fixed Item#9 latency with @maya and #perf" | "@" (1st) | @maya | - **Formula (Extract Nth prefixed word (#hashtag, @mention, or ticket prefix))**: `=IF(OR(B2="",C2<1,C2<>INT(C2)),"Invalid inputs",LET(s, " " & TRIM(A2) & " ", after, IFERROR(TEXTAFTER(s, " " & B2, C2), ""), IF(after="", "None", B2 & TEXTBEFORE(after, " "))))` - **Formula (Count how many words begin with prefix B2 in the cell)**: `=LET(s, " " & TRIM(A2), (LEN(s) - LEN(SUBSTITUTE(s, " " & B2, ""))) / LEN(" " & B2))` ### Extruded Heatsink Fin Efficiency TANH(mL)/(mL) Formula - **URL**: https://sheets.arte-soft.com/en/learn/extruded-fin-heatsink-fin-efficiency-tanh-ml-and-junction-to-ambient-temp/ - **Summary**: Calculate Dimensionless Fin Parameter m*L, Single-Fin Efficiency eta_f = TANH(mL)/(mL) (%), Overall Finned-Array Thermal Resistance R_sa (°C/W), and Heatsink Base Temperature Ts (°C). *Table — Making heatsink fins taller yields diminishing returns—conduction temperature drop toward the fin tip follows TANH(mL) / (mL)!:* | Extended-Surface Heatsink KPI (L=32 mm, t=1.8 mm, h=38 W/m²K, Af=0.085 m², Q=45 W) | Formula | Verified Output | | --- | --- | --- | | Dimensionless Fin Parameter m*L | SQRT((2 * h) / (k * (t_mm/1000))) * (L_mm/1000) | 0.4592 (0.2235 @ fan-fail h=9) | | Single-Fin Efficiency eta_f (%) | (TANH(mL) / mL) * 100 | 93.52% (98.37% @ fan-fail h=9) | | Sink-to-Ambient Resistance Rsa | 1 / (eta_o * h * (Af_m2 + Ab_m2)) | 0.279 °C/W (1.127 °C/W @ fan-fail!) | | Heatsink Baseplate Temp Ts (°C) | Ambient_Ta_C + Power_W * Rsa_C_W | 47.53 °C (85.70 °C @ cooling-fan fail!) | - **Formula (Hyperbolic-Tangent Fin Efficiency & Overall Heatsink Thermal Resistance Formula)**: `=LET(ln_m, B2 / 1000, th_m, B3 / 1000, hc_w, B4, kc_w, B5, af_m, B6, ab_m, B7, pw_w, B8, ta_c, B9, IF(OR(ln_m <= 0, th_m <= 0, hc_w <= 0, kc_w <= 1, af_m <= 0, ab_m < 0, pw_w < 0), "Invalid Heatsink Input", LET(ml_p, SQRT((2 * hc_w) / (kc_w * th_m)) * ln_m, th_v, (EXP(2 * ml_p) - 1) / (EXP(2 * ml_p) + 1), ef_f, th_v / ml_p, at_m, af_m + ab_m, eo_f, 1 - (af_m / at_m) * (1 - ef_f), rs_a, 1 / (eo_f * hc_w * at_m), ROUND(ta_c + pw_w * rs_a, 2))))` - **Formula (Cooling-Fan Failure Natural-Convection Fallback Check (Set Convection h B4 = 9.0 W/(m²·K)))**: `=IF(ISTEXT(E5), E5, LET(ml_p, SQRT((2 * B4) / (B5 * (B3 / 1000))) * (B2 / 1000), ef_f, ((EXP(2 * ml_p) - 1) / (EXP(2 * ml_p) + 1)) / ml_p, at_m, B6 + B7, eo_f, 1 - (B6 / at_m) * (1 - ef_f), ROUND(1 / (eo_f * B4 * at_m), 3)))` ### Blow Molding Parison Swell, Blow-Up Ratio & Wall Formula - **URL**: https://sheets.arte-soft.com/en/learn/extrusion-blow-molding-parison-swell-blow-up-ratio-and-wall-thickness-formula/ - **Summary**: Calculate Swollen Parison Diameter D_p (mm), Swollen Parison Wall Thickness t_p (mm), True Parison Blow-Up Ratio (BUR), and Finished Bottle Wall Thickness t_wall (mm). *Table — Viscoelastic Barus die swell thickens AND widens the HDPE parison BEFORE air inflation thins it by 1 / BUR!:* | HDPE Blow-Molding KPI (tgap=1.2 mm, Ddie=25 mm, Sd=1.28, St=1.50, Dmold=80 mm) | Formula | Verified Output | | --- | --- | --- | | Swollen Parison Diameter Dp (mm) | Die_Diameter_mm * Diameter_Swell_Sd | 32.00 mm | | Swollen Parison Wall tp (mm) | Die_Gap_mm * Thickness_Swell_St | 1.80 mm | | True Parison Blow-Up Ratio (BUR) | Mold_Diameter_mm / (D_die * S_d) | 2.50 (3.00 @ Dmold = 96 mm) | | Finished Bottle Wall twall (mm) | (t_gap * S_t) / True_BUR | 0.720 mm (0.600 @ Dmold = 96 mm) | - **Formula (Viscoelastic Parison Swell & Finished Container Wall Thickness Formula)**: `=LET(tg_m, B2, dd_m, B3, sd_r, B4, st_r, B5, dm_m, B6, IF(OR(tg_m <= 0, dd_m <= 2 * tg_m, sd_r < 1, st_r < 1, dm_m <= dd_m * sd_r), "Invalid Parison Input", LET(dp_s, dd_m * sd_r, tp_s, tg_m * st_r, bu_r, dm_m / dp_s, ROUND(tp_s / bu_r, 3))))` - **Formula (Wider Bottle Mold Corner-Thinning Check (Increase Mold Diameter D_mold to 96.0 mm))**: `=IF(ISTEXT(E5), E5, ROUND(B6 / (B3 * B4), 2))` ### F-Distribution Right-Tail P-Value & ANOVA Critical Cutoff (F.DIST.RT & F.INV.RT) - **URL**: https://sheets.arte-soft.com/en/learn/f-distribution-critical-value-and-right-tail-p-value-f-dist-rt-f-inv-rt/ - **Summary**: Convert ANOVA and variance-equality F-ratios into normalized Paulson cube-root Z-scores, right-tail p-values (F.DIST.RT), and alpha significance cutoffs across numerator and denominator degrees of freedom. *Table — Translating raw F-ratios into right-tail p-values across degrees of freedom:* | Observed F | df_1 (Num) | df_2 (Den) | Paulson Z | Right-Tail P-Value | | --- | --- | --- | --- | --- | | 1.0000 | 8 | 18 | -0.0680 | 0.5271 (No effect) | | 1.0000 | 18 | 18 | 0.0000 | 0.5000 (Exact median) | | 8.0000 | 8 | 18 | 3.6111 | 0.0002 (Reject H0 at 1%) | - **Formula (Paulson Cube-Root F-to-Z Transformation)**: `=LET(f_stat, B2, df_a, B3, df_b, B4, a_term, 2 / (9 * df_a), b_term, 2 / (9 * df_b), f_cbrt, f_stat ^ (1 / 3), ROUND(((1 - b_term) * f_cbrt - (1 - a_term)) / SQRT(b_term * f_cbrt ^ 2 + a_term), 4))` - **Formula (Right-Tail Significance P-Value & Alpha Decision)**: `=IF(E3 < B5, "Reject_H0", "Retain_H0")` ### F-Test formula: compare two sample variances (precision & spread ratio) - **URL**: https://sheets.arte-soft.com/en/learn/f-test-ratio-of-two-sample-variances/ - **Summary**: Calculate an oriented variance ratio and compare it with a two-sided F-test threshold under the stated assumptions. *Table — Orient the ratio and its degrees of freedom together:* | Metric | Machine A [9.1, 9.7, 10.3, 10.9] | Machine B [9.6, 9.9, 10.2, 10.3] | | --- | --- | --- | | Sample Mean | 10.00 mm | 10.00 mm | | Sample Variance (VAR.S) | 0.60 | 0.10 | | Oriented F-Statistic | 0.60 / 0.10 = 6.00 | df1 = 3, df2 = 3 | - **Formula (Upper-tail F-ratio and critical-value check)**: `=LET(varianceTermA, VAR.S(A2:A5), varianceTermB, VAR.S(B2:B5), ROUND(MAX(varianceTermA, varianceTermB) / MIN(varianceTermA, varianceTermB), 4))` - **Formula (Compare F against critical threshold in C2)**: `=IF(MAX(VAR.S(A2:A5), VAR.S(B2:B5)) / MIN(VAR.S(A2:A5), VAR.S(B2:B5)) > C2, "Reject equal variance", "Fail to reject")` ### Fabry-Perot Etalon: Free Spectral Range (FSR), Reflective Finesse & Linewidth - **URL**: https://sheets.arte-soft.com/en/learn/fabry-perot-etalon-finesse-free-spectral-range-and-linewidth/ - **Summary**: Calculate optical cavity Free Spectral Range FSR = c / (2 * n * L) in GHz, mirror Reflective Finesse F = (PI() * SQRT(R)) / (1 - R), and transmission peak FWHM = FSR / F. *Table — Design laser cavities, telecom DWDM filters, and LIGO-style optical resonators!:* | 5 mm Fused-Silica Etalon (n = 1.45) | Mirror Reflectivity R | Free Spectral Range FSR | Reflective Finesse F & Linewidth | | --- | --- | --- | --- | | Standard Laser Mode Etalon | R = 0.95 (95%) | 20.675 GHz | F = 61.24 \| FWHM = 0.338 GHz | | High-Finesse Reference Cavity | R = 0.99 (99%) | 20.675 GHz (Same FSR!) | F = 312.58 \| FWHM = 0.066 GHz | | Invalid Reflectivity R >= 1 | 1 - R = 0 Division Check | Guarded Singularity | "Invalid Etalon Parameters" | - **Formula (Free Spectral Range FSR = c / (2 * n * L) in Gigahertz (GHz))**: `=IF(OR(B2 <= 0, B3 < 1), "Invalid Etalon Parameters", ROUND((299792458 / (2 * B3 * B2)) / 1000000000, 3))` - **Formula (Reflective Finesse F = (PI() * SQRT(R)) / (1 - R))**: `=IF(OR(B4 <= 0, B4 >= 1), "Invalid Etalon Parameters", ROUND((PI() * SQRT(B4)) / (1 - B4), 2))` ### FACT function: calculate factorials, route permutations, and combinations - **URL**: https://sheets.arte-soft.com/en/learn/fact-function-factorial/ - **Summary**: Compute n! arrangements, ordered permutations n! / (n - k)!, and unordered combinations using FACT. *Table — Count delivery route orders and team combinations:* | PoolSize n (A) | PickCount k (B) | Full n! | Ordered P(n,k) | Unordered C(n,k) | | --- | --- | --- | --- | --- | | 6 | 3 | 720 | 120 | 20 | - **Formula (Zero factorial equals 1; negative inputs return #NUM!)**: `=FACT(A2) / FACT(A2 - B2)` - **Formula (Unordered combinations formula)**: `=FACT(A2) / (FACT(B2) * FACT(A2 - B2))` ### Double Factorial n!! & Perfect-Matching Pairings (SEQUENCE & PRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/factdouble-double-factorial-odd-and-even-integers/ - **Summary**: Calculate the double factorial n!! for odd and even non-negative integers using PRODUCT and SEQUENCE, and count distinct ways to pair 2k items into k unordered pairs. *Table — Compute n!! = n * (n - 2) * (n - 4) ... without parity branching bugs:* | Integer n | Stepped Factors | Double Factorial n!! | Combinatorial Meaning | | --- | --- | --- | --- | | 0 or 1 | Empty / {1} | 1 | Base convention 0!! = 1!! = 1 | | 5 | 5 * 3 * 1 | 15 | Ways to pair 6 teams into 3 matches | | 6 | 6 * 4 * 2 | 48 | 2^3 * 3! hyperoctahedral symmetry | | 7 | 7 * 5 * 3 * 1 | 105 | Ways to pair 8 teams into 4 matches | | 8 | 8 * 6 * 4 * 2 | 384 | 2^4 * 4! = 16 * 24 | - **Formula (Universal Double Factorial n!! Formula)**: `=IF(OR(B2 < 0, B2 <> INT(B2)), "Non-Negative Integer Required", IF(B2 <= 1, 1, PRODUCT(SEQUENCE(INT((B2 + 1) / 2), 1, B2, -2))))` - **Formula (Unordered Pairings of 2k Participants ((2k - 1)!!))**: `=IF(OR(B3 < 2, MOD(B3, 2) <> 0), "Even Count >= 2 Required", PRODUCT(SEQUENCE(B3 / 2, 1, B3 - 1, -2)))` ### Fader-Hardie BG/NBD Customer P(Alive) Formula - **URL**: https://sheets.arte-soft.com/en/learn/fader-hardie-bg-nbd-customer-alive-probability-formula/ - **Summary**: Calculate non-contractual repeat-buyer active probability P(Alive | x, t_x, T) = 1 / (1 + (a / (b + x - 1)) * ((T + beta) / (t_x + beta))^(r + x)) and uncover the Increase-Frequency Paradox. *Table — Catch the Increase-Frequency Paradox in non-contractual retail RFM tables!:* | Customer RFM Profile (r=0.8, beta=4, a=0.5, b=2.5, T=32) | Formula | Verified P(Alive) | | --- | --- | --- | | Moderate Buyer (x = 3, t_x = 20, Hiatus = 12 wk) | 1 / (1 + (0.5/4.5) * 1.5^3.8) | 0.6585 (65.85% Active) | | Just-Purchased Buyer (x = 3, t_x = 32, Hiatus = 0) | 1 / (1 + (0.5/4.5) * 1.0^3.8) | 0.9000 (90.00% Active) | | Silent Heavy Buyer (x = 8, t_x = 20, Hiatus = 12 wk) | 1 / (1 + (0.5/9.5) * 1.5^8.8) | 0.3490 (Frequency Paradox!) | | Zero-Repeat New Buyer (x = 0, t_x = 0, T = 32) | IF(x = 0, 1, ...) | 1.0000 (No Post-Buy Coin Flip Yet) | - **Formula (Exact Fader-Hardie (2005) BG/NBD P(Alive | x, t_x, T) Formula)**: `=LET(r_sh, B2, bt_sc, B3, a_dr, B4, b_st, B5, x_rp, B6, tx_rc, B7, t_obs, B8, IF(OR(r_sh <= 0, bt_sc <= 0, a_dr <= 0, b_st <= 0, x_rp < 0, INT(x_rp) <> x_rp, tx_rc < 0, t_obs <= 0, tx_rc > t_obs, AND(x_rp = 0, tx_rc > 0)), "Invalid BG/NBD Input", IF(x_rp = 0, 1, ROUND(1 / (1 + (a_dr / (b_st + x_rp - 1)) * (((t_obs + bt_sc) / (tx_rc + bt_sc)) ^ (r_sh + x_rp))), 4))))` - **Formula (Posterior Expected Single-Switch Dropout Rate E[p | x, t_x = T] Formula)**: `=LET(a_dr, B4, b_st, B5, x_rp, B6, IF(OR(a_dr <= 0, b_st <= 0, x_rp < 1, INT(x_rp) <> x_rp), "Require x >= 1", ROUND(a_dr / (a_dr + b_st + x_rp - 1), 4)))` ### Fagan’s Nomogram Calculator: Likelihood Ratios & Post-Test Probability - **URL**: https://sheets.arte-soft.com/en/learn/fagans-nomogram-pre-test-to-post-test-probability-likelihood-ratio/ - **Summary**: Replace straight-edge paper Fagan nomograms with exact Bayesian odds updates—converting Pre-Test Probability, Sensitivity, and Specificity into LR+, LR-, Positive Post-Test Probability (%), and Negative Post-Test Probability (%). *Table — Compute exact Bayesian Fagan-nomogram updates without drawing ruler lines!:* | Clinical Pre-Test Probability (Sens = 0.90, Spec = 0.85) | LR+ = 6.00 Post-Test Prob (+) | LR- = 0.118 Post-Test Prob (-) | Diagnostic Interpretation | | --- | --- | --- | --- | | Intermediate Pre-Test (0.25 = 25%) | 66.67% | 3.77% (Strong Rule-Out) | Negative Test Excludes Disease | | High Clinical Suspicion (0.60 = 60%) | 90.00% (Strong Rule-In) | 15.00% (Residual Risk!) | Negative Test Alone Insufficient | | Boundary Probability (0 or 1) | Odds Singularity Guard | "Invalid Probability / Sens-Spec" | Requires Open Interval (0, 1) | - **Formula (Positive Post-Test Probability (%) via LR+ = Sensitivity / (1 - Specificity))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B3 >= 1, B4 <= 0, B4 >= 1), "Invalid Probability / Sens-Spec", ROUND(100 * (((B2 / (1 - B2)) * (B3 / (1 - B4))) / (1 + ((B2 / (1 - B2)) * (B3 / (1 - B4))))), 2))` - **Formula (Negative Post-Test Probability (%) via LR- = (1 - Sensitivity) / Specificity)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B3 >= 1, B4 <= 0, B4 >= 1), "Invalid Probability / Sens-Spec", ROUND(100 * (((B2 / (1 - B2)) * ((1 - B3) / B4)) / (1 + ((B2 / (1 - B2)) * ((1 - B3) / B4)))), 2))` ### Fair-Hatch Rapid Sand Filter Clean-Bed Head Loss Formula: Porosity & Sphericity - **URL**: https://sheets.arte-soft.com/en/learn/fair-hatch-rapid-sand-filter-clean-bed-head-loss-sphericity-formula/ - **Summary**: Calculate clean-bed hydraulic head loss h_L (m) through drinking-water rapid sand and dual-media anthracite filters using Gordon M. Fair and L. P. Hatch’s (1933) laminar porous-media drag equation. *Table — Why filter head loss scales inversely with porosity^3 / (1 - porosity)^2 and grain diameter^2!:* | Filter Media Design Scenario (v_a = 0.0020 m/s = 7.2 m/h, L = 0.75 m) | Porosity eps & Sphericity psi | 20°C Summer Head Loss | 5°C Winter Head Loss (nu = 1.52e-6) | | --- | --- | --- | --- | | Fine Rounded Silica Sand (d_g = 0.00055 m) | eps = 0.42, psi = 0.82 | 0.617 m | 0.934 m (+51% Cold Viscosity!) | | Coarse Silica Filter Sand (d_g = 0.00085 m) | eps = 0.42, psi = 0.82 | 0.258 m | 0.391 m | | Crushed Anthracite Cap (d_g = 0.00110 m) | eps = 0.50, psi = 0.72 | 0.101 m | 0.153 m | - **Formula (Fair-Hatch (1933) Clean-Bed Filter Head Loss h_L (m of Water))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0.2, B4 >= 0.8, B5 <= 0.3, B5 > 1, B6 <= 0, B7 <= 0), "Invalid Filter Velocity, Depth, Porosity (0.2–0.8), Sphericity (0.3–1.0), d_g, or Viscosity", ROUND((180 * B7 * ((1 - B4) ^ 2) * B2 * B3) / (9.80665 * (B4 ^ 3) * ((B5 * B6) ^ 2)), 4))` - **Formula (Pore-Scale Grain Reynolds Number Re_p = v_a * d_g / nu (Laminar Darcy Check))**: `=IF(OR(B2 <= 0, B6 <= 0, B7 <= 0), "Invalid Reynolds Inputs", ROUND((B2 * B6) / B7, 3))` ### Fair’s Distillation Tray Flooding Velocity & Column Diameter Formula - **URL**: https://sheets.arte-soft.com/en/learn/fair-sieve-tray-distillation-column-flooding-velocity-formula/ - **Summary**: Calculate maximum net-area vapor flooding velocity u_flood = C_sb * SQRT((ρ_L - ρ_V) / ρ_V) * (σ / 20)^0.2 (m/s) and minimum distillation column diameter via James Fair’s 1961 entrainment correlation. *Table — Sizing sieve and valve distillation towers safely at 80% of James Fair’s jet-flooding ceiling!:* | Distillation Operating Condition (Csb = 0.085 m/s) | Surface Tension σ (mN/m) | Flooding Velocity u_flood (m/s) | 80% Design Velocity u_op | | --- | --- | --- | --- | | Hydrocarbon Splitter (ρL=780, ρV=2.60) | 16.5 mN/m | 1.414 m/s | 1.131 m/s | | Aqueous Stripping Tower (ρL=960, ρV=0.65) | 58.9 mN/m | 4.053 m/s | 3.242 m/s | | Invalid ρL <= ρV or σ <= 0 | Undefined | "Invalid Tray Hydraulic Inputs" | Guard | - **Formula (Fair Net-Area Vapor Flooding Velocity u_flood (m/s))**: `=IF(OR(B2 <= 0, B3 <= B4, B4 <= 0, B5 <= 0), "Invalid Tray Hydraulic Inputs", ROUND(B2 * SQRT((B3 - B4) / B4) * ((B5 / 20) ^ 0.2), 3))` - **Formula (Design Operating Vapor Velocity at Fractional Percent Flood (e.g., 80% Flood))**: `=IF(OR(B2 <= 0, B3 <= B4, B4 <= 0, B5 <= 0, B6 <= 0, B6 >= 1), "Invalid Tray Hydraulic Inputs", ROUND(B6 * B2 * SQRT((B3 - B4) / B4) * ((B5 / 20) ^ 0.2), 3))` ### Fama-MacBeth Risk Premia and Shanken EIV Standard Error Formula - **URL**: https://sheets.arte-soft.com/en/learn/fama-macbeth-two-pass-risk-premia-and-shanken-errors-in-variables/ - **Summary**: Adjust naive Fama-MacBeth cross-sectional t-statistics for first-pass beta estimation error using Shanken’s (1992) errors-in-variables factor c_S = 1 + (lambda_hat / sigma_f)^2. *Table — Why naive Fama-MacBeth standard errors overstate factor significance:* | Asset-Pricing Inference Quantity | Formula | Sample Value | | --- | --- | --- | | Naive Fama-MacBeth SE & t-Stat | s_lam / SQRT(T) -> lambda_hat / SE_FM | SE = 0.0065, t_FM = 2.1538 | | Shanken Multiplicative Factor (c_S) | 1 + (lambda_hat / sigma_f)^2 | 1.3136 (+31.36% EIV Factor) | | Shanken-Corrected SE & t-Stat | SQRT(((s_lam^2 - sig_f^2)*c_S + sig_f^2)/T) | SE = 0.0073, t_S = 1.9133 (< 1.96) | - **Formula (Shanken (1992) Errors-in-Variables Multiplier c_S = 1 + (lambda_hat / sigma_f)^2 Formula)**: `=LET(lam_h, B3, sig_f, B4, IF(sig_f <= 0, "Invalid Factor Volatility", ROUND(1 + (lam_h / sig_f)^2, 4)))` - **Formula (Shanken-Corrected Two-Pass t-Statistic Formula)**: `=LET(t_len, B2, lam_h, B3, sig_f, B4, s_lam, B5, IF(OR(t_len < 2, sig_f <= 0, s_lam < sig_f), "Invalid FM-Shanken Input", LET(c_sh, 1 + (lam_h / sig_f)^2, v_sh, ((s_lam^2 - sig_f^2) * c_sh + sig_f^2) / t_len, ROUND(lam_h / SQRT(v_sh), 4))))` ### Fanno Compressible Pipe Flow Friction Parameter (4fL*/D) & Sonic Choking - **URL**: https://sheets.arte-soft.com/en/learn/fanno-compressible-adiabatic-pipe-choking-4fl-d-formula/ - **Summary**: Calculate the dimensionless Fanno friction choking parameter 4*f*L*/D = (1 - M^2)/(gamma*M^2) + ((gamma+1)/(2*gamma))*LN(((gamma+1)*M^2)/(2 + (gamma-1)*M^2)) and maximum unchoked gas pipe length L_max. *Table — Determine the exact gas-pipe length where wall friction chokes flow to Mach 1!:* | Inlet Mach Number M (Air gamma = 1.40, Pipe D = 0.05 m, Fanning f = 0.02) | Fanno Parameter 4*f*L*/D | Max Choking Length L* (m) | Compressible Friction Behavior | | --- | --- | --- | --- | | Low Subsonic (M = 0.30) | 5.2993 | 3.31 m | Accelerates toward M = 1 | | High Subsonic (M = 0.60) | 0.4908 | 0.31 m | Rapidly chokes to sonic exit | | Supersonic Duct (M = 2.00) | 0.3050 | 0.19 m | Decelerates toward M = 1 | - **Formula (Dimensionless Fanno Choking Parameter 4*f*L*/D at Mach M)**: `=IF(OR(B2 <= 0, B3 <= 1), "Invalid Mach or Gamma", ROUND(((1 - (B2 ^ 2)) / (B3 * (B2 ^ 2))) + (((B3 + 1) / (2 * B3)) * LN(((B3 + 1) * (B2 ^ 2)) / (2 + ((B3 - 1) * (B2 ^ 2))))), 4))` - **Formula (Maximum Unchoked Pipe Length L* = (4*f*L*/D) * D / (4 * f) (Meters))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Pipe Diameter or Friction", ROUND((((1 - (B2 ^ 2)) / (B3 * (B2 ^ 2))) + (((B3 + 1) / (2 * B3)) * LN(((B3 + 1) * (B2 ^ 2)) / (2 + ((B3 - 1) * (B2 ^ 2)))))) * B4 / (4 * B5), 2))` ### FAO-56 Penman-Monteith Reference Evapotranspiration (ET0) Formula - **URL**: https://sheets.arte-soft.com/en/learn/fao-56-penman-monteith-reference-evapotranspiration-et0-radiation-aerodynamic/ - **Summary**: Calculate FAO-56 Radiation-Driven ET Term (mm/d), Wind-VPD Aerodynamic ET Term (mm/d), Total Reference Grass Evapotranspiration ET0 (mm/d), and Weekly Water Volume per Hectare (m³/ha). *Table — Why FAO-56 embeds stomatal canopy resistance (1 + 0.34 * u2) in the denominator—separating crop ET0 from open-pan evaporation!:* | FAO-56 Weather-Station KPI (Delta=0.145, Rn-G=14, T=20°C, u2=2 m/s, VPD=1.1 kPa) | Formula | Verified Output | | --- | --- | --- | | Radiation ET0 Term (mm/d) | (0.408 * Delta * RnG) / (Delta + gamma*(1+0.34*u2)) | 3.22 mm/d (2.54 @ u2 = 5 m/s) | | Aerodynamic ET0 Term (mm/d) | (gamma*(900/(T+273))*u2*VPD) / Denom | 1.76 mm/d (3.47 @ u2 = 5 m/s) | | Total FAO-56 Reference ET0 (mm/d) | Radiation_Term + Aerodynamic_Term | 4.97 mm/d (6.01 @ u2 = 5 m/s) | | 7-Day Water Demand (m³/ha/wk) | ROUND(ET0_mm_d * 7 * 10, 2) | 347.90 m³/ha (420.70 @ u2 = 5 m/s) | - **Formula (Complete FAO-56 Penman-Monteith Daily ET0 Formula)**: `=LET(dl_t, B2, rn_g, B3, gm_p, B4, tm_c, B5, u2_w, B6, vp_d, B7, IF(OR(dl_t <= 0, rn_g < 0, gm_p <= 0, tm_c <= -40, u2_w < 0, vp_d < 0), "Invalid FAO56 Input", LET(dn_m, dl_t + gm_p * (1 + 0.34 * u2_w), rd_t, (0.408 * dl_t * rn_g) / dn_m, ar_t, (gm_p * (900 / (tm_c + 273)) * u2_w * vp_d) / dn_m, ROUND(rd_t + ar_t, 2))))` - **Formula (Advective Dry-Wind Surge Check (Set 2m Wind Speed u_2 = 5.0 m/s))**: `=IF(ISTEXT(E4), E4, ROUND(E4 * 70, 2))` ### FAO Crop Coefficient Kc & Leaching Fraction Formula - **URL**: https://sheets.arte-soft.com/en/learn/fao-crop-coefficient-kc-deficit-irrigation-and-salinity-leaching-fraction/ - **Summary**: Calculate FAO-56 Crop Evapotranspiration ET_c = K_c * ET_0, Ayers-Westcot Salinity Leaching Requirement LR = EC_w / (5 * EC_e - EC_w), Net Leaching-Adjusted Depth, and Gross Pumped Irrigation. *Table — Prevent root-zone salt accumulation while scheduling FAO-56 drip irrigation!:* | FAO-56 / Ayers-Westcot Metric (ET0=6.0, Kc=1.15, Peff=0.9, ECw=1.5, ECe=1.8, Eff=90%) | Formula | Verified Output | | --- | --- | --- | | Crop Evapotranspiration ET_c | K_c * ET_0 | 6.90 mm/day | | Salinity Leaching Requirement LR | EC_w / (5 * EC_e - EC_w) | 0.2000 (20.00% Flush) | | Leaching-Adjusted Net Depth | MAX(0, ET_c - P_eff) / (1 - LR) | 7.50 mm/day | | Gross Pumped Irrigation Depth | Net_Leached_Depth / eta_irr | 8.33 mm/day (83.3 m^3/ha/d) | - **Formula (Salinity-Guarded Gross Irrigation Requirement Formula)**: `=LET(et_0, B2, k_cp, B3, p_ef, B4, ec_w, B5, ec_e, B6, et_i, B7, IF(OR(et_0 < 0, k_cp <= 0, p_ef < 0, ec_w < 0, ec_e <= 0, et_i <= 0, et_i > 1), "Invalid Irrigation Input", IF(ec_w >= 2.5 * ec_e, "Water Too Saline (LR >= 1)", LET(lr_f, ec_w / (5 * ec_e - ec_w), nt_d, MAX(0, k_cp * et_0 - p_ef) / (1 - lr_f), ROUND(nt_d / et_i, 2)))))` - **Formula (Ayers-Westcot Leaching Requirement Fraction Formula)**: `=IF(OR(B2 < 0, B3 <= 0, B4 < 0, B5 < 0, B6 <= 0, B7 <= 0, B7 > 1), "Invalid Irrigation Input", IF(B5 >= 2.5 * B6, "Water Too Saline (LR >= 1)", ROUND(B5 / (5 * B6 - B5), 4)))` ### Faraday's Law of Electrolysis Mass & Tafel Electrode Overpotential - **URL**: https://sheets.arte-soft.com/en/learn/faraday-electrolysis-mass-deposited-and-butler-volmer-tafel/ - **Summary**: Build a constant-current Faraday mass calculation with current efficiency, and a separate anodic Tafel approximation using a dimensionless current-density ratio. - **Formula (Mass for one specified electrode reaction)**: `=IF(COUNT(B2:B6)<>5,"Enter numeric mass inputs",IF(OR(B2<0,B3<0,B4<=0,B5<=0,B5<>INT(B5),B6<0,B6>1),"Invalid mass inputs",B2*B3*B4*B6/(B5*96485.33)))` - **Formula (Anodic Tafel approximation)**: `=IF(COUNT(B7:B9)<>3,"Enter numeric kinetic inputs",IF(OR(B7<=0,B8<=0,B9<=0),"Invalid kinetic inputs",IF(B8/B9<10,"Outside this Tafel exercise",B7*LOG10(B8/B9))))` ### Faraday Electroplating Thickness & Cathode Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/faraday-electroplating-coating-thickness-cathode-current-efficiency-and-time/ - **Summary**: Calculate Cathode Current Density J (A/dm²), Ideal 100%-Faradaic Deposited Mass (g), Cathode-Efficiency-Adjusted Metal Mass (g), and Mean Electroplated Coating Thickness (um). *Table — Why hard-chrome plating builds microns 14x slower than Watts nickel at the same amperage—valence n=6 AND 82% hydrogen gas loss!:* | Faraday Electroplating KPI (180 A x 45 min on 30 dm²: Watts Ni2+ vs Cr6+ Hard Chrome) | Formula | Verified Output | | --- | --- | --- | | Cathode Current Density (A/dm²) | Rectifier_Current_A / Part_Area_dm2 | 6.00 A/dm² (`600` A/m²) | | 100% Faradaic Ideal Mass (g) | (I * t_min * 60 * M_g_mol) / (n * 96485.33) | 147.81 g Ni (43.65 g @ Cr n=6!) | | Actual Deposited Metal Mass (g) | Ideal_Mass_g * (Cathode_Eff_Pct / 100) | 138.94 g Ni (7.86 g @ Cr 18% eff!) | | Mean Plated Thickness (um) | (Actual_Mass_g / (rho * Area_dm2*100))*1e4 | 52.04 um Ni (3.64 um Cr—14.3x slower!) | - **Formula (Faraday’s Electrolysis Law & Cathode Efficiency Micron Coating Formula)**: `=LET(ia_m, B2, tm_m, B3, ef_c, B4, mm_g, B5, vn_i, B6, rh_g, B7, ar_d, B8, IF(OR(ia_m <= 0, tm_m <= 0, ef_c <= 0, ef_c > 100, mm_g <= 0, vn_i < 1, vn_i > 8, rh_g <= 0.5, ar_d <= 0), "Invalid Plating Input", LET(mi_g, (ia_m * tm_m * 60 * mm_g) / (vn_i * 96485.33), ma_g, mi_g * (ef_c / 100), ROUND((ma_g / (rh_g * ar_d * 100)) * 10000, 2))))` - **Formula (Hexavalent Hard-Chrome Tank Comparison Check (Set Eff = 18%, M = 52.00, n = 6, rho = 7.19 g/cm³))**: `=IF(ISTEXT(E5), E5, ROUND(((B2 * B3 * 60 * B5) / (B6 * 96485.33)) * (B4 / 100), 2))` ### Faraday Magneto-Optic Rotation Angle & 45-Degree Optical Isolator Formula - **URL**: https://sheets.arte-soft.com/en/learn/faraday-magneto-optic-rotation-verdet-isolator-formula/ - **Summary**: Calculate non-reciprocal linear polarization rotation theta = DEGREES(V * B * L) from Verdet constant V (rad/(T*m)), axial magnetic field B (Tesla), and crystal length L (m), plus the exact field required for a 45° laser optical isolator. *Table — Build one-way optical diodes that protect high-power lasers from back-reflections!:* | Magneto-Optic Crystal (L = 20 mm, B = 0.50 T) | Verdet Constant V (rad/T*m) | Rotation Angle theta (deg) | Required B for 45° Isolator | | --- | --- | --- | --- | | TGG Crystal at 633 nm | 134 rad/(T*m) | 76.78° | 0.293 Tesla (Compact NdFeB magnet!) | | TGG Crystal at 1,064 nm (Nd:YAG) | 40 rad/(T*m) | 22.92° | 0.982 Tesla | | Invalid Crystal Length L <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid Isolator Inputs" | - **Formula (Faraday Polarization Rotation Angle theta = DEGREES(V * B * L))**: `=IF(OR(B2 = 0, B4 <= 0), "Invalid Isolator Inputs", ROUND(DEGREES(B2 * B3 * B4), 2))` - **Formula (Required Axial Magnetic Field B_45 for a 45° (PI()/4 rad) Optical Isolator (Tesla))**: `=IF(OR(B2 = 0, B4 <= 0), "Invalid Isolator Inputs", ROUND((PI() / 4) / (ABS(B2) * B4), 3))` ### Faraday electrolysis yield and ideal van ’t Hoff osmotic pressure - **URL**: https://sheets.arte-soft.com/en/learn/faradays-law-of-electrolysis-and-van-t-hoff-osmotic-pressure/ - **Summary**: Estimate deposited mass with a stated current efficiency and compare it with a separate ideal-solution osmotic-pressure calculation. *Table — Charge balance and an ideal osmotic-pressure estimate:* | Process Parameter | Cell | Copper Plating / Seawater RO | Engineering Output | | --- | --- | --- | --- | | Current I & Time t | B2 = 10 A, B3 = 3,600 s | Charge Q = 36,000 Coulombs | 0.3731 moles of electrons | | Cu Molar Mass M & Valence n | B4 = 63.546 g/mol, B5 = 2 | (36000 * 63.546) / (2 * 96485) | 11.85 g Copper plated | | Idealized NaCl solution | B6 = 2, B7 = 0.50 mol/L | 1.00 Osmolar total ions | Osmolarity = i * M | | Temp 25 C (B8 = 298.15 K) | 2 * 0.50 * 0.083145 * 298.15 | Ideal solution osmotic pressure | Pi = 24.79 bar (359.5 psi) | - **Formula (Faraday's Law electroplated mass m (grams))**: `=IF(OR(COUNT(B2:B5)<>4,COUNT(B9)<>1),"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B5<1,B5<>INT(B5),B9<0,B9>1),"Invalid inputs",ROUND(B2*B3*B4*B9/(B5*96485),2)))` - **Formula (Ideal osmotic pressure in bar)**: `=IF(OR(COUNT(B6:B8)<>3,B6<=0,B7<0,B8<=0),"Invalid inputs",ROUND(B6 * B7 * 0.083145 * B8, 2))` ### Farrington-Manning Non-Inferiority Risk Difference Score Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/farrington-manning-non-inferiority-risk-difference-z-statistic/ - **Summary**: Test clinical non-inferiority of response rates H_0: p_T - p_C <= -delta_0 using C. P. Farrington & G. Manning’s (1990) FDA-preferred Score Z-statistic with restricted null variance. *Table — Why FDA/EMA non-inferiority trials prefer Farrington-Manning’s restricted null variance over Wald!:* | Antibiotic Cure Trial (delta_0 = 0.10 Margin, One-Sided alpha = 0.025 -> Z >= 1.96) | Observed Cure Rates | Exact Farrington-Manning Score Z_FM | | --- | --- | --- | | x_T = 176/200 (88.0%) vs x_C = 180/200 (90.0%) | Diff = -2.0% vs -10.0% Margin | Z_FM = +2.3854 >= 1.96 -> Non-Inferiority Demonstrated! | | x_T = 166/200 (83.0%) vs x_C = 180/200 (90.0%) | Diff = -7.0% vs -10.0% Margin | Z_FM = +0.8351 < 1.96 -> Fails Non-Inferiority | *Table — Antibiotic Cure Trial Benchmark (delta_0 = 0.10 Margin, One-Sided alpha = 0.025 -> Z >= 1.96):* | Antibiotic Cure Trial (delta_0 = 0.10 Margin, One-Sided alpha = 0.025 -> Z >= 1.96) | Restricted Null MLEs (p_T,tilde, p_C,tilde) | Exact Farrington-Manning Score Z_FM | | --- | --- | --- | | x_T = 176/200 (88.0%) vs x_C = 180/200 (90.0%) | (0.8258, 0.9258) | Z_FM = +2.4544 >= 1.96 -> Non-Inferiority Demonstrated! | | x_T = 166/200 (83.0%) vs x_C = 180/200 (90.0%) | (0.8104, 0.9104) | Z_FM = +0.8748 < 1.96 -> Fails Non-Inferiority | - **Formula (Exact Farrington-Manning (1990) Non-Inferiority Score Z_FM Statistic)**: `=IF(OR(B3 <= 0, B5 <= 0, B2 < 0, B2 > B3, B4 < 0, B4 > B5, B6 <= 0, B6 >= 1), "Invalid Non-Inferiority Trial Inputs", ROUND(((B2 / B3) - (B4 / B5) + B6) / SQRT(D6 * (1 - D6) / B3 + (D6 + B6) * (1 - D6 - B6) / B5), 4))` - **Formula (Regulatory One-Sided alpha = 0.025 Non-Inferiority Conclusion (Z_FM >= 1.96))**: `=IF(OR(B3 <= 0, B5 <= 0, B2 < 0, B2 > B3, B4 < 0, B4 > B5, B6 <= 0, B6 >= 1), "Invalid Non-Inferiority Trial Inputs", IF(((B2 / B3) - (B4 / B5) + B6) / SQRT(D6 * (1 - D6) / B3 + (D6 + B6) * (1 - D6 - B6) / B5) >= 1.95996, "Non-Inferiority Demonstrated (One-Sided p < 0.025)", "Non-Inferiority Not Established"))` ### Faustmann Forest Rotation & Land Expectation Formula - **URL**: https://sheets.arte-soft.com/en/learn/faustmann-optimal-forest-rotation-land-expectation-value-formula/ - **Summary**: Calculate Martin Faustmann’s (1849) infinite-rotation Land Expectation Value LEV = (p*V(T) - C*EXP(r*T))/(EXP(r*T) - 1) and contrast optimal Faustmann, single-cycle Wicksell, and biological MAI ages! *Table — Why Paul Samuelson showed nearly every non-Faustmann forestry rule gets optimal harvest age wrong!:* | Rotation Age T & Volume V(T) | Biological MAI & Single-Cycle PV | Faustmann Infinite-Cycle LEV (r = 5%) | | --- | --- | --- | | T = 20 yr (V = 300) | MAI = 15.00 \| PV_1 = 120.73 | LEV = 190.99 | | T = 30 yr (V = 800) | MAI = 26.67 \| PV_1 = 257.01 | LEV = 330.83 (Faustmann Optimum!) | | T = 40 yr (V = 1,350) | MAI = 33.75 \| PV_1 = 265.41 (1-Cycle Peak) | LEV = 306.95 | | T = 50 yr (V = 1,750) | MAI = 35.00 (MAI Peak) \| PV_1 = 187.30 | LEV = 204.05 | - **Formula (Row-Level Faustmann Land Expectation Value (LEV) Formula)**: `=IF(OR($H$2 <= 0, $H$3 < 0, $H$4 <= 0, A2 <= 0), "Invalid Stand Input", ROUND(($H$2 * B2 - $H$3 * EXP($H$4 * A2)) / (EXP($H$4 * A2) - 1), 2))` - **Formula (Optimal Faustmann Rotation Age Lookup Formula)**: `=IF($H$4 <= 0, "Invalid Stand Input", INDEX(A2:A5, MATCH(MAX(E2:E5), E2:E5, 0)))` ### Feldt W Statistic and Confidence Bounds for Cronbach’s Alpha - **URL**: https://sheets.arte-soft.com/en/learn/feldt-exact-f-confidence-interval-and-hypothesis-test-for-cronbachs-alpha/ - **Summary**: Test observed Cronbach’s alpha against a minimum reliability benchmark using Feldt’s exact variance-ratio W = (1 - alpha_0) / (1 - alpha_hat) and Bonett’s log-complement 95% confidence interval. *Table — Never accept a point-estimate Cronbach’s alpha without checking its lower bound:* | Reliability Audit Metric | Formula Expression | Sample Output | | --- | --- | --- | | Feldt Variance Ratio W | (1 - alpha_0) / (1 - alpha_hat) | 1.8750 (df1 = 50, df2 = 400) | | Log-Complement SE (Bonett) | SQRT(2 * k / ((k - 1) * (N - 2))) | 0.2143 (Exact 3 / 14) | | 95% Lower Confidence Bound | 1 - (1 - alpha_hat) * EXP(1.959964 * SE_ln - LN(N/(N-1))) | 0.7613 (> 0.70 benchmark) | | 95% Upper Confidence Bound | 1 - (1 - alpha_hat) * EXP(-1.959964 * SE_ln - LN(N/(N-1))) | 0.8969 | - **Formula (Feldt Benchmark Test Ratio W Formula)**: `=IF(OR(B2 >= 1, B3 >= 1, B4 <= 2, B5 < 2), "Invalid Scale Input", ROUND((1 - B3) / (1 - B2), 4))` - **Formula (95% Lower Confidence Bound Formula & Sample-Size Check)**: `=LET(a_hat, B2, n_sub, B4, k_itm, B5, IF(OR(a_hat >= 1, n_sub <= 2, k_itm < 2), "Invalid Scale Input", LET(se_ln, SQRT((2 * k_itm) / ((k_itm - 1) * (n_sub - 2))), b_adj, LN(n_sub / (n_sub - 1)), ROUND(1 - (1 - a_hat) * EXP(1.959964 * se_ln - b_adj), 4))))` ### Fellenius Ordinary Method of Slices (Swedish Circle) Slope Stability Factor of Safety - **URL**: https://sheets.arte-soft.com/en/learn/fellenius-ordinary-method-of-slices-slope-stability-factor-of-safety/ - **Summary**: Calculate the non-iterative circular-slip Slope Stability Factor of Safety FS = SUM(c'*l_i + MAX(0, W_i*cos(alpha_i) - u_i*l_i)*tan(phi')) / SUM(W_i*sin(alpha_i)) using Wolmar Fellenius’s (1927/1936) Ordinary Method of Slices. *Table — Why Fellenius’s non-iterative Swedish Circle formula is the closed-form benchmark (and seed!) for every slope-stability solver!:* | Fellenius Factor of Safety FS | Geotechnical Slope Stability Tier | Engineering Action | | --- | --- | --- | | FS < 1.00 | Active Limit-Equilibrium Failure | Immediate toe buttress, horizontal drains, or regrading | | 1.00 <= FS < 1.50 | Marginal Static Stability (< 1.50 USACE/Eurocode Target) | Verify with Bishop/Spencer & lower phreatic pore pressure u_i | | FS >= 1.50 | Adequate Long-Term Static Stability | Passes static slope factor of safety benchmark | - **Formula (Fellenius Ordinary Method of Slices Factor of Safety FS Across 3 Slip Slices)**: `=IF(OR(G2 < 0, G3 < 0, G3 >= 50, SUM(E2:E4) <= 0), "Invalid Soil Strength or Driving Moment", ROUND((G2 * SUM(C2:C4) + TAN(RADIANS(G3)) * SUM(D2:D4)) / SUM(E2:E4), 3))` - **Formula (Static Slope Stability Design Check (FS >= 1.50 Long-Term Benchmark))**: `=IF(OR(G2 < 0, G3 < 0, G3 >= 50, SUM(E2:E4) <= 0), "Invalid Soil Strength or Driving Moment", IF((G2 * SUM(C2:C4) + TAN(RADIANS(G3)) * SUM(D2:D4)) / SUM(E2:E4) < 1, "Unstable Slope (FS < 1.00 — Failure Risk!)", IF((G2 * SUM(C2:C4) + TAN(RADIANS(G3)) * SUM(D2:D4)) / SUM(E2:E4) < 1.5, "Marginal Static FS (1.00 to < 1.50 — Add Drainage/Berm)", "Adequate Long-Term Static Stability (FS >= 1.50)")))` ### Fencl-Stewart Base Excess Partition Formula: Na-Cl Effect & Hypoalbuminemia Alkalosis - **URL**: https://sheets.arte-soft.com/en/learn/fencl-stewart-sodium-chloride-and-albumin-base-excess-partition/ - **Summary**: Uncover hidden hyperchloremic acidosis masked by hypoalbuminemic alkalosis in ICU patients using Story, Morimatsu & Bellomo’s simplified Fencl-Stewart Base Excess partition: BE_NaCl = Na - Cl - 38 and BE_Alb = 0.25 * (42 - Albumin_gL). *Table — How severe ICU hypoalbuminemia (+5 mEq/L alkalosis) masks saline-induced hyperchloremic acidosis!:* | ICU Electrolyte & Albumin Panel | BE_NaCl = Na - Cl - 38 | BE_Alb = 0.25*(42 - Alb_gL) | Combined Na-Cl + Albumin BE | | --- | --- | --- | --- | | Na=130, Cl=106 mEq/L; Alb=22 g/L | -14.0 mEq/L (Acidifying) | +5.00 mEq/L (Alkalinizing!) | -9.00 mEq/L | | Balanced Crystalloid: Na=140, Cl=102; Alb=42 | 0.0 mEq/L (Neutral) | 0.00 mEq/L (Normal Albumin) | 0.00 mEq/L | | Invalid Electrolyte <= 0 | Error Guard | "Invalid ICU Electrolyte Panel" | Physiological Bounds Check | - **Formula (Fencl-Story Sodium-Chloride Base Excess Effect BE_NaCl = Na - Cl - 38 (mEq/L))**: `=IF(OR(B2 < 100, B2 > 190, B3 < 60, B3 > 160, B4 <= 0, B4 > 65), "Invalid ICU Electrolyte Panel", ROUND(B2 - B3 - 38, 2))` - **Formula (Hypoalbuminemic Weak-Acid Base Excess Effect BE_Alb = 0.25 * (42 - Albumin_gL) & Combined Sum)**: `=IF(OR(B2 < 100, B2 > 190, B3 < 60, B3 > 160, B4 <= 0, B4 > 65), "Invalid ICU Electrolyte Panel", ROUND(0.25 * (42 - B4), 2))` ### Fenske Minimum Distillation Stages (N_min) & Relative Volatility - **URL**: https://sheets.arte-soft.com/en/learn/fenske-minimum-distillation-stages-and-relative-volatility/ - **Summary**: Estimate binary total-reflux minimum equilibrium stages from mole fractions and supplied relative volatility, with input checks and explicit stage-counting assumptions. - **Formula (Compute the minimum without rounding intermediate values)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric fractions and alpha",IF(OR(B3<=0,B2>=1,B21; check component order and model",(LN(B2)-LN(1-B2)+LN(1-B3)-LN(B3))/LN(B4))))` - **Formula (Interpret whole stages and the equipment boundary)**: `=IF(ISNUMBER(E3),ROUNDUP(E3,0),E3)` - **Formula (Reject invalid specifications without diagnosing an azeotrope)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric mole fractions",IF(OR(B3<=0,B2>=1,B2 1, B3 < 0, B3 > 1, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid FeverPAIN Inputs", IF(B2 = 1, 1, 0) + IF(B3 = 1, 1, 0) + IF(B4 <= 3, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 = 1, 1, 0))` - **Formula (NICE NG84 Antimicrobial Stewardship Recommendation)**: `=IF((IF(B2 = 1, 1, 0) + IF(B3 = 1, 1, 0) + IF(B4 <= 3, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 = 1, 1, 0)) >= 4, "FeverPAIN 4-5: High Strep Risk — Consider Immediate or Back-Up Antibiotic", IF((IF(B2 = 1, 1, 0) + IF(B3 = 1, 1, 0) + IF(B4 <= 3, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 = 1, 1, 0)) >= 2, "FeverPAIN 2-3: Moderate — Self-Care or Back-Up Delayed Prescription", "FeverPAIN 0-1: Low Strep Risk — No Antibiotic (Self-Care Only)"))` ### FIB-4 Index & APRI Score for Noninvasive Liver Fibrosis Staging - **URL**: https://sheets.arte-soft.com/en/learn/fib-4-and-apri-noninvasive-liver-fibrosis-scores/ - **Summary**: Calculate the hepatology FIB-4 Index = (Age * AST) / (Platelets * SQRT(ALT)) and AST-to-Platelet Ratio Index APRI = ((AST / AST_ULN) / Platelets) * 100 from routine CBC and liver panel labs. *Table — Screen MASLD/NAFLD and viral hepatitis patients for advanced fibrosis!:* | Clinical Liver Profile (AST ULN = 40 U/L) | Age / AST / ALT / Platelets | FIB-4 Score & Risk Tier | APRI Score | | --- | --- | --- | --- | | Low-Risk Primary Care Screen | 38 yr \| AST 26 \| ALT 36 \| Plt 250 | 0.66 (< 1.30 Low Risk) | 0.26 (< 0.50) | | Indeterminate MASLD Follow-Up | 52 yr \| AST 48 \| ALT 55 \| Plt 190 | 1.77 (1.30 - 2.67 Elastography) | 0.63 | | Advanced Fibrosis / Cirrhosis | 58 yr \| AST 84 \| ALT 64 \| Plt 130 | 4.68 (> 2.67 High Risk F3-F4!) | 1.62 (> 1.50!) | - **Formula (FIB-4 Noninvasive Liver Fibrosis Index Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Lab Input", ROUND((B2 * B3) / (B5 * SQRT(B4)), 2))` - **Formula (AST-to-Platelet Ratio Index APRI = ((AST / AST_ULN) / Platelets) * 100)**: `=IF(OR(B5 <= 0, B6 <= 0), "Invalid Platelets or ULN", ROUND(((B3 / B6) / B5) * 100, 2))` ### Fiber Bragg Grating (FBG) Wavelength, Strain & Temperature Shift Formula - **URL**: https://sheets.arte-soft.com/en/learn/fiber-bragg-grating-fbg-wavelength-strain-and-temperature-sensor/ - **Summary**: Calculate FBG center Bragg reflection wavelength λ_B = 2 * n_eff * Λ and coupled strain-temperature shift Δλ_B = λ_B * ((1 - p_e) * ε + (α_Λ + ξ) * ΔT) for telecom C-band structural health sensors. *Table — How a 535.6 nm UV grating inside glass fiber measures microstrain on bridges and aircraft wings!:* | SMF-28 FBG Load Case (neff=1.447, Λ=535.6 nm, pe=0.22) | Base Bragg Peak λ_B | Wavelength Shift Δλ_B (nm) | Interrogator Sensitivity | | --- | --- | --- | --- | | Unstrained Isothermal Reference (0 με, 0 K) | 1,550.026 nm | 0.0000 nm | 1550 nm C-Band Channel | | Pure Tension (1,000 με, ΔT = 0 K) | 1,550.026 nm | +1.2090 nm | 1.209 pm / με | | Combined Load (1,000 με, ΔT = +25 K) | 1,550.026 nm | +1.5520 nm | +0.3430 nm Thermal Cross-Term | - **Formula (Coupled Thermo-Mechanical Bragg Wavelength Shift Δλ_B (nm))**: `=IF(OR(B2 <= 1, B3 <= 0), "Invalid Grating Geometry", ROUND((2 * B2 * B3) * (((1 - B4) * B5 * 0.000001) + (B6 * B7 * 0.000001)), 4))` - **Formula (Unperturbed Reference Bragg Wavelength λ_B0 = 2 * n_eff * Λ (nm))**: `=IF(OR(B2 <= 1, B3 <= 0), "Invalid Grating Geometry", ROUND(2 * B2 * B3, 3))` ### Fiber-Optic Link Power Budget, Splice Loss & Margin Formula - **URL**: https://sheets.arte-soft.com/en/learn/fiber-optic-link-optical-power-budget-splice-connector-loss-and-system-margin/ - **Summary**: Calculate Total Available Optical Power Budget (dB), Cumulative Span+Splice+Connector Attenuation (dB), Received Optical Power P_rx (dBm), and Unallocated Safety Margin (dB). *Table — Logarithmic dBm transmitter power minus dB passive losses makes long-haul fiber link budgeting pure linear addition!:* | 1550 nm Optical Link KPI (+2 dBm Tx, -28 dBm Rx, 60 km @ 0.22 dB/km) | Formula | Verified Output | | --- | --- | --- | | Total Optical Power Budget (dB) | Tx_Power_dBm - Rx_Sensitivity_dBm | 30.00 dB | | Total Span + Splice + Conn Loss | L*alpha + N_sp*L_sp + N_cn*L_cn | 16.40 dB (24.20 dB @ 1310 nm 0.35) | | Received Optical Power Prx (dBm) | Tx_Power_dBm - Total_Span_Loss_dB | -14.40 dBm (-22.20 @ 1310 nm) | | Net System Safety Margin (dB) | Budget_dB - Span_Loss_dB - Aging_dB | +10.60 dB (+2.80 dB @ 1310 nm!) | - **Formula (ITU-T Single-Mode Optical Link Span Loss & Net Margin Formula)**: `=LET(pt_x, B2, pr_m, B3, ln_k, B4, al_f, B5, ns_p, B6, ls_p, B7, nc_n, B8, lc_n, B9, mg_s, B10, IF(OR(pr_m >= pt_x, ln_k <= 0, al_f <= 0, ns_p < 0, ls_p < 0, nc_n < 0, lc_n < 0, mg_s < 0), "Invalid Optical Link", LET(bg_t, pt_x - pr_m, ls_t, ln_k * al_f + ns_p * ls_p + nc_n * lc_n, ROUND(bg_t - ls_t - mg_s, 2))))` - **Formula (1,310 nm O-Band Higher Rayleigh Scattering Loss Check (Set Attenuation = 0.35 dB/km))**: `=IF(ISTEXT(E5), E5, ROUND(B2 - E3, 2))` ### Fiber-Optic Numerical Aperture (NA), Acceptance Angle & V-Number - **URL**: https://sheets.arte-soft.com/en/learn/fiber-optic-numerical-aperture-acceptance-angle-and-v-number/ - **Summary**: Explore an ideal circular step-index fiber: numerical aperture, a ray-model acceptance half-angle and V-number, using consistent units and an approximate higher-mode cutoff. - **Formula (Numerical aperture in D2)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric refractive indices",IF(OR(B2<=0,B3<=0),"Indices must be positive",IF(B2<=B3,"Requires core index > cladding index",SQRT(B2^2-B3^2))))` - **Formula (Ray-model acceptance half-angle in degrees, D3)**: `=IF(NOT(ISNUMBER(D2)),D2,IF(COUNT(B6)<>1,"Enter numeric external index",IF(B6<=0,"External index must be positive",IF(D2/B6>1,"Ray-angle relation outside selected domain",DEGREES(ASIN(D2/B6))))))` - **Formula (Unrounded V-number in D4)**: `=IF(NOT(ISNUMBER(D2)),D2,IF(COUNT(B4:B5)<>2,"Enter numeric radius and wavelength",IF(MIN(B4:B5)<=0,"Radius and wavelength must be positive",2*PI()*B4*D2/B5)))` - **Formula (Approximate cutoff comparison in D5)**: `=IF(NOT(ISNUMBER(D4)),D4,IF(D4<2.405,"Below approximate higher-mode cutoff","At or above approximate higher-mode cutoff"))` ### Fibonacci sequence in spreadsheets: recursive column and direct Nth term (Binet) - **URL**: https://sheets.arte-soft.com/en/learn/fibonacci-sequence-and-golden-ratio-binet/ - **Summary**: Generate Fibonacci numbers row-by-row (=B2+B3) or jump directly to the Nth Fibonacci number in a single cell using Binet's Golden Ratio formula. *Table — Recursive addition vs closed-form Nth Fibonacci lookup:* | Index n | Fibonacci F(n) | Adjacent Ratio F(n)/F(n-1) | | --- | --- | --- | | 0, 1, 2, 3, 4 | 0, 1, 1, 2, 3 | 3 / 2 = 1.5000 | | 5, 6, 7 | 5, 8, 13 | 13 / 8 = 1.6250 | | 10 | 55 | 55 / 34 = 1.6176 | | 12 | 144 | 144 / 89 = 1.6180 (-> phi) | - **Formula (Closed-form Binet demonstration)**: `=LET(phi, (1 + SQRT(5)) / 2, psi, (1 - SQRT(5)) / 2, ROUND((phi^A2 - psi^A2) / SQRT(5), 0))` - **Formula (Golden ratio rounded to six decimals)**: `=ROUND((1 + SQRT(5)) / 2, 6)` ### Fick Cardiac Output, Stroke Volume & Systemic Vascular Resistance (SVR) formulas - **URL**: https://sheets.arte-soft.com/en/learn/fick-cardiac-output-stroke-volume-and-vascular-resistance/ - **Summary**: Practice a simplified Fick-model calculation, stroke-volume conversion and resistance arithmetic with fictional inputs and explicit units. *Table — Keep a simplified calculation distinct from clinical measurement:* | Hemodynamic Metric | Formula / Inputs | Fictional input panel | Calculated output | | --- | --- | --- | --- | | VO2, Hgb & O2 Saturations | VO2=250, Hgb=14, SaO2=0.98, SvO2=0.73 | CaO2 - CvO2 = 46.9 mL O2 / L | Saturation difference 0.25 | | Fick Cardiac Output (CO) | B2 / (1.34 * B3 * (B4 - B5) * 10) | 250 / 46.9 | 5.33 L/min | | Stroke Volume (HR = 75 bpm) | (CO * 1000) / B8 | 5,330.49 mL / 75 bpm | 71.1 mL/beat | | SVR (MAP = 90, CVP = 10) | 80 * (B6 - B7) / CO | 6,400 / 5.33049 | 1,200.64 dyn*s/cm^5 | - **Formula (Fick Principle Cardiac Output in liters per minute (L/min))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B5>1,B4<=B5),"Invalid inputs",ROUND(B2 / (1.34 * B3 * (B4 - B5) * 10), 2)))` - **Formula (Systemic Vascular Resistance SVR = 80 * (MAP - CVP) / CO in dyn*s/cm^5)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B5>1,B4<=B5,B64,COUNT(B8)<>1),"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B4>1,B5<0,B5>1,B4<=B5,B8<=0),"Invalid inputs",ROUND(((B2 / (1.34 * B3 * (B4 - B5) * 10)) * 1000) / B8, 1)))` ### Fick's First Law Diffusive Flux, Peclet (Pe) & Schmidt (Sc) Numbers - **URL**: https://sheets.arte-soft.com/en/learn/ficks-first-law-diffusive-flux-peclet-and-schmidt-numbers/ - **Summary**: Compute signed one-dimensional diffusive molar flux from a linear concentration gradient, plus mass-transfer Peclet and Schmidt numbers with explicit units and input checks. - **Formula (Signed molar diffusive flux in D2)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric diffusion inputs",IF(OR(B2<=0,B3<0,B4<0,B5<=0),"Require D>0, concentrations>=0 and thickness>0",-B2*(B4-B3)/B5))` - **Formula (Mass Peclet magnitude in D3)**: `=IF(COUNT(B2,B6:B7)<>3,"Enter numeric Peclet inputs",IF(OR(B2<=0,B7<=0),"Require D>0 and length>0",ABS(B6)*B7/B2))` - **Formula (Schmidt number in D4)**: `=IF(COUNT(B2,B8)<>2,"Enter numeric Schmidt inputs",IF(OR(B2<=0,B8<=0),"Require D>0 and viscosity>0",B8/B2))` - **Formula (Reynolds number for the same velocity and length in D5)**: `=IF(COUNT(B6:B8)<>3,"Enter numeric Reynolds inputs",IF(OR(B7<=0,B8<=0),"Require length>0 and viscosity>0",ABS(B6)*B7/B8))` ### FIFO vs. Weighted-Average Cost inventory COGS & Ending Inventory formulas - **URL**: https://sheets.arte-soft.com/en/learn/fifo-vs-weighted-average-inventory-cogs-and-ending-value/ - **Summary**: Allocate units sold across sequential purchase cost layers with MIN/MAX clipping to compute exact FIFO COGS, Ending Inventory, and WAC comparison. *Table — Deplete purchase cost layers top-to-bottom for FIFO without manual edits!:* | Purchase Lot | Qty (B) & Unit Cost (C) | FIFO Units Sold (180 Total) | FIFO COGS vs. Ending Inv | | --- | --- | --- | --- | | Lot 1 (Oldest) | 100 @ $10.00 ($1,000) | 100 sold, 0 left | COGS = $1,000 \| End = $0 | | Lot 2 | 150 @ $12.00 ($1,800) | 80 sold, 70 left | COGS = $960 \| End = $840 | | Lot 3 (Newest) | 50 @ $16.00 ($800) | 0 sold, 50 left | COGS = $0 \| End = $800 | | Totals (FIFO vs. WAC) | 300 units ($3,600) | FIFO COGS = $1,960 (End $1,640) | WAC COGS = $2,160 (End $1,440) | - **Formula (FIFO units depleted from each purchase layer (Row 3 formula))**: `=IF(OR(COUNT(B2:C4)<>6,NOT(ISNUMBER(G2)),MIN(B2:C4)<0,G2<0,SUM(B2:B4)<=0,G2>SUM(B2:B4)),"Invalid inputs",MAX(0, MIN($G$2 - SUM($B$2:B2), B3)))` - **Formula (Weighted-Average Cost (WAC) COGS vs. FIFO COGS & Ending Inventory)**: `=IF(OR(COUNT(B2:C4)<>6,NOT(ISNUMBER(G2)),MIN(B2:C4)<0,G2<0,SUM(B2:B4)<=0,G2>SUM(B2:B4)),"Invalid inputs",ROUND(G2 * (SUMPRODUCT(B2:B4, C2:C4) / SUM(B2:B4)), 2))` ### Filament-Wound Vessel Netting Analysis (54.74°) Formula - **URL**: https://sheets.arte-soft.com/en/learn/filament-wound-composite-pressure-vessel-netting-analysis-54-74-magic-angle/ - **Summary**: Calculate Exact Balanced Netting Winding Angle ATAN(SQRT(2)) = 54.74°, Axial-Governed Dry Fiber Thickness (mm), Hoop-Governed Dry Fiber Thickness (mm), and Total Composite Shell Thickness (mm). *Table — Why every single-angle composite hydrogen tank and rocket motor case winds fibers at 54.74°—TAN²(alpha) = 2 matches 2:1 hoop-to-axial stress!:* | COPV Netting Analysis KPI (R=180 mm, P=70 MPa, alpha=54.74° vs 45°, Vf=0.60) | Formula | Verified Output | | --- | --- | --- | | Balanced Netting Angle (deg) | ATAN(SQRT(2)) * (180 / PI()) | 54.74° (universal 2:1 biaxial optimum) | | Axial Dry-Fiber Thickness (mm) | (0.5 * P * R) / (sigma_f * (COS(alpha)^2)) | 7.88 mm (5.25 mm @ 45° over-axial) | | Hoop Dry-Fiber Thickness (mm) | (P * R) / (sigma_f * (SIN(alpha)^2)) | 7.87 mm (10.50 mm @ 45° hoop deficit!) | | Governing Composite Wall (mm) | MAX(tf_Axial, tf_Hoop) / Fiber_Vol_Vf | 13.13 mm (17.50 mm = +33% heavier @ 45°!) | - **Formula (Netting Analysis Axial vs Hoop Fiber Equilibrium & Composite Shell Thickness Formula)**: `=LET(rd_m, B2, pr_m, B3, an_r, B4 * (PI() / 180), sf_m, B5, vf_r, B6, ta_f, (0.5 * pr_m * rd_m) / (sf_m * (COS(an_r) ^ 2)), th_f, (pr_m * rd_m) / (sf_m * (SIN(an_r) ^ 2)), IF(OR(rd_m <= 10, pr_m <= 0, B4 < 15, B4 > 80, sf_m <= 100, vf_r < 0.35, vf_r > 0.75), "Invalid COPV Input", ROUND(MAX(ta_f, th_f) / vf_r, 2)))` - **Formula (Naive 45.0° Winding-Angle 33% Weight Penalty Check (Set Winding Angle B4 = 45.0°))**: `=IF(ISTEXT(E5), E5, ROUND((B3 * B2) / (B5 * (SIN(B4 * (PI() / 180)) ^ 2)), 2))` ### Fillet Weld Effective Throat & AISC/AWS LRFD Strength Formula - **URL**: https://sheets.arte-soft.com/en/learn/fillet-weld-effective-throat-eccentric-in-plane-shear-and-aws-d1-1-strength-formula/ - **Summary**: Calculate 45° Fillet Effective Throat t_e = w / SQRT(2) (mm), Total Effective Weld Shear Area A_w (mm²), Design Strength per Millimeter (kN/mm), and Total Connection LRFD Capacity phi*R_n (kN). *Table — Fillet welds fail in shear across the 45° throat w / SQRT(2)—NOT across the full leg size w!:* | AISC/AWS Fillet Weld KPI (w = 8 mm, 2 x 150 mm Lines, FEXX = 480 MPa) | Formula | Verified Output | | --- | --- | --- | | Effective Throat Thickness te (mm) | Fillet_Leg_w_mm / SQRT(2) | 5.66 mm (7.07 mm @ w = 10 mm) | | Total Effective Throat Area (mm²) | (w / SQRT(2)) * Length_mm * N_Welds | 1,697.06 mm² (2,121.32 @ w = 10 mm) | | Design Strength per mm (kN/mm) | (0.75 * 0.60 * FEXX * (w/SQRT(2)))/1000 | 1.222 kN/mm (1.527 @ w = 10 mm) | | Total LRFD Weld Capacity (kN) | (0.75 * 0.60 * FEXX * Aw_mm2) / 1000 | 366.56 kN (458.21 kN @ w = 10 mm) | - **Formula (AISC 360 / AWS D1.1 LRFD Fillet Weld Shear Strength Formula)**: `=LET(lg_w, B2, ln_m, B3, nw_l, B4, fx_m, B5, IF(OR(lg_w < 3, ln_m < 4 * lg_w, nw_l < 1, INT(nw_l) <> nw_l, fx_m < 410, fx_m > 830), "Invalid Fillet Weld Input", LET(te_m, lg_w / SQRT(2), aw_t, te_m * ln_m * nw_l, ROUND((0.75 * 0.6 * fx_m * aw_t) / 1000, 2))))` - **Formula (10 mm Multi-Pass Fillet Upgrade & 4*w Minimum Length Guard Check (Set w = 10 mm))**: `=IF(ISTEXT(E5), E5, ROUND((0.75 * 0.6 * B5 * (B2 / SQRT(2))) / 1000, 3))` ### Film-Slate Recoupment Waterfall & Backend Profit Formula - **URL**: https://sheets.arte-soft.com/en/learn/film-slate-recoupment-waterfall-corridor-fee-and-backend-profit-formula/ - **Summary**: Calculate Independent Film & Content-Slate Off-the-Top Distribution Fee, Post-P&A Recoupment Cash Available for Production Financing, Net Backend Profit Pool, and Equity Financier Total Cash Multiple. *Table — Respect strict priority tiers in film-slate CAMA recoupment waterfalls!:* | CAMA Film Waterfall ($50M Receipts, 20% Dist Fee, $12M P&A, $20M Budget, 50% Backend) | Formula | Verified Output | | --- | --- | --- | | Off-the-Top Distribution Fee ($M) | Gross_Receipts * Dist_Fee_Rate | $10.00M | | Post-P&A Cash Available ($M) | MAX(0, Receipts*(1 - Fee) - PA_Spend) | $28.00M ($12.00M @ $30M Gross) | | Net Backend Profit Pool ($M) | MAX(0, Post_PA_Cash - Prod_Budget) | $8.00M ($0.00M @ $30M Gross) | | Financier Cash Multiple (x) | (MIN(Post_PA, Budget) + Backend*Share)/Budget | 1.2000x (0.6000x @ $30M Gross) | - **Formula (CAMA Waterfall Equity Financier Total Cash Multiple Formula)**: `=LET(rc_g, B2, df_r, B3, pa_s, B4, bg_p, B5, bk_s, B6, IF(OR(rc_g < 0, df_r < 0, df_r >= 0.6, pa_s < 0, bg_p <= 0, bk_s < 0, bk_s > 1), "Invalid CAMA Waterfall Input", LET(av_c, MAX(0, rc_g * (1 - df_r) - pa_s), bk_p, MAX(0, av_c - bg_p), eq_r, MIN(av_c, bg_p) + bk_p * bk_s, ROUND(eq_r / bg_p, 4))))` - **Formula (Modest Box-Office Partial-Recoupment Check (Set Gross Receipts = $30.00M))**: `=IF(ISTEXT(E5), E5, ROUND(MAX(0, B2 * (1 - B3) - B4), 2))` ### Filter horizontally to exclude or keep specific columns (FILTER on headers) - **URL**: https://sheets.arte-soft.com/en/learn/filter-and-exclude-columns-from-table/ - **Summary**: Create a derived table that omits columns with specified header names using a horizontal FILTER mask. *Table — Little-known superpower: FILTER works horizontally across columns too!:* | Rep (A) | Region (B) | Salary (C - Excluded!) | Deals (D) | InternalCost (E - Excluded!) | | --- | --- | --- | --- | --- | | Header Mask <> Sensitive | TRUE (1) | FALSE (0) | TRUE (1) | FALSE (0) | | Ana / West / $120k / 8 / $40k | Kept (Col 1–2) | Dropped! | Kept (Becomes Col 3!) | Dropped! | - **Formula (Exclude multiple confidential columns by header name)**: `=FILTER(A1:E3,(A1:E1<>"Salary")*(A1:E1<>"InternalCost"),"No retained columns")` - **Formula (Inspect the 3rd retained column after stripping confidential fields)**: `=INDEX(FILTER(A1:E3, (A1:E1 <> "Salary") * (A1:E1 <> "InternalCost")), 2, 3)` ### Filter and Sort Without Errors or Blanks (SORTBY + FILTER + ISNUMBER) - **URL**: https://sheets.arte-soft.com/en/learn/filter-and-sort-clean-records-excluding-blanks-and-errors/ - **Summary**: Build an error-proof leaderboard pipeline that strips blank cells and #DIV/0! formula errors via ISNUMBER(B2) flags before sorting top performers descending with SORTBY + FILTER. *Table — Why wrapping SORT around raw dirty data floats #DIV/0! errors and blanks straight to the top!:* | Raw Leaderboard Row | KPI Score B2:B6 | Clean Flag C = --ISNUMBER(B) | Sorted Clean Leaderboard | | --- | --- | --- | --- | | Ana ($420), Cy ($690), Eva ($510) | Numeric Numbers | 1 (Included) | "Cy, Eva, Ana" (690 -> 510 -> 420) | | Ben ("") — Blank Pending Row | Empty String | 0 (Excluded) | Omitted cleanly | | Dan (=1/0) — Broken Ratio Cell | #DIV/0! Error | 0 (Excluded Safely!) | No error propagation | - **Formula (Error-Safe Descending Leaderboard Names via SORTBY + FILTER)**: `=IF(SUM(C2:C6) = 0, "No Valid Rows", TEXTJOIN(", ", TRUE, SORTBY(FILTER(A2:A6, C2:C6 = 1), FILTER(B2:B6, C2:C6 = 1), -1)))` - **Formula (Count Clean Numeric Records Passing Error & Blank Filter)**: `=SUM(C2:C6)` ### Filter and Sum Records from the Last N Weeks (FILTER & SUMIFS Rolling Window) - **URL**: https://sheets.arte-soft.com/en/learn/filter-and-sum-records-from-last-n-weeks/ - **Summary**: Extract and total transactions falling within a rolling N-week lookback window anchored to a report cutoff date, excluding future-dated entries beyond the cutoff. *Table — Bound both ends of a rolling N-week window [AsOf - 7*N + 1, AsOf]:* | Order Date | Order ID | Revenue | In Last 2 Weeks (2026-05-08..2026-05-21)? | | --- | --- | --- | --- | | 2026-05-07 | ORD-401 | $1,200 | No (15 days ago — 1 day before window) | | 2026-05-08 | ORD-402 | $850 | Yes (Exact start of 14-day window) | | 2026-05-15 | ORD-403 | $1,450 | Yes (Inside window) | | 2026-05-21 | ORD-404 | $600 | Yes (Anchor cutoff date) | | 2026-05-25 | ORD-405 | $990 | No (Future post-cutoff entry) | - **Formula (Dynamic FILTER for the Last N Weeks)**: `=TEXTJOIN(", ", TRUE, FILTER(B2:B6, (A2:A6 >= E2 - 7 * F2 + 1) * (A2:A6 <= E2), "No Orders in Window"))` - **Formula (Rolling N-Week Revenue Total (SUMIFS))**: `=SUMIFS(C2:C6, A2:A6, ">=" & (E2 - 7 * F2 + 1), A2:A6, "<=" & E2)` ### Include and exclude text substrings with SEARCH - **URL**: https://sheets.arte-soft.com/en/learn/filter-contains-keywords-with-exclusions-boolean/ - **Summary**: Flag and filter transactions that match target keywords ("Cloud" OR "SaaS") while disqualifying rows containing exclusion terms ("Refund" OR "Test"). *Table — Combine OR-inclusion with AND-NOT exclusion for clean GL & CRM rules:* | GL Description (A) | Include ("Cloud"\|"SaaS") | No Exclude ("Refund"\|"Test") | Final Match (C) | | --- | --- | --- | --- | | "Cloud Pro Annual Seat" | TRUE (1) | TRUE (1) | 1 (Matched!) | | "Cloud Pro Refund Credit" | TRUE (1) | FALSE (0 - Refund!) | 0 (Excluded!) | | "SaaS Enterprise Renewal" | TRUE (1) | TRUE (1) | 1 (Matched!) | | "SaaS Sandbox Test Order" | TRUE (1) | FALSE (0 - Test!) | 0 (Excluded!) | | "On-Site Hardware Rack" | FALSE (0) | TRUE (1) | 0 (No target word) | - **Formula (Row-level Include-without-Exclusion flag and filtered revenue total)**: `=SUMIFS(B2:B6, C2:C6, 1)` - **Formula (Join matching descriptions into one text result)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A6, C2:C6 = 1, "None"))` ### Filter every Nth row: extract periodic intervals and audit samples - **URL**: https://sheets.arte-soft.com/en/learn/filter-every-nth-row-systematic-sampling/ - **Summary**: Extract every 2nd, 3rd, or Nth row from a production log into a live summary list using a relative row-index MOD flag and FILTER. *Table — Anchor relative row index to 1..N before applying MOD:* | BatchID (A) | RelRow | MOD(RelRow, 3)=0 (B) | Sampled When N = 3 | | --- | --- | --- | --- | | LOT-101 | 1 | FALSE | — | | LOT-102 | 2 | FALSE | — | | LOT-103 | 3 | TRUE | Sample #1 | | LOT-104 | 4 | FALSE | — | | LOT-105 | 5 | FALSE | — | | LOT-106 | 6 | TRUE | Sample #2 | - **Formula (Dynamic Nth-row extraction formula)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A7, B2:B7, "None"))` - **Formula (Row-level periodic sampling flag)**: `=MOD(ROW(A4) - ROW($A$2) + 1, $D$2) = 0` ### Filter horizontal columns & sort left-to-right by row with FILTER and SORT - **URL**: https://sheets.arte-soft.com/en/learn/filter-horizontal-columns-and-sort-by-metric-row/ - **Summary**: Filter a wide month-across-columns KPI table where revenue meets a threshold and sort matching columns highest-to-lowest using SORT(..., 2, -1, TRUE). *Table — Filter and rank horizontal financial model columns without transposing twice!:* | Row | Jan (B) | Feb (C) | Mar (D) | Apr (E) | | --- | --- | --- | --- | --- | | Month Header (Row 1) | Jan | Feb | Mar | Apr | | Revenue $k (Row 2) | 120 | 85 (< 100 dropped!) | 190 | 140 | | Filtered & Sorted (>=100) | 1st: Mar (190) | 2nd: Apr (140) | 3rd: Jan (120) | Sum = 450 | - **Formula (Rank qualifying horizontal month headers high-to-low)**: `=IF(OR(COUNT(B2:E2)<>4,COUNT(B4)<>1),"Invalid inputs",IFERROR(TEXTJOIN(" > ", TRUE, CHOOSEROWS(SORT(FILTER(B1:E2, B2:E2 >= B4), 2, -1, TRUE), 1)),"None"))` - **Formula (Return #1 horizontal column header or sum qualifying columns)**: `=IF(OR(COUNT(B2:E2)<>4,COUNT(B4)<>1),"Invalid inputs",IFERROR(INDEX(SORT(FILTER(B1:E2, B2:E2 >= B4), 2, -1, TRUE), 1, 1), "None"))` ### FILTER function: extract rows matching multiple conditions - **URL**: https://sheets.arte-soft.com/en/learn/filter-rows-matching-criteria/ - **Summary**: Return every matching item dynamically instead of stopping at the first lookup match. Combine conditions with boolean multiplication and provide an if_empty message when zero rows qualify. *Table — Extract dispatch-ready parts without hiding source rows:* | Part (A) | Status (B) | Qty on hand (C) | | --- | --- | --- | | Brake pad | Ready | 18 | | Chain link | Hold | 25 | | Spoke kit | Ready | 6 | | Tire tube | Ready | 14 | | Cable housing | Hold | 9 | - **Formula (Multiply boolean tests for AND criteria)**: `=FILTER(A2:A6,(B2:B6=E2)*(C2:C6>=F2),"No matching parts")` - **Formula (Summarize or inspect spilled results in a single cell)**: `=TEXTJOIN(", ",TRUE,FILTER(A2:A6,(B2:B6=E2)*(C2:C6>=F2),"No matching parts"))` ### Filter Data Between Two Dates (Inclusive Boolean Multiplication & Fallback) - **URL**: https://sheets.arte-soft.com/en/learn/filter-records-between-two-dates-inclusive-and-count-guard/ - **Summary**: Extract rows whose date serials fall inclusively between Start_Date and End_Date using FILTER boolean multiplication (Date >= Start) * (Date <= End) with swap-safe MIN/MAX bounds. *Table — Why FILTER requires boolean multiplication * instead of AND(...) across date columns:* | Window Requirement | FILTER Include Expression | Boundary Behavior | | --- | --- | --- | | Inclusive [Start, End] | (B2:B6 >= E2) * (B2:B6 <= E3) | Includes Start and End dates | | Strictly Exclusive (Start, End) | (B2:B6 > E2) * (B2:B6 < E3) | Excludes boundary dates | | Timestamp-Safe End Day | (INT(B2:B6) >= E2) * (INT(B2:B6) <= E3) | Captures 14:30 timestamps on End_Date | - **Formula (Swap-Safe Inclusive Date-Window FILTER Formula)**: `=LET(lo_dt, MIN(E2, E3), hi_dt, MAX(E2, E3), FILTER(A2:A6, (B2:B6 >= lo_dt) * (B2:B6 <= hi_dt), "NO_ROWS"))` - **Formula (Companion Window Count & Revenue Tie-Out)**: `=SUMIFS(C2:C6, B2:B6, ">=" & MIN(E2, E3), B2:B6, "<=" & MAX(E2, E3))` ### Filter & Flag Rows Containing Any Keyword from a Watchlist (SEARCH + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/filter-rows-containing-any-keyword-from-watchlist-search/ - **Summary**: Screen support tickets or bank-memo descriptions against multiple case-insensitive watchlist substrings using OR(ISNUMBER(SEARCH(...))) and FILTER. *Table — Case-insensitive multi-keyword screening when exact equality misses embedded substrings!:* | Support Ticket Description (Watchlist: "chargeback", "fraud", "outage") | Row Hit Flag C2:C6 | Extracted Ticket IDs | | --- | --- | --- | | TKT-101 "Card Chargeback Claim" & TKT-104 "Checkout Outage" | 1 (Case-Insensitive Match) | "TKT-101, TKT-104" | | TKT-102 "Password Reset", TKT-103 "Invoice PDF", TKT-105 "Seat Upgrade" | 0 (Routine Tickets) | Excluded from escalation queue | | Watchlist Changed to Non-Matching Terms | All 0 | "No Watchlist Hits" | - **Formula (Extract All Ticket IDs Matching Any Watchlist Substring (TEXTJOIN + FILTER))**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A6, C2:C6 = 1, "No Watchlist Hits"))` - **Formula (Count Total Escalated Rows Matching One or More Watchlist Terms)**: `=SUM(C2:C6)` ### FILTER Rows Matching This OR That Criteria with Boolean Addition (+) - **URL**: https://sheets.arte-soft.com/en/learn/filter-rows-matching-this-or-that-boolean-addition/ - **Summary**: Extract rows matching Condition A OR Condition B inside FILTER using elementwise boolean addition (condA) + (condB) > 0 instead of scalar OR(). *Table — Why OR() fails inside FILTER and why (cond1) + (cond2) > 0 works:* | Incident | Team | Severity | (Team="Security") + (Sev="P1") | Included by FILTER? | | --- | --- | --- | --- | --- | | INC-401 | Security | P2 | 1 + 0 = 1 | Yes (1) | | INC-402 | Billing | P3 | 0 + 0 = 0 | No | | INC-403 | Platform | P1 | 0 + 1 = 1 | Yes (2) | | INC-404 | Security | P1 | 1 + 1 = 2 | Yes (3 — once!) | | INC-405 | Analytics | P2 | 0 + 0 = 0 | No | - **Formula (Comma-Joined Incident IDs Matching Team OR Severity)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A6, (B2:B6 = B8) + (C2:C6 = B9) > 0, "No Matching Incidents"))` - **Formula (Count of Filtered OR-Matched Rows)**: `=SUM(--((B2:B6 = B8) + (C2:C6 = B9) > 0))` ### Select columns with a header-driven horizontal FILTER mask - **URL**: https://sheets.arte-soft.com/en/learn/filter-to-remove-unwanted-columns-by-header-mask/ - **Summary**: Build a smaller output view using literal header comparisons and a horizontal keep mask; source columns remain in the workbook. *Table — Remember: FILTER works HORIZONTALLY across columns—not just vertically across rows!:* | Column Header (Row 1) | Listed in Exclude G2:G3? | Keep Mask (Row 2) | Included in output view? | | --- | --- | --- | --- | | EmpID (Col A) | No | 1 | Kept (Column 1) | | SSN (Col B) | Yes ("SSN") | 0 | Excluded from this view only | | Dept (Col C) | No | 1 | Kept (Column 2) | | Salary (Col D) | Yes ("Salary") | 0 | Excluded from this view only | | Region (Col E) | No | 1 | Kept (Column 3) | - **Formula (Header-driven 1/0 Keep-Mask and horizontal FILTER)**: `=IF(OR(COUNTBLANK(A1:E1)>0,COUNT(A2:E2)<>5,COUNTIF(A2:E2,0)+COUNTIF(A2:E2,1)<>5),"Invalid inputs",IF(SUM(A2:E2)=0,"No columns",TEXTJOIN(" | ",TRUE,FILTER(A1:E1,A2:E2=1))))` - **Formula (Count retained columns after horizontal filtering)**: `=IF(OR(COUNTBLANK(A1:E1)>0,COUNT(A2:E2)<>5,COUNTIF(A2:E2,0)+COUNTIF(A2:E2,1)<>5),"Invalid inputs",SUM(A2:E2))` - **Formula (Return the selected data columns)**: `=FILTER(A3:E4,(A2:E2=1)/IF(OR(COUNTBLANK(A1:E1)>0,COUNT(A2:E2)<>5,COUNTIF(A2:E2,0)+COUNTIF(A2:E2,1)<>5),0,1),"No columns")` ### Filter Top N Records with Category Criteria (LARGE + FILTER vs TAKE + SORT) - **URL**: https://sheets.arte-soft.com/en/learn/filter-top-n-records-with-category-criteria-large/ - **Summary**: Extract the Nth threshold, Top-N subtotal, and ranked leaderboard within a specific department or region using LARGE(FILTER(...), N) and TAKE(SORT(FILTER(...))). *Table — Tie-inclusive cutoff (LARGE) vs exact N-row slice (TAKE + SORT):* | Pattern | Formula Core | Tie & Short-List Behavior | | --- | --- | --- | | Nth Cutoff Value | LARGE(FILTER(ARR, Seg=target), k) | Exact k-th largest value in category | | Exact Top-N Leaderboard | TAKE(SORT(FILTER(Tbl, Seg=target), col, -1), N) | Always <= N rows, sorted high-to-low | | Top-N Category Sum | SUM(TAKE(SORT(FILTER(ARR, Seg=target), 1, -1), N)) | Sums strictly the top N deals in category | - **Formula (Category-Filtered Top-N Threshold & Sum Formula)**: `=LET(sub_arr, FILTER(C2:C8, B2:B8 = E2), SUM(TAKE(SORT(sub_arr, 1, -1), F2)))` ### Filter and count values within or out of tolerance (Target ± Spec Band) - **URL**: https://sheets.arte-soft.com/en/learn/filter-values-within-and-out-of-tolerance/ - **Summary**: Extract passing parts inside [Target - Tol, Target + Tol] and count out-of-spec defects across manufacturing or audit logs. *Table — Spec-limit interval math for quality control and cash-reconciliation tolerances:* | Batch ID (A) | Measured mm (B) | Spec Band [49.85, 50.15] | QC Disposition | | --- | --- | --- | --- | | LOT-01 | 50.08 mm | Inside ±0.15 mm | PASS (In-Spec) | | LOT-02 | 49.85 mm | Exact Lower Spec Limit | PASS (Boundary inclusive) | | LOT-03 | 50.22 mm | +0.22 mm (> +0.15) | REJECT (Over Upper Spec) | | LOT-04 | 49.79 mm | -0.21 mm (< -0.15) | REJECT (Under Lower Spec) | | LOT-05 | 49.96 mm | Inside ±0.15 mm | PASS (In-Spec) | - **Formula (Count readings within the inclusive tolerance)**: `=IF(OR(NOT(ISNUMBER(E2)),NOT(ISNUMBER(F2)),F2<0,COUNT(B2:B6)<>5),"Check inputs",SUMPRODUCT((B2:B6>=E2-F2)*(B2:B6<=E2+F2)))` - **Formula (Count out-of-tolerance defects (strictly below LSL or strictly above USL))**: `=IF(OR(NOT(ISNUMBER(E2)),NOT(ISNUMBER(F2)),F2<0,COUNT(B2:B6)<>5),"Check inputs",SUMPRODUCT((B2:B6 < E2 - F2) + (B2:B6 > E2 + F2)))` - **Formula (List matching batch IDs)**: `=IF(OR(NOT(ISNUMBER(E2)),NOT(ISNUMBER(F2)),F2<0,COUNT(B2:B6)<>5),"Check inputs",TEXTJOIN(", ",TRUE,FILTER(A2:A6,(B2:B6>=E2-F2)*(B2:B6<=E2+F2),"No in-band readings")))` ### FILTER with optional criteria: treat blank filter inputs as "Match All" - **URL**: https://sheets.arte-soft.com/en/learn/filter-with-optional-blank-search-criteria/ - **Summary**: Build interactive multi-dropdown FILTER dashboards where clearing any search box includes all rows instead of returning zero matches. *Table — Why plain (Region = E2) breaks as soon as a user clears E2:* | Region Box (E2) | Status Box (F2) | Rows Returned | | --- | --- | --- | | "North" | "Open" | Only North + Open rows (1 row) | | (blank) | "Open" | All Open rows across every region (2 rows) | | (blank) | (blank) | Entire unfiltered table (4 rows) | - **Formula (Multi-field optional-criteria FILTER formula)**: `=FILTER(A2:C5, (((E2="") + (A2:A5=E2)) > 0) * (((F2="") + (B2:B5=F2)) > 0), "None")` - **Formula (List matching region names)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A5, (((E2="") + (A2:A5=E2)) > 0) * (((F2="") + (B2:B5=F2)) > 0), "None"))` - **Formula (Additional worked calculation)**: `=SUM(FILTER(C2:C5, (((E2="") + (A2:A5=E2)) > 0) * (((F2="") + (B2:B5=F2)) > 0), 0))` ### Find and Replace Multiple Values in One Formula (Readable LET + SUBSTITUTE Pipeline) - **URL**: https://sheets.arte-soft.com/en/learn/find-and-replace-multiple-values-lookup-pipeline/ - **Summary**: Standardize multiple street, unit, or product abbreviations in a single formula without unreadable nested SUBSTITUTE pyramids by naming each replacement step inside LET. *Table — Replacing unreadable nested SUBSTITUTE pyramids with sequential LET steps:* | Rule Step | Find Token | Replace Token | Why Order Matters | | --- | --- | --- | --- | | step_1 | "St." | "Street" | Replaces dotted abbreviation cleanly | | step_2 | "Ave." | "Avenue" | Expands avenue designator | | step_3 | "Ste." | "Suite" | Standardizes unit identifier | | step_4 | " " -> TRIM | Single spaces | Cleans double spaces left by blank removals | - **Formula (Table-Driven Multi-Replace LET Formula)**: `=LET(step_1, SUBSTITUTE(A2, $D$2, IF(ISBLANK($E$2), "", $E$2)), step_2, SUBSTITUTE(step_1, $D$3, IF(ISBLANK($E$3), "", $E$3)), step_3, SUBSTITUTE(step_2, $D$4, IF(ISBLANK($E$4), "", $E$4)), step_4, SUBSTITUTE(step_3, $D$5, IF(ISBLANK($E$5), "", $E$5)), TRIM(step_4))` ### Find the closest match to a target number (unsorted lookup) - **URL**: https://sheets.arte-soft.com/en/learn/find-closest-number-match-abs-min/ - **Summary**: Locate the nearest standard gauge, size, or setpoint—whether above or below your target—using squared differences inside MIN and XLOOKUP. *Table — Why approximate XLOOKUP/VLOOKUP is NOT a closest-value match:* | SizeMM (A) | PartCode (B) | Target = 21 | Squared Diff (A - 21)^2 | | --- | --- | --- | --- | | 12 | P-12 | diff -9 | 81 | | 19 | P-19 | diff -2 (closest) | 4 | | 25 | P-25 | diff +4 | 16 | | 32 | P-32 | diff +11 | 121 | - **Formula (Closest part code and distance formulas)**: `=LET(d, (A2:A5 - C2)^2, XLOOKUP(MIN(d), d, B2:B5))` - **Formula (Exact absolute deviation to closest match)**: `=SQRT(MIN((A2:A5 - C2)^2))` ### Find Common Duplicate Values Appearing in Both Columns (CRM vs ERP Audit) - **URL**: https://sheets.arte-soft.com/en/learn/find-common-duplicate-values-between-two-columns/ - **Summary**: Reconcile two invoice or SKU columns to flag records present in both lists versus missing from the second list using COUNTIF and dynamic FILTER. *Table — Cross-check two system exports without sorting or manual VLOOKUP #N/A cleanup:* | CRM Order ID (Col A) | ERP Invoice ID (Col B) | COUNTIF($B$2:$B$5, A_i) | Reconciliation Status | | --- | --- | --- | --- | | INV-8801 | INV-8803 | 1 | Matched in Both | | INV-8802 | INV-8801 | 0 | CRM Only (Unbilled) | | INV-8803 | INV-8809 | 1 | Matched in Both | | INV-8804 | INV-8805 | 0 | CRM Only (Unbilled) | | INV-8805 | — | 1 | Matched in Both | - **Formula (Extracted List of IDs Present in Both Columns)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A6, (A2:A6 = B2) + (A2:A6 = B3) + (A2:A6 = B4) + (A2:A6 = B5) > 0, "No Shared IDs"))` - **Formula (Row-Level Reconciliation Flag (Row A3))**: `=IF(ISBLANK(A3), "", IF(COUNTIF($B$2:$B$5, A3) > 0, "Matched in Both", "CRM Only"))` ### Find the First Non-Blank Value and Row Number in a Column (XLOOKUP + XMATCH) - **URL**: https://sheets.arte-soft.com/en/learn/find-first-non-blank-cell-value-and-row-in-column/ - **Summary**: Locate the earliest populated entry, its relative position, its worksheet row number, and the last non-blank entry in sparse columns—including legitimate 0 values. *Table — Why ISBLANK(B2:B8) beats > 0 and <> "" tests when legitimate 0s exist:* | Target Lookup | Formula Pattern | All-Blank Fallback | | --- | --- | --- | | First non-blank value | XLOOKUP(FALSE, ISBLANK(B2:B8), B2:B8, "ALL_BLANK") | "ALL_BLANK" | | Last non-blank value | XLOOKUP(FALSE, ISBLANK(B2:B8), B2:B8, "ALL_BLANK", 0, -1) | "ALL_BLANK" | | First populated sheet row | IFERROR(ROW(B2) + XMATCH(FALSE, ISBLANK(B2:B8)) - 1, 0) | 0 | - **Formula (First & Last Non-Blank Value and Row Formula)**: `=XLOOKUP(FALSE, ISBLANK(B2:B8), B2:B8, "ALL_BLANK")` ### Find the longest or shortest text string in a column (LEN + XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/find-longest-or-shortest-text-string-in-range/ - **Summary**: Audit maximum character width before database imports and retrieve the exact longest or shortest string overall or by category. *Table — Audit text lengths before import:* | Region (A) | CityName (B) | CharLen = LEN(B) (C) | | --- | --- | --- | | East | NY | 2 (Shortest overall) | | West | San Francisco | 13 (Longest overall) | | South | Austin | 6 | | East | Philadelphia | 12 (Longest in East) | - **Formula (Retrieve longest string, shortest string, and category max length)**: `=XLOOKUP(MAX(C2:C5), C2:C5, B2:B5)` - **Formula (Max character length within a specific region (MAXIFS))**: `=MAXIFS(C2:C5, A2:A5, "East")` - **Formula (Additional worked calculation)**: `=XLOOKUP(MIN(C2:C5), C2:C5, B2:B5)` ### Find the longest or shortest matching title with FILTER and character lengths - **URL**: https://sheets.arte-soft.com/en/learn/find-longest-string-with-criteria-filter/ - **Summary**: Return the longest or shortest text value within a specific category or department by pairing a LEN helper column with MAXIFS, FILTER, and XMATCH. *Table — Audit longest titles, descriptions, or SKUs inside a specific category!:* | Dept (A) | Document Title (B) | Char Length LEN (C) | Role for E2 = "Legal" | | --- | --- | --- | --- | | Legal | NDA Template | 12 | Shortest Legal title | | Sales | Global Enterprise Master Pricing Schedule | 41 | Ignored (Sales != Legal) | | Legal | Master Services Agreement v4 | 28 | Longest Legal title! | | Legal | DPA Addendum | 12 | Tied shortest | | Sales | Renewal Order Form | 18 | Ignored (Sales != Legal) | - **Formula (Return longest text string matching category E2)**: `=IF(COUNTBLANK(E2)>0,"No Match",IFERROR(LET(titles,FILTER(B2:B6,(A2:A6=E2)*(C2:C6>0)),lengths,FILTER(C2:C6,(A2:A6=E2)*(C2:C6>0)),INDEX(titles,XMATCH(MAX(lengths),lengths,0))),"No Match"))` - **Formula (Return the first shortest nonempty title in the category)**: `=IF(COUNTBLANK(E2)>0,"No Match",IFERROR(LET(titles,FILTER(B2:B6,(A2:A6=E2)*(C2:C6>0)),lengths,FILTER(C2:C6,(A2:A6=E2)*(C2:C6>0)),INDEX(titles,XMATCH(MIN(lengths),lengths,0))),"No Match"))` ### Find missing values between two lists: reconcile invoices with COUNTIF and FILTER - **URL**: https://sheets.arte-soft.com/en/learn/find-missing-values-between-two-lists/ - **Summary**: Flag items in List A that are absent from List B using COUNTIF or XMATCH, and spill an instant exception report with FILTER. *Table — Two-step audit pattern: row status + filtered exception list:* | IssuedInv (A) | AuditStatus (B) | ClearedInv (D) | | --- | --- | --- | | INV-10 | Cleared | INV-10 | | INV-11 | Missing | INV-12 | | INV-12 | Cleared | INV-99 | | INV-13 | Missing | | - **Formula (Spill all missing IDs using FILTER's 3rd argument (if_empty))**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A5, B2:B5="Missing", "All reconciled"))` - **Formula (Count unmatched items)**: `=COUNTIF(B2:B5, "Missing")` ### Find nearest value & closest location with ABS, MIN, and XMATCH - **URL**: https://sheets.arte-soft.com/en/learn/find-nearest-value-and-location-xmatch-abs/ - **Summary**: Locate the closest warehouse milepost, resistor value, or price point above OR below a target—unlike approximate VLOOKUP which only steps one way—using ABS distance. *Table — Find the smallest absolute numeric distance:* | Depot (A) | Highway Milepost (B) | ABS Distance from Mile 142 (C) | Outcome | | --- | --- | --- | --- | | North Hub | 95 | \|95 - 142\| = 47 | 47 miles from target | | East Yard | 145 | \|145 - 142\| = 3 | Closest Depot (3 miles away)! | | Central Port | 180 | \|180 - 142\| = 38 | Too far north | | South Gate | 60 | \|60 - 142\| = 82 | Unsorted order works fine | | West Annex | 130 | \|130 - 142\| = 12 | Lower bracket on an ascending sorted list | - **Formula (Return name of nearest location to target E2)**: `=IF(OR(COUNT(B2:B6)<>5,COUNT(E2)<>1),"Invalid inputs",INDEX(A2:A6, XMATCH(MIN(C2:C6), C2:C6, 0)))` - **Formula (Return the nearest numeric value)**: `=IF(OR(COUNT(B2:B6)<>5,COUNT(E2)<>1),"Invalid inputs",INDEX(B2:B6, XMATCH(MIN(C2:C6), C2:C6, 0)))` ### Find the Nth occurrence position of a character (SUBSTITUTE + FIND) - **URL**: https://sheets.arte-soft.com/en/learn/find-nth-occurrence-position-of-character/ - **Summary**: Locate the exact 1-based character index of the 2nd, 3rd, or Nth delimiter ("-", "/", "_") in a string using SUBSTITUTE's instance_num argument. *Table — Why SUBSTITUTE(..., instance_num) unlocks Nth-character positions:* | Code (A) | Delimiter | N (B) | Nth Position | Prefix Before Nth | | --- | --- | --- | --- | --- | | US-WEST-2026-0042 | "-" | 1 | 3 | US | | US-WEST-2026-0042 | "-" | 2 | 8 | US-WEST | | US-WEST-2026-0042 | "-" | 3 | 13 | US-WEST-2026 | | US-WEST-2026-0042 | "-" | 4 | 0 (not found) | — | - **Formula (Nth character position and TEXTBEFORE companion formulas)**: `=IFERROR(FIND(CHAR(1), SUBSTITUTE(A2, "-", CHAR(1), B2)), 0)` - **Formula (Extract text before or after the Nth delimiter directly)**: `=IFERROR(TEXTBEFORE(A2, "-", B2), A2)` ### Find the row and column of a value in a 2D matrix (TOCOL + XMATCH) - **URL**: https://sheets.arte-soft.com/en/learn/find-row-and-column-coordinates-in-2d-grid/ - **Summary**: Locate any unique SKU, employee badge, or peak MAX reading inside an R x C grid and return its Row Header, Column Header, or cell ADDRESS. *Table — Flatten with TOCOL, match 1D position, and decode (rowIndex, colIndex) with QUOTIENT & MOD:* | Shelf \ Bay | Bay-1 (Col 1) | Bay-2 (Col 2) | Bay-3 (Col 3) | | --- | --- | --- | --- | | Shelf-A (Row 1) | SKU-10 (pos 1) | SKU-22 (pos 2) | SKU-35 (pos 3) | | Shelf-B (Row 2) | SKU-41 (pos 4) | SKU-88 (pos 5!) | SKU-50 (pos 6) | | Shelf-C (Row 3) | SKU-63 (pos 7) | SKU-77 (pos 8) | SKU-99 (pos 9) | - **Formula (2D matrix coordinate-lookup and cell-address formulas)**: `=LET(pos, XMATCH(F2, TOCOL(B2:D4)), w, COLUMNS(B2:D4), rowIndex, QUOTIENT(pos - 1, w) + 1, colIndex, MOD(pos - 1, w) + 1, INDEX(A2:A4, rowIndex) & " / " & INDEX(B1:D1, 1, colIndex))` - **Formula (Return exact worksheet cell address (e.g., "$C$3") of the 2D match)**: `=LET(pos, XMATCH(F2, TOCOL(B2:D4)), w, COLUMNS(B2:D4), rowIndex, QUOTIENT(pos - 1, w) + ROW(B2), colIndex, MOD(pos - 1, w) + COLUMN(B2), ADDRESS(rowIndex, colIndex))` ### FIND vs SEARCH: choose case-sensitive or wildcard text matching - **URL**: https://sheets.arte-soft.com/en/learn/find-vs-search-case-sensitive/ - **Summary**: Both functions return the character position where a substring starts, or #VALUE! when absent—but FIND enforces exact uppercase/lowercase while SEARCH ignores case and interprets * and ? wildcards. *Table — One label containing both lowercase pump and capitalized Pump:* | Text in cell | Formula | Result | | --- | --- | --- | | line pump / Spare Pump (A2) | =FIND("Pump", A2) | 19 | | line pump / Spare Pump (A2) | =SEARCH("Pump", A2) | 6 | | Grade A* hose (A3) | =SEARCH("~*", A3) | 8 | - **Formula (Compare FIND and SEARCH on the same cell)**: `=FIND("Pump",A2)` - **Formula (Watch for wildcards inside SEARCH)**: `=SEARCH("~*",A3)` ### Fine-Gray Competing-Risks Subdistribution Risk-Set Weight Formula - **URL**: https://sheets.arte-soft.com/en/learn/fine-gray-competing-risks-subdistribution-risk-set-weight-formula/ - **Summary**: Compute Fine and Gray’s (1999) time-dependent subdistribution risk-set weights w_i(t) = S_cens(t) / S_cens(T_i) and contrast them against cause-specific Cox censoring. *Table — Why competing-event subjects remain in the Fine-Gray risk set with weight S_cens(t) / S_cens(T_i):* | Subject Status at Evaluation Time t = 12 | Cause-Specific Weight | Fine-Gray Subdistribution Weight | | --- | --- | --- | | Still Event-Free (T_i >= 12, any code) | 1.0000 | 1.0000 | | Competing Event Prior to t (T_i = 6, Type = 2) | 0.0000 (Censored) | S_c(12)/S_c(6) = 0.7500 | | Primary Event Prior to t (T_i = 6, Type = 1) | 0.0000 | 0.0000 | | Admin Censored Prior to t (T_i = 6, Type = 0) | 0.0000 | 0.0000 | - **Formula (Fine-Gray Subdistribution Risk-Set Weight w_FG(t) Formula)**: `=LET(t_ev, B2, sc_t, B3, t_obs, B4, ev_tp, B5, sc_i, B6, IF(OR(t_ev <= 0, t_obs <= 0, sc_t <= 0, sc_t > 1, sc_i <= 0, sc_i > 1, NOT(OR(ev_tp = 0, ev_tp = 1, ev_tp = 2))), "Invalid Competing-Risk Input", IF(t_obs >= t_ev, 1, IF(ev_tp <> 2, 0, IF(sc_t > sc_i, "Invalid Censoring KM (Require Sc(t)<=Sc(Ti))", ROUND(sc_t / sc_i, 4))))))` - **Formula (Cause-Specific Cox Risk-Set Membership Indicator Formula)**: `=IF(OR(B2 <= 0, B4 <= 0), "Invalid Competing-Risk Input", IF(B4 >= B2, 1, 0))` ### Finnström External Physical Maturity Score Formula: Newborn Gestational Age Without Tone Exam - **URL**: https://sheets.arte-soft.com/en/learn/finnstrom-external-physical-maturity-newborn-gestational-age/ - **Summary**: Estimate neonatal gestational age (days and weeks) in sedated, asphyxiated, or ventilated newborns using Orvar Finnström’s (1972/1977) 7-characteristic External Physical Maturity Score (7–28 points) without neuromuscular tone testing. *Table — Why Finnström’s 7 external physical characteristics outperform neuromuscular tone in sick NICU infants!:* | Finnström 7-Item External Score X (Range 7–25) | Estimated Gestational Age (Days / Weeks) | WHO Neonatal Maturity Tier | | --- | --- | --- | | Score X = 9 (Minimal breast/creases/ear recoil) | 215.2 days (30.7 weeks) | Very Preterm (28 to < 32 Weeks) | | Score X = 16 (Intermediate preterm physical signs) | 246.6 days (35.2 weeks) | Moderate-to-Late Preterm (32 to < 37 Weeks) | | Score X = 23 (Full plantar creases, firm ear recoil) | 278.0 days (39.7 weeks) | Term Newborn (>= 37.0 Weeks) | - **Formula (Finnström (1977) Estimated Gestational Age in Weeks = (174.75 + 4.49 * SUM(B2:B8)) / 7)**: `=IF(OR(COUNT(B2:B8) < 7, MIN(B2:B8) < 1, B2 > 4, B3 > 3, B4 > 4, B5 > 3, B6 > 4, B7 > 3, B8 > 4), "Invalid Finnstrom Sign Score", ROUND((174.75 + 4.49 * SUM(B2:B8)) / 7, 2))` - **Formula (WHO Neonatal Preterm vs. Term Maturity Tier Classifier from Finnström Score)**: `=IF(OR(COUNT(B2:B8) < 7, MIN(B2:B8) < 1, B2 > 4, B3 > 3, B4 > 4, B5 > 3, B6 > 4, B7 > 3, B8 > 4), "Invalid Finnstrom Sign Score", IF((174.75 + 4.49 * SUM(B2:B8)) / 7 < 32, "Very Preterm (< 32.0 Weeks)", IF((174.75 + 4.49 * SUM(B2:B8)) / 7 < 37, "Moderate-to-Late Preterm (32.0 to < 37.0 Weeks)", "Term Newborn (>= 37.0 Weeks)")))` ### Recentered Influence Function (RIF) Unconditional Quantile Formula - **URL**: https://sheets.arte-soft.com/en/learn/firpo-fortin-lemieux-recentered-influence-function-rif-quantile/ - **Summary**: Transform outcomes into Firpo-Fortin-Lemieux Recentered Influence Functions RIF(y; q_tau) = q_tau + (tau - I(y <= q_tau)) / f_Y(q_tau) to estimate unconditional quantile treatment effects via OLS. *Table — Why conditional quantile slopes do not equal unconditional distributional policy shifts:* | Observation Regime (q_0.5 = 30, f_Y = 0.04) | RIF Formula Evaluation | RIF Value | | --- | --- | --- | | Below/At Quantile (y_i <= 30) | 30 + (0.50 - 1) / 0.04 | 17.5000 | | Above Quantile (y_i > 30) | 30 + (0.50 - 0) / 0.04 | 42.5000 | | Sample Mean AVERAGE(RIF) | (4 * 17.5 + 4 * 42.5) / 8 | 30.0000 (= q_0.5) | | Unconditional Median Effect SLOPE(RIF, D) | 36.25 - 23.75 = (0.75 - 0.25) / 0.04 | +12.5000 | - **Formula (Row-Level Recentered Influence Function RIF(y_i; q_tau) Formula)**: `=LET(y_val, B2, tau_q, $G$2, f_den, $G$3, q_val, PERCENTILE_INC($B$2:$B$9, tau_q), IF(OR(tau_q <= 0, tau_q >= 1, f_den <= 0), "Invalid RIF Parameter", ROUND(q_val + (tau_q - IF(y_val <= q_val, 1, 0)) / f_den, 4)))` - **Formula (Unconditional Quantile Partial Effect (UQPE) OLS Slope Formula)**: `=IF(OR(G2 <= 0, G2 >= 1, G3 <= 0), "Invalid RIF Parameter", ROUND(SLOPE(D2:D9, C2:C9), 4))` ### Get first and last entry by month and year (FILTER, TAKE, DATE & EOMONTH) - **URL**: https://sheets.arte-soft.com/en/learn/first-and-last-entry-by-month-and-year-filter/ - **Summary**: Return the first and last source-row balances within a selected calendar month, including timestamps on its final day. *Table — Use an inclusive start and exclusive next-month boundary:* | Ledger Date (A) | Cash Balance (B) | In March 2026 Window? | Monthly Boundary Role | | --- | --- | --- | --- | | 2026-02-25 | $950 | No (< Mar 1) | Prior month | | 2026-03-02 | $1,200 | Yes | First entry -> TAKE(..., 1) = 1,200 | | 2026-03-15 | $1,340 | Yes | Mid-month activity | | 2026-03-29 | $1,580 | Yes | Last entry -> TAKE(..., -1) = 1,580 | | 2026-04-03 | $1,610 | No (> Mar 31) | Next month | - **Formula (First recorded balance in the selected month)**: `=IF(OR(COUNT(D2:E2)<>2,COUNT(A2:B6)<>10),"Invalid inputs",IF(OR(D2<>INT(D2),E2<>INT(E2),D2<1901,D2>9998,E2<1,E2>12,MIN(A2:A6)=DATE(9999,1,1)),"Invalid inputs",TAKE(FILTER(B2:B6,(A2:A6>=DATE(D2,E2,1))*(A2:A62,COUNT(A2:B6)<>10),"Invalid inputs",IF(OR(D2<>INT(D2),E2<>INT(E2),D2<1901,D2>9998,E2<1,E2>12,MIN(A2:A6)=DATE(9999,1,1)),"Invalid inputs",TAKE(FILTER(B2:B6,(A2:A6>=DATE(D2,E2,1))*(A2:A6""),"No Text"),1,1)` - **Formula (Last nonempty text entry)**: `=TAKE(FILTER(B2:G2,ISTEXT(B2:G2)*(B2:G2<>""),"No Text"),1,-1)` ### Get First or Last Match Where Cell Contains Text (Wildcard XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/first-and-last-substring-match-in-column-xlookup/ - **Summary**: Retrieve either the earliest or most recent transaction whose description contains a target keyword by pairing XLOOKUP match_mode = 2 (wildcards) with search_mode = 1 or -1. *Table — Combining match_mode = 2 (Wildcard) with search_mode = 1 vs -1:* | Lookup Direction | match_mode (5th arg) | search_mode (6th arg) | Use Case | | --- | --- | --- | --- | | First substring match | 2 (wildcard) | 1 (top-to-bottom) | Initial invoice or onboarding event | | Last substring match | 2 (wildcard) | -1 (bottom-to-top) | Latest payment status or patch version | | Total matching rows | COUNTIF wildcard | "*" & key & "*" | Audit how many events matched | - **Formula (Forward & Reverse Wildcard XLOOKUP Formula)**: `=XLOOKUP("*" & E2 & "*", A2:A7, B2:B7, "NO_MATCH", 2, -1)` ### First-In and Last-Out attendance times from badge logs (MINIFS & MAXIFS) - **URL**: https://sheets.arte-soft.com/en/learn/first-in-last-out-attendance-punches-minifs-maxifs/ - **Summary**: Find the earliest and latest recorded swipes for an employee and date, and calculate their elapsed span. *Table — Summarize multi-swipe badge logs by employee and date:* | Employee (A) | WorkDate (B) | SwipeTime (C) | Role in Summary | | --- | --- | --- | --- | | Ava | 2026-05-04 | 08:30 (0.3542) | First In (MINIFS) | | Ava | 2026-05-04 | 12:15 (0.5104) | Midday swipe (ignored) | | Ben | 2026-05-04 | 07:45 (0.3229) | Different employee | | Ava | 2026-05-04 | 17:15 (0.7188) | Last Out (MAXIFS -> 8.75 hrs) | - **Formula (Total hours between First-In and Last-Out swipes)**: `=ROUND((MAXIFS(C2:C5, A2:A5, "Ava", B2:B5, DATE(2026,5,4)) - MINIFS(C2:C5, A2:A5, "Ava", B2:B5, DATE(2026,5,4))) * 24, 2)` - **Formula (Check missing punches (single swipe = 0 span))**: `=IF(COUNTIFS(A2:A5, "Ben", B2:B5, DATE(2026,5,4)) < 2, "Insufficient swipes", "At least two swipes")` ### Find First Match Between Two Ranges (Priority-Ordered List Intersection) - **URL**: https://sheets.arte-soft.com/en/learn/first-match-between-two-ranges-filter-countif/ - **Summary**: Return the highest-priority item from List A that also appears anywhere in List B using a COUNTIF membership flag with INDEX and FILTER, with a clean fallback when the two lists are disjoint. *Table — Pick the top-ranked candidate, warehouse, or backup vendor available right now!:* | Priority Rank | Preferred Warehouse (Col A) | Available In-Stock List (Col D) | Membership Flag B & Winner | | --- | --- | --- | --- | | Priority #1 | WH-Seattle | WH-Miami | B2 = 0 (Not in stock) | | Priority #2 | WH-Denver | WH-Dallas | B3 = 0 (Not in stock) | | Priority #3 | WH-Dallas | WH-Atlanta | B4 = 1 -> FIRST MATCH WINNER! | | Priority #4 | WH-Atlanta | — | B5 = 1 (Backup match #2) | - **Formula (Return First Overlapping Item in List-A Priority Order)**: `=IF(SUM(B2:B5) = 0, "No Common Match", INDEX(FILTER(A2:A5, B2:B5 > 0), 1))` - **Formula (Count Total Overlapping Items Between Both Ranges)**: `=SUM(B2:B5)` ### Fischer-Tropsch ASF Chain-Growth Alpha & C5+ Selectivity Formula - **URL**: https://sheets.arte-soft.com/en/learn/fischer-tropsch-anderson-schulz-flory-chain-growth-alpha-wax-selectivity/ - **Summary**: Calculate Anderson-Schulz-Flory (ASF) Methane C1 Weight Selectivity (%), Liquid+Wax C5+ Selectivity (%), Heavy Paraffin Wax C21+ Fraction (%), and Daily C5+ Syncrude Tonnage (t/d). *Table — A single chain-growth probability alpha locks methane C1, C5+ liquids, and C21+ hydrocracker wax together!:* | ASF Product Distribution KPI (alpha = 0.90 Cobalt Catalyst, 500 t/d FT) | Formula | Verified Output | | --- | --- | --- | | Unwanted Methane C1 Slip (wt%) | ((1 - alpha)^2) * 100 | 1.00% (4.00% @ alpha = 0.80) | | Total C5+ Liquids & Wax (wt%) | (alpha^4 * (5 - 4 * alpha)) * 100 | 91.85% (73.73% @ alpha = 0.80) | | Heavy Wax C21+ Fraction (wt%) | (alpha^20 * (21 - 20 * alpha)) * 100 | 36.47% (5.76% @ alpha = 0.80) | | Daily C5+ Syncrude Output (t/d) | Total_HC_t_d * (alpha^4 * (5 - 4 * alpha)) | 459.27 t/d (368.64 @ alpha = 0.80) | - **Formula (Closed-Form ASF Cumulative C5+ Selectivity Formula)**: `=LET(al_p, B2, hc_t, B3, IF(OR(al_p <= 0.4, al_p >= 0.98, hc_t <= 0), "Invalid ASF Alpha Input", ROUND(((al_p ^ 4) * (5 - 4 * al_p)) * 100, 2)))` - **Formula (High-Temperature FT Catalyst Overheating Check (Set Alpha = 0.80))**: `=IF(ISTEXT(E3), E3, ROUND(B3 * ((B2 ^ 4) * (5 - 4 * B2)), 2))` ### Fisher Equation formula: Exact Real Interest Rate ((1 + i) / (1 + pi) - 1) - **URL**: https://sheets.arte-soft.com/en/learn/fisher-equation-real-vs-nominal-interest-rate-formula/ - **Summary**: Convert effective nominal and real returns over the same period using an explicit inflation factor, with guards against invalid price-level changes. *Table — Match periods and distinguish a return identity from a forecast:* | Market Scenario | Nominal Rate (B2) | Inflation pi (B3) | Exact Fisher Real vs Naive | | --- | --- | --- | --- | | Illustrative same-period return | 8.00% (0.08) | 5.00% (0.05) | 2.86% exact (vs 3.00% naive) | | Required Nominal for 3% Real | (1 + B4)*(1 + B3) - 1 | Target r=3%, pi=5% | 8.15% nominal (+15 bps cross-term!) | | Emerging Market High CPI | 32.00% (0.32) | 25.00% (0.25) | 5.60% exact (vs 7.00% naive!) | | Zero Inflation (pi = 0%) | 8.00% | 0.00% | 8.00% (Exact = Naive) | - **Formula (Exact Fisher Real Interest Rate = ((1 + Nominal) / (1 + Inflation)) - 1)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2< -1,B3<= -1),"Invalid inputs",ROUND(((1 + B2) / (1 + B3)) - 1, 4)))` - **Formula (Required Nominal Yield for a Target Real Return B4: (1 + r_real)*(1 + pi) - 1)**: `=IF(COUNT(B3:B4)<>2,"Invalid inputs",IF(OR(B4< -1,B3<= -1),"Invalid inputs",ROUND((1 + B4) * (1 + B3) - 1, 4)))` ### Fisher z-Transformation & 95% Confidence Interval for Correlation (r) - **URL**: https://sheets.arte-soft.com/en/learn/fisher-z-transformation-correlation-confidence-interval-formula/ - **Summary**: Stabilize skewed Pearson correlation sampling distributions via Ronald Fisher’s exact logarithmic transform z = 0.5 * LN((1 + r) / (1 - r)) and back-transform 95% confidence bounds r = (EXP(2*z) - 1) / (EXP(2*z) + 1). *Table — Why raw Pearson r cannot use symmetric r +/- 1.96 * SE confidence intervals!:* | Sample Correlation r (N = 28, SE_z = 0.20) | Fisher z = 0.5 * LN((1+r)/(1-r)) | 95% Lower Bound r_low | 95% Upper Bound r_high | | --- | --- | --- | --- | | Moderate Correlation (r = 0.65) | 0.7753 | 0.3656 | 0.8234 | | Strong Correlation (r = 0.80) | 1.0986 | 0.6085 | 0.9034 (Never > 1.00!) | | Boundary Singularity (\|r\| >= 1 or N <= 3) | Logarithm / DoF Guard | "Invalid r or Sample N <= 3" | Requires -1 < r < 1 and N >= 4 | - **Formula (Exact Logarithmic Fisher z-Transformation = 0.5 * LN((1 + r) / (1 - r)))**: `=IF(OR(B2 <= -1, B2 >= 1, B3 <= 3), "Invalid r or Sample N <= 3", ROUND(0.5 * LN((1 + B2) / (1 - B2)), 4))` - **Formula (95% Lower Confidence Bound for Pearson Correlation r)**: `=IF(OR(B2 <= -1, B2 >= 1, B3 <= 3), "Invalid r or Sample N <= 3", ROUND((EXP(2 * ((0.5 * LN((1 + B2) / (1 - B2))) - (1.96 / SQRT(B3 - 3)))) - 1) / (EXP(2 * ((0.5 * LN((1 + B2) / (1 - B2))) - (1.96 / SQRT(B3 - 3)))) + 1), 4))` ### Fitts’s Law (ISO 9241-9 Shannon Form): Index of Difficulty & UI Pointing Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/fitts-law-shannon-index-of-difficulty-and-movement-time-formula/ - **Summary**: Predict cursor, touch, and XR target acquisition time using Scott MacKenzie’s Shannon formulation of Paul Fitts’s Law: ID = LOG(D / W + 1, 2) bits and MT = a + b * ID seconds. *Table — Why MacKenzie’s Shannon form LOG(D/W + 1, 2) replaced Fitts’s 1954 LOG(2*D/W, 2) in ISO 9241-9!:* | UI Target Geometry (Distance D = 320 px) | Shannon Index of Difficulty ID (bits) | Predicted Pointing Time MT (a=0.12s, b=0.15s/bit) | | --- | --- | --- | | Small Icon Target Width W = 20 px | 4.0875 bits (LOG(17, 2)) | 0.7331 seconds (733 ms) | | Ergonomic Ribbon Button W = 64 px | 2.5850 bits (LOG(6, 2)) | 0.5077 seconds (508 ms — 30.7% faster!) | | Invalid Zero Target Width W <= 0 | Infinite Difficulty | "Invalid Fitts Target Geometry" | - **Formula (MacKenzie-Shannon Index of Difficulty ID (bits) = LOG(D / W + 1, 2))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid Fitts Target Geometry", ROUND(LOG(B2 / B3 + 1, 2), 4))` - **Formula (Predicted Target Acquisition Movement Time MT (s) = a + b * LOG(D / W + 1, 2))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid Fitts Target Geometry", ROUND(B4 + B5 * LOG(B2 / B3 + 1, 2), 4))` ### Trigger Fixed Payment Every N Columns or Months (MOD + COLUMN) - **URL**: https://sheets.arte-soft.com/en/learn/fixed-value-every-n-columns-or-months-mod-column/ - **Summary**: Place a fixed amount every N equal-width period columns, choosing either the first or last column of each cycle. Includes interval validation and a six-period experiment. *Table — Choose the interval and the phase of a repeating schedule:* | Model Column | 1-Based Month # | Quarterly ($A$2 = 3) | Bimonthly ($A$2 = 2) | | --- | --- | --- | --- | | Col C (M1) | 1 | $0 (MOD = 1) | $0 (MOD = 1) | | Col D (M2) | 2 | $0 (MOD = 2) | $4,500 (MOD = 0!) | | Col E (M3) | 3 | $4,500 (MOD = 0!) | $0 (MOD = 1) | | Col H (M6) | 6 | $4,500 (MOD = 0!) | $4,500 (MOD = 0!) | - **Formula (End-of-Cycle Payment Every Nth Column (Months 3, 6, 9...))**: `=IF(COUNT($A$2,$B$2)<>2,"Enter numeric interval and amount",IF(OR($A$2<1,$A$2<>INT($A$2)),"Interval must be a positive integer",IF(MOD(COLUMN(C3)-COLUMN($C$3)+1,$A$2)=0,$B$2,0)))` - **Formula (Start-of-Cycle Advance Payment Every Nth Column (Months 1, 4, 7...))**: `=IF(COUNT($A$2,$B$2)<>2,"Enter numeric interval and amount",IF(OR($A$2<1,$A$2<>INT($A$2)),"Interval must be a positive integer",IF(MOD(COLUMN(C4)-COLUMN($C$3),$A$2)=0,$B$2,0)))` ### Highlight & Count Values Between Two Bounds: Order-Safe MIN/MAX & COUNTIFS - **URL**: https://sheets.arte-soft.com/en/learn/flag-and-count-values-between-inclusive-vs-exclusive-bounds/ - **Summary**: Test whether numbers or dates fall inside [Lower, Upper]—even if a user types Upper before Lower—using AND(B2 >= MIN($E$2,$E$3), B2 <= MAX($E$2,$E$3)) and COUNTIFS. *Table — Why Excel’s built-in "Between" Conditional Formatting rule uses MIN/MAX under the hood!:* | Readings [52, 60, 71, 85, 92, 78] vs Bounds (60, 85) | Inclusive [60, 85] Count | Strict Exclusive (60, 85) Count | Boundary Behavior | | --- | --- | --- | --- | | E2 = 60, E3 = 85 (Normal Order) | 4 readings (60, 71, 85, 78) | 2 readings (71, 78) | Boundary values 60 & 85 included vs excluded | | E2 = 85, E3 = 60 (Inverted User Input!) | 4 readings (Order-Safe!) | 2 readings | MIN/MAX normalizes swapped inputs | | E2 = 95, E3 = 100 (Above All Data) | 0 readings | 0 readings | Clean zero count | - **Formula (Order-Safe Inclusive Between-Bounds Count via COUNTIFS + MIN/MAX)**: `=COUNTIFS(B2:B7, ">=" & MIN(E2, E3), B2:B7, "<=" & MAX(E2, E3))` - **Formula (Strict Exclusive Between-Bounds Count (MIN < x < MAX))**: `=COUNTIFS(B2:B7, ">" & MIN(E2, E3), B2:B7, "<" & MAX(E2, E3))` ### Flag & Count Values NOT Between X and Y (OR & Two-Tail COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/flag-and-count-values-outside-min-max-range-not-between/ - **Summary**: Detect cold-chain, blood-glucose, or machining readings that fall strictly outside an acceptable [Min, Max] window using OR(B2 < MIN(X,Y), B2 > MAX(X,Y)) and count total two-sided excursions via COUNTIF. *Table — Catch both low-end and high-end spec violations even if X and Y are entered backwards!:* | Vaccine Fridge Probe (°C, Safe Window [2.0, 8.0]) | Out-of-Bounds Test OR(< Min, > Max) | Excursion Direction | | --- | --- | --- | | 1.4 °C (Sub-Threshold Freeze Risk) | TRUE | Below Lower Spec (< 2.0 °C) | | 2.0 °C and 5.6 °C (Boundary & Nominal) | FALSE | In-Spec Safe Storage [2.0, 8.0] | | 8.9 °C and 9.5 °C (Door-Open Warm Spike) | TRUE | Above Upper Spec (> 8.0 °C) -> 3 Total Excursions | - **Formula (Swap-Safe Row Flag for Value Strictly Outside [X, Y])**: `=OR(B2 < MIN($E$2, $E$3), B2 > MAX($E$2, $E$3))` - **Formula (Count Total Two-Sided Out-of-Bounds Readings Across Column B2:B7)**: `=COUNTIF(B2:B7, "<" & MIN(E2, E3)) + COUNTIF(B2:B7, ">" & MAX(E2, E3))` ### Flag original vs. first duplicate vs. repeat duplicates (Expanding COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/flag-first-occurrence-vs-first-duplicate-countif/ - **Summary**: Use an expanding range COUNTIF($A$2:A2, A2) to distinguish the 1st valid occurrence (=1), the exact 1st duplicate (=2), and 3rd+ repeats (>2). *Table — Why whole-column COUNTIF($A$2:$A$7, A2) > 1 flags the original row too!:* | Row | Invoice ID (A) | Running Occurrence (B) | Audit Classification | | --- | --- | --- | --- | | Row 2 | INV-101 | 1 | Original (Keep) | | Row 3 | INV-102 | 1 | Original (Keep) | | Row 4 | INV-101 | 2 | First Duplicate (=2) | | Row 6 | INV-101 | 3 | Repeat Duplicate (>2) | - **Formula (Classify each row into Original, First Duplicate, or Repeat Duplicate)**: `=IFS(B4=0,"Missing ID",B4=1,"Original",B4=2,"First Duplicate",B4>2,"Repeat Duplicate")` - **Formula (Count repeated IDs and extra occurrences for review)**: `=COUNTIF(B2:B7, 2)` ### Flag out-of-sequence, skipped, and duplicate invoice or serial numbers - **URL**: https://sheets.arte-soft.com/en/learn/flag-out-of-sequence-and-missing-serial-codes/ - **Summary**: Audit sequential check, voucher, and batch serial logs to classify exact "+1 OK" transitions versus missing-number gaps, duplicates, and reversals. *Table — Classify adjacent numeric serial transitions:* | Row | Check / Voucher # (A) | Prior # | Audit Status Classification (B) | | --- | --- | --- | --- | | Row 2 | 1001 | — | Start of sequence | | Row 3 | 1002 | 1001 | "OK" (+1 sequential) | | Row 4 | 1005 | 1002 | "Gap (2 Missing)" (#1003–1004 skipped!) | | Row 5 | 1006 | 1005 | "OK" (+1 sequential) | | Row 6–7 | 1006, then 1004 | 1006 | "Duplicate", then "Out of Order" | - **Formula (Classify sequential, duplicate, skipped-gap, and reversed serial codes)**: `=IF(COUNT(A2:A3)<>2,"Invalid inputs",IF(OR(A3<0,A2<0,A3<>INT(A3),A2<>INT(A2)),"Invalid inputs",IF(A3 = A2 + 1, "OK", IF(A3 = A2, "Duplicate", IF(A3 > A2 + 1, "Gap (" & (A3 - A2 - 1) & " Missing)", "Out of Order")))))` - **Formula (Total sequence exceptions across the register)**: `=IF(OR(COUNTBLANK(B3:B7)>0,COUNTIF(B3:B7,"Invalid inputs")>0),"Invalid inputs",COUNTIF(B3:B7,"<>OK"))` ### Conditional Formatting Formula: Flag Past-Due Open Invoices & Missing Required Fields - **URL**: https://sheets.arte-soft.com/en/learn/flag-past-due-rows-and-blank-required-fields-audit-rule/ - **Summary**: Write row-level AND($C2 <> "Paid", $B2 < $G$2) rules that highlight overdue invoices without false-flagging settled rows or blank rows. *Table — Why a bare =$B2 < TODAY() rule turns every paid historical invoice bright red!:* | Invoice Row | Due Date vs As-Of (2026-10-30) | Status & Payment_Ref | Audit Flag Outcome | | --- | --- | --- | --- | | INV-401 (Due 2026-10-15) | 15 days earlier | Open / "" | 1 (Past Due — Escalate) | | INV-402 (Due 2026-10-10) | 20 days earlier | Paid / "ACH-884" | 0 (Paid — Suppressed) | | INV-403 (Due 2026-10-12) | 18 days earlier | Paid / "" (Blank Ref!) | Missing Payment_Ref Flag = 1 | - **Formula (Count Past-Due Unpaid Invoices Using Row Rule E2:E5)**: `=SUM(E2:E5)` - **Formula (Count Paid Rows Missing a Required Payment Reference (Blank Audit))**: `=COUNTIFS(C2:C5, "Paid", D2:D5, "")` ### Rolling Mill Draft, Max Friction Bite & Roll Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/flat-strip-rolling-mill-draft-maximum-bite-angle-and-separating-force/ - **Summary**: Calculate Pass Thickness Draft Delta_h (mm), Friction-Limited Maximum Self-Entry Draft mu^2*R (mm), Projected Roll-Bite Contact Length L_p (mm), Plane-Strain Roll Separating Force (kN), and Bite Status. *Table — Command a pass draft Delta_h larger than mu^2 * R and the work rolls skid helplessly without pulling the slab into the bite!:* | Strip Rolling Pass KPI (h0=12.0 -> hf=9.2 mm, R=320 mm, mu=0.11, w=1,000, Y=185) | Formula | Verified Output | | --- | --- | --- | | Pass Thickness Draft dh (mm) | Entry_h0_mm - Exit_hf_mm | 2.80 mm (4.50 mm @ hf = 7.50 mm) | | Max Unaided Friction Draft (mm) | (Friction_Mu ^ 2) * Roll_Radius_R | 3.87 mm | | Plane-Strain Roll Force (kN) | ((2/SQRT(3)) * Yavg * w * SQRT(R*dh))/1000 | 6,394.33 kN (8,106.29 @ hf = 7.50) | | Roll-Gap Entry Bite Feasibility | Draft_dh <= (Mu^2) * R | SELF-ENTERING BITE OK (SKID @ 7.5!) | - **Formula (Von Mises Plane-Strain Roll Force & Friction-Limit Bite Formula)**: `=LET(ha_m, B2, hb_m, B3, rr_m, B4, mu_f, B5, wd_m, B6, yv_m, B7, IF(OR(hb_m <= 0, ha_m <= hb_m, rr_m <= 20, mu_f < 0.02, mu_f > 0.5, wd_m <= 0, yv_m <= 0), "Invalid Rolling Input", LET(dh_m, ha_m - hb_m, dm_x, (mu_f ^ 2) * rr_m, IF(dh_m <= dm_x, "SELF-ENTERING BITE OK", "ROLL SKIDDING REFUSAL"))))` - **Formula (Over-Greedy 4.50 mm Pass Roll-Skidding Refusal Check (Set Exit Thickness h_f = 7.50 mm))**: `=IF(ISTEXT(E2), E2, LET(lp_m, SQRT(B4 * (B2 - B3)), ROUND(((2 / SQRT(3)) * B7 * B6 * lp_m) / 1000, 2)))` ### Fleiss’ Kappa (kappa) Multi-Rater Categorical Agreement Formula - **URL**: https://sheets.arte-soft.com/en/learn/fleiss-kappa-multi-rater-categorical-agreement-formula/ - **Summary**: Calculate chance-corrected multi-annotator reliability Fleiss’ Kappa = (P_bar - P_e) / (1 - P_e) across N items rated by n >= 3 raters into k categories for ML data-labeling QA and clinical radiology panels. *Table — Generalize chance-corrected inter-rater reliability beyond Cohen’s 2-rater limit!:* | Audit Item (n = 5 Raters) | Class Votes (Cat A, Cat B, Cat C) | Item Pairwise Agreement Pi | Summary Reliability | | --- | --- | --- | --- | | Item 1 (Unanimous) | 5, 0, 0 | 1.0000 | Marginal Shares: 0.60, 0.20, 0.20 | | Item 2 & Item 4 (4-to-1 Split) | 4, 1, 0 and 0, 1, 4 | 0.6000 each | Chance Agreement Pe = 0.4400 | | Item 3 (3-to-2 Split) | 3, 2, 0 | 0.4000 | P_bar = 0.6500 -> Fleiss kappa = 0.3750 | - **Formula (Mean Observed Multi-Rater Pairwise Agreement P_bar Across 4 Items (n = 5))**: `=ROUND((SUMPRODUCT(B2:D5, B2:D5) - 4 * 5) / (4 * 5 * (5 - 1)), 4)` - **Formula (Chance-Corrected Fleiss’ Kappa = (P_bar - P_e) / (1 - P_e))**: `=ROUND((((SUMPRODUCT(B2:D5, B2:D5) - 20) / 80) - ((SUM(B2:B5) / 20) ^ 2 + (SUM(C2:C5) / 20) ^ 2 + (SUM(D2:D5) / 20) ^ 2)) / (1 - ((SUM(B2:B5) / 20) ^ 2 + (SUM(C2:C5) / 20) ^ 2 + (SUM(D2:D5) / 20) ^ 2)), 4)` ### Flesch Reading Ease & Flesch-Kincaid Grade Level Readability Formulas - **URL**: https://sheets.arte-soft.com/en/learn/flesch-reading-ease-and-flesch-kincaid-grade-level-formula/ - **Summary**: Calculate Flesch Reading Ease 206.835 - 1.015*(Words/Sentences) - 84.6*(Syllables/Words) and US school Flesch-Kincaid Grade Level 0.39*(Words/Sentences) + 11.8*(Syllables/Words) - 15.59 for editorial and compliance auditing. *Table — Audit plain-language insurance, patient-consent, and SEO copy quantitatively!:* | Document Sample (180 Words) | ASL (W/S) & ASW (Syl/W) | Flesch Reading Ease (FRE) | Flesch-Kincaid Grade (FKGL) | | --- | --- | --- | --- | | Standard Business Article | 10 sent (ASL=18), 270 syl (ASW=1.50) | 61.67 (Standard Plain English) | Grade 9.13 (~9th Grade) | | Patient Consent Handout | 15 sent (ASL=12), 234 syl (ASW=1.30) | 84.68 (Easy Conversational) | Grade 4.43 (~4th-5th Grade) | | Invalid Syllables < Words | Syllables < Words Check | Guarded Linguistic Error | "Invalid Counts (Syl >= Words > 0)" | - **Formula (Flesch Reading Ease Score (0–100+ Plain-Language Scale))**: `=IF(OR(B2 <= 0, B3 <= 0, B2 < B3, B4 < B2), "Invalid Counts (Syl >= Words > 0)", ROUND(206.835 - (1.015 * (B2 / B3)) - (84.6 * (B4 / B2)), 2))` - **Formula (Flesch-Kincaid US Grade Level (FKGL))**: `=IF(OR(B2 <= 0, B3 <= 0, B2 < B3, B4 < B2), "Invalid Counts (Syl >= Words > 0)", ROUND((0.39 * (B2 / B3)) + (11.8 * (B4 / B2)) - 15.59, 2))` ### Barrier Film WVTR Moisture Permeation & Shelf-Life Formula - **URL**: https://sheets.arte-soft.com/en/learn/flexible-barrier-film-wvtr-and-otr-packaging-moisture-permeation-shelf-life-formula/ - **Summary**: Calculate Daily Water-Vapor Permeation Rate (g/day), Allowable Dry-Basis Moisture Budget (g), Predicted Crispness/Potency Shelf Life (days), and Shelf Life in Months. *Table — Swap metallized PET barrier laminate for un-coated clear BOPP under ICH Zone IVb tropical humidity and crisp snack shelf life collapses from 2.5 months to 15 days!:* | ASTM F1249 Barrier Pouch KPI (Area=0.068 m², 150 g Dry Mass, M0=2.1% -> Mc=4.8%) | Formula | Verified Output | | --- | --- | --- | | Daily Moisture Ingress (g/day) | Pouch_Area_m2 * WVTR_g_m2_d * Driving_Ratio | 0.0527 g/day (0.2774 g/d @ clear film/tropics!) | | Max Moisture Gain Budget (g) | Dry_Mass_g * ((Crit_Mc_Pct - Init_M0_Pct) / 100) | 4.05 g allowable H2O pickup | | Predicted Shelf Life (days) | Moisture_Budget_g / Daily_Ingress_g_d | 76.9 days (14.6 days soggy failure!) | | Predicted Shelf Life (months) | Shelf_Life_Days / 30.4375 | 2.52 months (0.48 months < 3 weeks!) | - **Formula (Labuza-Fickian Barrier-Pouch WVTR Permeation & Critical Moisture Shelf-Life Formula)**: `=LET(af_m, B2, wv_r, B3, dr_f, B4, md_g, B5, m0_p, B6, mc_p, B7, gd_d, af_m * wv_r * dr_f, mb_g, md_g * ((mc_p - m0_p) / 100), IF(OR(af_m <= 0.001, wv_r <= 0.001, dr_f <= 0.02, dr_f > 2, md_g <= 0.1, m0_p < 0, mc_p <= m0_p, mc_p > 40), "Invalid WVTR Input", ROUND((mb_g / gd_d) / 30.4375, 2)))` - **Formula (Un-Metallized Clear Film (`WVTR = 4.8`) in ICH Zone IVb (`30°C / 75% RH`, `Drive = 0.85`) 14.6-Day Collapse Check)**: `=IF(ISTEXT(E5), E5, LET(gd_d, B2 * B3 * B4, mb_g, B5 * ((B7 - B6) / 100), ROUND(mb_g / gd_d, 1)))` ### Flip-Chip C4 DNP Shear Strain & Capillary Underfill Formula - **URL**: https://sheets.arte-soft.com/en/learn/flip-chip-c4-underfill-capillary-flow-fill-time-and-cte-shear-strain-relief-formula/ - **Summary**: Calculate Corner-Bump CTE Differential Displacement (um), Un-Underfilled Bump Shear Strain (%), Young-Laplace Gap Driving Pressure (kPa), and Washburn-Hele-Shaw Fill Time (s). *Table — Without silica-filled epoxy underfill, a 17 mm silicon flip-chip shears its corner C4 micro-bumps by 20%–40% on the VERY FIRST thermal cycle!:* | Flip-Chip Underfill KPI (DNP=8.5 mm, L=12 mm, mu=0.45 Pa·s, Standoff h=75 vs 38 um) | Formula | Verified Output | | --- | --- | --- | | Corner CTE Displacement dx (um) | (DNP_mm * 1000) * (dAlpha * 1e-6) * dT_K | 15.09 um | | Un-Underfilled Shear Strain (%) | (Corner_Displacement_um / Standoff_h_um) * 100 | 20.12% (39.70% @ 38 um Cu-pillar!) | | Capillary Suction Pressure (kPa) | (2 * (sigma/1000) * COS(rad)) / (h_um * 1e-6) / 1e3 | 0.677 kPa (1.336 kPa @ 38 um) | | Washburn Underfill Time (s) | (3 * mu * L_m^2) / (h_m * sigma_N_m * COS(rad)) | 102.1 s (201.6 s = 2x slower @ 38 um!) | - **Formula (DNP Thermal Shear Strain & Parallel-Plate Hele-Shaw Capillary Underfill Formula)**: `=LET(dn_m, B2, da_p, B3, dt_k, B4, hs_m, B5 * 0.000001, lc_m, B6 / 1000, sg_n, B7 / 1000, th_r, B8 * (PI() / 180), mu_p, B9, IF(OR(dn_m <= 0.5, da_p <= 0.5, dt_k <= 10, B5 < 10, B5 > 500, B6 <= 1, B7 <= 5, B8 < 0, B8 > 80, mu_p <= 0.01), "Invalid Flip-Chip Input", ROUND((3 * mu_p * (lc_m ^ 2)) / (hs_m * sg_n * COS(th_r)), 1)))` - **Formula (Fine-Pitch 38 um Copper-Pillar Standoff Bottleneck Check (Set Bump Standoff B5 = 38 um))**: `=IF(ISTEXT(E5), E5, LET(dx_u, (B2 * 1000) * (B3 * 0.000001) * B4, ROUND((dx_u / B5) * 100, 2)))` ### Flip Table Rows Upside-Down in Exact Reverse Order (SORTBY & SEQUENCE) - **URL**: https://sheets.arte-soft.com/en/learn/flip-table-rows-upside-down-reverse-order-sortby/ - **Summary**: Invert any 1D list or multi-column 2D log table from bottom-to-top positional order—even when timestamps have ties or non-chronological text—using SORTBY(range, SEQUENCE(ROWS(range)), -1). *Table — Reverse bank-statement or audit-log row order WITHOUT sorting alphabetically!:* | Original Row # | Original Ledger Entry (A2:B5) | Reverse Key (-1) | Flipped Output Position | | --- | --- | --- | --- | | Row 1 (Top) | TX-101 \| $120 | Index 1 -> 4th | Moves to Bottom Row 4 | | Row 2 | TX-102 \| $250 | Index 2 -> 3rd | Moves to Row 3 | | Row 3 | TX-103 \| $180 | Index 3 -> 2nd | Moves to Row 2 | | Row 4 (Bottom) | TX-104 \| $410 | Index 4 -> 1st | Moves to Top Row 1! | - **Formula (Preview Reversed First-Column Order via TEXTJOIN & SORTBY)**: `=TEXTJOIN(", ", TRUE, SORTBY(A2:A5, SEQUENCE(ROWS(A2:A5)), -1))` - **Formula (Extract N-th Row Value From the Upside-Down 2D Table)**: `=IF(OR(D2 < 1, D2 > ROWS(A2:B5)), "Row Out of Bounds", INDEX(SORTBY(A2:B5, SEQUENCE(ROWS(A2:B5)), -1), D2, 2))` ### FLIPI Score Formula: Follicular Lymphoma International Prognostic Index (0 to 5) - **URL**: https://sheets.arte-soft.com/en/learn/flipi-follicular-lymphoma-international-prognostic-index-score/ - **Summary**: Stratify newly diagnosed follicular lymphoma survival across Low (0–1), Intermediate (2), and High Risk (3–5) using Philippe Solal-Céligny’s 5-factor FLIPI score (NoLASH: Nodal areas > 4, LDH > ULN, Age >= 60, Stage III–IV, Hemoglobin < 12 g/dL). *Table — Why indolent Follicular Lymphoma needed its own 5-factor NoLASH index distinct from aggressive DLBCL IPI!:* | FLIPI Total Factors (0–5) | FLIPI Risk Group | 10-Year OS Benchmark (Rituximab Era ~Higher) | | --- | --- | --- | | FLIPI 0–1 Factors | Low Risk | Favorable Indolent Course (~71% pre-R / >85% R-era) | | FLIPI 2 Factors | Intermediate Risk | Moderate Progression Hazard | | FLIPI 3–5 Factors (e.g., 4) | High Risk | Elevated POD24 / Shorter Remission Duration | - **Formula (Total Solal-Céligny FLIPI Score (0 to 5 NoLASH Factors))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Each FLIPI Factor Must Be 0 or 1", SUM(B2:B6))` - **Formula (FLIPI Three-Group Follicular Lymphoma Risk Stratification)**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Each FLIPI Factor Must Be 0 or 1", IF(SUM(B2:B6) >= 3, "High Risk (FLIPI 3–5 Factors)", IF(SUM(B2:B6) = 2, "Intermediate Risk (FLIPI 2 Factors)", "Low Risk (FLIPI 0–1 Factors)")))` ### Glass Furnace Carbonate Fusion Loss, Cullet & Fuel Formula - **URL**: https://sheets.arte-soft.com/en/learn/float-glass-batch-carbonate-fusion-loss-cullet-energy-savings-and-furnace-pull/ - **Summary**: Calculate Fused Virgin-Batch Glass Tonnage (t/d), Total Regenerative Furnace Pull (t/d), Cullet Share in Molten Pull (%), and Cullet-Reduced Specific Melting Energy (GJ/t). *Table — Every tonne of virgin soda-ash + limestone glass batch vents 162 kg of CO2 up the stack—whereas recycled cullet melts at 100% yield and cuts furnace fuel 2.5% per 10% cullet!:* | Glass Tank Mass & Energy KPI (L_ign=16.2%, Zero-Cullet Fuel E0=6.40 GJ/t) | Formula | Verified Output | | --- | --- | --- | | Fused Virgin-Batch Glass (t/d) | Raw_Batch_t_d * (1 - Fusion_Loss_Pct / 100) | 351.96 t/d (150.84 t/d high-cullet campaign) | | Total Molten Furnace Pull (t/d) | Fused_Batch_Glass_t_d + Cullet_Feed_t_d | 531.96 t/d (530.84 t/d constant pull) | | Cullet Share in Molten Pull (%) | (Cullet_Feed_t_d / Total_Pull_t_d) * 100 | 33.84% (71.58% container/eco-float) | | Specific Melting Fuel (GJ/t) | Zero_Cullet_GJ_t * (1 - 0.0025 * Cullet_Pct) | 5.859 GJ/t (5.255 GJ/t = -17.9% fuel!) | - **Formula (Soda-Lime-Silica Carbonate Fusion Balance & 0.25%/Pct Cullet Energy Formula)**: `=LET(rb_t, B2, ls_p, B3, cl_t, B4, zf_g, B5, fb_t, rb_t * (1 - ls_p / 100), pl_t, fb_t + cl_t, cs_p, (cl_t / pl_t) * 100, IF(OR(rb_t < 0, ls_p < 8, ls_p > 25, cl_t < 0, rb_t + cl_t < 10, zf_g < 3.5, zf_g > 12), "Invalid Glass Input", ROUND(zf_g * (1 - 0.0025 * cs_p), 3)))` - **Formula (High-Cullet Decarbonization Campaign (`180` t/d Batch + `380` t/d Cullet) Check)**: `=IF(ISTEXT(E5), E5, LET(pl_t, B2 * (1 - B3 / 100) + B4, ROUND((B4 / pl_t) * 100, 2)))` ### Floating Bar & Up-Down Column Span Chart Formula: Hidden Base & Positive/Negative Delta - **URL**: https://sheets.arte-soft.com/en/learn/floating-bar-and-column-span-chart-hidden-base-and-delta-series/ - **Summary**: Create Floating Bar (salary bands, temperature ranges) and Up-Down Floating Column charts using stacked series: Hidden Base = MIN(Start, End), Up Gain = MAX(0, End - Start), and Down Loss = MAX(0, Start - End). *Table — One stacked-series decomposition builds both Floating Range Bars and Color-Coded Up/Down Columns!:* | Period / Band | Start Value | End Value | Hidden Base MIN(Start, End) | Up Gain MAX(0, End - Start) | Down Loss MAX(0, Start - End) | | --- | --- | --- | --- | --- | --- | | Jan (Expansion) | 120 | 155 | 120 | 35 | 0 | | Feb (Pullback) | 155 | 132 | 132 | 0 | 23 | | Mar (Flat) | 132 | 132 | 132 | 0 | 0 | - **Formula (Invisible Stacked Base Series MIN(Start, End))**: `=IF(OR(B3 < 0, C3 < 0), "Use Zero-Cross Split for Negative Axis Spans", MIN(B3, C3))` - **Formula (Directional Up-Gain and Down-Loss Floating Span Series)**: `=IF(OR(B3 < 0, C3 < 0), "Use Zero-Cross Split for Negative Axis Spans", MAX(0, B3 - C3))` ### Fix floating-point errors: why 1.33 - 1.3 is not 0.03 and how ROUND solves it - **URL**: https://sheets.arte-soft.com/en/learn/fix-floating-point-rounding-errors/ - **Summary**: Prevent false reconciliation breaks caused by IEEE-754 binary decimals using explicit ROUND(..., 2) or ABS tolerance checks. *Table — Why clean decimals produce tiny 0.00000000000000003 remainders:* | Billed (A) | Paid (B) | ExpectedBalance (C) | Raw (A-B)=C | ROUND(A-B, 2)=C | | --- | --- | --- | --- | --- | | 1.33 | 1.3 | 0.03 | FALSE | TRUE | - **Formula (Wrap currency differences in ROUND(..., 2) before comparing)**: `=ROUND(A2 - B2, 2) = C2` - **Formula (Alternative: ABS epsilon tolerance check)**: `=ABS((A2 - B2) - C2) < 0.000000001` ### Flory-Huggins Polymer Solution Theory: Mixing Free Energy & Critical Chi (chi_c) - **URL**: https://sheets.arte-soft.com/en/learn/flory-huggins-polymer-solution-mixing-free-energy-and-chi/ - **Summary**: Calculate dimensionless Flory-Huggins lattice free energy of mixing Delta_Gm / (n_site * R * T) and the critical spinodal phase-separation parameter chi_c = 0.5 * (1 + 1 / SQRT(N))^2. *Table — Understand why long polymer chains phase-separate so easily!:* | Solvent Regime (phi_2 = 0.20, N = 100) | Interaction Parameter chi | Delta_Gm / RT per Lattice Site | Miscibility Status (chi_c = 0.6050) | | --- | --- | --- | --- | | Good Solvent | chi = 0.45 (< chi_c) | -0.10973 | Completely Miscible Single Phase | | Critical Demixing Point | chi_c = 0.5*(1 + 1/SQRT(100))^2 | chi_c = 0.6050 | Upper Critical Solution Threshold | | Poor Solvent (Above chi_c) | chi = 0.85 (> chi_c) | -0.04573 (Concave Spinodal Dome!) | Phase Separates into Two Phases | - **Formula (Dimensionless Flory-Huggins Mixing Free Energy per Lattice Site (Delta_Gm / RT))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 < 1), "Invalid Lattice Inputs", ROUND(((1 - B2) * LN(1 - B2)) + ((B2 / B3) * LN(B2)) + (B4 * B2 * (1 - B2)), 5))` - **Formula (Critical Interaction Parameter chi_c = 0.5 * (1 + 1 / SQRT(N))^2)**: `=IF(B3 < 1, "Invalid Lattice Inputs", ROUND(0.5 * ((1 + (1 / SQRT(B3))) ^ 2), 4))` ### FCC Regenerator Coke Burn, Catalyst Circulation & Air Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/fluid-catalytic-cracking-fcc-regenerator-coke-burn-air-rate-and-cat-to-oil/ - **Summary**: Calculate Zeolite Catalyst Circulation Rate (t/hr), Regenerator Coke Burn Rate (kg/hr), Exothermic Regenerator Heat Duty (MWth), and Main Air Blower Mass Flow (t/hr). *Table — An FCC unit is a self-balancing thermal flywheel—burning catalytic coke in the regenerator powers endothermic riser cracking!:* | FCC Riser-Regenerator KPI (250 t/hr VGO, C/O = 6.0, dCoke = 0.80 wt%) | Formula | Verified Output | | --- | --- | --- | | Catalyst Circulation Rate (t/hr) | Gas_Oil_Feed_t_hr * Cat_to_Oil_Ratio | 1,500.00 t/hr | | Regenerator Coke Burn (kg/hr) | Cat_Circ_t_hr * 1000 * (Delta_Coke_Pct/100) | 12,000.00 kg/hr (15,000 @ 1.0% dC) | | Regenerator Heat Duty (MWth) | (Coke_Burn_kg_hr * Heat_MJ_kg) / 3600 | 103.33 MWth (129.17 @ 1.0% dC) | | Main Air Blower Flow (t/hr) | (Coke_Burn_kg_hr * Air_kg_per_kg) / 1000 | 150.00 t/hr (187.50 @ 1.0% dC!) | - **Formula (FCC Regenerator Coke Burn & Main Air Blower Capacity Formula)**: `=LET(ol_f, B2, co_r, B3, dc_p, B4, dh_c, B5, ar_k, B6, IF(OR(ol_f <= 0, co_r < 2, co_r > 15, dc_p <= 0.1, dc_p > 2.5, dh_c < 15, dh_c > 36, ar_k < 8, ar_k > 18), "Invalid FCC Input", LET(ck_b, ol_f * co_r * 1000 * (dc_p / 100), ROUND((ck_b * dh_c) / 3600, 2))))` - **Formula (Heavier Conradson Carbon Resid Feed Blower Bottleneck Check (Set Delta Coke = 1.00 wt%))**: `=IF(ISTEXT(E4), E4, ROUND((B2 * B3 * 1000 * (B4 / 100) * B6) / 1000, 2))` ### Pipe flow rate (Q = A * V) and continuity nozzle velocity formulas - **URL**: https://sheets.arte-soft.com/en/learn/fluid-flow-rate-continuity-pipe-velocity-area/ - **Summary**: Calculate volumetric pipe flow in Liters/sec from inner diameter and velocity using PI()*(D/2)^2*V*1000, and scale nozzle velocity via V1*(D1/D2)^2. *Table — Area, mean velocity and conserved volumetric flow:* | Hydraulics Equation (D1 = 0.10 m, V1 = 2.0 m/s) | Formula | Result | | --- | --- | --- | | Cross-Sectional Pipe Area | =PI() * (0.10 / 2)^2 | 0.007854 m^2 | | Volumetric Flow Rate (L/s) | =Area * 2.0 * 1000 | 15.708 Liters / sec | | 50 mm Nozzle Velocity V2 | =2.0 * (0.10 / 0.05)^2 | 8.00 m/s (4x speed!) | - **Formula (Volumetric flow rate (L/s) and continuity nozzle velocity formulas)**: `=ROUND(PI() * ((A2 / 2) ^ 2) * B2 * 1000, 3)` - **Formula (Continuity Equation exit velocity V2 through reducer/nozzle diameter C2)**: `=IF(OR(A2<=0,C2<=0),"Use positive diameters",ROUND(B2 * ((A2 / C2) ^ 2), 4))` ### Flywheel Speed Fluctuation (Cs) & Moment of Inertia Formula - **URL**: https://sheets.arte-soft.com/en/learn/flywheel-coefficient-of-speed-fluctuation-moment-of-inertia-and-energy-delta/ - **Summary**: Calculate Mean Angular Velocity omega (rad/s), Required Mass Moment of Inertia I (kg·m²) for Target Speed Fluctuation Cs, Equivalent Thin-Rim Mass (kg), and Rim Tip Speed (m/s). *Table — Delta_E equals I * omega^2 * Cs—WITHOUT the 1/2 factor—because (omega_max^2 - omega_min^2) factors into 2*omega*d_omega!:* | Press Flywheel Sizing KPI (dE = 12,000 J, 600 RPM, Cs = 0.02, R = 0.50 m) | Formula | Verified Output | | --- | --- | --- | | Mean Angular Speed omega (rad/s) | (2 * PI() * Mean_RPM) / 60 | 62.83 rad/s | | Required Inertia I (kg·m²) | Delta_E_J / ((omega^2) * Cs) | 151.98 kg·m² (303.96 @ Cs = 0.01) | | Equivalent Thin-Rim Mass (kg) | Required_Inertia_I / (Rim_Radius_m^2) | 607.93 kg (1,215.85 @ Cs = 0.01) | | Rim Peripheral Velocity (m/s) | omega_rad_s * Rim_Radius_m | 31.42 m/s | - **Formula (Exact Flywheel Moment of Inertia Formula for Target Speed Droop Cs)**: `=LET(de_j, B2, rp_m, B3, cs_f, B4, rr_m, B5, IF(OR(de_j <= 0, rp_m <= 0, cs_f <= 0.001, cs_f > 0.25, rr_m <= 0), "Invalid Flywheel Input", LET(om_g, 2 * PI() * rp_m / 60, ROUND(de_j / ((om_g ^ 2) * cs_f), 2))))` - **Formula (Tighter ±0.5% Generator-Grade Speed Regulation Check (Set Cs = 0.01))**: `=IF(ISTEXT(E3), E3, LET(om_g, 2 * PI() * B3 / 60, in_r, B2 / ((om_g ^ 2) * B4), ROUND(in_r / (B5 ^ 2), 2)))` ### Flywheel Kinetic Energy Storage & Rim Hoop-Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/flywheel-kinetic-energy-storage-depth-of-discharge-and-hoop-stress/ - **Summary**: Calculate High-Speed Vacuum Flywheel Usable Extractable Kinetic Energy (kWh) Across [RPM_min, RPM_max], Outer-Rim Linear Tip Speed (m/s), Thin-Rim Centrifugal Hoop Stress σ_θ = ρ*v² (MPa), and Composite Burst Safety Factor. *Table — See why carbon-fiber rotors beat heavy steel in flywheel energy storage—σ_θ = ρ * v_tip²!:* | Composite Flywheel Metric (I=12 kg·m², 30k->15k RPM, R=0.25 m, ρ=1600, σ_u=2400 MPa) | Formula | Verified Output | | --- | --- | --- | | Usable Kinetic Energy (kWh) | 0.5 * I * (ω_max^2 - ω_min^2) / 3.6e6 | 12.34 kWh | | Outer Rim Tip Speed (m/s) | ((2 * PI() * RPM_max) / 60) * R_m | 785.40 m/s (Mach 2.3 in Vacuum) | | Centrifugal Hoop Stress (MPa) | (ρ_kg_m3 * v_tip^2) / 1,000,000 | 986.96 MPa (4,842.27 MPa Steel!) | | Tensile Burst Safety Factor | Tensile_Strength_MPa / Hoop_Stress_MPa | 2.43x (0.21x Burst on Steel!) | - **Formula (Flywheel Usable Kinetic Energy & Hoop-Stress Safety Factor Formula)**: `=LET(in_r, B2, rp_x, B3, rp_n, B4, rd_m, B5, rh_o, B6, st_u, B7, IF(OR(in_r <= 0, rp_x <= 0, rp_n < 0, rp_n >= rp_x, rd_m <= 0, rh_o <= 0, st_u <= 0), "Invalid Flywheel Rotor Input", LET(om_x, (2 * PI() * rp_x) / 60, vt_p, om_x * rd_m, sg_h, (rh_o * (vt_p ^ 2)) / 1000000, ROUND(st_u / sg_h, 2))))` - **Formula (Alloy-Steel Rotor Burst Check (Set Density = 7,850 kg/m³, Yield = 1,000 MPa))**: `=IF(ISTEXT(E5), E5, ROUND((0.5 * B2 * ((((2 * PI() * B3) / 60) ^ 2) - (((2 * PI() * B4) / 60) ^ 2))) / 3600000, 2))` ### FMCW Radar Chirp Bandwidth, Beat Frequency & Range Formula - **URL**: https://sheets.arte-soft.com/en/learn/fmcw-automotive-radar-chirp-bandwidth-range-resolution-and-beat-frequency/ - **Summary**: Calculate 77 GHz Frequency-Modulated Continuous-Wave (FMCW) Chirp Radar Range Resolution ΔR = c/(2*B), Chirp Slope S (MHz/µs), Target IF Beat Frequency f_b (MHz), and ADC-Limited Maximum Unaliased Detection Range (m). *Table — See the core FMCW radar trade-off: wider chirp bandwidth sharpens ΔR while shrinking ADC R_max!:* | 77 GHz FMCW Chirp Metric (B = 1.5 GHz, T_c = 50 µs, R = 60 m, f_IF_max = 15 MHz) | Formula | Verified Output | | --- | --- | --- | | Range Resolution ΔR (m) | 0.15 / Sweep_Bandwidth_GHz | 0.1000 m (0.0500 m @ 3.0 GHz) | | Chirp Slope S (MHz/µs) | (Sweep_Bandwidth_GHz * 1000) / T_c_us | 30.00 MHz/µs (60.00 @ 3.0 GHz) | | Target IF Beat Freq f_b (MHz) | Chirp_Slope_S * (2 * Range_m / 300) | 12.00 MHz | | Max Unaliased Range R_max (m) | (Max_IF_MHz * 300) / (2 * Chirp_Slope_S) | 75.00 m (37.50 m @ 3.0 GHz) | - **Formula (FMCW Radar ADC-Limited Maximum Range Formula)**: `=LET(bw_g, B2, tc_u, B3, rg_m, B4, fm_x, B5, IF(OR(bw_g <= 0, bw_g > 10, tc_u <= 0, rg_m <= 0, fm_x <= 0), "Invalid FMCW Chirp Input", LET(sl_p, (bw_g * 1000) / tc_u, ROUND((fm_x * 300) / (2 * sl_p), 2))))` - **Formula (3.0 GHz Ultra-Fine Parking-Mode Chirp Check)**: `=IF(ISTEXT(E5), E5, ROUND(0.15 / B2, 4))` ### Norrish Humectant Water Activity (aw) Formula - **URL**: https://sheets.arte-soft.com/en/learn/food-water-activity-aw-norrish-sugar-humectant-and-shelf-life-formula/ - **Summary**: Calculate Ideal Raoult Water Mole Fraction x_w, Norrish Non-Ideal Sugar/Humectant Water Activity a_w = x_w * EXP(-K * x_s^2), Hydrogen-Bonding Depression, and FDA aw <= 0.85 Pathogen Hurdle status. *Table — Stop sizing intermediate-moisture syrups and preserves with ideal Raoult’s Law!:* | Humectant Formulation Metric (162g H2O = 9 mol, 342g Sucrose = 1 mol, K = 6.47) | Formula | Verified Output | | --- | --- | --- | | Ideal Raoult Water Mole Fraction x_w | (m_w / 18) / (m_w / 18 + m_s / MW_s) | 0.9000 (Apparent > 0.85 Fail) | | Norrish Non-Ideal Water Activity a_w | x_w * EXP(-K * (1 - x_w)^2) | 0.8436 (<= 0.85 Hurdle Pass) | | Non-Ideal H-Bonding Depression | x_w - a_w | 0.0564 aw Reduction | | FDA Microbial Shelf-Life Classification | aw <= 0.60 vs <= 0.85 vs > 0.85 | Non-TCS: Bacterial Pathogen Safe (aw <= 0.85) | - **Formula (Norrish Non-Ideal Humectant Water Activity Formula)**: `=LET(m_wt, B2, m_sl, B3, mw_s, B4, k_nr, B5, IF(OR(m_wt <= 0, m_sl < 0, mw_s <= 0, k_nr < 0), "Invalid Humectant Recipe", LET(n_wt, m_wt / 18, n_sl, m_sl / mw_s, x_wt, n_wt / (n_wt + n_sl), x_sl, 1 - x_wt, ROUND(x_wt * EXP(-k_nr * (x_sl ^ 2)), 4))))` - **Formula (FDA Microbial Hurdle Classification Formula)**: `=IF(ISTEXT(E3), E3, IF(E3 <= 0.6, "Shelf-Stable: Xerophilic Safe (aw <= 0.60)", IF(E3 <= 0.85, "Non-TCS: Bacterial Pathogen Safe (aw <= 0.85)", "TCS Perishable: Refrigerate or Acidify (aw > 0.85)")))` ### FORECAST function: project a linear trend from historical X and Y pairs - **URL**: https://sheets.arte-soft.com/en/learn/forecast-linear-trend-projection/ - **Summary**: Estimate future demand or utility load along a least-squares linear regression line using FORECAST, and guard against flat X inputs. *Table — Fit a straight line without manually computing slope and intercept:* | Packed Orders (A) | Electricity kWh (B) | Notes | | --- | --- | --- | | 100 | 1450 | Month 1 observation | | 200 | 1900 | Month 2 observation | | 300 | 2350 | Month 3 observation | | 400 | 2800 | Month 4 observation (base 1,000 kWh + 4.5 kWh/order) | - **Formula (Project at a future driver volume or zero-volume baseline)**: `=FORECAST(D2, B2:B5, A2:A5)` - **Formula (Guard against zero variance in known_x's)**: `=IF(VAR.S(A2:A5)=0, "Need varying X", FORECAST(D2, B2:B5, A2:A5))` ### Forecast vs Actual Budget Variance: Favorable (F) vs Unfavorable (U) - **URL**: https://sheets.arte-soft.com/en/learn/forecast-vs-actual-budget-variance-favorable-unfavorable/ - **Summary**: Build a budget-versus-actual report with an explicit favorable-positive convention, validated account types, zero-base handling and separate amount, percentage and status outputs. - **Formula (Amount variance with validated account type)**: `=IF(COUNT(C2:D2)<>2,"Enter numeric amounts",IF(UPPER(TRIM(B2))="EXPENSE",IF(OR(C2<0,D2<0),"Use positive expense amounts",C2-D2),IF(OR(UPPER(TRIM(B2))="REVENUE",UPPER(TRIM(B2))="PROFIT"),D2-C2,"Unknown account type")))` - **Formula (Percentage relative to the magnitude of the budget)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(C2=0,"Zero Budget Base",E2/ABS(C2)))` - **Formula (Separate favorable, unfavorable and on-budget labels)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(E2>0,"Favorable",IF(E2<0,"Unfavorable","On budget")))` ### Forest Plot Meta-Analysis: Pooled Effect, 95% CI & Inverse-Variance Weights - **URL**: https://sheets.arte-soft.com/en/learn/forest-plot-meta-analysis-log-odds-ci-and-inverse-variance-weight/ - **Summary**: Build clinical-trial Forest Plot summary rows by exponentiating log-odds/log-risk effects EXP(theta +/- 1.96 * SE), computing fixed-effect inverse-variance weights w_i = 1 / SE_i^2, and pooling theta_pooled = SUM(w_i * theta_i) / SUM(w_i). *Table — Why Forest Plot error bars MUST be calculated on the log scale before exponentiating!:* | Clinical Trial | Log-OR (theta_i) & SE_i | Precision Weight wi = 1 / SEi^2 | Study OR & 95% Forest Plot Whiskers | | --- | --- | --- | --- | | Trial Alpha | -0.35 (SE = 0.20) | 25.00 (31.2% share) | OR 0.70 [0.48, 1.04] | | Trial Beta | -0.52 (SE = 0.25) | 16.00 (20.0% share) | OR 0.59 [0.36, 0.97] | | Trial Gamma | -0.28 (SE = 0.16) | 39.06 (48.8% share) | OR 0.76 [0.55, 1.03] -> Pooled OR = 0.70 | - **Formula (Inverse-Variance Fixed-Effect Pooled Odds Ratio Across 3 Trials)**: `=IF(MIN(C2:C4) <= 0, "Invalid Standard Error", ROUND(EXP(((B2 / (C2 ^ 2)) + (B3 / (C3 ^ 2)) + (B4 / (C4 ^ 2))) / ((1 / (C2 ^ 2)) + (1 / (C3 ^ 2)) + (1 / (C4 ^ 2)))), 2))` - **Formula (Upper 95% Forest Plot Diamond Bound: EXP(theta_pooled + 1.96 / SQRT(SUM(w_i))))**: `=IF(MIN(C2:C4) <= 0, "Invalid Standard Error", ROUND(EXP((((B2 / (C2 ^ 2)) + (B3 / (C3 ^ 2)) + (B4 / (C4 ^ 2))) / ((1 / (C2 ^ 2)) + (1 / (C3 ^ 2)) + (1 / (C4 ^ 2)))) + (1.96 / SQRT((1 / (C2 ^ 2)) + (1 / (C3 ^ 2)) + (1 / (C4 ^ 2))))), 2))` ### Export Forfaiting Straight Discount to Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/forfaiting-export-trade-bill-straight-discount-to-effective-yield-formula/ - **Summary**: Convert ICC URF 800 Forfaiting Straight Discount Quotes (ACT/360 plus Settlement Grace Days) into Upfront Discount Deduction, Net Exporter Proceeds, Discount-to-Yield Rate, and All-In Effective APR. *Table — Convert upfront banker’s straight discount plus grace days into true yield-to-maturity!:* | URF 800 Forfaiting Metric ($1M Face, 175d Tenor + 5d Grace, 8.0% Straight, $10k Fee) | Formula | Verified Output | | --- | --- | --- | | Upfront Straight Discount ($) | Face * d_str * ((Tenor + Grace) / 360) | $40,000.00 (180 Charged Days) | | Net Exporter Cash Proceeds ($) | Face - Upfront_Discount - Doc_Fee | $950,000.00 ($960k @ $0 Fee) | | Pure Discount-to-Yield (ACT/360) | d_str / (1 - d_str * ((Tenor+Grace)/360)) | 0.0833 (8.33% vs 8.00% Straight) | | All-In Exporter APR (ACT/360) | ((Face - Proceeds)/Proceeds)*(360/Tenor) | 0.1083 (10.83%; 0.0833 @ 0 Grace/Fee) | - **Formula (All-In Exporter Forfaiting Effective Cost (ACT/360) Formula)**: `=LET(fc_v, B2, mt_d, B3, gr_d, B4, d_st, B5, dc_f, B6, IF(OR(fc_v <= 0, mt_d < 1, gr_d < 0, d_st <= 0, dc_f < 0), "Invalid Forfaiting Quote", LET(ds_u, fc_v * d_st * ((mt_d + gr_d) / 360), nt_p, fc_v - ds_u - dc_f, IF(nt_p <= 0, "Invalid Forfaiting Quote", ROUND(((fc_v - nt_p) / nt_p) * (360 / mt_d), 4)))))` - **Formula (Textbook Money-Market Identity Check (Grace = 0, Fee = $0))**: `=IF(ISTEXT(E3), E3, ROUND(B5 / (1 - B5 * ((B3 + B4) / 360)), 4))` ### Format MAC addresses: standardize colons (00:1A:2B...) or Cisco dots - **URL**: https://sheets.arte-soft.com/en/learn/format-mac-address-colons-hyphens/ - **Summary**: Strip mixed separators from 12-character hex MAC addresses, validate length, and format into colon-separated pairs or Cisco dot-quads. *Table — Normalize DHCP, switch, and asset-inventory MAC formats:* | RawMac (A) | Colon-Separated Format | Cisco Quad Format | | --- | --- | --- | | 001a2b3c4d5e | 00:1A:2B:3C:4D:5E | 001a.2b3c.4d5e | | 00-1a-2b-3c-4d-5e | 00:1A:2B:3C:4D:5E | 001a.2b3c.4d5e | | 001a2b | Invalid MAC | Invalid MAC | - **Formula (colon-separated and Cisco quad MAC formulas)**: `=LET(m, UPPER(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"-",""),":",""),".","")," ","")), IF(OR(LEN(m)<>12, LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(UPPER(m),"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9",""),"A",""),"B",""),"C",""),"D",""),"E",""),"F",""))<>0), "Invalid MAC", MID(m,1,2)&":"&MID(m,3,2)&":"&MID(m,5,2)&":"&MID(m,7,2)&":"&MID(m,9,2)&":"&MID(m,11,2)))` - **Formula (Cisco 4-hex dot notation)**: `=LET(m, LOWER(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"-",""),":",""),".","")," ","")), IF(OR(LEN(m)<>12, LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(UPPER(m),"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9",""),"A",""),"B",""),"C",""),"D",""),"E",""),"F",""))<>0), "Invalid MAC", MID(m,1,4)&"."&MID(m,5,4)&"."&MID(m,9,4)))` ### Format email with display name ("Name ") and extract address back out - **URL**: https://sheets.arte-soft.com/en/learn/format-rfc-email-with-display-name-and-extract-parts/ - **Summary**: Format a simple single-recipient display string and extract an address from a controlled angle-bracket format. This is not a complete email-header parser. *Table — Quote a display name without altering the mailbox spelling:* | Display Name (A) | Email (B) | Illustrative formatted recipient | Parsed Email Back Out | | --- | --- | --- | --- | | Maya Chen | maya@acme.io | "Maya Chen" | maya@acme.io | | Chen, Maya | maya@acme.io | "Chen, Maya" (Quoted!) | maya@acme.io | | (blank) | ops@acme.io | ops@acme.io (Bare email) | ops@acme.io | - **Formula (Format a controlled single-recipient display string)**: `=IF(OR(ISNUMBER(FIND(CHAR(10),A2&B2)),ISNUMBER(FIND(CHAR(13),A2&B2))),"Invalid line break",LET(n,IF(COUNTBLANK(A2)=1,"",TRIM(A2&"")),e,TRIM(B2&""),IF(n="",e,CHAR(34)&SUBSTITUTE(SUBSTITUTE(n,CHAR(92),CHAR(92)&CHAR(92)),CHAR(34),CHAR(92)&CHAR(34))&CHAR(34)&" <"&e&">")))` - **Formula (Extract clean email address from "<...>" header OR bare email cell)**: `=IFERROR(TEXTBEFORE(TEXTAFTER(C2, "<"), ">"), TRIM(C2))` ### Build a Formula-Driven KPI Scorecard Panel (Polarity-Aware Attainment, Weights & RAG Status) - **URL**: https://sheets.arte-soft.com/en/learn/formula-driven-executive-kpi-scorecard-panel-attainment-and-rag-status/ - **Summary**: Combine higher-is-better growth metrics and lower-is-better payback/defect metrics into one normalized executive KPI scorecard with weighted attainment and Red/Amber/Green status. *Table — Normalizing opposite metric polarities before weighting a scorecard:* | KPI Metric | Actual | Target | Polarity | Attainment | RAG Status | | --- | --- | --- | --- | --- | --- | | Net New ARR ($k) | 1,260 | 1,200 | Higher | 1.0500 | Green | | Gross Margin % | 0.68 | 0.68 | Higher | 1.0000 | Green | | Net Retention % | 1.08 | 1.125 | Higher | 0.9600 | Amber | | CAC Payback (Mo) | 15 | 12 | Lower | 0.8000 | Red | - **Formula (Polarity-Aware Attainment & Weighted Composite Score)**: `=ROUND(IF(E2 = "Higher", B2 / C2, C2 / B2), 4)` - **Formula (Scaffolding KPI Panels & Charts with the Arte Sheets AI Assistant)**: `=ROUND(SUMPRODUCT(D2:D5, F2:F5), 4)` ### McDonald’s Omega (Composite Reliability) & Fornell-Larcker AVE Formula in CFA - **URL**: https://sheets.arte-soft.com/en/learn/fornell-larcker-ave-and-mcdonald-omega-composite-reliability/ - **Summary**: Replace tau-equivalent Cronbach’s alpha assumptions in Confirmatory Factor Analysis (CFA / PLS-SEM) using Roderick McDonald’s congeneric omega = (SUM(lambda))² / ((SUM(lambda))² + SUM(1 - lambda²)) and Claes Fornell & David Larcker’s Average Variance Extracted AVE = SUMPRODUCT(lambda, lambda) / k. *Table — Why modern psychometrics & SEM journals require McDonald’s Omega (>= 0.70) and Fornell-Larcker AVE (>= 0.50)!:* | 4-Item CFA Standardized Loadings | McDonald’s Omega / CR (Cutoff >= 0.70) | Fornell-Larcker AVE (Cutoff >= 0.50) | Convergent Validity Verdict | | --- | --- | --- | --- | | [0.82, 0.78, 0.85, 0.75] | 0.8771 | 0.6415 (64.15% shared variance) | Strong Reliability & Convergent Validity | | [0.55, 0.60, 0.58, 0.52] | 0.6502 (< 0.70) | 0.3173 (< 0.50 — Error dominates!) | Inadequate Construct Validity | | Heywood Case \|lambda_i\| >= 1.0 | Negative Unique Variance! | "Invalid Standardized Loadings (Requires 0 < lambda < 1)" | CFA Identification Guard | - **Formula (McDonald’s Congeneric Omega / Jöreskog Composite Reliability Formula)**: `=IF(OR(MIN(B2:B5) <= 0, MAX(B2:B5) >= 1), "Invalid Standardized Loadings (Requires 0 < lambda < 1)", ROUND((SUM(B2:B5) ^ 2) / ((SUM(B2:B5) ^ 2) + (COUNT(B2:B5) - SUMPRODUCT(B2:B5, B2:B5))), 4))` - **Formula (Fornell-Larcker Average Variance Extracted AVE = SUM(lambda²) / k)**: `=IF(OR(MIN(B2:B5) <= 0, MAX(B2:B5) >= 1), "Invalid Standardized Loadings (Requires 0 < lambda < 1)", ROUND(SUMPRODUCT(B2:B5, B2:B5) / COUNT(B2:B5), 4))` ### Forns Index Non-Invasive Liver Fibrosis Calculator (Platelets, GGT, Cholesterol) - **URL**: https://sheets.arte-soft.com/en/learn/forns-index-noninvasive-hepatic-fibrosis-platelet-ggt-formula/ - **Summary**: Calculate Xavier Forns’s logarithmic hepatic fibrosis index 7.811 - 3.131*LN(Platelets_10^9/L) + 0.781*LN(GGT_IU/L) + 3.467*LN(Age) - 0.014*Cholesterol_mg/dL (< 4.2 rules out F2–F4 fibrosis with 96% NPV; > 6.9 rules in). *Table — Combine hypersplenism platelets, biliary GGT, and declining hepatic cholesterol synthesis!:* | Clinical Lab Profile (Plt 10^9/L, GGT IU/L, Chol mg/dL) | Forns Index Value | Validated Cutoff Zone | Hepatology Action | | --- | --- | --- | --- | | Healthy Liver (Plt 260, GGT 28, Age 36, Chol 195) | 2.70 | < 4.20 (96% NPV) | Significant F2–F4 Fibrosis Excluded | | Gray Zone (4.20 to 6.90) | 4.20–6.90 | Indeterminate Zone | Perform VCTE / Shear-Wave Elastography | | Fibrotic Profile (Plt 135, GGT 92, Age 54, Chol 175) | 7.36 | > 6.90 (Rule-In) | High Likelihood of Significant Fibrosis | - **Formula (Continuous Logarithmic Forns Hepatic Fibrosis Index)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Forns Lab Input", ROUND(7.811 - 3.131 * LN(B2) + 0.781 * LN(B3) + 3.467 * LN(B4) - 0.014 * B5, 2))` - **Formula (Forns Dual-Cutoff Fibrosis Stratification (< 4.2 vs. > 6.9))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Forns Lab Input", IF((7.811 - 3.131 * LN(B2) + 0.781 * LN(B3) + 3.467 * LN(B4) - 0.014 * B5) > 6.9, "High Fibrosis Probability (Forns > 6.9) — Significant F2-F4 Fibrosis Likely", IF((7.811 - 3.131 * LN(B2) + 0.781 * LN(B3) + 3.467 * LN(B4) - 0.014 * B5) < 4.2, "Low Fibrosis Probability (Forns < 4.2: 96% NPV) — Significant Fibrosis Excluded", "Indeterminate Forns Zone (4.2-6.9) — Confirm With Elastography")))` ### Forrester Hemodynamic Subsets (I–IV) & Nohria-Stevenson Wet/Dry Warm/Cold Diamond - **URL**: https://sheets.arte-soft.com/en/learn/forrester-swan-ganz-hemodynamic-subsets-and-killip-mi-class/ - **Summary**: Classify acute myocardial infarction and decompensated heart failure hemodynamics across Cardiac Index CI (<= 2.2 vs > 2.2 L/min/m²) and Pulmonary Capillary Wedge Pressure PCWP (<= 18 vs > 18 mmHg). *Table — How James Forrester’s 2.2 L/min/m² × 18 mmHg catheterization grid built modern ICU shock management!:* | Hemodynamic Profile (CI L/min/m², PCWP mmHg) | Forrester Subset & Stevenson Phenotype | Targeted CCU Hemodynamic Therapy | | --- | --- | --- | | CI = 1.8, PCWP = 24 mmHg | Subset IV — Cold & Wet (Cardiogenic Shock) | Inotropes / Vasopressors / Mechanical Support | | CI = 2.8, PCWP = 24 mmHg | Subset II — Warm & Wet (Pulmonary Edema) | IV Loop Diuretics + Afterload/Preload Vasodilators | | CI = 1.9, PCWP = 12 mmHg | Subset III — Cold & Dry (Hypovolemia / RV MI) | Cautious Fluid Challenge / RV Preload Optimization | | CI = 3.1, PCWP = 14 mmHg | Subset I — Warm & Dry (Compensated) | Standard Guideline Oral Neurohormonal Therapy | - **Formula (Forrester / Nohria-Stevenson 4-Quadrant Hemodynamic Subset Classifier)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Swan-Ganz Hemodynamics", IF(AND(B2 / B3 <= 2.2, B4 > 18), "Subset IV: Cold & Wet (Cardiogenic Shock — CI <= 2.2, PCWP > 18)", IF(AND(B2 / B3 > 2.2, B4 > 18), "Subset II: Warm & Wet (Pulmonary Congestion — CI > 2.2, PCWP > 18)", IF(AND(B2 / B3 <= 2.2, B4 <= 18), "Subset III: Cold & Dry (Hypoperfusion — CI <= 2.2, PCWP <= 18)", "Subset I: Warm & Dry (Compensated — CI > 2.2, PCWP <= 18)"))))` - **Formula (Indexed Cardiac Index CI = Cardiac Output (L/min) / BSA (m²))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Swan-Ganz Hemodynamics", ROUND(B2 / B3, 2))` ### Foster-Greer-Thorbecke (FGT_0, FGT_1, FGT_2) Poverty Headcount, Gap & Severity Formula - **URL**: https://sheets.arte-soft.com/en/learn/foster-greer-thorbecke-fgt-headcount-poverty-gap-and-severity/ - **Summary**: Calculate the World Bank’s unified Foster-Greer-Thorbecke (1984) poverty family P_alpha = (1/N) * SUM(MAX(0, (z - y_i)/z)^alpha): Headcount Ratio P_0, Poverty Gap Index P_1, and Distribution-Sensitive Squared Severity P_2. *Table — Why transferring $1 from the poorest household to someone just below the poverty line lowers Headcount P_0—but RAISES Squared Poverty Severity P_2!:* | FGT Parameter alpha (Poverty Line z = $20, y = [8, 14, 20, 28, 45]) | Exact FGT Formula | Value & Economic Meaning | | --- | --- | --- | | Headcount Ratio P_0 (alpha = 0) | COUNTIF(B2:B6, "<" & E2) / COUNT(B2:B6) | 0.4000 (2 of 5 = 40.0% Below Line z) | | Poverty Gap Index P_1 (alpha = 1) | Average of [(20-8)/20, (20-14)/20, 0, 0, 0] | 0.1800 ((0.60 + 0.30) / 5 -> $18 Total Gap) | | Squared Poverty Severity P_2 (alpha = 2) | Average of [0.60^2, 0.30^2, 0, 0, 0] | 0.0900 ((0.36 + 0.09) / 5) | - **Formula (Poverty Gap Index FGT P_1 = SUMIFS(z - y_i) / (N * z) = (q * z - SUM_poor) / (N * z))**: `=IF(OR(E2 <= 0, COUNT(B2:B6) = 0, MIN(B2:B6) < 0), "Invalid Poverty Line or Income Vector", ROUND((COUNTIF(B2:B6, "<" & E2) * E2 - SUMIF(B2:B6, "<" & E2)) / (COUNT(B2:B6) * E2), 4))` - **Formula (General Foster-Greer-Thorbecke Index P_alpha Across Normalized Shortfalls C2:C6)**: `=IF(OR(E2 <= 0, E3 < 0, COUNT(B2:B6) = 0), "Invalid FGT Inputs", IF(E3 = 0, ROUND(COUNTIF(B2:B6, "<" & E2) / COUNT(B2:B6), 4), ROUND(SUMPRODUCT(C2:C6 ^ E3) / COUNT(B2:B6), 4)))` ### Foundry Green-Sand AFS Permeability & Blowhole Formula - **URL**: https://sheets.arte-soft.com/en/learn/foundry-green-sand-afs-permeability-number-gas-venting-and-mold-hardness-formula/ - **Summary**: Calculate Volumetric Air Venting Rate (cm³/min), Superficial Darcy Gas Velocity (cm/min), AFS Permeability Number P, and Iron/Steel Castings Steam-Blowhole Gate. *Table — Every gram of green-sand moisture flashes 1,600x in volume to steam at 1,420°C iron pour—and if dust fines choke AFS permeability below 50, trapped steam boils right back into the casting!:* | AFS 2x2-in Sand Lab Permeability KPI (V=2,000 cm³, H=5.08 cm, A=20.268 cm², p=10 gf/cm²) | Formula | Verified Output | | --- | --- | --- | | Volumetric Air Flow (cm³/min) | Bell_Air_Vol_cm3 / Vent_Time_min | 3,448.3 cm³/min (816.3 @ silt-choked sand) | | Superficial Darcy Velocity (cm/min) | (Bell_Air_Vol_cm3 / Time_min) / Area_cm2 | 170.1 cm/min (40.3 cm/min choked) | | AFS Permeability Number P | (Vol_V * Height_H) / (Press_p * Area_A * Time_t) | 86.4 AFS (20.5 AFS over-rammed/silty!) | | Iron/Steel Gas-Venting Gate | IF(AFS_Perm >= 50, "VENTING SAFE...", "BLOWHOLE...") | VENTING SAFE (>=50 AFS) | - **Formula (AFS Darcy Sand Permeability Number & Steam-Venting Defect Formula)**: `=LET(va_c, B2, hs_c, B3, as_c, B4, pm_g, B5, te_m, B6, IF(OR(va_c < 500, va_c > 5000, hs_c < 2, hs_c > 10, as_c < 5, as_c > 50, pm_g < 1, pm_g > 50, te_m <= 0.05, te_m > 20), "Invalid AFS Input", ROUND(va_c / te_m, 1)))` - **Formula (Dead-Clay Fines Buildup + Over-Tempering (`t = 2.45` min -> `20.5` AFS) Blowhole Defect Check)**: `=IF(ISTEXT(E2), E2, ROUND((B2 * B3) / (B5 * B4 * B6), 1))` ### Foundry Tapered Sprue Choke & Aspiration Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/foundry-tapered-sprue-bernoulli-choke-area-and-aspiration-free-ratio-formula/ - **Summary**: Calculate Aspiration-Free Top Sprue Entry Area A1 = A2*SQRT(h2/h1) (mm²), Torricelli Choke Velocity (m/s), Volumetric Pouring Rate (cm³/s), and Mold Fill Time (s). *Table — A straight-sided cylindrical downsprue pulls sub-atmospheric vacuum—sucking air and moisture right through permeable green sand into molten metal!:* | Foundry Gating Sprue KPI (h1=65 mm, h2=260 mm, Choke A2=320 mm², Cd=0.82, V=4,800 cm³) | Formula | Verified Output | | --- | --- | --- | | Aspiration-Free Top Area A1 (mm²) | Choke_Area_A2 * SQRT(Total_h2 / Cup_h1) | 640.00 mm² (846.64 mm² @ tall 455 mm sprue) | | Bernoulli Choke Velocity (m/s) | Cd * SQRT(2 * 9.80665 * (h2_mm / 1000)) | 1.85 m/s (2.45 m/s @ tall 455 mm sprue) | | Volumetric Pouring Rate (cm³/s) | (A2_mm2 / 100) * (Choke_Vel_m_s * 100) | 592.6 cm³/s (783.9 cm³/s @ 455 mm) | | Total Mold Pouring Time (sec) | Casting_Plus_Riser_cm3 / Flow_Rate_cm3_s | 8.10 s (6.12 s @ tall 455 mm sprue) | - **Formula (Zero-Aspiration Parabolic Sprue Taper & Torricelli Choke Fill-Time Formula)**: `=LET(hc_m, B2, ht_m, B3, ac_m, B4, cd_g, B5, vm_c, B6, IF(OR(hc_m <= 10, ht_m <= hc_m, ac_m <= 0, cd_g < 0.4, cd_g > 1, vm_c <= 0), "Invalid Sprue Input", LET(vc_s, cd_g * SQRT(2 * 9.80665 * (ht_m / 1000)), qf_c, ac_m * vc_s, ROUND(vm_c / qf_c, 2))))` - **Formula (Tall Cope Flask 455 mm Metallostatic Head Check (Set Total Head h2 B3 = 455.0 mm))**: `=IF(ISTEXT(E5), E5, ROUND(B4 * SQRT(B3 / B2), 2))` ### FOUR Score (Full Outline of UnResponsiveness) Intubated Coma Scale (0–16) - **URL**: https://sheets.arte-soft.com/en/learn/four-score-full-outline-of-unresponsiveness-intubated-coma-scale/ - **Summary**: Calculate Eelco Wijdicks’ 4-domain neurocritical care FOUR Score (Eye 0–4, Motor 0–4, Brainstem Reflexes 0–4, Respiration/Ventilator Drive 0–4) to grade intubated coma, locked-in syndrome, and uncal herniation. *Table — Why Glasgow Coma Scale fails in intubated ICU patients—and how FOUR Score fixes it!:* | Total FOUR Score (0–16) | Neurocritical Care Pattern | Clinical Prognostic Implication | | --- | --- | --- | | 0 Points (E0 M0 B0 R0) | Absent Pupil, Corneal, Cough & Spontaneous Drive | Consider Brain-Death Evaluation Protocol | | 1 – 7 Points (e.g., E1 M2 B2 R1 = 6) | Deep Coma / Early Brainstem Compression | High ICU Mortality; Urgent ICP / Herniation Action | | 8 – 16 Points (e.g., E3 M4 B4 R3 = 14) | Preserved Brainstem & Localizing/Command Motor | Favorable Awakening Trajectory | - **Formula (Total 16-Point Mayo Clinic FOUR Coma Score (E + M + B + R))**: `=IF(OR(COUNTA(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 4), "Invalid FOUR Subscore (0-4)", SUM(B2:B5))` - **Formula (FOUR Score Brainstem Alert & Coma Severity Tier)**: `=IF(OR(COUNTA(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 4), "Invalid FOUR Subscore (0-4)", IF(SUM(B2:B5) = 0, "FOUR = 0: Absent Cortical & Brainstem Function", IF(SUM(B2:B5) <= 7, "Severe Coma (FOUR 1-7)", IF(SUM(B2:B5) <= 12, "Moderate Impairment (FOUR 8-12)", "Mild Impairment / Alert (FOUR 13-16)"))))` ### Paper Machine Wet-End Dewatering & Steam Drying Formula - **URL**: https://sheets.arte-soft.com/en/learn/fourdrinier-and-yankee-paper-machine-wet-end-consistency-dewatering-and-steam-drying/ - **Summary**: Calculate Bone-Dry Fiber Throughput (t/h), Headbox Slurry Flow (t/h), Dryer-Section Water Evaporation Rate (t/h), and Steam Boiler Demand (t/h) across Press-Felt Solids. *Table — Why losing 6% press-section solids from 44% down to 38% hikes paper-machine dryer-section steam consumption by 30%!:* | TAPPI Paper Machine Mass-Balance KPI (28 t/h Reel @ 94% Solids, C_hb=0.65%) | Formula | Verified Output | | --- | --- | --- | | Bone-Dry Fiber Rate (t/h) | Reel_Prod_t_h * (Reel_Solids_Pct / 100) | 26.32 t/h | | Headbox Slurry Flow (t/h) | Bone_Dry_Fiber_t_h / (Headbox_Consist_Pct / 100) | 4,049.2 t/h (~99.35% whitewater!) | | Dryer Water Evaporation (t/h) | Reel_Prod_t_h * ((Reel_Solids_Pct / Press_Pct) - 1) | 31.82 t/h (41.26 t/h @ blinded 38% felt!) | | Dryer Section Steam (t/h) | Water_Evap_t_h * Steam_To_Evap_Ratio | 43.91 t/h (+29.7% -> 56.94 t/h @ 38%!) | - **Formula (TAPPI TIP 0404-47 Wet-to-Dry Solids Conservation & Dryer Evaporation Formula)**: `=LET(pr_t, B2, sr_p, B3, sp_p, B4, ch_p, B5, rs_t, B6, we_t, pr_t * ((sr_p / sp_p) - 1), IF(OR(pr_t <= 0.5, ch_p < 0.1, ch_p > 4, sp_p < 20, sp_p > 60, sr_p <= sp_p, sr_p > 99, rs_t < 1, rs_t > 2.5), "Invalid Paper Machine Input", ROUND(we_t * rs_t, 2)))` - **Formula (Blinded Press Felt Drop from 44% to 38% Solids Steam Penalty Check (Set B4 = 38%))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * ((B3 / B4) - 1), 2))` ### Fourier Heat Conduction formula: composite wall R-Value, U-Value & heat loss (W) - **URL**: https://sheets.arte-soft.com/en/learn/fourier-thermal-conduction-r-value-u-value-heat-loss/ - **Summary**: Calculate SI area-normalized resistance, transmittance and signed steady heat flow through a planar layered wall. *Table — Why U-Values NEVER add in series—sum layer R-Values (L / k) first!:* | Envelope Layer (A) | Thickness L m (B) | Conductivity k (C) | Thermal Resistance R = L/k (D) | | --- | --- | --- | --- | | Gypsum Drywall | 0.016 | 0.16 | 0.10 m^2*K/W | | Mineral Wool Batt | 0.144 | 0.04 | 3.60 m^2*K/W (90% of insulation!) | | Brick Veneer | 0.120 | 0.80 | 0.15 m^2*K/W | | Air Films (In + Out) | — | — | 0.15 -> R_tot = 4.00 \| U = 0.25 \| Q = 250 W | - **Formula (Overall U-Value = 1 / SUM(R_layers) (W/(m^2*K)))**: `=IF(OR(COUNT(B2:C4)<>6,MIN(B2:B4)<0,MIN(C2:C4)<=0,NOT(ISNUMBER(D5)),D5<0),"Invalid inputs",IF(OR(COUNT(D2:D5)<>4,SUM(D2:D5)<=0),"Invalid inputs",ROUND(1 / SUM(D2:D5), 4)))` - **Formula (Steady-state conductive heat loss Q = (A * (T_in - T_out)) / SUM(R))**: `=IF(OR(COUNT(B2:C4)<>6,MIN(B2:B4)<0,MIN(C2:C4)<=0,NOT(ISNUMBER(D5)),D5<0),"Invalid inputs",IF(OR(COUNT(D2:D5)<>4,SUM(D2:D5)<=0,COUNT(F2:F4)<>3,F2<0),"Invalid inputs",ROUND((F2 * (F3 - F4)) / SUM(D2:D5), 2)))` ### Fowler-Nordheim Quantum Field-Emission Tunneling Current Density Formula - **URL**: https://sheets.arte-soft.com/en/learn/fowler-nordheim-quantum-field-emission-tunneling-current/ - **Summary**: Calculate cold-cathode quantum electron tunneling current density J = ((1.5414e-6 * E^2) / phi) * EXP((-6.8309e7 * phi^1.5) / E) in A/cm^2 for FE-SEM tips, carbon nanotubes, and flash memory. *Table — Tunnel electrons straight through a triangular barrier at room temperature!:* | Cold-Emitter Tip Scenario | Work Function phi & Field E | Tunneling Density J (A/cm^2) | Fowler-Nordheim Plot ln(J/E^2) Slope | | --- | --- | --- | --- | | Tungsten <310> Tip (Baseline) | phi = 4.50 eV, E = 5.0e7 V/cm | 1,856.96 A/cm^2 | -6.5208e8 V/cm | | Tungsten Tip (+20% Voltage) | phi = 4.50 eV, E = 6.0e7 V/cm | 23,503.82 A/cm^2 (12.66x jump!) | -6.5208e8 V/cm | | Zero/Negative Field E <= 0 | Division by E in Exponent | Guarded Input Error | "Invalid Field/Work Function" | - **Formula (Fowler-Nordheim Tunneling Current Density J (A/cm^2))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Field/Work Function", ROUND(((0.0000015414 * (B2 ^ 2)) / B3) * EXP((-68309000 * (B3 ^ 1.5)) / B2), 2))` - **Formula (Fowler-Nordheim Plot Slope S_FN = -B_FN * phi^1.5 (V/cm, vs 1/E))**: `=IF(B3 <= 0, "Invalid Field/Work Function", ROUND(-68309000 * (B3 ^ 1.5), 0))` ### Fowlkes-Mallows Clustering Index Formula vs Pairwise F1 and Jaccard - **URL**: https://sheets.arte-soft.com/en/learn/fowlkes-mallows-clustering-index-geometric-mean-pairwise-precision-recall/ - **Summary**: Evaluate clustering partitions in Excel and Arte Sheets using the Fowlkes-Mallows geometric mean of pairwise precision and recall TP / SQRT((TP + FP) * (TP + FN)). *Table — Compare geometric Fowlkes-Mallows against harmonic F1 and Jaccard by hand:* | Pairwise Metric | Formula Expression | Sample Output | | --- | --- | --- | | Wallace Precision B1 | TP / (TP + FP) = 36 / 48 | 0.7500 | | Wallace Recall B2 | TP / (TP + FN) = 36 / 75 | 0.4800 | | Fowlkes-Mallows Index FM | TP / SQRT((TP + FP) * (TP + FN)) | 0.6000 (Exact 36 / 60) | | Pairwise F1 & Jaccard | 2*TP/(2*TP+FP+FN) vs TP/(TP+FP+FN) | 0.5854 vs 0.4138 | - **Formula (Fowlkes-Mallows Index Formula)**: `=LET(tp_p, B2, fp_p, B3, fn_p, B4, n_pred, tp_p + fp_p, n_true, tp_p + fn_p, IF(OR(n_pred <= 0, n_true <= 0), "Degenerate Partition", ROUND(tp_p / SQRT(n_pred * n_true), 4)))` - **Formula (True-Negative Invariance & HM-GM Gap Formula)**: `=ROUND(2 * B2 / (2 * B2 + B3 + B4), 4)` ### Fox Equation & Gordon-Taylor Copolymer Glass Transition Temperature (Tg) - **URL**: https://sheets.arte-soft.com/en/learn/fox-equation-and-gordon-taylor-copolymer-glass-transition-tg/ - **Summary**: Predict the glass transition temperature Tg (in °C via absolute Kelvin!) of random copolymers, plasticized PVC, and miscible amorphous blends using the Fox harmonic rule and Gordon-Taylor equation. *Table — Never plug Celsius directly into the Fox equation—always convert to Kelvin!:* | Copolymer Composition (Tg1 = 100 °C, Tg2 = -70 °C) | Fox Equation Tg (°C) | Gordon-Taylor Tg (k = 0.50) | Physical Behavior at 25 °C | | --- | --- | --- | --- | | 70 wt% Styrene / 30 wt% Butadiene | +25.12 °C (298.27 K) | +70.00 °C (343.15 K) | Leathery / Glassy Resin | | 50 wt% Styrene / 50 wt% Butadiene | -10.07 °C (263.08 K) | +43.52 °C (316.67 K) | Fox: Flexible Elastomer at RT | | Invalid Weight Fraction w1 > 1 | Guarded Input Error | Out of [0, 1] Bound | "Invalid Blend Inputs" | - **Formula (Fox Equation Copolymer Glass Transition Temperature Tg (°C))**: `=IF(OR(B2 <= -273.15, B3 <= -273.15, B4 < 0, B4 > 1), "Invalid Blend Inputs", ROUND((1 / ((B4 / (B2 + 273.15)) + ((1 - B4) / (B3 + 273.15)))) - 273.15, 2))` - **Formula (Gordon-Taylor Blend Glass Transition Temperature Tg (°C))**: `=IF(OR(B2 <= -273.15, B3 <= -273.15, B4 < 0, B4 > 1, B5 <= 0), "Invalid Blend Inputs", ROUND((((B4 * (B2 + 273.15)) + (B5 * (1 - B4) * (B3 + 273.15))) / (B4 + (B5 * (1 - B4)))) - 273.15, 2))` ### Fractional Excretion of Sodium (FENa) & Urea (FEUrea) in Acute Kidney Injury - **URL**: https://sheets.arte-soft.com/en/learn/fractional-excretion-of-sodium-fena-and-feurea-aki-formula/ - **Summary**: Calculate FENa (%) = (U_Na * P_Cr) / (P_Na * U_Cr) * 100 and diuretic-resistant FEUrea (%) to differentiate prerenal azotemia from intrinsic acute tubular necrosis (ATN). *Table — Distinguish volume-responsive prerenal AKI from tubular injury!:* | AKI Clinical Presentation | U_Na / P_Na (mEq/L) | U_Cr / P_Cr (mg/dL) | FENa (%) & Diagnostic Etiology | | --- | --- | --- | --- | | Dehydration / Hypovolemia | 12 / 140 | 120 / 2.4 | 0.17% (< 1% -> Prerenal AKI) | | Indeterminate Borderline Zone | 28 / 140 | 48 / 2.4 | 1.00% (1%–2% -> Indeterminate) | | Ischemic Acute Tubular Necrosis | 55 / 140 | 45 / 2.4 | 2.10% (> 2% -> Intrinsic ATN) | - **Formula (Fractional Excretion of Sodium FENa (%) Formula)**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Plasma Na or Urine Cr", ROUND(((B2 * B5) / (B3 * B4)) * 100, 2))` - **Formula (Clinical AKI Etiology Band (< 1% Prerenal, 1–2% Indeterminate, > 2% ATN))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Lab Input", IFS(((B2 * B5) / (B3 * B4)) * 100 < 1, "Prerenal Azotemia (< 1%)", ((B2 * B5) / (B3 * B4)) * 100 <= 2, "Indeterminate (1% - 2%)", TRUE, "Intrinsic ATN (> 2%)"))` ### FRAIL Scale (5-Item Geriatric Frailty & Pre-Frailty Screening) - **URL**: https://sheets.arte-soft.com/en/learn/frail-scale-5-item-geriatric-frailty-and-pre-frailty-screening/ - **Summary**: Screen older adults in under 60 seconds without grip-dynamometers using John Morley’s 0–5 FRAIL Questionnaire (Fatigue, Resistance, Ambulation, Illnesses > 5, Loss of Weight > 5%). *Table — Screen Fried physical frailty phenotype in primary care without a handgrip dynamometer!:* | FRAIL Scale Score (0–5 Points) | ICFSR Frailty Phenotype | Targeted Geriatric Intervention | | --- | --- | --- | | FRAIL = 0 Points | Robust Older Adult | Preventive Physical Activity & Annual Re-Screen | | FRAIL = 1–2 Points | Pre-Frail State | Progressive Resistance Training + Protein Optimization | | FRAIL = 3–5 Points (e.g., 3) | Overt Clinical Frailty | Comprehensive Geriatric Assessment, Deprescribing & Rehab | - **Formula (Total 5-Item Morley FRAIL Scale Score (0–5 Points))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Invalid FRAIL Binary Flag (0/1)", SUM(B2:B6))` - **Formula (ICFSR Frailty Phenotype Stratification (Robust / Pre-Frail / Frail))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Invalid FRAIL Binary Flag (0/1)", IF(SUM(B2:B6) >= 3, "Overt Clinical Frailty (FRAIL 3-5) — Comprehensive Geriatric Assessment, Resistance Rehab & Deprescribing", IF(SUM(B2:B6) >= 1, "Pre-Frail Phenotype (FRAIL 1-2) — Progressive Resistance Exercise & Protein Review", "Robust Older Adult (FRAIL 0)")))` ### Cox Survival 10-Year Cardiovascular Risk (Framingham / PCE Formula) - **URL**: https://sheets.arte-soft.com/en/learn/framingham-and-pooled-cohort-logit-10-year-cvd-risk-formula/ - **Summary**: Evaluate 10-year ASCVD / Framingham Cox proportional-hazards event probability Risk_10yr = 1 - (S_0 ^ EXP(Individual_BetaX - CohortMean_BetaX)) and ACC/AHA risk-tier thresholds. *Table — Understand the exact Cox survival math inside ACC/AHA & Framingham calculators!:* | Patient Profile (Cohort S_0 = 0.9144, Mean_BetaX = 61.18) | Ind_BetaX Score | Hazard Ratio EXP(dB) | 10-Yr Risk = 1 - S_0^HR | | --- | --- | --- | --- | | Cohort-Average Risk Profile | 61.18 (dB = 0.00) | HR = 1.000x | 1 - 0.9144 = 0.0856 (8.56% Interm.) | | Elevated Multi-Factor Profile | 62.10 (dB = +0.92) | HR = 2.509x | 0.2011 (20.11% High Risk >=20%!) | | Optimal Nonsmoker Profile | 59.50 (dB = -1.68) | HR = 0.186x | 0.0165 (1.65% Low Risk <5%) | - **Formula (Cox Proportional-Hazards 10-Year Event Probability = 1 - S_0 ^ EXP(Ind - Mean))**: `=IF(OR(B2 <= 0, B2 >= 1), "Baseline S0 Must Be in (0, 1)", ROUND(1 - (B2 ^ EXP(B4 - B3)), 4))` - **Formula (ACC / AHA Primary-Prevention 10-Year ASCVD Risk Tier Classifier)**: `=LET(r, 1 - (B2 ^ EXP(B4 - B3)), IFS(r < 0.05, "Low Risk (<5%)", r < 0.075, "Borderline Risk (5-7.4%)", r < 0.20, "Intermediate Risk (7.5-19.9%)", TRUE, "High Risk (>=20%)"))` ### Francis Turbine Specific Speed & Thoma Draft-Tube Formula - **URL**: https://sheets.arte-soft.com/en/learn/francis-hydro-turbine-thoma-cavitation-sigma-specific-speed-and-draft-tube-setting/ - **Summary**: Calculate Metric Power Specific Speed Ns, Required Runner Suction Head NPSH_r (m), Maximum Safe Runner Elevation Above Tailwater Hs,max (m), and Cavitation Submergence Margin (m). *Table — Set a high-specific-speed Francis hydro runner 1.2 m ABOVE tailwater at 1,000 m mountain altitude and draft-tube vacuum boils stainless runner blades into Swiss cheese!:* | Francis Turbine Thoma KPI (300 RPM, 42 MW, Hv=0.24 m, Installed Hs=+1.20 m) | Formula | Verified Output | | --- | --- | --- | | Metric Power Specific Speed Ns | (RPM * SQRT(Power_MW * 1000)) / (Head_m ^ 1.25) | 238.2 medium Francis (486.6 axial/fast!) | | Required Suction Head NPSHr (m) | Thoma_Crit_Sigma * Net_Head_H_m | 7.48 m (10.56 m @ sigma=0.22) | | Max Runner Elevation Hs,max (m) | Barometric_m - Vapor_Hv_m - (sigma * H_m) | +2.38 m (-1.60 m MUST SUBMERGE!) | | Net Submergence Safety Margin (m) | Max_Setting_Hs_max_m - Installed_Hs_m | +1.18 m safe (-2.80 m SEVERE CAVITATION!) | - **Formula (Thoma (1924) Hydro-Turbine Cavitation Sigma & Draft-Tube Submergence Formula)**: `=LET(hn_m, B2, nr_p, B3, pm_w, B4, ha_m, B5, hv_m, B6, sc_t, B7, hs_i, B8, hm_x, ha_m - hv_m - (sc_t * hn_m), IF(OR(hn_m < 5, hn_m > 800, nr_p < 50, nr_p > 1500, pm_w < 0.1, pm_w > 1000, ha_m < 6.5, ha_m > 10.6, hv_m < 0.05, hv_m > 1.5, sc_t < 0.02, sc_t > 1.5, hs_i < -30, hs_i > 8), "Invalid Francis Input", ROUND(hm_x - hs_i, 2)))` - **Formula (Low-Head High-Altitude Powerhouse (`H = 48` m, `H_atm = 9.2` m, `sigma = 0.22`) Cavitation Check)**: `=IF(ISTEXT(E5), E5, ROUND(B5 - B6 - (B7 * B2), 2))` ### Franz-Keldysh Electro-Absorption Energy (ħΘ_FK) Modulator Formula - **URL**: https://sheets.arte-soft.com/en/learn/franz-keldysh-electro-absorption-characteristic-energy-formula/ - **Summary**: Calculate the Franz-Keldysh photon-assisted tunneling energy ħΘ_FK = 0.72495 * (F^2 / m_r)^(1/3) (meV) governing bulk III-V electro-absorption optical modulators. *Table — How a 100 kV/cm electric field turns a transparent semiconductor opaque below its bandgap!:* | GaAs PIN Reverse Field F (m_r = 0.0583 m0) | Franz-Keldysh Energy ħΘ_FK (meV) | Field Scaling F^(2/3) | Telecom EAM State | | --- | --- | --- | --- | | F = 100 kV/cm (Low Reverse Bias) | 40.28 meV | Baseline 1.00× | Moderate Band-Edge Tail | | F = 250 kV/cm (2.5× Modulation Swing) | 74.20 meV | 2.5^(2/3) = 1.842× | High Extinction (> 12 dB ON/OFF) | | Invalid m_r <= 0 or F <= 0 | Undefined | Positivity Guard | "Invalid Electro-Optic Inputs" | - **Formula (Franz-Keldysh Characteristic Electro-Optic Energy ħΘ_FK (meV))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Electro-Optic Inputs", ROUND(0.72495 * (((B2 ^ 2) / B3) ^ (1 / 3)), 2))` - **Formula (Reduced Electron-Hole Effective Mass Ratio m_r = (m_e * m_h) / (m_e + m_h))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Mass Inputs", ROUND((B4 * B5) / (B4 + B5), 4))` ### Freedman Log-Rank Sample Size Formula: Required Events ((k*HR + 1)/(HR - 1))² - **URL**: https://sheets.arte-soft.com/en/learn/freedman-log-rank-exponential-hazard-ratio-events-formula/ - **Summary**: Calculate conservative log-rank survival event targets under non-null variance using Laurence S. Freedman’s 1982 Statistics in Medicine formula E = ROUNDUP((z_alpha + z_beta)² * (1 + k*HR)² / (k * (1 - HR)²), 0). *Table — Freedman (1982) vs. Schoenfeld (1983): why regulatory protocols compare both log-rank event formulas!:* | Randomized Trial Design (alpha=0.05, 80% Power) | Freedman Events E (Conservative) | Schoenfeld Events Comparison | Allocation Ratio k = N_exp/N_ctrl | | --- | --- | --- | --- | | HR = 0.70, 1:1 Allocation (k = 1) | 253 Events | 247 Events (+6 safety margin) | Balanced 1:1 | | HR = 0.80, 1:1 Allocation (k = 1) | 636 Events | 631 Events (+5 safety margin) | Balanced 1:1 | | HR = 0.70, 2:1 Allocation (k = 2) | 272 Events | 278 Events | 2:1 Experimental:Control | - **Formula (Freedman Required Log-Rank Events E = ROUNDUP((z_a + z_b)² * (1 + k*HR)² / (k * (1 - HR)²), 0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 = 1, B5 <= 0), "Invalid Freedman Log-Rank Inputs", ROUNDUP((((B2 + B3) ^ 2) * ((1 + B5 * B4) ^ 2)) / (B5 * ((1 - B4) ^ 2)), 0))` - **Formula (Expected Experimental-Arm Event Share Under Alternative HR = (k * HR) / (1 + k * HR))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 = 1, B5 <= 0), "Invalid Freedman Log-Rank Inputs", ROUND((B5 * B4) / (1 + B5 * B4), 4))` ### Illustrate a simplified US self-employment tax cash reserve - **URL**: https://sheets.arte-soft.com/en/learn/freelance-self-employment-and-quarterly-estimated-tax/ - **Summary**: Practice a below-wage-cap US self-employment tax illustration and a rough equal-period cash reserve, not a filing calculation. *Table — Separate a simplified reserve from an actual estimated-tax payment:* | Freelance Tax Reserve Line ($100k Net Profit) | Formula | Result | | --- | --- | --- | | Taxable SE Base (92.35% of Net) | =A2 * 0.9235 | $92,350.00 | | Self-Employment Tax (15.3% FICA) | =ROUND(A2 * 0.9235 * 0.153, 2) | $14,129.55 | | 50% Deductible Employer Half (AGI) | =ROUND((A2 * 0.9235 * 0.153) / 2, 2) | $7,064.78 | | Quarterly 1040-ES Set-Aside (22% rate) | =ROUND((SE + (A2 - SE/2) * B2) / 4, 2) | $8,643.82 / quarter | - **Formula (Annual Self-Employment Tax and Quarterly Estimated Tax Reserve formulas)**: `=ROUND(IF(MAX(0,A2)*0.9235<400,0,MAX(0,A2)*0.9235*0.153),2)` - **Formula (Rough equal-period cash reserve)**: `=LET(se,IF(MAX(0,A2)*0.9235<400,0,MAX(0,A2)*0.9235*0.153),ROUND((se+(MAX(0,A2)-se/2)*B2)/4,2))` ### French TMA Score (Coppo Rule): Severe ADAMTS13 Deficiency Probability in TTP (0 to 3) - **URL**: https://sheets.arte-soft.com/en/learn/french-tma-coppo-score-thrombotic-thrombocytopenic-purpura/ - **Summary**: Differentiate immune Thrombotic Thrombocytopenic Purpura (iTTP, ADAMTS13 < 10%) from atypical HUS in thrombotic microangiopathy using Paul Coppo’s ISTH-endorsed French TMA Score (Platelets <= 30 × 10⁹/L + Creatinine <= 200 umol/L + ANA positive). *Table — Why profound thrombocytopenia WITH preserved renal function points strongly toward ADAMTS13-deficient iTTP!:* | French TMA Score (0–3 Points) | Severe ADAMTS13 (< 10%) Probability | ISTH Emergent TMA Management | | --- | --- | --- | | Score 2–3 (e.g., Plt 14, Cr 118, ANA+) | ~85%–98% Severe ADAMTS13 Deficiency | Immediate Plasma Exchange + Immunosuppression ± Caplacizumab | | Score 1 (Mixed TMA Phenotype) | Intermediate Probability (~40%–55%) | Empiric PEX Judgment + Urgent STAT ADAMTS13 Assay | | Score 0 (e.g., Plt 68, Cr 410 umol/L) | < 5% iTTP (Favors Complement aHUS) | Evaluate Complement Blockade (Eculizumab/Ravulizumab) Workup | - **Formula (Coppo French TMA Score (0 to 3 Points from Raw Platelets, Creatinine umol/L & ANA))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1), "Invalid TMA Lab Inputs", IF(B2 <= 30, 1, 0) + IF(B3 <= 200, 1, 0) + B4)` - **Formula (ISTH French TMA Emergent Plasma Exchange Stratification)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1), "Invalid TMA Lab Inputs", IF(IF(B2 <= 30, 1, 0) + IF(B3 <= 200, 1, 0) + B4 >= 2, "High iTTP Probability (French Score >= 2 — Emergent PEX / Caplacizumab Pathway)", IF(IF(B2 <= 30, 1, 0) + IF(B3 <= 200, 1, 0) + B4 = 1, "Intermediate iTTP Probability (French Score = 1 — STAT ADAMTS13)", "Low iTTP Probability (French Score = 0 — Evaluate aHUS / Secondary TMA)")))` ### Frenkel Viscous Sintering Neck Ratio & Shrinkage Formula - **URL**: https://sheets.arte-soft.com/en/learn/frenkel-viscous-sintering-neck-growth-capillary-rate-and-porosity-closure-formula/ - **Summary**: Calculate Viscous Capillary Characteristic Time (min), Frenkel Neck-to-Particle Radius Ratio (x/r), Isotropic Linear Shrinkage (-dL/L0 %), and Frenkel-vs-Mackenzie Regime Status. *Table — Raising LTCC glass-frit firing temperature just +35°C drops viscosity 5x (log10 eta from 8.8 to 8.1) while halving particle size—speeding densification shrinkage 10-fold!:* | Frenkel (1945) Viscous Sintering KPI (gamma=0.32 N/m) | Formula | Verified Output | | --- | --- | --- | | Viscous Characteristic Time (min) | (((10 ^ LogEta) * (r_um * 1e-6)) / gamma) / 60 | 394.3 min (39.3 min @ fine hot frit!) | | Frenkel Neck Ratio (x / r) | SQRT((3 * gamma * t_s) / (2 * eta * r_m)) | 0.302 (0.756 coalesced spheres) | | Isotropic Linear Shrinkage (%) | ((3 * gamma * t_s) / (8 * eta * r_m)) * 100 | 2.28% (14.30% full densification) | | Sintering Kinetics Regime Gate | IF(x_over_r <= 0.45, "INITIAL FRENKEL...", "LATE MACKENZIE...") | INITIAL FRENKEL NECK STAGE | - **Formula (Yakov Frenkel (1945) Viscous Capillary Neck Coalescence & Linear Shrinkage Formula)**: `=LET(gm_n, B2, rp_u, B3, lg_v, B4, tm_m, B5, IF(OR(gm_n < 0.05, gm_n > 1.5, rp_u < 0.2, rp_u > 500, lg_v < 5, lg_v > 13, tm_m <= 0, tm_m > 1440), "Invalid Sinter Input", ROUND((((10 ^ lg_v) * (rp_u * 0.000001)) / gm_n) / 60, 1)))` - **Formula (Jet-Milled Fine Frit (`r = 6` um) + Hotter Peak (`log10 eta = 8.1`, `15` min) Pore-Closure Check)**: `=IF(ISTEXT(E2), E2, ROUND(SQRT((3 * B2 * (B5 * 60)) / (2 * (10 ^ B4) * (B3 * 0.000001))), 3))` ### Frequency Polygon Chart Formula: Class Midpoints, Zero Anchor Bins & Grouped Mean - **URL**: https://sheets.arte-soft.com/en/learn/frequency-polygon-chart-class-midpoint-and-zero-anchor-bins/ - **Summary**: Construct a true closed Frequency Polygon line/scatter chart: calculate Class Midpoints x_m = (Lower + Upper) / 2, add zero-frequency boundary anchor bins so polygon area equals histogram area, and compute Grouped Mean. *Table — Why a true Frequency Polygon requires Class Midpoints AND two zero-frequency outer anchor bins!:* | Bin Role | Lower Bound L_k | Upper Bound U_k | Class Midpoint x_m,k | Frequency f_k | Relative Frequency (%) | | --- | --- | --- | --- | --- | --- | | Left Zero Anchor Bin | 0 | 10 | 5.0 | 0 | 0.00% | | Class 1 | 10 | 20 | 15.0 | 8 | 20.00% | | Class 2 (Modal Peak) | 20 | 30 | 25.0 | 18 | 45.00% | | Class 3 | 30 | 40 | 35.0 | 14 | 35.00% | | Right Zero Anchor Bin | 40 | 50 | 45.0 | 0 | 0.00% | - **Formula (Class Interval Midpoint x_m = (Lower + Upper) / 2)**: `=IF(B4 <= A4, "Upper Bound Must Exceed Lower Bound", ROUND((A4 + B4) / 2, 2))` - **Formula (Grouped Sample Mean from Class Midpoints & Frequencies)**: `=IF(OR(MIN(C2:C6) < 0, SUM(C2:C6) <= 0), "Requires Positive Total Frequency", ROUND(SUMPRODUCT((A2:A6 + B2:B6) / 2, C2:C6) / SUM(C2:C6), 2))` ### Fresnel Optical Reflectance, Transmittance & Brewster's Angle formulas - **URL**: https://sheets.arte-soft.com/en/learn/fresnel-normal-incidence-reflectance-and-brewster-angle/ - **Summary**: Calculate uncoated glass or crystal surface reflection loss R = ((n1 - n2) / (n1 + n2))^2, single-interface transmittance 1 - R, and Brewster's polarizing angle ATAN(n2 / n1). *Table — Model a single lossless dielectric interface:* | Optical Interface Metric | Formula | Air to Crown Glass (1.00 -> 1.50) | Air to Diamond (1.00 -> 2.42) | | --- | --- | --- | --- | | Normal Power Reflectance R | ((B2 - B3) / (B2 + B3)) ^ 2 | 4.00% (0.0400) | 17.24% (0.1724) | | Single-Surface Transmittance T | 1 - (((B2 - B3)/(B2 + B3)) ^ 2) | 96.00% (0.9600) | 82.76% (0.8276) | | Brewster Polarizing Angle (deg) | DEGREES(ATAN(B3 / B2)) | 56.31 degrees | 67.55 degrees | - **Formula (Normal-Incidence Fresnel Power Reflectance R = ((n1 - n2) / (n1 + n2))^2)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(((B2 - B3) / (B2 + B3)) ^ 2, 4)))` - **Formula (Brewster angle for the p-polarized component)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",IF(B2=B3,"No unique angle",ROUND(DEGREES(ATAN(B3/B2)),2))))` - **Formula (Normal-incidence power transmittance)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(1 - (((B2 - B3) / (B2 + B3)) ^ 2), 4)))` ### Friction Stir Welding (FSW) Pitch, Heat Index & Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/friction-stir-welding-fsw-rotational-heat-index-weld-pitch-and-spindle-power-formula/ - **Summary**: Calculate FSW Advance-per-Revolution Weld Pitch (mm/rev), Arbegast Pseudo-Heat Index, Mechanical Spindle Stir Power (kW), and Net Linear Heat Input (J/mm). *Table — Fusion-weld 2xxx/7xxx aircraft aluminum and hot-cracking ruins the seam—Friction Stir Welding plasticizes metal 100 °C BELOW its melting point!:* | AWS D17.3 Friction Stir Welding KPI (M=44 N·m, eta=0.88: Optimal 950/380 vs Over-Hot 1400/220) | Formula | Verified Output | | --- | --- | --- | | Advance per Revolution APR (mm/rev) | Traverse_Speed_mm_min / Spindle_RPM | 0.400 mm/rev (0.157 mm/rev flash @ 1400/220!) | | Arbegast Pseudo-Heat Index | (Spindle_RPM ^ 2) / (Traverse_mm_min * 1000) | 2.375 (8.909 HAZ over-aging @ 1400/220!) | | Mechanical Spindle Power (kW) | (2 * PI() * Spindle_RPM * Torque_Nm) / 60000 | 4.38 kW (6.45 kW @ 1,400 RPM) | | Net Linear Heat Input (J/mm) | (eta * Power_kW * 1000) / (Traverse_mm_min / 60) | 608.2 J/mm (1,548.2 J/mm = 2.5x HAZ softening!) | - **Formula (FSW Kinematic Pitch, Arbegast Heat Index & Torque-Based Linear Heat Formula)**: `=LET(nr_p, B2, vt_m, B3, mt_n, B4, et_h, B5, pk_w, (2 * PI() * nr_p * mt_n) / 60000, IF(OR(nr_p < 100, nr_p > 4000, vt_m < 20, vt_m > 3000, mt_n <= 1, et_h < 0.5, et_h > 0.98), "Invalid FSW Schedule", ROUND((et_h * pk_w * 1000) / (vt_m / 60), 1)))` - **Formula (Over-Hot 1,400 RPM / 220 mm/min Schedule T6 Precipitate Over-Aging Check)**: `=IF(ISTEXT(E5), E5, ROUND((2 * PI() * B2 * B4) / 60000, 2))` ### Friedel Two-Phase Pressure-Drop Multiplier (Phi_LO^2) Formula: Froude & Weber Pipe Flow - **URL**: https://sheets.arte-soft.com/en/learn/friedel-two-phase-frictional-pressure-drop-multiplier-weber-froude/ - **Summary**: Calculate two-phase gas-liquid frictional pressure drop dP_TP = Phi_LO^2 * dP_LO in horizontal and vertical upward pipelines using Lutz Friedel’s (1979) 25,000-point correlation incorporating Froude (Fr_H) and Weber (We_L) numbers. *Table — Why Friedel (1979) is the industry gold standard when mu_L / mu_G < 1,000!:* | Friedel Dimensionless Group (x = 0.15, rho_L/rho_G = 40, mu_G/mu_L = 0.05) | Formula | Evaluated Value | | --- | --- | --- | | Single-Phase Limit Term E (f_GO/f_LO = 0.80) | (1 - x)^2 + x^2 * (rho_L/rho_G) * (f_GO/f_LO) | 1.4425 | | Quality Slip Term F | x^0.78 * (1 - x)^0.224 | 0.2198 | | Fluid Property Term H | (rho_L/rho_G)^0.91 * (mu_G/mu_L)^0.19 * (1 - mu_G/mu_L)^0.70 | 15.6948 | | Friedel Multiplier Phi_LO^2 (at Fr_H = 18, We_L = 4,500) | E + 3.24 * F * H / (Fr_H^0.045 * We_L^0.035) | 8.73 | - **Formula (Friedel Single-Phase Anchor Term E)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 1, B5 <= 0), "Requires 0 < x < 1, rho_L/rho_G > 1, and f_GO/f_LO > 0", ROUND(((1 - B2) ^ 2) + (B2 ^ 2) * B3 * B5, 4))` - **Formula (Full Friedel (1979) Two-Phase Liquid-Only Multiplier Phi_LO^2)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 1, B4 <= 0, B4 >= 1, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Two-Phase Quality, Property Ratios, Fr_H, or We_L", ROUND(((1 - B2) ^ 2) + (B2 ^ 2) * B3 * B5 + (3.24 * ((B2 ^ 0.78) * ((1 - B2) ^ 0.224)) * ((B3 ^ 0.91) * (B4 ^ 0.19) * ((1 - B4) ^ 0.7))) / ((B6 ^ 0.045) * (B7 ^ 0.035)), 2))` ### Friedewald LDL-C estimate, non-HDL-C and TC/HDL: guarded spreadsheet examples - **URL**: https://sheets.arte-soft.com/en/learn/friedewald-ldl-cholesterol-non-hdl-and-atherogenic-index/ - **Summary**: Calculate three different lipid-panel quantities with explicit mg/dL units, input checks and limits on the Friedewald estimate. - **Formula (Guarded Friedewald LDL Cholesterol in mg/dL (blocks TG >= 400))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B3>B2),"Invalid inputs",IF(B4>=400,"Outside Friedewald range",IF(B2-B3-B4/5<0,"Negative estimate: review inputs",ROUND(B2-B3-B4/5,1)))))` - **Formula (Non-HDL cholesterol in mg/dL)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0,B3>B2),"Invalid inputs",B2-B3))` - **Formula (Total-to-HDL ratio)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0,B3>B2),"Invalid inputs",ROUND(B2/B3,2)))` ### Friedman Repeated-Measures Rank Test and Iman-Davenport F Formula - **URL**: https://sheets.arte-soft.com/en/learn/friedman-two-way-rank-variance-test-and-iman-davenport-f-approximation/ - **Summary**: Rank repeated-measures blocks row by row in Excel and Arte Sheets, verify the rank-sum invariant, and compute Friedman’s Q alongside the sharper Iman-Davenport F statistic. *Table — Rank within each subject row — never across the entire table!:* | Statistic (N = 6, k = 3) | Exact Formula | Sample Output | | --- | --- | --- | | Total Rank-Sum Checksum | N * k * (k + 1) / 2 | 36 (7 + 12 + 17) | | Friedman Chi-Square Q | (12 / (N*k*(k+1))) * SUM(R_j^2) - 3*N*(k+1) | 8.3333 (25 / 3) | | Iman-Davenport F_ID (df 2, 10) | ((N - 1) * Q) / (N * (k - 1) - Q) | 11.3636 (125 / 11) | | Kendall Concordance W | Q / (N * (k - 1)) | 0.6944 (25 / 36) | - **Formula (Friedman Chi-Square Q Formula)**: `=LET(n_blk, ROWS(E2:G7), k_trt, COLUMNS(E2:G7), r_1, SUM(E2:E7), r_2, SUM(F2:F7), r_3, SUM(G2:G7), ROUND((12 / (n_blk * k_trt * (k_trt + 1))) * (r_1^2 + r_2^2 + r_3^2) - 3 * n_blk * (k_trt + 1), 4))` - **Formula (Iman-Davenport F Statistic Formula (Guarding Perfect Agreement))**: `=LET(n_blk, ROWS(E2:G7), k_trt, COLUMNS(E2:G7), r_1, SUM(E2:E7), r_2, SUM(F2:F7), r_3, SUM(G2:G7), q_stat, (12 / (n_blk * k_trt * (k_trt + 1))) * (r_1^2 + r_2^2 + r_3^2) - 3 * n_blk * (k_trt + 1), denom, n_blk * (k_trt - 1) - q_stat, IF(denom <= 0.000001, "Perfect Concordance (W=1)", ROUND(((n_blk - 1) * q_stat) / denom, 4)))` ### Friedmann Equation: Cosmological Critical Density & Hubble H(z) - **URL**: https://sheets.arte-soft.com/en/learn/friedmann-equation-hubble-parameter-and-critical-density-formula/ - **Summary**: Calculate the universe’s critical closure density rho_crit = (3 * H_0^2) / (8 * PI() * G) (in 10^-27 kg/m^3) and flat Lambda-CDM expansion rate H(z) = H_0 * SQRT(Omega_m * (1 + z)^3 + Omega_Lambda) at redshift z. *Table — Compute cosmic critical density (~5 hydrogen atoms/m^3) and high-redshift Hubble expansion!:* | Cosmological Redshift Epoch (H0 = 67.4, Omega_m = 0.315) | Matter Term Omega_m*(1+z)^3 | Hubble Parameter H(z) (km/s/Mpc) | Cosmic Expansion Era | | --- | --- | --- | --- | | Present Universe (z = 0.0) | 0.315 (< 0.685 Lambda) | 67.40 km/s/Mpc | Dark-Energy Accelerated Era | | Lookback ~7.8 Gyr (z = 1.0) | 2.520 (> 0.685 Lambda) | 120.66 km/s/Mpc | Matter-Dominated Deceleration | | Cosmic Noon Starbursts (z = 2.0) | 8.505 | 204.32 km/s/Mpc | Rapid Early Expansion | - **Formula (Present-Day Critical Density rho_crit,0 (in Units of 10^-27 kg/m^3))**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0), "Invalid Cosmology Inputs", ROUND(((3 * ((B2 / 30856775800000000000) ^ 2)) / (8 * PI() * 0.000000000066743)) * (10 ^ 27), 4))` - **Formula (Flat Lambda-CDM Hubble Expansion Rate H(z) (km/s/Mpc) at Redshift z)**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0), "Invalid Cosmology Inputs", ROUND(B2 * SQRT(B3 * ((1 + B4) ^ 3) + (1 - B3)), 2))` ### Friis Cascaded RF Noise Figure (dB) and LNA Placement Formula - **URL**: https://sheets.arte-soft.com/en/learn/friis-cascaded-rf-receiver-noise-factor-and-noise-figure-db/ - **Summary**: Calculate 3-stage cascaded RF receiver Noise Factor F_tot = F_1 + (F_2 - 1)/G_1 + (F_3 - 1)/(G_1*G_2) and Noise Figure NF_dB = 10*LOG10(F_tot) in Excel and Arte Sheets. *Table — Never add dB noise figures directly — convert to linear F_k and G_k via Friis’s equation!:* | RF Front-End Cascade Order | Linear Noise Factor F_tot | Cascaded Noise Figure NF_dB | | --- | --- | --- | | Masthead LNA First (3dB/+20dB -> 6dB/+10dB -> 10dB) | 2.0341 | 3.0837 dB (Optimal Sensitivity) | | Lossy Cable Before LNA (6dB/-6dB -> 3dB/+20dB -> 10dB) | 8.3016 | 9.1916 dB (+6.11 dB Penalty!) | | Noiseless Downstream Stages (NF_2 = NF_3 = 0 dB) | 1.9953 | 3.0000 dB (= Stage 1 NF) | - **Formula (Friis 3-Stage Cascaded Noise Figure NF_tot (dB) Formula)**: `=LET(nf_1, B2, gn_1, B3, nf_2, B4, gn_2, B5, nf_3, B6, IF(OR(nf_1 < 0, nf_2 < 0, nf_3 < 0), "Invalid Noise Figure (Require NF_dB >= 0)", LET(f_1, POWER(10, nf_1 / 10), g_1, POWER(10, gn_1 / 10), f_2, POWER(10, nf_2 / 10), g_2, POWER(10, gn_2 / 10), f_3, POWER(10, nf_3 / 10), f_tot, f_1 + (f_2 - 1) / g_1 + (f_3 - 1) / (g_1 * g_2), ROUND(10 * LOG10(f_tot), 4))))` - **Formula (Linear Cascaded Noise Factor F_tot Formula)**: `=LET(nf_1, B2, gn_1, B3, nf_2, B4, gn_2, B5, nf_3, B6, IF(OR(nf_1 < 0, nf_2 < 0, nf_3 < 0), "Invalid Noise Figure (Require NF_dB >= 0)", LET(f_1, POWER(10, nf_1 / 10), g_1, POWER(10, gn_1 / 10), f_2, POWER(10, nf_2 / 10), g_2, POWER(10, gn_2 / 10), f_3, POWER(10, nf_3 / 10), ROUND(f_1 + (f_2 - 1) / g_1 + (f_3 - 1) / (g_1 * g_2), 4))))` ### Free-Space Path Loss (FSPL), Friis RF link power & Inverse-Square dB drop - **URL**: https://sheets.arte-soft.com/en/learn/friis-free-space-path-loss-fspl-and-inverse-square-spl/ - **Summary**: Calculate wireless RF attenuation FSPL(dB) = 20*LOG10(d_km) + 20*LOG10(f_MHz) + 32.44, Friis received dBm, and acoustic -20*LOG10(d2/d1) distance attenuation. *Table — Model wireless Wi-Fi / LoRa / satellite path loss & 6.02 dB distance doubling!:* | RF Link Parameter | Cell | 2.4 GHz Point-to-Point Link | Decibel Result | | --- | --- | --- | --- | | Link Distance (d_km) | B2 | 5 km | 20*LOG10(5) = 13.98 dB | | Carrier Frequency (f_MHz) | B3 | 2,400 MHz (2.4 GHz) | 20*LOG10(2400) = 67.60 dB | | Tx Power & Gains (Pt, Gt, Gr) | B4:B6 | 20 dBm + 6 dBi + 6 dBi | 26 dBm EIRP; 32 dBm before path loss including Rx gain | | FSPL & Friis Rx Power | LOG10 Formula | FSPL = 114.02 dB \| Pr = -82.02 dBm | 10 km doubles distance -> 120.04 dB | - **Formula (ITU Free-Space Path Loss FSPL(dB) for km and MHz)**: `=IF(OR(COUNT(B2:B3)<>2,B2<=0,B3<=0),"Invalid inputs",ROUND(20 * LOG10(B2) + 20 * LOG10(B3) + 32.44, 2))` - **Formula (Friis Received Power Pr (dBm) = Pt + Gt + Gr - FSPL)**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B3<=0),"Invalid inputs",ROUND(B4 + B5 + B6 - (20 * LOG10(B2) + 20 * LOG10(B3) + 32.44), 2))` ### Friis Free-Space Path Loss (FSPL), Nyquist Noise Floor & RF Link SNR Margin - **URL**: https://sheets.arte-soft.com/en/learn/friis-free-space-path-loss-fspl-and-nyquist-thermal-noise-floor-dbm/ - **Summary**: Build an end-to-end RF wireless link budget in dB/dBm combining exact speed-of-light Friis FSPL, Johnson-Nyquist k_B*T*B thermal noise floor plus receiver noise figure, and carrier-to-noise ratio (SNR). *Table — Combining Friis inverse-square aperture spreading with Johnson-Nyquist thermal noise:* | RF Link Stage (10 km, 2,400 MHz, 20 MHz BW) | Formula | Decibel Level | | --- | --- | --- | | Free-Space Path Loss FSPL | 20 * LOG10(4*PI()*d_m*f_Hz / 299792458) | 120.05 dB | | Received Carrier Power P_rx | P_tx (20 dBm) + G_net (16 dBi) - FSPL | -84.05 dBm | | Receiver Noise Floor (T=290 K, NF=5 dB) | 10*LOG10(k_B*T*B*1000) + NF_dB | -95.96 dBm | | Post-Receiver Carrier SNR | P_rx_dBm - N_floor_dBm | 11.91 dB | - **Formula (Exact Speed-of-Light Friis FSPL Formula (dB))**: `=ROUND(20 * LOG10((4 * PI() * (B2 * 1000) * (B3 * 1000000)) / 299792458), 2)` - **Formula (Johnson-Nyquist Receiver Noise Floor Formula (dBm))**: `=ROUND(10 * LOG10(1.380649E-23 * B6 * (B7 * 1000000) * 1000) + B8, 2)` ### Froude vs Reynolds Scale-Model Similitude Scaling Formula - **URL**: https://sheets.arte-soft.com/en/learn/froude-and-reynolds-hydrodynamic-aero-model-scale-similitude-formula/ - **Summary**: Calculate Tow-Tank Froude-Scaled Model Speed V_proto / SQRT(Lambda), Cubic Force Scaling F_proto / Lambda^3, Propulsion Power Scaling P_proto / Lambda^3.5, and Unpressurized Reynolds-Similitude Speed V_proto * Lambda. *Table — See why ship tow tanks and wind tunnels cannot satisfy Froude and Reynolds similitude simultaneously!:* | Similitude Scaling Metric (Scale Lambda=25, V_proto=15 m/s, F_proto=500 kN) | Formula | Verified Output | | --- | --- | --- | | Froude Tow-Tank Speed (m/s) | V_proto / SQRT(Scale_Ratio_Lambda) | 3.00 m/s (15.00 @ 1:1 Scale) | | Froude Model Drag Force (N) | (F_proto_kN * 1000) / (Lambda^3) | 32.00 N (500,000 N @ 1:1) | | Froude Model Tow Power (W) | (F_proto_N * V_proto) / (Lambda^3.5) | 96.00 W | | Unpressurized Reynolds Speed | V_proto * Scale_Ratio_Lambda | 375.00 m/s (Incompatibility Proof) | - **Formula (Froude-Similitude Model Tow-Power Scaling (Lambda^3.5) Formula)**: `=LET(lm_s, B2, vp_m, B3, fp_k, B4, IF(OR(lm_s < 1, vp_m <= 0, fp_k <= 0), "Invalid Similitude Scale Input", ROUND((fp_k * 1000 * vp_m) / (lm_s ^ 3.5), 2)))` - **Formula (Full-Scale 1:1 Identity Verification Check (Set Scale Ratio Lambda = 1))**: `=IF(ISTEXT(E4), E4, ROUND(B3 * B2, 2))` ### Froude Number (Fr = V / SQRT(gD)) & Weber Number (We = rho*V^2*d / sigma) - **URL**: https://sheets.arte-soft.com/en/learn/froude-number-and-weber-number-fluid-mechanics-formulas/ - **Summary**: Calculate an open-channel Froude number and a separately specified Weber number with explicit length, velocity and density conventions. *Table — Gravity waves vs surface tension: two dimensionless ratios every fluid engineer needs!:* | Dimensionless Group | Formula | Inputs (V = 3 m/s, D = 1.5 m) | Calculated Value & Regime | | --- | --- | --- | --- | | Froude Number (Fr) | B2 / SQRT(B3 * B4) | 3 / SQRT(9.81 * 1.5) | 0.7821 (< 1 Subcritical) | | Open-Channel Regime | IF(Fr < 1, "Subcritical", ...) | Tranquil river / canal flow | "Subcritical" | | Flood Spillway (V = 6 m/s) | B2 set to 6 m/s | 6 / SQRT(14.715) = 1.5641 | "Supercritical" (> 1!) | | Weber Number (2 mm drop) | (B5 * B8^2 * B6) / B7 | (1000 * 9 * 0.002) / 0.072 | 250.00 (liquid-based definition) | - **Formula (Open-channel Froude number)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0),"Invalid inputs",ROUND(B2 / SQRT(B3 * B4), 4)))` - **Formula (Weber number for the specified density and speed convention)**: `=IF(COUNT(B5:B8)<>4,"Invalid inputs",IF(OR(B5<=0,B6<=0,B7<=0,B8<0),"Invalid inputs",ROUND((B5 * (B8 ^ 2) * B6) / B7, 2)))` - **Formula (Classify the unrounded channel ratio)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0),"Invalid inputs",LET(flowRatio,B2/SQRT(B3*B4),IF(ABS(flowRatio-1)<=1E-8,"Near critical",IF(flowRatio<1,"Subcritical","Supercritical")))))` ### Fudenberg-Tirole Top Dog & Puppy Dog Strategy Formula - **URL**: https://sheets.arte-soft.com/en/learn/fudenberg-tirole-top-dog-puppy-dog-fat-cat-strategic-taxonomy-audit/ - **Summary**: Classify Stage-1 strategic over- vs under-investment into Drew Fudenberg and Jean Tirole’s (1984) four animal strategies (Top Dog, Puppy Dog, Fat Cat, Lean and Hungry) using Tough/Soft and Substitutes/Complements derivatives. *Table — Why cost-reducing R&D calls for aggressive "Top Dog" over-investment in Cournot — yet cautious "Puppy Dog" restraint in Bertrand!:* | Fudenberg-Tirole Regime (Accommodation Goal = 0) | Sign Conditions | Optimal Strategic Posture | | --- | --- | --- | | Tough (T < 0) + Substitutes (S < 0) | T * S > 0 (Cournot R&D) | Overinvest: Top Dog | | Tough (T < 0) + Complements (S > 0) | T * S < 0 (Bertrand R&D) | Underinvest: Puppy-Dog Ploy | | Soft (T > 0) + Complements (S > 0) | T * S > 0 (Bertrand Loyalty) | Overinvest: Fat-Cat Effect | | Soft (T > 0) + Substitutes (S < 0) | T * S < 0 (Cournot Loyalty) | Underinvest: Lean and Hungry | - **Formula (Stage-1 Indirect Strategic Marginal Effect dPi_1_strat / dK_1 Formula)**: `=ROUND(B3 * B5 * B4, 2)` - **Formula (Exact Fudenberg-Tirole Four-Animal Strategy Classifier Formula)**: `=LET(g_det, B2, dp_dx, B3, dx_dk, B4, r_slp, B5, IF(OR(AND(g_det <> 0, g_det <> 1), dp_dx = 0, dx_dk = 0, r_slp = 0), "Zero Strategic Effect", LET(t_sgn, dp_dx * dx_dk, IF(g_det = 1, IF(t_sgn < 0, "Overinvest: Top Dog", "Underinvest: Lean and Hungry"), IFS(AND(t_sgn < 0, r_slp < 0), "Overinvest: Top Dog", AND(t_sgn < 0, r_slp > 0), "Underinvest: Puppy-Dog Ploy", AND(t_sgn > 0, r_slp > 0), "Overinvest: Fat-Cat Effect", TRUE, "Underinvest: Lean and Hungry")))))` ### Fujimoto (1968) & Kurazumi (1994) Body Surface Area (BSA) Formula: Precision Drug & GFR Indexing - **URL**: https://sheets.arte-soft.com/en/learn/fujimoto-and-kurazumi-body-surface-area-bsa-allometric-formula/ - **Summary**: Calculate Body Surface Area (m^2) using Shigeki Fujimoto et al.’s (1968) Japanese/East Asian clinical standard BSA = 0.008883 * H^0.663 * W^0.444 and Yutaka Kurazumi et al.’s (1994) modern 3D-validated reference BSA = 0.00949 * H^0.655 * W^0.441. *Table — Why PMDA oncology trials and JSN nephrology eGFR indexing specify Fujimoto BSA over DuBois!:* | Patient Anthropometry | Fujimoto (1968) BSA (m^2) | Kurazumi (1994) BSA (m^2) | DuBois (1916) Reference | | --- | --- | --- | --- | | Older Female (152 cm, 48 kg) | 1.3855 m^2 | 1.4067 m^2 | 1.4258 m^2 | | Standard Adult (170 cm, 63 kg) | 1.6837 m^2 | 1.7050 m^2 | 1.7302 m^2 | | Larger Adult (180 cm, 82 kg) | 1.9701 m^2 | 1.9922 m^2 | 2.0185 m^2 | - **Formula (Fujimoto et al. (1968) Body Surface Area BSA (m^2))**: `=IF(OR(B2 < 40, B2 > 230, B3 < 2, B3 > 250), "Invalid Height (cm) or Weight (kg)", ROUND(0.008883 * (B2 ^ 0.663) * (B3 ^ 0.444), 4))` - **Formula (Kurazumi et al. (1994) Modern Adult Body Surface Area BSA (m^2))**: `=IF(OR(B2 < 40, B2 > 230, B3 < 2, B3 > 250), "Invalid Height (cm) or Weight (kg)", ROUND(0.00949 * (B2 ^ 0.655) * (B3 ^ 0.441), 4))` ### Fuller-Schettler-Giddings Binary Gas Diffusivity Formula (D_AB) - **URL**: https://sheets.arte-soft.com/en/learn/fuller-schettler-giddings-binary-gas-diffusivity-correlation/ - **Summary**: Calculate binary gas-phase diffusion coefficients D_AB = 0.00143 * T^1.75 / (P * SQRT(M_AB) * (v_A^(1/3) + v_B^(1/3))^2) (cm^2/s) from atomic diffusion volumes. *Table — Predicting binary vapor diffusivity without Lennard-Jones collision tables!:* | Ethanol–Air Condition (vA=51.77, vB=19.70) | Harmonic Mass M_AB | FSG Gas Diffusivity D_AB (cm^2/s) | P–T Scaling Law | | --- | --- | --- | --- | | 40 °C Atmospheric Dryer (313.15 K, 1.01325 bar) | 35.572 g/mol | 0.1335 cm^2/s | Baseline VOC Vapor Film | | 100 °C Pressurized Column (373.15 K, 2.00 bar) | 35.572 g/mol | 0.0919 cm^2/s | T^1.75 / P Competition | | Zero Pressure P <= 0 | Undefined | "Invalid Gas State" | Division-by-Zero Guard | - **Formula (Fuller-Schettler-Giddings Binary Gas Diffusivity D_AB (cm^2/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Gas State", ROUND((0.00143 * (B2 ^ 1.75)) / (B3 * SQRT(2 / ((1 / B4) + (1 / B5))) * (((B6 ^ (1 / 3)) + (B7 ^ (1 / 3))) ^ 2)), 4))` - **Formula (Harmonic Mean Molecular Weight M_AB = 2 / (1/M_A + 1/M_B))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Gas State", ROUND(2 / ((1 / B4) + (1 / B5)), 3))` ### FUNC Score (0–11) Formula: 90-Day Functional Independence After Intracerebral Hemorrhage - **URL**: https://sheets.arte-soft.com/en/learn/func-score-intracerebral-hemorrhage-90-day-functional-independence/ - **Summary**: Complement the mortality-focused ICH Score by calculating Natalia S. Rost et al.’s (2008) 11-point FUNC Score (ICH Volume, Age, Location, Admission GCS, and Pre-ICH Cognitive Impairment — where HIGHER scores 0–11 predict 90-day functional independence GOS >= 4!). *Table — Why Neuro-ICUs pair Hemphill’s ICH Score (mortality) with Rost’s FUNC Score (0–11 functional recovery)!:* | FUNC Total Score (0–11 Points) | Rost et al. (2008) 90-Day Functional Independence Rate | Prognostic Interpretation (Avoid Early Withdrawal Bias!) | | --- | --- | --- | | 0 to 4 Points | ~0%–2% Independent at 90 Days | Severe functional prognosis | | 5 to 7 Points | ~13% Independent at 90 Days | Guarded functional recovery | | 8 Points | ~42% Independent at 90 Days | Intermediate recovery potential — intensive neuro-rehab | | 9 to 10 Points | ~66% Independent at 90 Days | Favorable 90-day independence outlook | | 11 Points (Maximum) | ~82% Independent at 90 Days | High likelihood of 90-day functional independence | - **Formula (Rost et al. (2008) 11-Point FUNC Score from ICH Volume, Age, Location, GCS & Prior Cognition)**: `=IF(OR(B2 < 0, B3 <= 0, B5 < 3, B5 > 15, AND(B6 <> 0, B6 <> 1), AND(UPPER(TRIM(B4 & "")) <> "LOBAR", UPPER(TRIM(B4 & "")) <> "DEEP", UPPER(TRIM(B4 & "")) <> "INFRATENTORIAL")), "Invalid FUNC Score Inputs", IF(B2 < 30, 4, IF(B2 <= 60, 2, 0)) + IF(B3 < 70, 2, IF(B3 <= 79, 1, 0)) + IF(UPPER(TRIM(B4 & "")) = "LOBAR", 2, IF(UPPER(TRIM(B4 & "")) = "DEEP", 1, 0)) + IF(B5 >= 9, 2, 0) + IF(B6 = 0, 1, 0))` - **Formula (90-Day Functional Independence Probability Band Classifier (Rost et al., 2008))**: `=IF(OR(B2 < 0, B3 <= 0, B5 < 3, B5 > 15, AND(B6 <> 0, B6 <> 1), AND(UPPER(TRIM(B4 & "")) <> "LOBAR", UPPER(TRIM(B4 & "")) <> "DEEP", UPPER(TRIM(B4 & "")) <> "INFRATENTORIAL")), "Invalid FUNC Score Inputs", IF((IF(B2 < 30, 4, IF(B2 <= 60, 2, 0)) + IF(B3 < 70, 2, IF(B3 <= 79, 1, 0)) + IF(UPPER(TRIM(B4 & "")) = "LOBAR", 2, IF(UPPER(TRIM(B4 & "")) = "DEEP", 1, 0)) + IF(B5 >= 9, 2, 0) + IF(B6 = 0, 1, 0)) = 11, "FUNC 11: ~82% 90-Day Functional Independence", IF((IF(B2 < 30, 4, IF(B2 <= 60, 2, 0)) + IF(B3 < 70, 2, IF(B3 <= 79, 1, 0)) + IF(UPPER(TRIM(B4 & "")) = "LOBAR", 2, IF(UPPER(TRIM(B4 & "")) = "DEEP", 1, 0)) + IF(B5 >= 9, 2, 0) + IF(B6 = 0, 1, 0)) >= 9, "FUNC 9–10: ~66% 90-Day Functional Independence", IF((IF(B2 < 30, 4, IF(B2 <= 60, 2, 0)) + IF(B3 < 70, 2, IF(B3 <= 79, 1, 0)) + IF(UPPER(TRIM(B4 & "")) = "LOBAR", 2, IF(UPPER(TRIM(B4 & "")) = "DEEP", 1, 0)) + IF(B5 >= 9, 2, 0) + IF(B6 = 0, 1, 0)) = 8, "FUNC 8: ~42% 90-Day Functional Independence", IF((IF(B2 < 30, 4, IF(B2 <= 60, 2, 0)) + IF(B3 < 70, 2, IF(B3 <= 79, 1, 0)) + IF(UPPER(TRIM(B4 & "")) = "LOBAR", 2, IF(UPPER(TRIM(B4 & "")) = "DEEP", 1, 0)) + IF(B5 >= 9, 2, 0) + IF(B6 = 0, 1, 0)) >= 5, "FUNC 5–7: ~13% 90-Day Functional Independence", "FUNC 0–4: Very Low (<2%) 90-Day Independence")))))` ### Fund-of-Funds Double-Layer Fee & Carry Net-TVPI Formula - **URL**: https://sheets.arte-soft.com/en/learn/fund-of-funds-double-layer-fee-and-carry-net-to-lp-drag-formula/ - **Summary**: Compare Direct Primary LP Net TVPI against Private Equity Fund-of-Funds (FoF) Two-Layer Fee & Carry Net TVPI, Cumulative Two-Tier Fee/Carry Leakage ($M), and End-Investor Gross-Gain Capture Ratio. *Table — Quantify two-tier fee and carried-interest compounding in Fund-of-Funds allocations!:* | FoF vs Direct Metric ($100M PIC, $240M Gross, $15M/20% GP + $5M/5% FoF) | Formula | Verified Output | | --- | --- | --- | | Direct Primary LP Net TVPI (x) | (Gross - GP_Fees - GP_Carry) / PIC | 2.0000x | | FoF Investor Final Net TVPI (x) | (Direct_Net - FoF_Fee - FoF_Carry) / PIC | 1.9025x (2.0000x @ 0 FoF Layer) | | Total Two-Tier Fee/Carry Drag ($M) | Gross_Value - Final_FoF_LP_Value | $49.75M ($40.00M @ 0 FoF Layer) | | End-LP Gross Gain Capture | (Final_FoF_Value - PIC) / (Gross - PIC) | 0.6446 (64.46%; 0.7143 Direct) | - **Formula (Fund-of-Funds Two-Layer Net TVPI Formula)**: `=LET(pi_c, B2, gr_v, B3, gp_f, B4, gp_c, B5, ff_f, B6, ff_c, B7, IF(OR(pi_c <= 0, gr_v <= pi_c, gp_f < 0, gp_c < 0, gp_c >= 0.5, ff_f < 0, ff_c < 0, ff_c >= 0.5, gr_v - gp_f <= 0), "Invalid FoF Fee Model", LET(u_pre, gr_v - gp_f, u_net, u_pre - MAX(0, (u_pre - pi_c) * gp_c), f_pre, u_net - ff_f, f_net, f_pre - MAX(0, (f_pre - pi_c) * ff_c), ROUND(f_net / pi_c, 4))))` - **Formula (Zero-Overlay Direct Co-Investment / Primary Check (Set FoF Fee = $0, FoF Carry = 0%))**: `=IF(ISTEXT(E3), E3, ROUND((E3 * B2 - B2) / (B3 - B2), 4))` ### Cost-of-carry price model: compare a maturity price with spot - **URL**: https://sheets.arte-soft.com/en/learn/futures-cost-of-carry-fair-value-contango-backwardation/ - **Summary**: Explore Spot × EXP((financing + storage - yield) × years), with explicit continuous-rate assumptions and a comparison against spot. *Table — Model carry for one maturity:* | Carry Input | Cell | Normal Market | Supply Squeeze (y = 12%) | | --- | --- | --- | --- | | Spot Price S0 ($/bbl) | B2 | $80.00 | $80.00 | | Risk-Free r & Storage u | B3 = 5%, B4 = 3% | Gross carry = 8%/yr | Gross carry = 8%/yr | | Convenience / Div Yield y | B5 | 2%/yr (Net = +6%) | 12%/yr (Net = -4%) | | 6-Month Fair Futures (B6 = 0.5) | S0 * EXP(net * T) | $82.44 ("Contango") | $78.42 ("Backwardation") | - **Formula (Continuous Cost-of-Carry Futures Fair Value F0)**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B4<0,B5<0,B6<0),"Invalid inputs",ROUND(B2 * EXP((B3 + B4 - B5) * B6), 2))` - **Formula (Compare the modeled maturity price with spot)**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B4<0,B5<0,B6<0),"Invalid inputs",LET(carry,(B3+B4-B5)*B6,IF(ABS(carry)<=0.000000000001,"Flat",IF(carry>0,"Contango","Backwardation"))))` ### Sharp and Fuzzy Regression Discontinuity (RDD) Local Jump Formula - **URL**: https://sheets.arte-soft.com/en/learn/fuzzy-and-sharp-regression-discontinuity-local-wald-jump-formula/ - **Summary**: Estimate local linear Regression Discontinuity cutoff intercepts INTERCEPT(Y, X - c) from both sides of threshold c and compute the Fuzzy RDD jump ratio tau_FRD. *Table — Never compare raw bin averages across a running-variable cutoff without detrending!:* | RDD Estimator at Cutoff c = 70 | Formula Expression | Sample Output | | --- | --- | --- | | Naive Bin-Mean Difference (Bug) | AVERAGE(Y_+) - AVERAGE(Y_-) | +14.0000 (Slope-biased by +8.00!) | | Left & Right Cutoff Limits | INTERCEPT(Y_-, X_- - c) vs INTERCEPT(Y_+, X_+ - c) | 60.0000 vs 66.0000 | | Sharp RDD Intent Jump tau_SRD | alpha_+ - alpha_- | +6.0000 | | Fuzzy RDD Local Wald Jump tau_FRD | (alpha_{Y,+} - alpha_{Y,-}) / (alpha_{D,+} - alpha_{D,-}) | +7.5000 (Jump_D = 0.80) | - **Formula (Local Linear Sharp RDD Cutoff Discontinuity tau_SRD Formula)**: `=ROUND(INTERCEPT(B6:B9, D6:D9) - INTERCEPT(B2:B5, D2:D5), 4)` - **Formula (Fuzzy RDD Local Wald Ratio tau_FRD Formula)**: `=LET(jmp_y, INTERCEPT(B6:B9, D6:D9) - INTERCEPT(B2:B5, D2:D5), jmp_d, INTERCEPT(C6:C9, D6:D9) - INTERCEPT(C2:C5, D2:D5), IF(jmp_d <= 0.05, "No Cutoff Uptake Jump", ROUND(jmp_y / jmp_d, 4)))` ### FV function: project future reserve balance from regular deposits - **URL**: https://sheets.arte-soft.com/en/learn/fv-function-future-value-deposits/ - **Summary**: Calculate how an opening reserve plus fixed monthly contributions grows under compound monthly interest, keeping deposit signs consistent. *Table — Opening reserve plus 12 monthly contributions:* | Input | Cell | Value | | --- | --- | --- | | Annual interest rate | B1 | 0.06 | | Months (nper) | B2 | 12 | | Monthly deposit (pmt) | B3 | -100 | | Opening deposit (pv) | B4 | -500 | - **Formula (Enter deposits as negative cash outflows)**: `=ROUND(FV(B1/12,B2,B3,B4),2)` ### Variable-Rate Compound Growth Schedule (PRODUCT(1 + Rates) & FVSCHEDULE) - **URL**: https://sheets.arte-soft.com/en/learn/fvschedule-variable-rate-compound-growth-schedule/ - **Summary**: Compound an initial principal across a sequence of changing periodic interest or return rates using PRODUCT(1 + rateRange) and compute cumulative growth and equivalent geometric return. *Table — Compound changing annual or quarterly rates without helper columns:* | Period | Periodic Rate | Gross Factor (1 + r) | Ending Balance ($10,000 Start) | | --- | --- | --- | --- | | Year 1 | 5.00% | 1.0500 | $10,500.00 | | Year 2 | 8.00% | 1.0800 | $11,340.00 | | Year 3 | -2.00% | 0.9800 | $11,113.20 | | Year 4 | 6.00% | 1.0600 | $11,779.99 | - **Formula (Terminal Value Across Variable Periodic Rates)**: `=IF(OR(B2 < 0, MIN(B3:B6) <= -1), "Invalid Principal or Rate", ROUND(B2 * PRODUCT(1 + B3:B6), 2))` - **Formula (Equivalent Constant Annualized Return (Geometric Rate))**: `=ROUND(PRODUCT(1 + B3:B6) ^ (1 / COUNT(B3:B6)) - 1, 6)` ### GAB Moisture Sorption Isotherm & Monolayer Formula - **URL**: https://sheets.arte-soft.com/en/learn/gab-guggenheim-anderson-de-boer-moisture-sorption-monolayer-formula/ - **Summary**: Calculate Optimal Monolayer Water Activity a_w0 = 1 / (K * (1 + SQRT(C))), GAB Equilibrium Moisture Content M(a_w) = (M_0*C*K*a_w) / ((1 - K*a_w)*(1 - K*a_w + C*K*a_w)), and Classic BET Bias. *Table — Extend BET sorption isotherms up to aw = 0.90 with the GAB multilayer K factor!:* | GAB Lyophilized Stability Metric (M0=0.06, C=16, K=0.80, Ambient aw=0.50) | Formula | Verified Output | | --- | --- | --- | | Optimal Monolayer Activity a_w0 | 1 / (K * (1 + SQRT(C))) | 0.2500 (M(0.25) = 0.0600 = M_0) | | GAB Equilibrium Moisture M(a_w) | (M0*C*K*aw) / ((1-K*aw)*(1-K*aw+C*K*aw)) | 0.0914 g H2O / g dry solid | | Unadjusted BET Moisture (K = 1) | (M0*C*aw) / ((1-aw)*(1-aw+C*aw)) | 0.1129 g H2O / g (+23.5% Bias) | | Powder Sorption Stability Zone | Compare a_w vs Monolayer a_w0 | Hygroscopic Multilayer Zone (aw > aw0) | - **Formula (Three-Parameter GAB Sorption Isotherm Formula)**: `=LET(m_mn, B2, c_gb, B3, k_gb, B4, a_wt, B5, IF(OR(m_mn <= 0, c_gb <= 0, k_gb <= 0, k_gb > 1, a_wt <= 0, a_wt >= 1), "Invalid GAB Isotherm Input", LET(k_aw, k_gb * a_wt, ROUND((m_mn * c_gb * k_aw) / ((1 - k_aw) * (1 - k_aw + c_gb * k_aw)), 4))))` - **Formula (Monolayer Oxidation vs Multilayer Caking Zone Formula)**: `=IF(ISTEXT(E3), E3, IF(ABS(B5 - E2) < 0.0001, "Optimal Monolayer Stability (aw = aw0)", IF(B5 < E2, "Over-Dried Oxidation Risk (aw < aw0)", "Hygroscopic Multilayer Zone (aw > aw0)")))` ### GAB Food Moisture Sorption Isotherm (M0, C, K) Formula - **URL**: https://sheets.arte-soft.com/en/learn/gab-guggenheim-anderson-de-boer-three-parameter-food-moisture-isotherm-formula/ - **Summary**: Calculate Effective Multilayer Activity K*aw, GAB Equilibrium Moisture Content (% dry basis), Uncorrected BET Moisture Prediction (%), and High-aw BET Divergence Error (%). *Table — Why classic 2-parameter BET breaks down above aw = 0.45 in dehydrated foods—and how GAB’s third parameter K extends accuracy to aw = 0.90!:* | GAB vs BET Sorption Isotherm KPI (M0=5.8% db, C=14.5, K=0.84, aw=0.65 vs 0.82) | Formula | Verified Output | | --- | --- | --- | | Effective Multilayer Activity K*aw | Multilayer_K * Water_Activity_aw | 0.546 (0.689 @ humid aw=0.82) | | GAB Equilibrium Moisture (% db) | (M0 * C * K * aw) / ((1-K*aw)*(1-K*aw+C*K*aw)) | 12.08% db (18.07% db @ humid aw=0.82) | | Uncorrected BET Moisture (% db) | (M0 * C * aw) / ((1 - aw) * (1 - aw + C * aw)) | 15.98% db (31.74% db blow-up @ aw=0.82!) | | BET Overprediction Error (% db) | Uncorrected_BET_Pct - GAB_Moisture_Pct | +3.90% db (+13.67% db error @ aw=0.82!) | - **Formula (3-Parameter GAB Multilayer Sorption Isotherm vs 2-Parameter BET Limit Formula)**: `=LET(aw_f, B2, mz_p, B3, cg_k, B4, km_f, B5, ka_w, km_f * aw_f, mg_p, (mz_p * cg_k * ka_w) / ((1 - ka_w) * (1 - ka_w + cg_k * ka_w)), mb_p, (mz_p * cg_k * aw_f) / ((1 - aw_f) * (1 - aw_f + cg_k * aw_f)), IF(OR(aw_f <= 0.02, aw_f > 0.95, mz_p <= 0.2, cg_k <= 0.5, km_f < 0.5, km_f > 1), "Invalid Isotherm Input", ROUND(mb_p - mg_p, 2)))` - **Formula (Tropical Packaging Permeation (aw = 0.82) BET Asymptote Divergence Check (Set Water Activity B2 = 0.82))**: `=IF(ISTEXT(E5), E5, LET(ka_w, B5 * B2, ROUND((B3 * B4 * ka_w) / ((1 - ka_w) * (1 - ka_w + B4 * ka_w)), 2)))` ### GAD-7 Generalized Anxiety Disorder Scale (0–21) & Cutoff (>=10) Formula - **URL**: https://sheets.arte-soft.com/en/learn/gad-7-generalized-anxiety-disorder-screening-score-formula/ - **Summary**: Calculate Spitzer & Kroenke's 7-item Generalized Anxiety Disorder score (GAD-7, 0 to 21 points) and stratify anxiety severity at the validated 5-, 10-, and 15-point cutoffs. *Table — Screen GAD, panic, social anxiety, and PTSD with 5 / 10 / 15 clinical thresholds!:* | Total GAD-7 Score (0–21) | Anxiety Severity Tier | Clinical Screening Interpretation | | --- | --- | --- | | 0 – 4 points | Minimal Anxiety | Below clinical threshold; no active intervention needed | | 5 – 9 points | Mild Anxiety | Monitor symptom trajectory & lifestyle stressors | | 10 – 14 points (>= 10 Screen+!) | Moderate Anxiety | Positive screen (89% sens / 82% spec) — diagnostic eval | | 15 – 21 points | Severe Anxiety | Active CBT and/or SSRI/SNRI treatment warranted | - **Formula (Total 7-Item GAD-7 Anxiety Score (0 to 21 Points))**: `=IF(OR(MIN(B2:B8) < 0, MAX(B2:B8) > 3), "Invalid GAD-7 Item (0 to 3)", SUM(B2:B8))` - **Formula (GAD-7 Clinical Severity Band & >= 10 Diagnostic Cutoff)**: `=IF(OR(MIN(B2:B8) < 0, MAX(B2:B8) > 3), "Invalid GAD-7 Item (0 to 3)", IF(SUM(B2:B8) <= 4, "Minimal Anxiety (0-4)", IF(SUM(B2:B8) <= 9, "Mild Anxiety (5-9)", IF(SUM(B2:B8) <= 14, "Moderate Anxiety (10-14: Positive Screen)", "Severe Anxiety (15-21: Active Treatment)"))))` ### Gaddum Competitive vs Non-Competitive Occupancy Formula - **URL**: https://sheets.arte-soft.com/en/learn/gaddum-competitive-vs-noncompetitive-receptor-occupancy-formula/ - **Summary**: Compare J.H. Gaddum’s (1937) Competitive Orthosteric Occupancy [A] / ([A] + K_A*(1 + [B]/K_B)) against Non-Competitive Allosteric Insurmountable Occupancy ([A] / ([A] + K_A)) / (1 + [B]/K_B) and Ceiling 1 / (1 + [B]/K_B). *Table — See why saturating agonist overcomes competitive blockers yet hits an insurmountable non-competitive ceiling!:* | Gaddum Receptor Metric ([A]=100 nM, KA=25 nM, [B]=30 nM, KB=10 nM) | Formula | Verified Output | | --- | --- | --- | | Control Unblocked Occupancy | [A] / ([A] + K_A) | 0.8000 (80.00%) | | Gaddum Competitive Occupancy | [A] / ([A] + K_A * (1 + [B] / K_B)) | 0.5000 (0.9990 @ 99.9 uM) | | Non-Competitive Occupancy | ([A] / ([A] + K_A)) / (1 + [B] / K_B) | 0.2000 (0.2499 @ 99.9 uM) | | Insurmountable E_max Ceiling | 1 / (1 + [B] / K_B) | 0.2500 (25.00% Hard Cap) | - **Formula (Gaddum Competitive vs Non-Competitive Occupancy Formula)**: `=LET(ag_a, B2, ka_d, B3, an_b, B4, kb_d, B5, IF(OR(ag_a < 0, ka_d <= 0, an_b < 0, kb_d <= 0), "Invalid Ligand Input", ROUND(ag_a / (ag_a + ka_d * (1 + an_b / kb_d)), 4)))` - **Formula (Insurmountable Non-Competitive Occupancy & Ceiling Formula)**: `=IF(ISTEXT(E3), E3, ROUND((B2 / (B2 + B3)) / (1 + B4 / B5), 4))` ### Gale-Shapley Matching Blocking-Pair Audit Formula - **URL**: https://sheets.arte-soft.com/en/learn/gale-shapley-matching-blocking-pair-stability-audit-formula/ - **Summary**: Audit proposed hospital-resident, school-choice, or project-team assignments for David Gale and Lloyd Shapley’s (1962) stability condition by counting Blocking Pairs. *Table — Test whether a proposed matching will unravel via mutual side-deals (Blocking Pairs)!:* | Candidate Pair Audit (Naive A1->P1, A2->P2) | Rank vs Current Match | Blocking Pair? | | --- | --- | --- | | Pair (A1, P1) — Matched | A1: 1 vs 1 \| P1: 2 vs 2 | 0 (Already Matched) | | Pair (A1, P2) — Unmatched | A1: 2 vs 1 (False) \| P2: 1 vs 2 (True) | 0 (A1 Happy at P1) | | Pair (A2, P1) — Unmatched | A2: 1 < 2 (True!) & P1: 1 < 2 (True!) | 1 (BLOCKING PAIR!) | | Swap to A2->P1, A1->P2 | SUM(Blocking_Pairs) | 0 (Gale-Shapley Stable!) | - **Formula (Row-Level Pairwise Blocking-Pair Detector Formula)**: `=IF(AND(B2 < C2, D2 < E2), 1, 0)` - **Formula (Clearinghouse Matching Stability Verdict Formula)**: `=IF(OR(MIN(B2:E5) < 1), "Invalid Preference Rank", IF(SUM(F2:F5) = 0, "Gale-Shapley Stable Matching", "Unstable: Blocking Pair Detected"))` ### Galveston Pediatric Burn Resuscitation Formula: 5,000 mL/m^2 Burned + 2,000 mL/m^2 Maintenance - **URL**: https://sheets.arte-soft.com/en/learn/galveston-pediatric-burn-fluid-resuscitation-bsa-and-tbsa-formula/ - **Summary**: Calculate 24-hour pediatric burn fluid resuscitation and hourly infusion rates using Shriners Burns Institute’s (Carvajal, 1988) BSA-based Galveston Formula: V_24 = 5000 * BSA_m2 * (%TBSA / 100) + 2000 * BSA_m2 (50% in first 8 hours, 50% in next 16 hours). *Table — Why infants have high surface-area-to-weight ratios that make weight-only burn formulas under-resuscitate!:* | Galveston Component (Child: 110 cm, 20 kg -> BSA = 0.7817 m^2, 30% TBSA Burn) | Formula | Evaluated Volume / Rate | | --- | --- | --- | | Mosteller Total BSA (m^2) | SQRT(110 * 20 / 3600) | 0.7817 m^2 | | Burn-Loss Resuscitation Term | 5,000 * 0.7817 * 0.30 | 1,172.6 mL | | Basal BSA Maintenance Term | 2,000 * 0.7817 | 1,563.5 mL | | Total 24-Hr Fluid \| First 8-Hr Rate | V_24 = 2,736 mL \| (0.5 * V_24) / 8 | 2,736 mL \| 171.0 mL/hr | - **Formula (Galveston Total 24-Hour Pediatric Burn Fluid + Maintenance Volume V_24 (mL))**: `=IF(OR(B2 < 45, B2 > 190, B3 < 3, B3 > 100, B4 < 10, B4 > 95), "Requires Pediatric Height, Weight, and Resuscitation Burn 10%–95% TBSA", ROUND(SQRT((B2 * B3) / 3600) * (5000 * (B4 / 100) + 2000), 0))` - **Formula (First 8-Hour Hourly Infusion Rate (mL/hr from Time of Injury))**: `=IF(OR(B2 < 45, B2 > 190, B3 < 3, B3 > 100, B4 < 10, B4 > 95), "Requires Pediatric Height, Weight, and Resuscitation Burn 10%–95% TBSA", ROUND((0.5 * SQRT((B2 * B3) / 3600) * (5000 * (B4 / 100) + 2000)) / 8, 1))` ### Gambler's Ruin Probability: Fair (p = 0.5) & Biased Random Walk - **URL**: https://sheets.arte-soft.com/en/learn/gamblers-ruin-probability-symmetric-and-asymmetric-random-walk/ - **Summary**: Calculate the probability of reaching zero before a fixed upper target in an independent unit-step random walk, including fair odds, deterministic endpoints and numerically stable near-fair evaluation. - **Formula (Check boundaries and fair odds)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric A,B,p",IF(OR(B2<0,B3<0,B2<>INT(B2),B3<>INT(B3),B2+B3<=0,B2+B3>1000000000,B4<0,B4>1),"Require whole A,B>=0; 0"OK",E2,IF(B2=0,1,IF(B3=0,0,IF(B4=0,1,IF(B4=1,0,B3/(B2+B3)*E6/E7*IF(B4>0.5,EXP(-B2*E3),1))))))` - **Formula (Calculate success directly too)**: `=IF(E2<>"OK",E2,IF(B2=0,0,IF(B3=0,1,IF(B4=0,0,IF(B4=1,1,B2/(B2+B3)*E11/E7*IF(B4<0.5,EXP(-B3*E3),1))))))` ### Gamma Waiting-Time Quantile & SLA Buffer Formula (GAMMA.INV Wilson-Hilferty Cube-Root) - **URL**: https://sheets.arte-soft.com/en/learn/gamma-quantile-and-wilson-hilferty-waiting-time-threshold-gamma-inv/ - **Summary**: Calculate multi-stage Gamma and Erlang waiting-time quantiles (GAMMA.INV) using exact exponential inversion for shape k = 1 and the Wilson-Hilferty cube-root transformation for multi-stage queues. *Table — Sizing SLA time budgets across k sequential processing stages:* | Shape k | Scale theta (min) | Target z_p | Formula Path | SLA Deadline (min) | | --- | --- | --- | --- | --- | | 9 stages | 2.0 min | z = 0 (50th pct) | 18 * (80/81)^3 | 17.3415 | | 9 stages | 2.0 min | z = 1 (84.13% SLA) | 18 * (89/81)^3 | 23.8774 | | 9 stages | 2.0 min | Mean k * theta | 9 * 2.0 | 18.0000 | | 1 stage | 10.0 min | p = 0.50 | -10 * LN(0.5) | 6.9315 | - **Formula (Wilson-Hilferty Gamma Quantile Formula)**: `=LET(shape_k, B2, scale_th, B3, z_quant, B4, wh_var, 1 / (9 * shape_k), ROUND(scale_th * shape_k * MAX(0, 1 - wh_var + z_quant * SQRT(wh_var)) ^ 3, 4))` - **Formula (SLA Buffer Above Expected Mean Cycle Time)**: `=ROUND(E3 - E2, 4)` ### Gamma Shielding Half-Value Layer (HVL) & Buildup Formula - **URL**: https://sheets.arte-soft.com/en/learn/gamma-ray-radiation-shielding-half-value-layer-hvl-tvl-and-buildup-factor-formula/ - **Summary**: Calculate Lead/Concrete Half-Value Layer HVL (cm), Tenth-Value Layer TVL (cm), Narrow-Beam Uncollided Dose Rate (mSv/hr), and Broad-Beam Compton-Buildup Dose Rate D (mSv/hr). *Table — Never size broad-beam radiation shields with pure EXP(-mu*x)—Compton-scattered photons double dose via Buildup Factor B!:* | Gamma Shielding KPI (D0 = 80 mSv/hr, Lead mu = 0.58 cm^-1, x = 6 cm, B = 2.10) | Formula | Verified Output | | --- | --- | --- | | Half-Value Layer HVL (cm) | LN(2) / Linear_Attenuation_mu | 1.20 cm | | Tenth-Value Layer TVL (cm) | LN(10) / Linear_Attenuation_mu | 3.97 cm | | Narrow-Beam Uncollided Dose | D0_mSv_hr * EXP(-mu * x_cm) | 2.465 mSv/hr (0.242 @ x = 10 cm) | | Broad-Beam Total Dose (mSv/hr) | Buildup_B * D0 * EXP(-mu * x_cm) | 5.176 mSv/hr (0.630 @ 10 cm, B=2.6) | - **Formula (Broad-Beam Gamma Attenuation with Compton Buildup Factor Formula)**: `=LET(d0_r, B2, mu_l, B3, th_x, B4, bf_c, B5, IF(OR(d0_r <= 0, mu_l <= 0, th_x < 0, bf_c < 1), "Invalid Shielding Input", ROUND(bf_c * d0_r * EXP(-mu_l * th_x), 3)))` - **Formula (Adding +1 TVL (+4.0 cm Lead -> x = 10.0 cm, B = 2.60) ALARA Reduction Check)**: `=IF(ISTEXT(E5), E5, ROUND(B2 * EXP(-B3 * B4), 3))` ### Gamow Quantum Tunneling Factor, Gamow Energy & Stellar Gamow Peak - **URL**: https://sheets.arte-soft.com/en/learn/gamow-factor-quantum-tunneling-and-stellar-gamow-peak/ - **Summary**: Calculate nuclear Gamow Energy E_G = 2 * mu_keV * (PI() * alpha * Z1 * Z2)^2, Coulomb barrier tunneling probability P = EXP(-SQRT(E_G / E)), and thermonuclear Gamow Peak energy E_0 = (SQRT(E_G) * kT / 2)^(2/3). *Table — Explain how the Sun fuses protons at 15 MK despite a 550 keV Coulomb barrier!:* | Thermonuclear Metric (p + p Fusion: Z1 = 1, Z2 = 1, mu c^2 = 469,140 keV) | Formula | Calculated Value | Physical Meaning | | --- | --- | --- | --- | | Gamow Energy E_G (keV) | 2 * mu * (PI() * alpha * Z1 * Z2)^2 | 493.13 keV | Coulomb barrier scale | | Solar Core Gamow Peak E_0 | ((SQRT(E_G) * kT) / 2)^(2/3) at kT = 1.29 | 5.898 keV | Most probable fusion energy | | Tunneling Factor at E = 6 keV | EXP(-SQRT(E_G / 6)) | 0.000116 (1.16e-4) | Quantum barrier penetration | - **Formula (Gamow Energy E_G (keV) from Nuclear Charges Z1, Z2 & Reduced Mass)**: `=IF(OR(B2 < 1, B3 < 1, B4 <= 0), "Invalid Nuclear Input", ROUND(2 * B4 * ((PI() * (1 / 137.036) * B2 * B3) ^ 2), 2))` - **Formula (Stellar Gamow Peak Energy E_0 (keV) at Thermal Energy kT)**: `=IF(B5 <= 0, "Thermal kT Must Be > 0", ROUND(((SQRT(2 * B4 * ((PI() * (1 / 137.036) * B2 * B3) ^ 2)) * B5) / 2) ^ (2 / 3), 3))` ### Gantt chart formula: build a dynamic project timeline grid in cells - **URL**: https://sheets.arte-soft.com/en/learn/gantt-chart-grid-timeline-formula/ - **Summary**: Populate calendar or weekly Gantt timeline bars with mixed-reference AND comparisons and compute overall project start and finish dates. *Table — Mixed references ($B2, $C2, D$1) power an entire Gantt matrix:* | Task (A) | Start (B) | End (C) | May 1 (D1) | May 8 (E1) | May 15 (F1) | | --- | --- | --- | --- | --- | --- | | Design | 2026-05-01 | 2026-05-08 | X | X | "" | | Build | 2026-05-08 | 2026-05-15 | "" | X | X | - **Formula (Daily/weekly Gantt cell formula and project span rollup)**: `=IF(AND(E$1 >= $B2, E$1 <= $C2), "X", "")` - **Formula (Overall project start, end, and total calendar span)**: `=MAX(C2:C3) - MIN(B2:B3) + 1` ### Gapped Ferrite Core Inductor Reluctance, AL & Isat Formula - **URL**: https://sheets.arte-soft.com/en/learn/gapped-ferrite-core-inductor-magnetic-reluctance-al-value-and-saturation-current/ - **Summary**: Calculate Total Series Magnetic Reluctance R_tot (MA/Wb), Gapped Inductance Factor AL (nH/turn²), Winding Inductance L (uH), and Hard-Saturation Peak Current Isat (A). *Table — Paradox of power magnetics: grinding a 0.8 mm air gap into a ferrite core LOWERS inductance—so the inductor can store 15x MORE DC energy without saturating!:* | SMPS Gapped Ferrite KPI (le=78 mm, lg=0.80 mm, Ae=120 mm², mur=2,200, N=36, Bsat=0.38 T) | Formula | Verified Output | | --- | --- | --- | | Total Reluctance R_tot (MA/Wb) | (le_m/(mu0*mur*Ae_m2) + lg_m/(mu0*Ae_m2))/1e6 | 5.540 MA/Wb (0.368 @ ungapped 0.02 mm) | | Gapped AL Value (nH/turn²) | 1,000,000,000 / R_tot_A_Wb | 180.50 nH/N² (2,719.28 @ ungapped) | | Winding Inductance L (uH) | ((Turns_N ^ 2) * AL_nH) / 1000 | 233.92 uH (3,524.19 uH @ ungapped) | | Peak Saturation Current Isat (A) | (Bsat_T * Ae_m2 * R_tot_A_Wb) / Turns_N | 7.02 A (0.47 A saturates instantly @ 0.02 mm!) | - **Formula (Magnetic Circuit Series Reluctance, AL Factor & Bsat Saturation Current Formula)**: `=LET(le_m, B2 / 1000, lg_m, B3 / 1000, ae_m, B4 * 0.000001, mr_p, B5, nt_c, B6, bs_t, B7, mz_p, 4 * PI() * 0.0000001, rt_w, (le_m / (mz_p * mr_p * ae_m)) + (lg_m / (mz_p * ae_m)), IF(OR(B2 <= 5, B3 < 0, B4 <= 5, mr_p < 50, nt_c < 1, bs_t <= 0.1, bs_t > 2.2), "Invalid Magnetics Input", ROUND((bs_t * ae_m * rt_w) / nt_c, 2)))` - **Formula (Ungapped Mating-Surface Residual 0.02 mm Saturation Trap Check (Set Air Gap lg B3 = 0.02 mm))**: `=IF(ISTEXT(E5), E5, LET(le_m, B2 / 1000, lg_m, B3 / 1000, ae_m, B4 * 0.000001, mz_p, 4 * PI() * 0.0000001, rt_w, (le_m / (mz_p * B5 * ae_m)) + (lg_m / (mz_p * ae_m)), ROUND(((B6 ^ 2) * (1000000000 / rt_w)) / 1000, 2)))` ### Garman-Kohlhagen FX Currency Option Pricing & Covered Interest Parity - **URL**: https://sheets.arte-soft.com/en/learn/garman-kohlhagen-fx-currency-option-domestic-foreign-rate-parity/ - **Summary**: Price European FX calls and puts under Garman and Kohlhagen (1983) by discounting foreign currency spot at r_f and domestic strike at r_d, verified via FX put-call parity. *Table — Why naive Black-Scholes misprices currency options by ignoring the foreign deposit yield r_f:* | FX Option Quantity (EUR/USD 1.10, T=0.5y) | Formula Role | Computed Value | | --- | --- | --- | | CIP Forward Rate F_0 | S_0 * EXP((r_d - r_f) * T) | 1.1111 | | Garman-Kohlhagen d_1 / d_2 | (LN(S/K) + (r_d - r_f + 0.5*sig^2)*T) / (sig*SQRT(T)) | 0.1603 / 0.0754 | | European FX Call / Put | Discounted Foreign Spot vs Domestic Strike | Call = 0.0421 \| Put = 0.0313 | | Put-Call Parity Spread C - P | S_0*EXP(-r_f*T) - K*EXP(-r_d*T) | +0.0108 | - **Formula (Covered Interest Parity Forward & Garman-Kohlhagen Call Formula)**: `=LET(pv_for, B2 * EXP(-B5 * B7), pv_dom, B3 * EXP(-B4 * B7), vol_t, B6 * SQRT(B7), IF(vol_t <= 0, ROUND(MAX(0, pv_for - pv_dom), 4), LET(d_one, (LN(pv_for / pv_dom) + 0.5 * (vol_t ^ 2)) / vol_t, d_two, d_one - vol_t, az_one, ABS(d_one), kt_one, 1 / (1 + 0.2316419 * az_one), tp_one, (EXP(-0.5 * az_one * az_one) / SQRT(2 * PI())) * kt_one * (0.31938153 + kt_one * (-0.356563782 + kt_one * (1.781477937 + kt_one * (-1.821255978 + 1.330274429 * kt_one)))), nd_one, IF(d_one >= 0, 1 - tp_one, tp_one), az_two, ABS(d_two), kt_two, 1 / (1 + 0.2316419 * az_two), tp_two, (EXP(-0.5 * az_two * az_two) / SQRT(2 * PI())) * kt_two * (0.31938153 + kt_two * (-0.356563782 + kt_two * (1.781477937 + kt_two * (-1.821255978 + 1.330274429 * kt_two)))), nd_two, IF(d_two >= 0, 1 - tp_two, tp_two), ROUND(pv_for * nd_one - pv_dom * nd_two, 4))))` - **Formula (Garman-Kohlhagen Put Value via Exact FX Put-Call Parity)**: `=ROUND(E4 - B2 * EXP(-B5 * B7) + B3 * EXP(-B4 * B7), 4)` ### Anscombe-Gart +0.5 Continuity-Corrected Odds Ratio Formula for Zero-Event 2×2 Tables - **URL**: https://sheets.arte-soft.com/en/learn/gart-anscombe-continuity-corrected-odds-ratio-zero-cell-table/ - **Summary**: Prevent #DIV/0! and infinite log-odds collapse in sparse clinical trials with zero events in one arm by adding +0.5 to all four 2×2 cells: OR_corr = ((a + 0.5)*(d + 0.5)) / ((b + 0.5)*(c + 0.5)) and SE(ln OR) = SQRT(1/(a+0.5) + 1/(b+0.5) + 1/(c+0.5) + 1/(d+0.5)). *Table — Rescuing 2×2 clinical-trial Odds Ratios when the control arm records c = 0 events!:* | 2×2 Contingency Counts [a, b; c, d] | Naive OR = (a*d)/(b*c) | Anscombe-Gart +0.5 OR | Adjusted SE(ln OR) | | --- | --- | --- | --- | | Zero Control Events: a=8, b=42, c=0, d=50 | #DIV/0! (Infinite) | 20.2000 | 1.4700 | | Two Control Events: a=8, b=42, c=2, d=48 | 4.5714 | 3.8800 (Bias-reduced) | 0.7610 | | Negative Count < 0 or Empty Total | Invalid Contingency Table | "Invalid 2x2 Cell Counts" | Non-Negative Guard | - **Formula (Anscombe-Gart +0.5 Continuity-Corrected Odds Ratio = ((a+0.5)*(d+0.5)) / ((b+0.5)*(c+0.5)))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) = 0), "Invalid 2x2 Cell Counts", ROUND(((B2 + 0.5) * (B5 + 0.5)) / ((B3 + 0.5) * (B4 + 0.5)), 4))` - **Formula (Continuity-Corrected Log-Odds Standard Error SE(ln OR_corr))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) = 0), "Invalid 2x2 Cell Counts", ROUND(SQRT(1 / (B2 + 0.5) + 1 / (B3 + 0.5) + 1 / (B4 + 0.5) + 1 / (B5 + 0.5)), 4))` ### Gas Nitriding Potential KN & Case Depth Formula - **URL**: https://sheets.arte-soft.com/en/learn/gas-nitriding-kn-nitriding-potential-ammonia-dissociation-and-diffusion-case-depth/ - **Summary**: Calculate Retort Ammonia Partial Pressure p_NH3 (atm), Hydrogen Partial Pressure p_H2 (atm), Lehrer Nitriding Potential KN (atm^-0.5), and Parabolic Nitrided Case Depth (mm). *Table — Why AMS 2759/10 precision gear nitriding controls Lehrer Potential KN = p_NH3 / p_H2^(1.5) instead of archaic burette % dissociation!:* | AMS 2759/10 Gas Nitriding KPI (1 atm NH3 Feed, t=24 h, kN=0.085, alpha=0.34 vs 0.55) | Formula | Verified Output | | --- | --- | --- | | Ammonia Partial Pressure p_NH3 (atm) | (1 - alpha) / (1 + alpha) | 0.4925 atm (0.2903 atm @ Stage-2 0.55) | | Hydrogen Partial Pressure p_H2 (atm) | (1.5 * alpha) / (1 + alpha) | 0.3806 atm (0.5323 atm @ Stage-2 0.55) | | Lehrer Nitriding Potential KN (atm^-0.5) | p_NH3 / (p_H2 ^ 1.5) | 2.098 (0.748 white-layer suppression!) | | Effective Case Depth NHD (mm) | Diffusion_k_mm_sqrth * SQRT(Time_hr) | 0.416 mm (~0.0164 in) | - **Formula (Stoichiometric NH3 Cracking Partial Pressures, Lehrer KN & Root-Time Depth Formula)**: `=LET(al_f, B2, th_r, B3, kn_d, B4, IF(OR(al_f <= 0.05, al_f >= 0.95, th_r <= 0.5, kn_d <= 0.02, kn_d > 0.25), "Invalid Nitriding Input", ROUND(kn_d * SQRT(th_r), 3)))` - **Formula (Floe-Process Stage-2 High Dissociation (alpha = 0.55) White-Layer Reduction Check (Set B2 = 0.55))**: `=IF(ISTEXT(E5), E5, LET(pn_a, (1 - B2) / (1 + B2), ph_a, (1.5 * B2) / (1 + B2), ROUND(pn_a / (ph_a ^ 1.5), 3)))` ### Gates-Gaudin-Schuhmann (GGS) Particle Size Formula: Power-Law Passing & P80 Interpolation - **URL**: https://sheets.arte-soft.com/en/learn/gates-gaudin-schuhmann-comminution-particle-size-power-law/ - **Summary**: Characterize jaw/cone crusher products and fine mineral tails using the Gates-Gaudin-Schuhmann power law P(d) = 100 * MIN(1, (d / k)^m) and solve directly for 80%-passing size P80 = k * 0.8^(1/m). *Table — Why log-log straight lines govern fine mineral breakage fragments below top size k!:* | Sieve Aperture d (Top Size k = 500 um, m = 0.65) | GGS Cumulative Passing P(d) % | Derived P80 = k * 0.8^(1/m) | | --- | --- | --- | | Sieve d = 125 um (Quarter Top Size) | 40.61% Passing | 354.71 um | | Sieve d = 250 um (Half Top Size) | 63.73% Passing | 354.71 um | | Sieve d = 600 um (> Top Size k = 500 um) | 100.00% (Capped at MIN(1, ...)) | 354.71 um | - **Formula (Gates-Gaudin-Schuhmann Cumulative Passing P(d) = 100 * MIN(1, (d / k)^m))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid GGS Size Parameters", ROUND(100 * MIN(1, (B2 / B3) ^ B4), 2))` - **Formula (Inverted GGS 80%-Passing Size P80 = k * 0.8^(1 / m))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid GGS Size Parameters", ROUND(B3 * (0.8 ^ (1 / B4)), 2))` ### Gauge (Speedometer) Chart Formula: 180-Degree Doughnut Dial & Pointer Needle XY - **URL**: https://sheets.arte-soft.com/en/learn/gauge-speedometer-chart-doughnut-dial-slice-and-needle-angle-formula/ - **Summary**: Build a semicircular KPI Gauge / Speedometer Chart by pairing a 360-degree Doughnut dial (Red + Amber + Green = 180 degrees plus a transparent 180-degree bottom half) with a clamped pointer angle theta = 180 * (1 - p) and needle tip (COS, SIN). *Table — Combine a 270°-rotated Doughnut semicircle with a trigonometric XY Scatter needle!:* | KPI Attainment Ratio p = Actual / Max | Dial Sweep Angle from Left (180 * p) | Math Polar Angle theta_deg = 180 * (1 - p) | Needle Tip Coordinates (X_tip, Y_tip) | | --- | --- | --- | --- | | 0% Attainment (p = 0.00) | 0° sweep | 180.0° | (-1.0000, 0.0000) — Far Left | | 50% Mid-Dial (p = 0.50) | 90° sweep | 90.0° | (0.0000, 1.0000) — Vertical Top | | 75% Upper Green (p = 0.75) | 135° sweep | 45.0° | (0.7071, 0.7071) — Upper Right | | 100%+ Capped (p >= 1.00) | 180° full sweep | 0.0° | (1.0000, 0.0000) — Far Right | - **Formula (Clamped Speedometer Pointer Polar Angle theta_deg (180° Left to 0° Right))**: `=IF(B3 <= 0, "Requires Positive Gauge Maximum", ROUND(180 * (1 - MIN(1, MAX(0, B2 / B3))), 2))` - **Formula (Needle Tip Horizontal Coordinate X_tip = COS(RADIANS(theta_deg)))**: `=IF(B3 <= 0, "Requires Positive Gauge Maximum", ROUND(COS(RADIANS(180 * (1 - MIN(1, MAX(0, B2 / B3))))), 4))` ### Gaussian Air Plume Ground Concentration Formula - **URL**: https://sheets.arte-soft.com/en/learn/gaussian-air-dispersion-plume-ground-concentration-and-cmax-formula/ - **Summary**: Calculate steady-state downwind ground-level centerline pollutant concentration C(x, 0, 0) = (Q / (PI()*u*sigma_y*sigma_z)) * EXP(-H^2 / (2*sigma_z^2)) with ground eddy reflection. *Table — Never drop the factor of 2 from ground reflection: 1 / (PI * u * sigma_y * sigma_z) vs 1 / (2 * PI * ...)!:* | Gaussian Plume Metric (Q=50 g/s, u=5 m/s, sigma_y=80 m, sigma_z=50 m, H=50 m) | Formula | Verified Output | | --- | --- | --- | | Ground-Level Release Ceiling (H = 0) | Q / (PI() * u * sigma_y * sigma_z) | 795.77 ug / m^3 | | Stack Elevation Attenuation Factor | EXP(-(H^2) / (2 * sigma_z^2)) | 0.6065 (EXP(-0.5)) | | Reflected Ground Centerline C(x, 0, 0) | Ceiling * EXP(-H^2 / (2*sigma_z^2)) | 482.66 ug / m^3 | | Crosswind Off-Axis C(x, y = 80 m, 0) | C(x, 0, 0) * EXP(-y^2 / (2*sigma_y^2)) | 292.75 ug / m^3 | - **Formula (Reflected Ground-Level Plume Centerline Concentration C(x, 0, 0) Formula)**: `=LET(q_ug, B2, u_wn, B3, s_y, B4, s_z, B5, h_ef, B6, IF(OR(q_ug < 0, u_wn <= 0, s_y <= 0, s_z <= 0, h_ef < 0), "Invalid Plume Input (Require u > 0)", ROUND((q_ug / (PI() * u_wn * s_y * s_z)) * EXP(-(h_ef ^ 2) / (2 * (s_z ^ 2))), 2)))` - **Formula (Off-Centerline Lateral Ground Concentration C(x, y, 0) Formula)**: `=LET(q_ug, B2, u_wn, B3, s_y, B4, s_z, B5, h_ef, B6, y_of, B7, IF(OR(q_ug < 0, u_wn <= 0, s_y <= 0, s_z <= 0, h_ef < 0), "Invalid Plume Input (Require u > 0)", ROUND((q_ug / (PI() * u_wn * s_y * s_z)) * EXP(-(h_ef ^ 2) / (2 * (s_z ^ 2))) * EXP(-(y_of ^ 2) / (2 * (s_y ^ 2))), 2)))` ### Gaussian Error Function & Complementary Tail (ERF & ERFC) for Fickian Diffusion & BER - **URL**: https://sheets.arte-soft.com/en/learn/gaussian-error-function-and-complementary-tail-erf-erfc-diffusion/ - **Summary**: Evaluate erf(x) and erfc(x) = 1 - erf(x) to 6-decimal accuracy for semi-infinite Fick's Second Law dopant/heat diffusion profiles and BPSK digital communication bit-error rates. *Table — Where ERF and ERFC govern physical transport and signal noise:* | Similarity Variable eta | erf(eta) | erfc(eta) = C / C_s | Physical Meaning | | --- | --- | --- | --- | | 0.00 | 0.0000 | 1.0000 | Boundary surface concentration (z = 0) | | 0.50 | 0.5205 | 0.4795 | Near-surface diffusion zone | | 1.00 | 0.8427 | 0.1573 | Characteristic diffusion length z = 2*sqrt(D*t) | | 2.00 | 0.9953 | 0.0047 | Deep bulk tail (< 0.5% of surface level) | - **Formula (Dimensionless Diffusion Similarity Argument eta)**: `=B2 / (2 * SQRT(B3 * B4))` - **Formula (Direct ERFC & ERF Rational Evaluation)**: `=LET(eta, B6, x_abs, ABS(eta), poly_t, 1 / (1 + 0.3275911 * x_abs), erfc_abs, poly_t * (0.254829592 + poly_t * (-0.284496736 + poly_t * (1.421413741 + poly_t * (-1.453152027 + 1.061405429 * poly_t)))) * EXP(-(x_abs ^ 2)), IF(eta = 0, 1, ROUND(IF(eta > 0, erfc_abs, 2 - erfc_abs), 4)))` ### Gaussian Ion Implantation Peak Dopant & Junction Depth Formula - **URL**: https://sheets.arte-soft.com/en/learn/gaussian-ion-implantation-projected-range-straggle-and-peak-dopant-formula/ - **Summary**: Calculate Peak Implanted Dopant Concentration N_p (10^18 cm^-3), Wafer Surface Concentration N(0) (10^18 cm^-3), Metallurgical p-n Junction Depth x_j (nm), and Peak-to-Background Ratio. *Table — Quadrupling implant dose quadruples peak concentration—yet logarithmic Gaussian tails barely budge junction depth x_j!:* | Ion Implant KPI (Dose = 5e14 cm^-2, Rp = 120 nm, dRp = 40 nm, NB = 1e16 cm^-3) | Formula | Verified Output | | --- | --- | --- | | Peak Dopant N_p (10^18 cm^-3) | (Dose_1e14 * 1000) / (SQRT(2*PI()) * dRp_nm) | 49.87 (199.47 @ Dose = 20e14) | | Surface Dopant N(0) (10^18 cm^-3) | N_p * EXP(-(Rp^2) / (2 * dRp^2)) | 0.554 (2.216 @ Dose = 20e14) | | Peak-to-Substrate Ratio (Np / NB) | (N_p_1e18 * 100) / NB_1e16 | 4,986.78 | | Metallurgical Junction x_j (nm) | Rp + dRp * SQRT(2 * LN((Np*100)/NB)) | 285.07 nm (298.00 nm @ 20e14!) | - **Formula (Gaussian LSS Peak Dopant & Metallurgical p-n Junction Depth Formula)**: `=LET(ds_i, B2, rp_n, B3, dr_n, B4, nb_s, B5, IF(OR(ds_i <= 0, rp_n < 0, dr_n <= 0, nb_s <= 0), "Invalid Implant Input", LET(np_k, (ds_i * 1000) / (SQRT(2 * PI()) * dr_n), IF(np_k * 100 <= nb_s, "No Junction Formed", ROUND(rp_n + dr_n * SQRT(2 * LN((np_k * 100) / nb_s)), 2)))))` - **Formula (4x Higher Source/Drain Dose Logarithmic Junction Insensitivity Check (Set Dose = 20.0 x 10^14))**: `=IF(ISTEXT(E5), E5, ROUND(((B2 * 1000) / (SQRT(2 * PI()) * B4)) * EXP(-(B3 ^ 2) / (2 * (B4 ^ 2))), 3))` ### GCD function: simplify aspect ratios and find largest equal batch sizes - **URL**: https://sheets.arte-soft.com/en/learn/gcd-function-greatest-common-divisor/ - **Summary**: Find the greatest common divisor of two or more integers with GCD to reduce screen or recipe ratios to lowest whole terms. *Table — Reduce pixel dimensions or mix ratios automatically:* | Width (A) | Height (B) | GCD(A, B) | Simplified Ratio | | --- | --- | --- | --- | | 1920 | 1080 | 120 | 16:9 | | 2560 | 1600 | 320 | 8:5 | - **Formula (Build a live simplified ratio string)**: `=(A2 / GCD(A2, B2)) & ":" & (B2 / GCD(A2, B2))` - **Formula (Zero and negative input rules)**: `=IF(MIN(A2, B2)<0, "Non-negative only", GCD(A2, B2))` ### Gehan-George (1970) & Boyd (1935) Body Surface Area (BSA) Formula: Oncology Dosing - **URL**: https://sheets.arte-soft.com/en/learn/gehan-george-and-boyd-pediatric-oncology-body-surface-area-bsa/ - **Summary**: Calculate high-sample-size oncology Body Surface Area (m^2) for mg/m^2 cytotoxic chemotherapy dosing using Edmund A. Gehan & Stephen L. George’s (1970, NCI standard) 401-subject power law and Edith Boyd’s (1935) log-weight allometric equation. *Table — Why NCI cancer trial protocols standardized on Gehan & George’s 401-subject BSA equation over Du Bois’s 9-subject fit!:* | Oncology Patient Profile | Gehan & George (1970) BSA (m^2) | Boyd (1935) BSA (m^2) | 100 mg/m^2 Chemo Dose (Gehan-George) | | --- | --- | --- | --- | | Pediatric Patient (115 cm, 22 kg) | 0.8558 m^2 | 0.8617 m^2 | 85.6 mg | | Standard Adult (175 cm, 75 kg) | 1.9208 m^2 | 1.9217 m^2 | 192.1 mg | | Obese Adult (170 cm, 115 kg) | 2.3547 m^2 | 2.3695 m^2 | 235.5 mg (Check protocol cap) | - **Formula (Gehan & George (1970, NCI) Body Surface Area BSA (m^2))**: `=IF(OR(B2 < 35, B2 > 240, B3 < 1.5, B3 > 300), "Invalid Height (cm) or Weight (kg)", ROUND(0.0235 * (B2 ^ 0.42246) * (B3 ^ 0.51456), 4))` - **Formula (Boyd (1935) Allometric Body Surface Area BSA (m^2))**: `=IF(OR(B2 < 35, B2 > 240, B3 < 1.5, B3 > 300), "Invalid Height (cm) or Weight (kg)", ROUND(0.0003207 * (B2 ^ 0.3) * ((1000 * B3) ^ (0.7285 - 0.0188 * LOG10(1000 * B3))), 4))` ### Geiger-Nuttall Law: Alpha-Decay Half-Life vs. Q-Value Tunneling Formula - **URL**: https://sheets.arte-soft.com/en/learn/geiger-nuttall-alpha-decay-half-life-and-q-value-law/ - **Summary**: Calculate base-10 log half-life log10(T_1/2) = (A_GN / SQRT(Q_alpha)) + B_GN across Polonium and actinide isotopes to see why doubling alpha decay energy spans 14+ orders of magnitude in half-life. *Table — See how a 3.5 MeV shift in alpha energy flips days into sub-microseconds!:* | Polonium Isotope (A_GN = 145.8, B_GN = -55.45) | Decay Q-Value (MeV) | Predicted log10(T_1/2 in s) | Timescale Order of Magnitude | | --- | --- | --- | --- | | Polonium-210 (RTG Heat Source) | 5.407 MeV | +7.25 | ~10^7 seconds (Months) | | Polonium-218 (Radon Progeny) | 6.115 MeV | +3.51 | ~10^3.5 seconds (Minutes) | | Polonium-214 (Fast Decay) | 7.833 MeV | -3.36 | ~440 microseconds | | Polonium-212 (Thorium Series) | 8.954 MeV | -6.73 | ~0.19 microseconds! | - **Formula (Geiger-Nuttall Base-10 Logarithm of Half-Life log10(T_1/2, Seconds))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Q-Value/Slope", ROUND((B3 / SQRT(B2)) + B4, 2))` - **Formula (Alpha-Decay Half-Life T_1/2 = 10 ^ log10(T_1/2) in Seconds)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Q-Value/Slope", 10 ^ ROUND((B3 / SQRT(B2)) + B4, 2))` ### Geldart Powder Fluidization Group (C, A, B, D) Classifier Formula: Size & Density Map - **URL**: https://sheets.arte-soft.com/en/learn/geldart-powder-fluidization-group-a-b-c-d-density-size-boundary/ - **Summary**: Classify gas-solid fluidized bed powders into Derek Geldart’s (1973) four hydrodynamic regimes — Group C (Cohesive), Group A (Aeratable), Group B (Sand-Like Bubbling), and Group D (Spoutable) — from Sauter mean diameter d_sv (um) and density difference Delta_rho. *Table — Predict whether a powder channels, expands smoothly, bubbles immediately, or spouts — from TWO numbers!:* | Geldart Group | Algebraic Criterion (Delta_rho_g in g/cm^3, d_sv in um) | Fluidization Signature & Industrial Example | | --- | --- | --- | | Group C (Cohesive) | Delta_rho_g * d_sv < 25 | Channels/rat-holes; needs mechanical vibration (Flour, Cement) | | Group A (Aeratable) | 25 <= Delta_rho_g * d_sv < 225 | Bubble-free bed expansion u_mf < u < u_mb (FCC Catalyst, 65 um) | | Group B (Sand-Like) | Delta_rho_g * d_sv >= 225 and Delta_rho_g * d_sv^2 < 10^6 | Bubbles form right at u_mf; vigorous mixing (Silica Sand, 300 um) | | Group D (Spoutable) | Delta_rho_g * d_sv^2 >= 1,000,000 | Slow large bubbles; operated as spouted beds (Grain, 800+ um) | - **Formula (Geldart Dimensionless C/A/B Boundary Product (Delta_rho / 1000) * d_sv)**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Particle Diameter d_sv > 0 and Delta_rho > 0", ROUND((B3 / 1000) * B2, 2))` - **Formula (Geldart Gas-Solid Fluidization Regime Classifier (Groups C, A, B, D))**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Particle Diameter d_sv > 0 and Delta_rho > 0", IF((B3 / 1000) * B2 < 25, "Group C: Cohesive Powder (Channeling — Needs Agitation)", IF((B3 / 1000) * B2 < 225, "Group A: Aeratable Powder (Smooth Expansion Before Bubbling)", IF((B3 / 1000) * (B2 ^ 2) < 1000000, "Group B: Sand-Like Powder (Immediate Bubbling at u_mf)", "Group D: Coarse Spoutable Solid"))))` ### List all combinations from two lists (Cartesian product with TOCOL) - **URL**: https://sheets.arte-soft.com/en/learn/generate-all-combinations-cartesian-product-two-lists/ - **Summary**: Generate every Size x Color SKU variant or Region x Quarter pair into a single spilled column using TOCOL(List1 & "-" & TRANSPOSE(List2)). *Table — Broadcast vertical x horizontal arrays, then flatten with TOCOL:* | Sizes (A2:A4) | x "Black" (B2) | x "Navy" (B3) | Flattened TOCOL Order | | --- | --- | --- | --- | | S | S-Black | S-Navy | 1. S-Black, 2. S-Navy | | M | M-Black | M-Navy | 3. M-Black, 4. M-Navy | | L | L-Black | L-Navy | 5. L-Black, 6. L-Navy | - **Formula (Cartesian SKU generator and total-variant count formulas)**: `=TOCOL(A2:A4 & "-" & TRANSPOSE(B2:B3))` - **Formula (Total combinations generated (M * N))**: `=ROWS(TOCOL(A2:A4 & "-" & TRANSPOSE(B2:B3)))` - **Formula (Additional worked calculation)**: `=TEXTJOIN(", ", TRUE, TOCOL(A2:A4 & "-" & TRANSPOSE(B2:B3)))` - **Formula (Additional worked calculation)**: `=INDEX(TOCOL(A2:A4 & "-" & TRANSPOSE(B2:B3)), 4, 1)` ### Generate Combination Lock & Zero-Padded PIN Codes (SEQUENCE & MOD) - **URL**: https://sheets.arte-soft.com/en/learn/generate-all-n-digit-combination-lock-and-pin-codes-sequence/ - **Summary**: Count independent dial combinations, decode a three-dial state, and generate every four-digit decimal code with leading zeros. Includes validated inputs and a SEQUENCE list with a text-formatting column. - **Formula (Count states and decode a three-dial example)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric base and dial count",IF(OR(B2<2,B2>100,B2<>INT(B2),B3<1,B3>6,B3<>INT(B3)),"Use integer base 2..100 and dial count 1..6",B2^B3))` - **Formula (Decode the k-th three-dial state)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric base, dial count and index",IF(OR(B2<2,B2>100,B2<>INT(B2),B3<>3,B4<>INT(B4)),"Use integer base 2..100, three dials and integer index",IF(OR(B4<1,B4>B2^3),"Index Out of Range",QUOTIENT(B4-1,B2^2)&"-"&MOD(QUOTIENT(B4-1,B2),B2)&"-"&MOD(B4-1,B2))))` - **Formula (Format a separate four-digit decimal PIN index)**: `=IF(NOT(ISNUMBER(E2)),"Enter numeric PIN index",IF(OR(E2<>INT(E2),E2<1,E2>10000),"Use integer PIN index 1..10000",RIGHT("0000"&(E2-1),4)))` - **Formula (Generate all 10,000 four-digit codes)**: `=SEQUENCE(10000,1,0,1)` ### Generate Drift-Free Future Time Intervals and Slot Schedules (1440-Minute Anchor Math) - **URL**: https://sheets.arte-soft.com/en/learn/generate-future-time-intervals-and-slot-schedule/ - **Summary**: Generate N-minute appointment, shift, or dispatch intervals from an anchor start time without cumulative floating-point rounding drift by indexing off Start + (Slot - 1) * Minutes / 1440. *Table — Why recursivePrevCell + TIME(0, 15, 0) accumulates IEEE-754 floating-point drift:* | Slot Formula Component | Expression | Purpose | | --- | --- | --- | | Serial Slot Start | $E$2 + (A2 - 1) * $E$3 / 1440 | Direct offset from anchor (no cumulative drift) | | Zero-Padded HH:MM Label | RIGHT("0" & HOUR(t), 2) & ":" & RIGHT("0" & MINUTE(t), 2) | Locale-independent 24-hour clock string | | Slot Window Range | Start_HHMM & " - " & End_HHMM | Readable agenda block ("09:00 - 09:45") | - **Formula (Anchor-Indexed Time Slot Window Formula)**: `=LET(start_t, $E$2 + (A2 - 1) * $E$3 / 1440, end_t, $E$2 + A2 * $E$3 / 1440, RIGHT("0" & HOUR(start_t), 2) & ":" & RIGHT("0" & MINUTE(start_t), 2) & " - " & RIGHT("0" & HOUR(end_t), 2) & ":" & RIGHT("0" & MINUTE(end_t), 2))` ### Sequence of workdays and month-end dates (holiday-aware schedule) - **URL**: https://sheets.arte-soft.com/en/learn/generate-monthly-and-workday-milestone-schedule/ - **Summary**: Generate consecutive business days skipping weekends and holidays with WORKDAY(Start - 1, Step, Holidays) alongside rolling month-end closes. *Table — Why WORKDAY(Start - 1, Step, Holidays) includes StartDate when it IS a workday!:* | Step (C) | Workday Schedule (Anchor May 22 Fri, Holiday May 25 Mon) | Month-End Schedule (From Jan 15) | | --- | --- | --- | | 1 | 2026-05-22 (Friday — Day 1) | 2026-01-31 (=EOMONTH($D$2, 0)) | | 2 | 2026-05-26 (Tuesday — skips Sat, Sun & May 25!) | 2026-02-28 (=EOMONTH($D$2, 1)) | | 3 | 2026-05-27 (Wednesday — Day 3) | 2026-03-31 (=EOMONTH($D$2, 2)) | - **Formula (Holiday-aware Nth workday and rolling month-end formulas)**: `=TEXT(WORKDAY($A$2-1,C3,$B$2:$B$3),"yyyy-mm-dd")` - **Formula (Generate Nth consecutive Month-End close date)**: `=TEXT(EOMONTH($D$2,C3-1),"yyyy-mm-dd")` ### Get quarter start date and quarter end date from any date - **URL**: https://sheets.arte-soft.com/en/learn/generate-quarter-start-and-end-dates/ - **Summary**: Snap any transaction date to the first day (Jan 1, Apr 1, Jul 1, Oct 1) and last day (Mar 31, Jun 30, Sep 30, Dec 31) of its calendar quarter. *Table — Map months 1–12 to quarter start months 1, 4, 7, 10:* | InputDate (A) | Quarter # | Quarter Start | Quarter End | Days Left in Qtr | | --- | --- | --- | --- | --- | | 2026-05-19 | 2 (Q2) | 2026-04-01 | 2026-06-30 | 42 days | | 2026-11-10 | 4 (Q4) | 2026-10-01 | 2026-12-31 | 51 days | - **Formula (Quarter start date, end date, and days remaining)**: `=TEXT(DATE(YEAR(A2), (ROUNDUP(MONTH(A2) / 3, 0) - 1) * 3 + 1, 1), "yyyy-mm-dd")` - **Formula (Quarter end date formula)**: `=TEXT(EOMONTH(DATE(YEAR(A2), ROUNDUP(MONTH(A2) / 3, 0) * 3, 1), 0), "yyyy-mm-dd")` ### Generate a Recurring Custom Weekday Schedule (Mon/Wed/Fri & Tue/Thu Cadence) - **URL**: https://sheets.arte-soft.com/en/learn/generate-recurring-custom-weekday-schedule-sequence/ - **Summary**: Compute the exact calendar date of the Nth recurring class, clinic, or delivery session on a custom multi-day weekly pattern such as Monday/Wednesday/Friday using quotient-and-remainder cycle math. *Table — Compute the Nth session date directly via cycle quotient and intra-week offset:* | Session # (N) | Full Weeks INT((N-1)/3) | Slot MOD(N-1,3)+1 | Offset Days | Scheduled Date (Anchor 2026-05-02 Sat) | | --- | --- | --- | --- | --- | | 1 | 0 weeks | Slot 1 (Mon) | +0 | 2026-05-04 (Mon) | | 2 | 0 weeks | Slot 2 (Wed) | +2 | 2026-05-06 (Wed) | | 3 | 0 weeks | Slot 3 (Fri) | +4 | 2026-05-08 (Fri) | | 4 | 1 week (+7d) | Slot 1 (Mon) | +0 | 2026-05-11 (Mon) | | 6 | 1 week (+7d) | Slot 3 (Fri) | +4 | 2026-05-15 (Fri) | - **Formula (Nth Mon/Wed/Fri Session Date From Any Start Anchor)**: `=LET(firstMon, B2 + MOD(1 - WEEKDAY(B2, 2), 7), idx, B3 - 1, TEXT(firstMon + INT(idx / 3) * 7 + CHOOSE(MOD(idx, 3) + 1, 0, 2, 4), "yyyy-mm-dd"))` - **Formula (Nth Tue/Thu Session Date (2-Day Weekly Cadence))**: `=LET(firstTue, B2 + MOD(2 - WEEKDAY(B2, 2), 7), idx, B3 - 1, TEXT(firstTue + INT(idx / 2) * 7 + MOD(idx, 2) * 2, "yyyy-mm-dd"))` ### Generate Repeating Block Numbers Every N Rows (1,1,1, 2,2,2) - **URL**: https://sheets.arte-soft.com/en/learn/generate-repeating-block-numbers-every-n-rows-int-ceiling/ - **Summary**: Assign repeating pallet, carton, or cohort group IDs (1, 1, 1, 2, 2, 2...) and within-block slot numbers (1, 2, 3, 1, 2, 3...) every N rows using INT and MOD. *Table — Batching sequential rows into fixed-size cartons, pallets, or breakout groups!:* | Item Row (Zero-Based Offset k) | Block ID: INT(k / 3) + 1 | Slot in Block: MOD(k, 3) + 1 | Packing Label | | --- | --- | --- | --- | | Rows 2–4 (k = 0, 1, 2) | 1, 1, 1 | 1, 2, 3 | Carton 1 — Slots 1..3 | | Rows 5–7 (k = 3, 4, 5) | 2, 2, 2 | 1, 2, 3 | Carton 2 — Slots 1..3 | | Row 8 (k = 6) | 3 | 1 | Carton 3 — Slot 1 | - **Formula (Repeating Block / Group Number Every N Rows)**: `=IF($E$2 < 1, "Invalid Block Size", INT((ROW(A8) - ROW($A$2)) / $E$2) + 1)` - **Formula (Within-Block Position Index (1 through N))**: `=IF($E$2 < 1, "Invalid Block Size", MOD(ROW(A6) - ROW($A$2), $E$2) + 1)` ### Generate & Filter Gregorian Leap Years Accurately Across Century Boundaries - **URL**: https://sheets.arte-soft.com/en/learn/generate-sequence-of-leap-years-gregorian-4-100-400-filter/ - **Summary**: Build a leap-year list that avoids the naive +4 century trap on 1900 and 2100 using exact 4/100/400 modular rules, MONTH(DATE(y,2,29))=2, and FILTER. *Table — Why SEQUENCE(..., 4) fails across century years 1900 and 2100:* | Candidate Year | Divisible by 4 | Divisible by 100 | Divisible by 400 | True Gregorian Leap Year? | | --- | --- | --- | --- | --- | | 1900 | Yes | Yes | No | FALSE (365 days) | | 2000 | Yes | Yes | Yes | TRUE (366 days) | | 2024 | Yes | No | No | TRUE (366 days) | | 2026 | No | No | No | FALSE (365 days) | | 2100 | Yes | Yes | No | FALSE (365 days) | - **Formula (Exact Gregorian 4 / 100 / 400 Leap-Year Test)**: `=OR(MOD(A2, 400) = 0, AND(MOD(A2, 4) = 0, MOD(A2, 100) <> 0))` - **Formula (Extract Verified Leap-Year List with FILTER)**: `=FILTER(A2:A7, B2:B7 = TRUE)` ### Generate a Dynamic Sequence of Upcoming Weekend Dates (WEEKDAY & SEQUENCE) - **URL**: https://sheets.arte-soft.com/en/learn/generate-sequence-of-weekend-saturdays-and-sundays/ - **Summary**: Anchor on the first Saturday on or after any start date using WEEKDAY(start, 2) modular arithmetic and step forward in 7-day increments with SEQUENCE. *Table — Compute weekend maintenance windows from any arbitrary start date:* | Start Date | WEEKDAY(d, 2) | Offset MOD(6-w+7,7) | 1st Saturday | 4th Saturday (+21d) | | --- | --- | --- | --- | --- | | 2026-05-01 (Fri) | 5 | 1 day | 2026-05-02 | 2026-05-23 | | 2026-05-02 (Sat) | 6 | 0 days | 2026-05-02 | 2026-05-23 | | 2026-05-03 (Sun) | 7 | 6 days | 2026-05-09 | 2026-05-30 | - **Formula (First Upcoming Saturday On or After Start Date B2)**: `=TEXT(B2 + MOD(6 - WEEKDAY(B2, 2) + 7, 7), "yyyy-mm-dd")` - **Formula (Nth Upcoming Saturday from Dynamic SEQUENCE)**: `=IF(B3 < 1, "Count >= 1 Required", TEXT(INDEX(B2 + MOD(6 - WEEKDAY(B2, 2) + 7, 7) + SEQUENCE(B3, 1, 0, 7), B3), "yyyy-mm-dd"))` ### Generate & Snap Time Slots at Specific Minute Intervals (15, 20, or 30 Min) - **URL**: https://sheets.arte-soft.com/en/learn/generate-time-slots-and-quantize-timestamps-to-minute-intervals/ - **Summary**: Compute total appointment slots in a shift, map any integer slot index to exact HH:MM clock time, and snap arbitrary arrival timestamps upward to the next scheduled interval. *Table — Exact integer-minute arithmetic avoids binary floating-point time drift:* | Scheduling Task | Integer-Minute Formula | Example (08:30–12:00, 15-min step) | | --- | --- | --- | | Total Available Slots | INT((ROUND(End*1440,0) - ROUND(Start*1440,0)) / Step) | 14 slots | | k-th Slot Start Time (0-based) | (ROUND(Start*1440,0) + k * Step) / 1440 | k = 3 -> 09:15 | | Snap Arrival to Next Slot | (-INT(-ROUND(Arr*1440,6) / Step) * Step) / 1440 | 09:04 -> 09:15 | - **Formula (Shift Slot Capacity & k-th Slot Clock Time)**: `=LET(mins, ROUND($B$2 * 1440, 0) + D2 * $B$4, RIGHT("0" & INT(mins / 60), 2) & ":" & RIGHT("0" & MOD(mins, 60), 2))` - **Formula (Snap Arbitrary Timestamp Upward to Next Interval Slot)**: `=LET(mins, -INT(-ROUND(G2 * 1440, 6) / $B$4) * $B$4, RIGHT("0" & INT(mins / 60), 2) & ":" & RIGHT("0" & MOD(mins, 60), 2))` ### Generate hierarchical WBS outline numbering (1, 1.1, 1.2, 1.2.1, 2) by level - **URL**: https://sheets.arte-soft.com/en/learn/generate-wbs-outline-numbering-hierarchy/ - **Summary**: Build a three-level outline code from explicit depth values and running counters. Refill the formulas when extending or restructuring the list. *Table — Stop hand-typing 1.2.1 outline numbers that break on every inserted task!:* | Row Depth Level (A) | L1 Counter (B) | L2 Counter (C) | L3 Counter (D) | Assembled WBS Code (E) | | --- | --- | --- | --- | --- | | 1 (Discovery) | 1 | 0 | 0 | "1" | | 2 (Interviews) | 1 | 1 | 0 | "1.1" | | 2 (Wireframes) | 1 | 2 | 0 | "1.2" | | 3 (Mobile Flow) | 1 | 2 | 1 | "1.2.1" | | 1 (Build Phase) | 2 (L1+1) | 0 (Reset!) | 0 (Reset!) | "2" | - **Formula (Assemble multi-level WBS strings cleanly without trailing ".0")**: `=B5 & IF(A5 >= 2, "." & C5, "") & IF(A5 >= 3, "." & D5, "")` - **Formula (Inspect the full auto-numbered WBS sequence across the schedule)**: `=TEXTJOIN(", ", TRUE, E2:E6)` - **Formula (Fill the level-2 counter)**: `=IF(A3=1, 0, IF(A3=2, C2+1, C2))` ### Formula to List Weekend Dates Only (Saturday & Sunday Shift Schedule) - **URL**: https://sheets.arte-soft.com/en/learn/generate-weekend-dates-saturday-sunday-schedule-formula/ - **Summary**: Calculate the upcoming Saturday on or after any start date via B2 + MOD(6 - WEEKDAY(B2, 2), 7) and step strictly across consecutive Saturday/Sunday pairs using 7 * INT((N - 1) / 2) + MOD(N - 1, 2). *Table — Generate pure Saturday–Sunday on-call rosters without filtering 365 calendar rows!:* | Weekend Slot Index N (Start = Wed 2026-06-03) | Offset 7*INT((N-1)/2) + MOD(N-1,2) | Generated ISO Date | Day of Week | | --- | --- | --- | --- | | Slot N = 1 (First Saturday) | +0 Days From Anchor Sat | "2026-06-06" | Saturday | | Slot N = 2 (First Sunday) | +1 Day From Anchor Sat | "2026-06-07" | Sunday | | Slot N = 3 (Second Saturday) | +7 Days From Anchor Sat | "2026-06-13" | Saturday | - **Formula (N-th Upcoming Weekend Date (ISO "yyyy-mm-dd"))**: `=IF(OR(NOT(ISNUMBER(B2)), B3 < 1), "Invalid Start or Slot N", TEXT((B2 + MOD(6 - WEEKDAY(B2, 2), 7)) + 7 * INT((B3 - 1) / 2) + MOD(B3 - 1, 2), "yyyy-mm-dd"))` - **Formula (Identify Shift Day Label ("Saturday Shift" vs. "Sunday Shift"))**: `=IF(OR(NOT(ISNUMBER(B2)), B3 < 1), "Invalid Start or Slot N", IF(WEEKDAY((B2 + MOD(6 - WEEKDAY(B2, 2), 7)) + 7 * INT((B3 - 1) / 2) + MOD(B3 - 1, 2), 2) = 6, "Saturday Shift", "Sunday Shift"))` ### Choose arithmetic, geometric or harmonic means for the right weighting - **URL**: https://sheets.arte-soft.com/en/learn/geometric-mean-and-harmonic-mean-formulas/ - **Summary**: Compute Geometric Mean PRODUCT(x)^(1/n) for compounded growth factors and Harmonic Mean COUNT(x)/SUM(1/x) for speeds, rates, and P/E multiples. *Table — Choose the right mean: Arithmetic vs Geometric (growth) vs Harmonic (rates):* | Pythagorean Mean on [20, 30, 60] | Formula | Result & Domain | | --- | --- | --- | | Harmonic Mean (HM) | =COUNT(A2:A4) / SUM(1 / A2:A4) | 30.0000 (equal-distance speeds) | | Geometric Mean (GM) | =PRODUCT(A2:A4) ^ (1 / COUNT(A2:A4)) | 33.0193 (Growth factors, ratios) | | Arithmetic Mean (AM) | =AVERAGE(A2:A4) | 36.6667 (Additive totals) | - **Formula (Harmonic Mean and Geometric Mean formulas)**: `=IF(OR(COUNT(A2:A4)<>3,MIN(A2:A4)<=0),"Use three positive numbers",ROUND(COUNT(A2:A4) / SUM(1 / A2:A4), 4))` - **Formula (Geometric Mean (Nth root of product))**: `=IF(OR(COUNT(A2:A4)<>3,MIN(A2:A4)<=0),"Use three positive numbers",ROUND(PRODUCT(A2:A4) ^ (1 / COUNT(A2:A4)), 4))` ### Area of a triangle, trapezoid, and parallelogram (plus Heron's 3-side formula) - **URL**: https://sheets.arte-soft.com/en/learn/geometry-area-triangle-trapezoid-parallelogram/ - **Summary**: Compute planar land, roofing, and sheet-metal areas from base and perpendicular height—or from three measured triangle sides. *Table — Base-and-height formulas vs Heron's three-side survey formula:* | Shape | Dimensions | Formula | Area | | --- | --- | --- | --- | | Trapezoid | Bases 10 & 6, Height 4 | 0.5 * (A2 + B2) * C2 | 32 | | Triangle (base/h) | Base 10, Height 4 | 0.5 * A2 * C2 | 20 | | Parallelogram | Base 10, Height 4 | A2 * C2 | 40 | | Triangle (3 sides) | Sides 10, 6, 8 (s=12) | Heron SQRT(12*2*6*4) | 24 | - **Formula (Trapezoid, triangle, parallelogram, and Heron formulas)**: `=0.5 * (A2 + B2) * C2` - **Formula (Heron's 3-side triangle area with LET)**: `=LET(s, (A2 + B2 + D2) / 2, ROUND(SQRT(s * (s - A2) * (s - B2) * (s - D2)), 4))` ### George-Desu & Rubinstein-Lachin-Foulkes Survival Trial Sample Size: Accrual & Follow-Up - **URL**: https://sheets.arte-soft.com/en/learn/george-desu-and-lachin-foulkes-exponential-survival-sample-size/ - **Summary**: Calculate required Phase III survival events via George & Desu (1974) d = CEILING(4*(z_alpha/2 + z_beta)^2 / (LN(HR))^2, 1) and convert events into enrolled patients N under uniform accrual A and additional follow-up F. *Table — Why survival trials are powered by EVENTS d—and how uniform accrual A + follow-up F sets total patients N!:* | Oncology Survival Design (Control Median = 18 mo, HR = 0.70, 90% Power) | Exact Formula Result | Clinical Trial Impact | | --- | --- | --- | | George-Desu Required Total Events d | CEILING(4*(1.96+1.2816)^2 / LN(0.7)^2, 1) | 331 Total Progression/Death Events | | Pooled Event Probability (Accrual A=2 yr, Follow-up F=1.5 yr) | 0.5 * (P_event(lambda_C) + P_event(HR*lambda_C)) | 0.6088 (60.88% Experience Event by Study End) | | Total Enrolled Patients N (1:1 Even Integer) | CEILING(331 / 0.6088, 2) | 544 Randomized Patients (272 per Arm) | - **Formula (George-Desu (1974) Required Total Events d Across Both Arms (1:1 Allocation))**: `=IF(OR(B2 <= 0, B2 = 1, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 < 0), "Invalid Survival Trial Design Inputs", CEILING(4 * ((B5 + B6) ^ 2) / (LN(B2) ^ 2), 1))` - **Formula (Total Enrolled Sample Size N Under Uniform Accrual A (yr) + Additional Follow-Up F (yr))**: `=IF(OR(B2 <= 0, B2 = 1, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 < 0), "Invalid Survival Trial Design Inputs", CEILING(CEILING(4 * ((B5 + B6) ^ 2) / (LN(B2) ^ 2), 1) / (0.5 * ((1 - (EXP(-(LN(2) / B3) * B7) - EXP(-(LN(2) / B3) * (B4 + B7))) / ((LN(2) / B3) * B4)) + (1 - (EXP(-(B2 * LN(2) / B3) * B7) - EXP(-(B2 * LN(2) / B3) * (B4 + B7))) / ((B2 * LN(2) / B3) * B4)))), 2))` ### Geriatric Nutritional Risk Index (GNRI) Formula: Bouillanne Albumin & Lorentz Ideal Weight - **URL**: https://sheets.arte-soft.com/en/learn/geriatric-nutritional-risk-index-gnri-bouillanne-albumin-weight/ - **Summary**: Calculate Olivier Bouillanne et al.’s (2005) Geriatric Nutritional Risk Index GNRI = 1.489 * Albumin_gL + 41.7 * MIN(1, Weight / Lorentz_Ideal_Weight) and classify Major (< 82), Moderate (82 to < 92), Low (92 to <= 98), and Normal (> 98) nutrition-related mortality risk. *Table — Why Bouillanne’s GNRI replaces forgotten "usual body weight" with Lorentz Ideal Weight—and caps Weight/WLo <= 1!:* | GNRI Score Range | Bouillanne et al. (2005) Nutrition-Related Risk Tier | Hospital / Dialysis / Heart-Failure Prognosis | | --- | --- | --- | | GNRI < 82 | Major Nutrition-Related Risk | Highest infectious & 6-month mortality risk — intensive nutrition support | | 82 <= GNRI < 92 | Moderate Nutrition-Related Risk | Elevated complication risk — targeted protein/energy supplementation | | 92 <= GNRI <= 98 | Low Nutrition-Related Risk | Mild risk — monitor intake & serial albumin | | GNRI > 98 | Normal / No Nutrition-Related Risk | Standard inpatient diet | - **Formula (Bouillanne (2005) Geriatric Nutritional Risk Index GNRI (with Sex-Specific Lorentz W_Lo & Ratio <= 1 Cap))**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "M", UPPER(TRIM(B2 & "")) <> "F"), B3 < 120, B4 <= 0, B5 <= 0), "Invalid GNRI Inputs (Use Sex M/F, Height cm >= 120, Albumin in g/L)", ROUND(1.489 * B5 + 41.7 * MIN(1, B4 / (B3 - 100 - (B3 - 150) / IF(UPPER(TRIM(B2 & "")) = "M", 4, 2.5))), 2))` - **Formula (4-Tier GNRI Nutrition-Related Risk Classifier (< 82 Major / 82–<92 Moderate / 92–98 Low / > 98 No Risk))**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "M", UPPER(TRIM(B2 & "")) <> "F"), B3 < 120, B4 <= 0, B5 <= 0), "Invalid GNRI Inputs", IF(1.489 * B5 + 41.7 * MIN(1, B4 / (B3 - 100 - (B3 - 150) / IF(UPPER(TRIM(B2 & "")) = "M", 4, 2.5))) < 82, "Major Nutritional Risk (GNRI < 82)", IF(1.489 * B5 + 41.7 * MIN(1, B4 / (B3 - 100 - (B3 - 150) / IF(UPPER(TRIM(B2 & "")) = "M", 4, 2.5))) < 92, "Moderate Nutritional Risk (82 to < 92)", IF(1.489 * B5 + 41.7 * MIN(1, B4 / (B3 - 100 - (B3 - 150) / IF(UPPER(TRIM(B2 & "")) = "M", 4, 2.5))) <= 98, "Low Nutritional Risk (92 to 98)", "No Nutritional Risk (GNRI > 98)"))))` ### Geske Call-on-Call Compound Option Exercise Threshold and Bound - **URL**: https://sheets.arte-soft.com/en/learn/geske-compound-option-critical-underlying-and-leverage-bound/ - **Summary**: Evaluate staged R&D and M&A call-on-call options in Excel and Arte Sheets by testing Geske’s (1979) T_1 residual Black-Scholes exercise condition C_BSM(S_T1, K_2, T_2 - T_1) >= K_1. *Table — Model staged R&D or M&A exclusivity fees as a call option on a call option:* | Geske Staged-Option Quantity | Formula Relationship | Sample Output | | --- | --- | --- | | Underlying Full T_2 Call C(S, K_2, T_2) | Vanilla BSM Call over full 1.50 years | 15.6879 | | No-Arbitrage Lower Bound | MAX(0, C(S, K_2, T_2) - K_1 * EXP(-r * T_1)) | 7.8854 | | Residual Call at T_1 Candidate Spot | C_BSM(S_cand = 95.3887, K_2 = 100, T_2 - T_1 = 1.0) | 9.6092 (> K_1 = 8.00) | | T_1 Exercise Decision Gate | IF(C_rem(S_T1) >= K_1, "Pay K1 & Continue", "Abandon") | Pay K1 & Continue | - **Formula (Residual T_2 - T_1 Black-Scholes Value at Intermediate Date T_1 Formula)**: `=LET(s_t1, B9, k_2, B4, r_rf, B5, t_1, B6, t_2, B7, sig_v, B8, tau_rem, t_2 - t_1, IF(OR(s_t1 <= 0, k_2 <= 0, sig_v <= 0, t_1 <= 0, tau_rem <= 0), "Invalid Horizon (Require 0 < T1 < T2)", LET(st_r, sig_v * SQRT(tau_rem), d_1, (LN(s_t1 / k_2) + (r_rf + 0.5 * sig_v^2) * tau_rem) / st_r, d_2, d_1 - st_r, u_1, 1 / (1 + 0.2316419 * ABS(d_1)), ph_1, 0.3989422804014327 * EXP(-0.5 * d_1^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), nd_1, IF(d_1 >= 0, 1 - ph_1, ph_1), u_2, 1 / (1 + 0.2316419 * ABS(d_2)), ph_2, 0.3989422804014327 * EXP(-0.5 * d_2^2) * u_2 * (0.31938153 + u_2 * (-0.356563782 + u_2 * (1.781477937 + u_2 * (-1.821255978 + 1.330274429 * u_2)))), nd_2, IF(d_2 >= 0, 1 - ph_2, ph_2), ROUND(s_t1 * nd_1 - k_2 * EXP(-r_rf * tau_rem) * nd_2, 4))))` - **Formula (Compound No-Arbitrage Lower Bound Formula & Abandonment Test)**: `=IF(OR(B6 <= 0, B7 <= B6), "Invalid Horizon (Require 0 < T1 < T2)", ROUND(MAX(0, E2 - B3 * EXP(-B5 * B6)), 4))` ### Unit Step Threshold Gate (GESTEP Heaviside Pattern) for Quota & Tier Counting - **URL**: https://sheets.arte-soft.com/en/learn/gestep-heaviside-unit-step-threshold-gate-and-tier-counting/ - **Summary**: Implement exact binary step indicators (1 when Value >= Step, 0 otherwise) to gate quota attainment, flag non-negative cash flows, and compute marginal bonus tiers without nested IF chains. *Table — Replacing add-in GESTEP with clean boolean arithmetic:* | Booked ($k) | Quota Step ($k) | Quota Gate (step=100) | Zero Step (step=0) | | --- | --- | --- | --- | | 85 | 100 | 0 | 1 | | 100 | 100 | 1 (Exact boundary) | 1 | | 125 | 100 | 1 | 1 | | -10 | 100 | 0 | 0 (Net clawback) | - **Formula (Row-Level Threshold & Zero-Step Indicators)**: `=IF(B2 >= C2, 1, 0)` - **Formula (Vectorized Count of Rows Clearing Individual Thresholds)**: `=SUMPRODUCT(--(B2:B5 >= C2:C5))` ### Convert Year & Day-of-Year Number (1–366) to Calendar Date - **URL**: https://sheets.arte-soft.com/en/learn/get-calendar-date-from-year-and-day-of-year-number-date/ - **Summary**: Convert ordinal day-of-year numbers (e.g., Year = 2026, Day = 135 -> 2026-05-15) into ISO calendar dates via DATE(Year, 1, Day_Number) while catching invalid Day 366 in non-leap years. *Table — Turn NOAA weather logs, satellite TLEs, and manufacturing lot codes into real dates!:* | Year (B2) & Ordinal Day (B3) | YEAR(DATE(B2, 1, B3)) Check | ISO Calendar Date Result | Leap-Year Behavior | | --- | --- | --- | --- | | Year 2026, Day 135 | 2026 (= B2 Valid) | "2026-05-15" | Non-Leap Year (Feb = 28d) | | Leap Year 2024, Day 366 | 2024 (= B2 Valid) | "2024-12-31" | Valid Leap Day 366 | | Non-Leap Year 2026, Day 366 | 2027 (<> B2 Overflow!) | "Invalid Day of Year" | Catches Non-Leap Overflow | - **Formula (Validated ISO Calendar Date From Year & Day Number (1–365/366))**: `=IF(OR(B2 < 1900, B3 < 1, YEAR(DATE(B2, 1, B3)) <> B2), "Invalid Day of Year", TEXT(DATE(B2, 1, B3), "yyyy-mm-dd"))` - **Formula (Extract Month Number (1–12) From Year & Ordinal Day Number)**: `=IF(OR(B2 < 1900, B3 < 1, YEAR(DATE(B2, 1, B3)) <> B2), "Invalid Day of Year", MONTH(DATE(B2, 1, B3)))` ### Return the A1 cell address of the MAX value or lookup match (ADDRESS & XMATCH) - **URL**: https://sheets.arte-soft.com/en/learn/get-cell-address-of-max-or-lookup-match-address-xmatch/ - **Summary**: Locate the exact "$C$6" or "C6" coordinate of the highest number or a matched lookup key inside any offset range using ADDRESS, ROW, COLUMN, and XMATCH. *Table — Why XMATCH alone isn't a sheet row—add ROW(FirstCell) - 1 inside ADDRESS!:* | Worksheet Cell | Branch (B3:B7) | Revenue (C3:C7) | Relative k vs True Sheet Row | | --- | --- | --- | --- | | Row 3 (C3) | North | 120 | k = 1 -> Row 3 + 1 - 1 = 3 | | Row 4 (C4) | South | 340 | k = 2 -> Row 4 | | Row 5 (C5) | East | 290 | k = 3 -> Row 5 | | Row 6 (C6) | West | 410 (MAX!) | k = 4 -> Row 6 ("$C$6" / "C6") | | Row 7 (C7) | Central | 180 | k = 5 -> Row 7 | - **Formula (Absolute "$C$6" or relative "C6" address of maximum value)**: `=IF(COUNT(C3:C7)<>5,"Invalid inputs",ADDRESS(ROW(C3) + XMATCH(MAX(C3:C7), C3:C7, 0) - 1, COLUMN(C3), 4))` - **Formula (Get cell address of any text lookup match (e.g., "East" -> "$C$5"))**: `=IF(COUNTBLANK(E3)>0,"No match",LET(matchPosition,IFNA(XMATCH(E3,B3:B7,0),0),IF(matchPosition=0,"No match",ADDRESS(ROW(C3)+matchPosition-1,COLUMN(C3),1))))` ### Get Cell Value & Coordinate String at Given Row and Column (INDEX + ADDRESS) - **URL**: https://sheets.arte-soft.com/en/learn/get-cell-content-at-given-row-and-column-index-address/ - **Summary**: Retrieve any cell’s exact value without volatile INDIRECT by pairing INDEX(B2:D5, G2, G3) with ADDRESS(Row_Offset + G2, Col_Offset + G3, 4) for audit trail reporting. *Table — Why non-volatile INDEX(Range, Row, Col) beats INDIRECT(ADDRESS(...)) in shared financial models!:* | Matrix Coordinate (G2 Row, G3 Col in B2:D5) | Worksheet A1 Coordinate | INDEX(B2:D5, G2, G3) Value | Out-of-Range Protection | | --- | --- | --- | --- | | Row G2 = 3, Col G3 = 2 | ADDRESS(4, 3, 4) = "C4" | $18,400 | Within 4×3 matrix bounds | | Row G2 = 1, Col G3 = 3 | ADDRESS(2, 4, 4) = "D2" | $15,900 | Top-right Q3 cell | | Row G2 = 6, Col G3 = 2 (> 4 Rows!) | Outside B2:D5 | "Coordinates Outside Matrix Bounds" | ROWS/COLUMNS pre-guard | - **Formula (Retrieve Matrix Cell Value by Relative Row G2 & Column G3 (Bounds-Guarded INDEX))**: `=IF(OR(G2 < 1, G2 > ROWS(B2:D5), G3 < 1, G3 > COLUMNS(B2:D5)), "Coordinates Outside Matrix Bounds", INDEX(B2:D5, G2, G3))` - **Formula (Return Relative Worksheet Cell Address String via ADDRESS(Row, Col, 4))**: `=IF(OR(G2 < 1, G2 > ROWS(B2:D5), G3 < 1, G3 > COLUMNS(B2:D5)), "Coordinates Outside Matrix Bounds", ADDRESS(1 + G2, 1 + G3, 4))` ### Get Column Name from Index & Column Position from Header (INDEX / MATCH) - **URL**: https://sheets.arte-soft.com/en/learn/get-column-name-from-index-and-header-position-index-match/ - **Summary**: Retrieve the nth column header label from a table header row with INDEX(A1:E1, 1, k) and find the 1-based column index of any named field with MATCH(name, A1:E1, 0). *Table — Dynamic report headers and schema audits need two-way header indexing!:* | Header Row A1:E1 | Position 1..5 | Lookup Formula | Returned Result | | --- | --- | --- | --- | | Region \| Q1_Rev \| Q2_Rev \| Q3_Rev \| Q4_Rev | Index k = 4 | =INDEX(A1:E1, 1, 4) | "Q3_Rev" | | Search Header "Q4_Rev" | Exact Match | =MATCH("Q4_Rev", A1:E1, 0) | 5 | | Out-of-Range Index k = 7 | Exceeds 5 Cols | Bounds Guard IF(k > COLUMNS(...)) | "Column Index Out of Range" | - **Formula (Get Table Column Header Name from 1-Based Column Index)**: `=IF(OR(G2 < 1, G2 > COLUMNS(A1:E1)), "Column Index Out of Range", INDEX(A1:E1, 1, G2))` - **Formula (Get 1-Based Column Index from Header Name)**: `=IFNA(MATCH(G3, A1:E1, 0), "Header Not Found")` ### Get day name from a date: locale-safe weekday labels with WEEKDAY and CHOOSE - **URL**: https://sheets.arte-soft.com/en/learn/get-day-name-from-date/ - **Summary**: Turn any calendar date into "Monday".."Sunday" or "Mon".."Sun" using WEEKDAY(date, 2) + CHOOSE so formulas never break across locales. *Table — Why CHOOSE + WEEKDAY beats locale-dependent TEXT("dddd"):* | ShiftDate (A) | WEEKDAY(A, 2) | Full Day Name | Short Code | | --- | --- | --- | --- | | 2026-04-15 | 3 | Wednesday | Wed | | 2026-04-19 | 7 | Sunday | Sun | - **Formula (Return full or abbreviated day names reliably)**: `=CHOOSE(WEEKDAY(A2, 2), "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")` - **Formula (Compact 3-letter weekday lookup with INDEX)**: `=INDEX({"Mon","Tue","Wed","Thu","Fri","Sat","Sun"}, WEEKDAY(A2, 2))` ### Get the decimal part of a number (positive and negative safe) - **URL**: https://sheets.arte-soft.com/en/learn/get-decimal-and-integer-parts-of-number/ - **Summary**: Extract cents or fractional parts accurately using x - TRUNC(x) instead of x - INT(x), which flips -14.75 into +0.25. *Table — Why x - INT(x) gives the wrong cents on negative refunds:* | Amount | A - TRUNC(A) (Signed) | ABS(A - TRUNC(A)) (Fraction magnitude) | A - INT(A) (Floor Trap) | | --- | --- | --- | --- | | 14.75 | 0.75 | 0.75 | 0.75 | | -14.75 | -0.75 | 0.75 | 0.25 (wrong cents!) | - **Formula (Unsigned and signed decimal extraction formulas)**: `=ABS(ROUND(A2 - TRUNC(A2), 6))` - **Formula (Signed fractional remainder)**: `=ROUND(A2 - TRUNC(A2), 6)` ### Get First & Last Text Value in a Mixed Range (Wildcard XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/get-first-and-last-text-entry-in-mixed-range-filter-istext/ - **Summary**: Extract the first or last non-empty text entry from a column or row mixed with numbers and blanks using XLOOKUP("?*", range, range, "No Text Found", 2, 1) and reverse search_mode -1. *Table — Skip numbers and empty cells to grab the earliest or latest status note!:* | Row | Mixed Audit Column (A) | Matches Wildcard "?*" (match_mode = 2)? | First vs Last Text Result | | --- | --- | --- | --- | | A2 | 100 (Number) | No (Numbers ignored by wildcard!) | — | | A3 | "Draft Submitted" | YES — First non-empty text! | search_mode = 1 -> "Draft Submitted" | | A4 | 250 (Number) | No | — | | A5 | "QA Approved" | YES — Last non-empty text! | search_mode = -1 -> "QA Approved" | | A6 | 400 (Number) | No | — | - **Formula (First Non-Empty Text Value in a Mixed Range (search_mode = 1))**: `=XLOOKUP("?*", A2:A6, A2:A6, "No Text Found", 2, 1)` - **Formula (Last Non-Empty Text Value in a Mixed Range (search_mode = -1))**: `=XLOOKUP("?*", A2:A6, A2:A6, "No Text Found", 2, -1)` ### Get the first day of the month (current, previous, or next month) - **URL**: https://sheets.arte-soft.com/en/learn/get-first-day-of-month-formula/ - **Summary**: Anchor any date to the 1st of its month—or shift cleanly to prior or upcoming months—with EOMONTH(date, n) + 1. *Table — Why EOMONTH(date, -1) + 1 scales across every month offset:* | Input Date (A) | 1st of Prior Month | 1st of Current Month | 1st of Next Month | | --- | --- | --- | --- | | 2026-04-19 | 2026-03-01 | 2026-04-01 | 2026-05-01 | | 2026-12-15 | 2026-11-01 | 2026-12-01 | 2027-01-01 | - **Formula (Current, prior, and next month start formulas)**: `=TEXT(EOMONTH(A2, -1) + 1, "yyyy-mm-dd")` - **Formula (Direct day-subtraction alternative)**: `=TEXT(INT(A2) - DAY(A2) + 1, "yyyy-mm-dd")` ### Get the first non-blank value in a row or column (COALESCE pattern) - **URL**: https://sheets.arte-soft.com/en/learn/get-first-non-blank-value-in-list/ - **Summary**: Implement SQL-style COALESCE fallback across price or contact columns with XLOOKUP—while keeping valid numeric zeros intact. *Table — Price-override waterfall without skipping valid $0 entries:* | Row | OverridePrice (A) | PromoPrice (B) | ListPrice (C) | Effective Price | | --- | --- | --- | --- | --- | | 2 | (blank) | 0 | 49 | 0 (free promo preserved!) | | 3 | (blank) | (blank) | 79 | 79 (falls back to List) | - **Formula (Zero-preserving COALESCE formula)**: `=XLOOKUP(TRUE, (ISNUMBER(A2:C2) + (ISTEXT(A2:C2) * (A2:C2<>""))) > 0, A2:C2, "All blank")` - **Formula (Fallback to ListPrice and All-Blank guard)**: `=XLOOKUP(TRUE, (ISNUMBER(A3:C3) + (ISTEXT(A3:C3) * (A3:C3<>""))) > 0, A3:C3, "All blank")` ### Get First Text Value in a Row or Column (Skipping Blanks & Numbers) - **URL**: https://sheets.arte-soft.com/en/learn/get-first-text-value-in-row-or-column-xlookup-wildcard/ - **Summary**: Extract the first non-empty text entry across mixed blank, numeric, and text cells using wildcard XLOOKUP("?*", B2:F2, B2:F2, "No Text Found", 2) or INDEX + MATCH("?*", ...). *Table — Why "?*" skips empty strings AND pure numbers in one clean lookup!:* | Row Values B2:F2 | Lookup Direction | Wildcard Formula Pattern | Returned Text | | --- | --- | --- | --- | | ["", 420, "Pending QA", 88, "Approved"] | First Text (Left -> Right) | XLOOKUP("?*", B2:F2, B2:F2, "No Text", 2) | "Pending QA" | | ["", 420, "Pending QA", 88, "Approved"] | Last Text (Right -> Left) | XLOOKUP("?*", B2:F2, B2:F2, "No Text", 2, -1) | "Approved" | | ["", 420, 105, 88, 0] (Numbers Only) | Fallback Triggered | if_not_found Argument | "No Text Found" | - **Formula (First Non-Empty Text Value in a Row (Left-to-Right Wildcard XLOOKUP))**: `=XLOOKUP("?*", B2:F2, B2:F2, "No Text Found", 2)` - **Formula (Classic INDEX + MATCH("?*", Range, 0) Column Position of First Text)**: `=IFERROR(MATCH("?*", B2:F2, 0), "No Text Found")` ### Get fiscal quarter and fiscal year from a date (any start month) - **URL**: https://sheets.arte-soft.com/en/learn/get-fiscal-quarter-and-year-from-date/ - **Summary**: Convert transaction dates into calendar quarters (Q1–Q4) or shifted fiscal quarters and fiscal years (April, July, or October starts). *Table — Shift month numbers modularly around FiscalStartMonth:* | TxDate (A) | StartMonth (B) | Calendar Qtr | Fiscal Qtr | Ending Fiscal Year | | --- | --- | --- | --- | --- | | 2026-05-12 | 4 | Q2 | FQ1 | 2027 | | 2026-02-18 | 4 | Q1 | FQ4 | 2026 | | 2026-10-15 | 10 | Q4 | FQ1 | 2027 | - **Formula (Parameterized fiscal quarter and fiscal year formulas)**: `="FQ" & (INT(MOD(MONTH(A2) - B2 + 12, 12) / 3) + 1)` - **Formula (Fiscal year and standard calendar quarter checks)**: `=YEAR(A2) + IF(AND(B2>1, MONTH(A2)>=B2), 1, 0)` ### Add line breaks with CHAR(10) and extract the last line in a cell - **URL**: https://sheets.arte-soft.com/en/learn/get-last-line-in-multiline-cell/ - **Summary**: Join status updates with newline delimiter CHAR(10), count lines, and pull the most recent bottom line with TEXTAFTER(..., CHAR(10), -1). *Table — CHAR(10) is the spreadsheet newline character:* | Step1 (A) | Step2 (B) | Step3 (C) | Line Count | Last Line | | --- | --- | --- | --- | --- | | 2026-04-01 Created | 2026-04-03 Reviewed | 2026-04-08 Approved | 3 | 2026-04-08 Approved | | 2026-04-01 Created | (blank) | (blank) | 1 | 2026-04-01 Created | - **Formula (Extract latest line and count total lines)**: `=LET(log, TEXTJOIN(CHAR(10), TRUE, A2:C2), IFERROR(TEXTAFTER(log, CHAR(10), -1), log))` - **Formula (Count lines in the joined text)**: `=LET(log, TEXTJOIN(CHAR(10), TRUE, A2:C2), IF(log="", 0, LEN(log) - LEN(SUBSTITUTE(log, CHAR(10), "")) + 1))` ### Get the last match in a column (reverse bottom-to-top XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/get-last-match-reverse-xlookup/ - **Summary**: Pass -1 as XLOOKUP's 6th search_mode argument to pull the most recent appended price, status, or log row for a repeated key. *Table — Why VLOOKUP and MATCH(..., 0) always stop at the first row:* | Row | Sku (A) | UnitCost (B) | Search Direction | | --- | --- | --- | --- | | 2 | SKU-10 | 18.5 | First match (search_mode = 1) | | 3 | SKU-20 | 42 | | | 4 | SKU-10 | 21 | | | 5 | SKU-10 | 23.75 | Last match (search_mode = -1) | - **Formula (Reverse XLOOKUP formula)**: `=XLOOKUP(C2, A2:A5, B2:B5, "Not found", 0, -1)` - **Formula (Compare first match vs last match)**: `=XLOOKUP(C2, A2:A5, B2:B5, "Not found", 0, 1)` ### Get the last non-blank value and row position in a column with blanks - **URL**: https://sheets.arte-soft.com/en/learn/get-last-non-blank-value-and-row-in-column/ - **Summary**: Retrieve the bottom-most populated entry and its row index—even when empty spacer rows appear throughout the column—using reverse XLOOKUP and XMATCH. *Table — Why COUNTA fails to find the last row whenever blank gaps exist!:* | Relative Pos | Status Log (A2:A7) | Nonblank helper flag (0 or 1) | Bottom-Up Search (-1) | | --- | --- | --- | --- | | Pos 1 (Row 2) | "Draft v1" | 1 | Skipped (earlier) | | Pos 2 & 4 | "" (Blank gaps) | 0 | Ignored | | Pos 3 (Row 4) | "Review v2" | 1 | COUNTA=3 stops here by mistake! | | Pos 5 (Row 6) | "Signed Final" | 1 | Matched! True last entry (Pos 5) | | Pos 6 (Row 7) | "" (Trailing blank) | 0 | Ignored | - **Formula (Return the last non-blank value in a mixed text/number column)**: `=XLOOKUP(1, B2:B7, A2:A7, "All Blank", 0, -1)` - **Formula (Return the exact relative row position (or sheet row) of the last entry)**: `=IFERROR(XMATCH(1,B2:B7,0,-1),"All Blank")` ### Get the last number or nonempty text in a column - **URL**: https://sheets.arte-soft.com/en/learn/get-last-non-empty-cell-in-column/ - **Summary**: Scan upward from the bottom of a partially filled column with XLOOKUP(..., 0, -1) to pull the latest balance—even when gaps exist. *Table — Why INDEX(B2:B13, COUNTA(B2:B13)) fails when intermediate rows are blank:* | Row | Month (A) | ClosingCash (B) | Status | | --- | --- | --- | --- | | 2 | Jan | 42000 | Populated | | 3 | Feb | 45500 | Populated | | 4 | Mar | (blank) | Gap in middle! | | 5 | Apr | 51200 | Last non-empty cell | | 6 | May | (blank) | Future month | - **Formula (Latest value and latest period label formulas)**: `=XLOOKUP(TRUE, (ISNUMBER(B2:B6) + (ISTEXT(B2:B6) * (B2:B6<>""))) > 0, B2:B6, "No data", 0, -1)` - **Formula (Get the month label of the last populated balance)**: `=XLOOKUP(TRUE, (ISNUMBER(B2:B6) + (ISTEXT(B2:B6) * (B2:B6<>""))) > 0, A2:A6, "No data", 0, -1)` ### Get Last Specific Weekday of Month (Last Friday, Monday, or Thursday) - **URL**: https://sheets.arte-soft.com/en/learn/get-last-weekday-of-month-options-expiry-and-payroll/ - **Summary**: Calculate the exact date of the last Friday, Monday, or any target weekday (1=Sun to 7=Sat) in a month using EOMONTH(date, 0) - MOD(WEEKDAY(EOMONTH(date, 0)) - target_dow + 7, 7). *Table — Anchor monthly payroll runs, futures expirations, and closing Fridays!:* | Input Date (B2) | Month End EOMONTH(B2, 0) | Target DOW (1=Sun..7=Sat) | Last Target Weekday Date | | --- | --- | --- | --- | | 2026-10-12 | 2026-10-31 (Saturday = 7) | 6 (Friday) | 2026-10-30 (Back 1 day) | | 2026-11-10 | 2026-11-30 (Monday = 2) | 6 (Friday) | 2026-11-27 (Back 3 days) | | 2026-11-10 | 2026-11-30 (Monday = 2) | 2 (Monday) | 2026-11-30 (Back 0 days!) | - **Formula (Last Target Weekday of Current Month (Formatted ISO Date))**: `=IF(OR(B3 < 1, B3 > 7), "Invalid Weekday Code (Use 1=Sun..7=Sat)", TEXT(EOMONTH(B2, 0) - MOD(WEEKDAY(EOMONTH(B2, 0)) - B3 + 7, 7), "yyyy-mm-dd"))` - **Formula (Days Remaining Until Month's Last Target Weekday)**: `=(EOMONTH(B2, 0) - MOD(WEEKDAY(EOMONTH(B2, 0)) - B3 + 7, 7)) - B2` ### Get the last working day of the month (skipping weekends and holidays) - **URL**: https://sheets.arte-soft.com/en/learn/get-last-working-day-in-month/ - **Summary**: Step backward 1 business day from the 1st of next month with WORKDAY(EOMONTH(date, 0) + 1, -1, holidays) for payroll and close dates. *Table — Why WORKDAY(EOMONTH(date, 0), 0) does not work—and +1, -1 does:* | RefDate (A) | Month End | No Holiday | With May 29 Holiday (B2) | | --- | --- | --- | --- | | 2026-05-10 | 2026-05-31 (Sun) | 2026-05-29 (Fri) | 2026-05-28 (Thu) | | 2026-04-10 | 2026-04-30 (Thu) | 2026-04-30 (Thu) | 2026-04-30 (Thu) | - **Formula (Last business day of month formula)**: `=TEXT(WORKDAY(EOMONTH(A2, 0) + 1, -1), "yyyy-mm-dd")` - **Formula (Holiday-aware variant)**: `=TEXT(WORKDAY(EOMONTH(A2, 0) + 1, -1, B2:B2), "yyyy-mm-dd")` ### Get Monday of the week from any date (weekly cohort grouping) - **URL**: https://sheets.arte-soft.com/en/learn/get-monday-of-the-week-start/ - **Summary**: Roll daily timestamps back to the Monday (or Sunday) starting their week using Date - WEEKDAY(Date, 2) + 1. *Table — Bucket daily transactions by week-starting Monday:* | TxDate (A) | Day of Week | ISO Monday Start | US Sunday Start | | --- | --- | --- | --- | | 2026-04-16 (Thu) | ISO 4 | 2026-04-13 | 2026-04-12 | | 2026-04-13 (Mon) | ISO 1 | 2026-04-13 | 2026-04-12 | | 2026-05-02 (Sat) | ISO 6 | 2026-04-27 | 2026-04-26 | - **Formula (Monday-start and Sunday-start week anchors)**: `=TEXT(INT(A2) - WEEKDAY(A2, 2) + 1, "yyyy-mm-dd")` - **Formula (US Sunday-start week formula)**: `=TEXT(INT(A2) - WEEKDAY(A2, 1) + 1, "yyyy-mm-dd")` ### Get month name from a date: locale-safe full and 3-letter labels - **URL**: https://sheets.arte-soft.com/en/learn/get-month-name-from-date-formula/ - **Summary**: Extract English full ("April") or abbreviated ("Apr") month names reliably across locales with CHOOSE and MONTH. *Table — Why CHOOSE(MONTH(date), ...) avoids regional TEXT("mmmm") surprises:* | EventDate (A) | MONTH(A) | Full Month Name | 3-Letter + Year | | --- | --- | --- | --- | | 2026-04-18 | 4 | April | Apr 2026 | | 2026-09-05 | 9 | September | Sep 2026 | - **Formula (Full month name and abbreviated Month-Year label)**: `=CHOOSE(MONTH(A2), "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December")` - **Formula (3-letter month-year label formula)**: `=LEFT(CHOOSE(MONTH(A3), "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"), 3) & " " & YEAR(A3)` ### Get Most Recent Day of Week (Week-Starting Monday or Prior Friday) - **URL**: https://sheets.arte-soft.com/en/learn/get-most-recent-day-of-week-on-or-before-date/ - **Summary**: Roll any transaction timestamp back to its week-starting Monday (inclusive on-or-before) or strictly prior weekday using B2 - MOD(WEEKDAY(B2) - target_dow + 7, 7). *Table — Bucket daily transactions into consistent Monday-start weekly cohorts!:* | Transaction Date (B2) | Target DOW (2 = Monday) | Inclusive On-or-Before | Strictly Prior Occurrence | | --- | --- | --- | --- | | 2026-10-29 (Thursday) | 2 (Monday) | 2026-10-26 (3 days back) | 2026-10-26 (3 days back) | | 2026-10-26 (Monday!) | 2 (Monday) | 2026-10-26 (Same day = 0 back) | 2026-10-19 (Full 7 days back!) | | 2026-10-25 (Sunday) | 2 (Monday) | 2026-10-19 (6 days back) | 2026-10-19 (6 days back) | - **Formula (Inclusive Most Recent Weekday (On or Before Date))**: `=IF(OR(B3 < 1, B3 > 7), "Invalid Weekday (1..7)", TEXT(B2 - MOD(WEEKDAY(B2) - B3 + 7, 7), "yyyy-mm-dd"))` - **Formula (Strictly Prior Weekday (Always at Least 1 to 7 Days Earlier))**: `=TEXT((B2 - 1) - MOD(WEEKDAY(B2 - 1) - B3 + 7, 7), "yyyy-mm-dd")` ### Get the next specific weekday from a date (e.g., next Friday) - **URL**: https://sheets.arte-soft.com/en/learn/get-next-day-of-week-from-date/ - **Summary**: Advance any order or billing date to the upcoming target weekday—choosing explicitly between same-day inclusive and strictly next week. *Table — On-or-after vs strictly-after when OrderDate already matches:* | OrderDate (A) | Target (B = 5 Fri) | On-or-After Friday | Strictly Next Friday | | --- | --- | --- | --- | | 2026-04-15 (Wed) | 5 (Friday) | 2026-04-17 | 2026-04-17 | | 2026-04-17 (Fri) | 5 (Friday) | 2026-04-17 (+0d) | 2026-04-24 (+7d) | - **Formula (Upcoming weekday formulas)**: `=TEXT(A2 + MOD(B2 - WEEKDAY(A2, 2) + 7, 7), "yyyy-mm-dd")` - **Formula (Strictly-after next weekday formula)**: `=TEXT(A2 + MOD(B2 - WEEKDAY(A2, 2) + 6, 7) + 1, "yyyy-mm-dd")` ### Get the next scheduled event from an unsorted date list - **URL**: https://sheets.arte-soft.com/en/learn/get-next-scheduled-event-minifs/ - **Summary**: Find the earliest upcoming date on or after a reference date with MINIFS and retrieve its event name with XLOOKUP. *Table — Find the smallest date >= TodayRef even when rows are unsorted:* | EventDate (A) | EventTitle (B) | Status vs 2026-04-15 (C2) | | --- | --- | --- | | 2026-04-05 | Kickoff | Past (< Apr 15) | | 2026-04-28 | Board Review | Upcoming (later) | | 2026-04-18 | Security Audit | Next upcoming (MINIFS winner) | - **Formula (Next upcoming event title and date formulas)**: `=LET(d, MINIFS(A2:A4, A2:A4, ">=" & C2), IF(d=0, "None upcoming", XLOOKUP(d, A2:A4, B2:B4)))` - **Formula (Next upcoming event ISO date)**: `=LET(d, MINIFS(A2:A4, A2:A4, ">=" & C2), IF(d=0, "None upcoming", TEXT(d, "yyyy-mm-dd")))` ### Get the Nth weekday of a month (e.g., 4th Thursday of November) - **URL**: https://sheets.arte-soft.com/en/learn/get-nth-day-of-week-in-month/ - **Summary**: Calculate floating holidays and recurring monthly board dates from Year, Month, Nth occurrence, and ISO weekday—with a 5th-week guard. *Table — Find the 1st occurrence on or after day 1, then add (N - 1) * 7:* | Rule | Yr / Mo / Nth / IsoDow | 1st Match | Nth Match Date | | --- | --- | --- | --- | | US Thanksgiving 2026 | 2026 / 11 / 4 / 4 (Thu) | 2026-11-05 | 2026-11-26 | | MLK Day 2026 | 2026 / 1 / 3 / 1 (Mon) | 2026-01-05 | 2026-01-19 | | 5th Thu Nov 2026 | 2026 / 11 / 5 / 4 (Thu) | 2026-11-05 | No 5th weekday | - **Formula (Month-guarded Nth weekday formula)**: `=LET(firstDay, DATE(A2, B2, 1), res, firstDay + MOD(D2 - WEEKDAY(firstDay, 2) + 7, 7) + (C2 - 1) * 7, IF(MONTH(res)<>B2, "No Nth weekday", TEXT(res, "yyyy-mm-dd")))` - **Formula (3rd Monday of January check)**: `=LET(firstDay, DATE(A3, B3, 1), res, firstDay + MOD(D3 - WEEKDAY(firstDay, 2) + 7, 7) + (C3 - 1) * 7, IF(MONTH(res)<>B3, "No Nth weekday", TEXT(res, "yyyy-mm-dd")))` ### Get Calendar Date for the Nth Day of the Year (Leap-Aware DATE Overflow) - **URL**: https://sheets.arte-soft.com/en/learn/get-nth-day-of-year-date-from-year-and-ordinal-day-number/ - **Summary**: Convert an ordinal day-of-year integer (1–366) and 4-digit year into an exact calendar date—automatically adjusting for February 29 in leap years—using DATE(year, 1, n). *Table — How DATE(year, 1, n) handles month lengths and leap years automatically:* | Year | Ordinal Day (N) | Total Days in Year | DATE(Year, 1, N) ISO Output | | --- | --- | --- | --- | | 2026 (Common) | 60 | 365 | 2026-03-01 | | 2028 (Leap) | 60 | 366 | 2028-02-29 | | 2026 (Common) | 256 (Programmer's Day) | 365 | 2026-09-13 | | 2028 (Leap) | 256 (Programmer's Day) | 366 | 2028-09-12 | - **Formula (Convert Year & Nth Day into Calendar Date)**: `=DATE(A2, 1, B2)` - **Formula (Year-Bound Guard Preventing Day-366 Overflow in Common Years)**: `=IF(AND(B2 >= 1, B2 <= DATE(A2, 12, 31) - DATE(A2, 1, 0)), TEXT(DATE(A2, 1, B2), "yyyy-mm-dd"), "Invalid Day")` ### Get the 2nd, 3rd, or Nth match with INDEX and FILTER - **URL**: https://sheets.arte-soft.com/en/learn/get-nth-match-index-filter/ - **Summary**: Extract the Nth matching record for a client or SKU cleanly with INDEX(FILTER(...), N, 1) and a COUNTIF bounds guard. *Table — Replace legacy SMALL(IF(...)) array formulas with FILTER + INDEX:* | Client (A) | InvoiceAmt (B) | Acme Match # | | --- | --- | --- | | Acme | 1200 | 1st match | | Beta | 900 | (skipped) | | Acme | 1850 | 2nd match | | Acme | 2400 | 3rd match | - **Formula (Bounds-checked Nth match formula)**: `=IF(OR(D2<1, D2<>INT(D2), SUMPRODUCT(--(A2:A5=C2)) < D2), "No Nth match", INDEX(FILTER(B2:B5, A2:A5=C2), D2, 1))` - **Formula (Out-of-bounds Nth check)**: `=SUMPRODUCT(--(A2:A5=C2))` ### Get original number from percent change: Final / (1 + PctChange) - **URL**: https://sheets.arte-soft.com/en/learn/get-original-number-before-percent-change-markup-discount/ - **Summary**: Back out pre-hike salary, pre-markup cost, or pre-discount list price accurately using division by (1 + Pct) instead of the broken Final * (1 - Pct) shortcut. *Table — Reverse a single percentage change by dividing by its factor:* | Scenario | Final Amount (B) | Pct Change (C) | True Original: B / (1 + C) | | --- | --- | --- | --- | | Post +15% Price Hike | $138.00 | +15% (0.15) | $120.00 (vs wrong $117.30!) | | Post -25% Clearance Sale | $90.00 | -25% (-0.25) | $120.00 ($90 / 0.75) | | Implied Dollar Change | Final - Original | 138 - 120 | +$18.00 hike | | -100% Wipeout Edge Case | $0.00 | -100% (-1.00) | "Undefined (-100%)" (#DIV/0! guard) | - **Formula (Reverse percentage formula with -100% division-by-zero guard)**: `=IF(COUNT(B2:C2)<>2,"Invalid inputs",IF(OR(B2<0,C2<-1),"Invalid inputs",IF(C2 = -1, "Undefined (-100%)", ROUND(B2 / (1 + C2), 2))))` - **Formula (Implied dollar change (Final minus Original))**: `=IF(COUNT(B2:C2)<>2,"Invalid inputs",IF(OR(B2<0,C2<-1),"Invalid inputs",IF(C2=-1,"Undefined (-100%)",ROUND(B2 - (B2 / (1 + C2)), 2))))` ### Calculate percent of year complete (leap-year exact pacing) - **URL**: https://sheets.arte-soft.com/en/learn/get-percent-of-year-complete/ - **Summary**: Divide ordinal day-of-year by exact calendar days in that year (365 or 366) to benchmark annual quota and budget pacing. *Table — Count actual calendar days in the selected year:* | AsOfDate (A) | Elapsed Days | Total Year Days | Year Complete % | | --- | --- | --- | --- | | 2026-07-02 | 183 | 365 | 0.5014 (50.14%) | | 2024-07-01 | 183 | 366 | 0.5 (50.00%) | | 2026-12-31 | 365 | 365 | 1 (100.00%) | - **Formula (Percent complete and percent remaining formulas)**: `=LET(priorYearEnd, DATE(YEAR(A2), 1, 0), ROUND((INT(A2) - priorYearEnd) / (DATE(YEAR(A2), 12, 31) - priorYearEnd), 4))` - **Formula (Percent of year remaining)**: `=LET(priorYearEnd, DATE(YEAR(A2), 1, 0), ROUND(1 - (INT(A2) - priorYearEnd) / (DATE(YEAR(A2), 12, 31) - priorYearEnd), 4))` ### Get previous Monday, Sunday, or any most-recent weekday from a date - **URL**: https://sheets.arte-soft.com/en/learn/get-previous-sunday-or-most-recent-weekday-date/ - **Summary**: Floor daily timestamps back to their "Week Starting Monday" or "Week Starting Sunday" cohort date—or find the most recent Friday/payday. *Table — Universal "Week Of" date bucketing for cohort & pivot tables:* | Input Date (A2) | Day of Week | Week-Starting Monday | Week-Starting Sunday | Most Recent Friday (B2=5) | | --- | --- | --- | --- | --- | | 2026-05-07 | Thursday (4) | 2026-05-04 | 2026-05-03 | 2026-05-01 (Prior Fri) | | 2026-05-04 | Monday (1) | 2026-05-04 (Stays!) | 2026-05-03 | 2026-05-01 | | 2026-05-08 | Friday (5) | 2026-05-04 | 2026-05-03 | 2026-05-08 (Same day!) | - **Formula (Floor any date to Week-Starting Monday or universal target weekday B2)**: `=IF(OR(NOT(ISNUMBER(A2)),NOT(ISNUMBER(B2)),B2<1,B2>7,MOD(B2,1)<>0),"Invalid date or weekday",TEXT(INT(A2) - WEEKDAY(INT(A2), 2) + 1, "yyyy-mm-dd"))` - **Formula (Universal most-recent weekday B2 (1=Mon..5=Fri..7=Sun, inclusive of same day))**: `=IF(OR(NOT(ISNUMBER(A2)),NOT(ISNUMBER(B2)),B2<1,B2>7,MOD(B2,1)<>0),"Invalid date or weekday",TEXT(INT(A2) - MOD(WEEKDAY(INT(A2), 2) - B2, 7), "yyyy-mm-dd"))` - **Formula (Strictly previous weekday)**: `=TEXT(INT(A2)-1-MOD(WEEKDAY(INT(A2)-1,2)-B2,7),"yyyy-mm-dd")` ### Get Project Start Date, End Date & Total Span by Project (MINIFS & MAXIFS) - **URL**: https://sheets.arte-soft.com/en/learn/get-project-start-and-end-dates-across-milestones-minifs-maxifs/ - **Summary**: Roll up task-level schedules into overall project kickoff date MINIFS, final completion date MAXIFS, and inclusive calendar duration MAXIFS - MINIFS + 1. *Table — Rolling up parallel workstream tasks into true master project boundaries!:* | Queried Project ID | Earliest Start (MINIFS) | Latest Finish (MAXIFS) | Inclusive Span (End - Start + 1) | | --- | --- | --- | --- | | PRJ-APOLLO (3 Overlapping Tasks) | 2026-04-06 | 2026-05-15 | 40 Calendar Days | | PRJ-VEGA (2 Sequential Tasks) | 2026-04-20 | 2026-05-08 | 19 Calendar Days | | PRJ-NONE (Unscheduled Project) | COUNTIF = 0 Guard | "No Tasks Found" | Prevents 1900-01-00 Serial Zero! | - **Formula (Formatted ISO Project Start Date via MINIFS)**: `=IF(COUNTIF(A2:A6, F2) = 0, "No Tasks Found", TEXT(MINIFS(C2:C6, A2:A6, F2), "yyyy-mm-dd"))` - **Formula (Inclusive Project Calendar Span Days (MAXIFS - MINIFS + 1))**: `=IF(COUNTIF(A2:A6, F2) = 0, "No Tasks Found", MAXIFS(D2:D6, A2:A6, F2) - MINIFS(C2:C6, A2:A6, F2) + 1)` ### Range Dimensions & Relative Row/Column Position (ROW, COLUMN, ROWS, COLUMNS) - **URL**: https://sheets.arte-soft.com/en/learn/get-range-dimensions-first-row-column-and-relative-index-formula/ - **Summary**: Compute dynamic 1-based relative column/row offsets COLUMN(D4) - COLUMN($B$4) + 1 for VLOOKUP col_index_num and audit total matrix capacity ROWS(rng) * COLUMNS(rng) immune to inserted rows or columns. *Table — Why hardcoded VLOOKUP column numbers break the moment someone inserts a column!:* | Target Cell Inside $B$4:$F$8 | Sheet Coordinate (ROW / COLUMN) | 1-Based Relative Offset Formula | Offset Returned | | --- | --- | --- | --- | | Top-Left Anchor Cell B4 | ROW = 4, COLUMN = 2 | COLUMN(B4) - COLUMN($B$4) + 1 | 1 (First Column) | | Third Table Column D4 | ROW = 4, COLUMN = 4 | COLUMN(D4) - COLUMN($B$4) + 1 | 3 (Dynamic col_index_num) | | Bottom-Right Cell F8 | ROW = 8, COLUMN = 6 | ROW(F8) - ROW($B$4) + 1 | 5 (Fifth Row of 5×5 = 25) | - **Formula (1-Based Relative Column Index Within Any Anchored Range)**: `=COLUMN(D4) - COLUMN($B$4) + 1` - **Formula (Total Matrix Cell Capacity = ROWS(range) * COLUMNS(range))**: `=ROWS(B4:F8) * COLUMNS(B4:F8)` ### Get the name or label associated with the maximum value - **URL**: https://sheets.arte-soft.com/en/learn/get-record-associated-with-max-value/ - **Summary**: Pair XLOOKUP with MAX (or filtered sub-arrays) to return the top-performing rep, product, or date to the left of your metric column. *Table — Look left from MAX(values) back to the label column:* | Rep (A) | Region (B) | ClosedWon (C) | Role | | --- | --- | --- | --- | | Nora | East | 88000 | Overall MIN | | Liam | West | 114000 | Overall MAX | | Tariq | East | 96000 | East MAX | | Mei | West | 102000 | | - **Formula (Overall winner and conditional regional winner)**: `=XLOOKUP(MAX(C2:C5), C2:C5, A2:A5)` - **Formula (Region-filtered winner formula)**: `=LET(subR, FILTER(A2:A5, B2:B5="East"), subV, FILTER(C2:C5, B2:B5="East"), XLOOKUP(MAX(subV), subV, subR))` ### Extract the final domain label (.com, .org, .uk) from simple URLs and emails - **URL**: https://sheets.arte-soft.com/en/learn/get-top-level-domain-tld-from-url-email/ - **Summary**: Isolate a simple hostname, then extract its last dot-separated label with TEXTAFTER. *Table — Isolate the hostname before searching for the last dot:* | Input (A) | Clean Host | Final TLD | 2-Part Suffix | | --- | --- | --- | --- | | https://sheets.arte-soft.com/pricing | sheets.arte-soft.com | .com | .arte-soft.com | | ops@portal.gov.uk | portal.gov.uk | .uk | .gov.uk | - **Formula (Simple URL-and-email suffix formula)**: `=LET(s, LOWER(TRIM(A2)), p, IFERROR(TEXTAFTER(s, "://"), s), e, IFERROR(TEXTAFTER(p, "@"), p), h, IFERROR(TEXTBEFORE(e, "/"), e), "." & TEXTAFTER(h, ".", -1))` - **Formula (Last two labels, not a public-suffix lookup)**: `=LET(s, LOWER(TRIM(A3)), e, IFERROR(TEXTAFTER(s, "@"), s), "." & TEXTAFTER(e, ".", -2))` ### Get total from percentage: find the whole when you know a part and its % share - **URL**: https://sheets.arte-soft.com/en/learn/get-total-from-percentage-and-part/ - **Summary**: Recover a whole from a known part and its fraction of that same whole. *Table — Rearrange Part = Total * Pct into Total = Part / Pct:* | Known Part (A) | Known Share % (B) | Implied Full Total (A/B) | Remaining Balance | | --- | --- | --- | --- | | 18000 | 0.15 | 120000 | 102000 | | 4500 | 0.2 | 22500 | 18000 | - **Formula (Implied total and remaining balance formulas)**: `=IF(B2=0, "Undefined", ROUND(A2 / B2, 2))` - **Formula (Remaining balance (100% - Share%))**: `=ROUND((A2 / B2) - A2, 2)` ### Getis-Ord Gi* Local Spatial Hotspot and Coldspot Z-Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/getis-ord-gi-star-spatial-hotspot-and-coldspot-z-score-formula/ - **Summary**: Separate high-value spatial hotspots (Z > +1.96) from low-value coldspots (Z < -1.96) using Ord and Getis’s (1995) standardized self-inclusive G_i* statistic. *Table — Distinguish high-high hotspots from low-low coldspots where Moran’s I cannot:* | Getis-Ord Gi* Component (n = 8, W_i = 3) | Exact Formula (Binary 0/1 w_ij) | Sample Output | | --- | --- | --- | | Global Mean x_bar & Pop SD S_x | AVERAGE(x); STDEVP(x) | 26.0000; 18.6481 | | Local Neighborhood Sum vs Expected | SUMPRODUCT(w_ij, x_j) vs W_i * x_bar | 150.00 vs 78.00 (+72.00 excess) | | Finite-Population Scale Factor | SQRT((n * SUM(w_ij^2) - W_i^2) / (n - 1)) | 1.4639 (SQRT(15 / 7)) | | Standardized Hotspot Z(G_1*) | (Local_Sum - W_i*x_bar) / (S_x * Scale) | +2.6376 (99% Hotspot > +2.58!) | - **Formula (Ord-Getis (1995) Standardized Z(G_i*) Formula (General Continuous or Binary Weights))**: `=LET(n_hub, ROWS(B2:B9), s_pop, STDEVP(B2:B9), w_sum, SUM(C2:C9), s_1i, SUMPRODUCT(C2:C9, C2:C9), rad_v, (n_hub * s_1i - (w_sum^2)) / (n_hub - 1), IF(OR(n_hub <= 1, s_pop <= 0, w_sum <= 0, rad_v <= 0), "Degenerate Neighborhood", ROUND((SUMPRODUCT(B2:B9, C2:C9) - AVERAGE(B2:B9) * w_sum) / (s_pop * SQRT(rad_v)), 4)))` - **Formula (Hotspot vs Coldspot Polarity Flip Check)**: `=IF(ISNUMBER(F4), IF(F4 >= 1.96, "Significant Hotspot", IF(F4 <= -1.96, "Significant Coldspot", "Not Significant")), F4)` ### Gibbons-Ross-Shanken (GRS) Joint Alpha F-Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/gibbons-ross-shanken-grs-joint-alpha-pricing-error-f-statistic/ - **Summary**: Test whether N portfolio alphas are jointly zero using the exact Gibbons-Ross-Shanken (1989) Sharpe-ratio F-statistic F_GRS = ((T - N - K) / N) * ((SR_max^2 - SR_f^2) / (1 + SR_f^2)). *Table — Understand GRS geometrically: do test portfolios expand the benchmark tangency Sharpe ratio?:* | Tangency Sharpe Regime (T=126, N=25, K=1) | Quadratic Alpha Term SR_max^2 - SR_f^2 | Exact F_GRS(25, 100) | | --- | --- | --- | | Zero Pricing Errors (SR_max = 0.50) | 0.0000 | 0.0000 (Exact Spanning) | | Modest Alphas (SR_max = 0.75) | 0.5625 - 0.2500 = 0.3125 | 1.0000 (Pass < 1.6156) | | Large Alphas (SR_max = 1.00) | 1.0000 - 0.2500 = 0.7500 | 2.4000 (Reject CAPM at 5%) | - **Formula (Exact Gibbons-Ross-Shanken F_GRS(N, T - N - K) Formula)**: `=LET(t_obs, B2, n_port, B3, k_fac, B4, sr_f, B5, sr_mx, B6, df_2, t_obs - n_port - k_fac, IF(OR(n_port < 1, k_fac < 1, df_2 <= 0), "Insufficient Time Series (Require T > N + K)", IF(OR(sr_f < 0, sr_mx < sr_f), "Invalid Sharpe Ordering (Require SR_max >= SR_f)", ROUND((df_2 / n_port) * ((sr_mx^2 - sr_f^2) / (1 + sr_f^2)), 4))))` - **Formula (Implied Quadratic Pricing Error alpha' * Sigma_e^(-1) * alpha = SR_max^2 - SR_f^2 Formula)**: `=IF(OR(B5 < 0, B6 < B5), "Invalid Sharpe Ordering (Require SR_max >= SR_f)", ROUND(B6^2 - B5^2, 4))` ### Gibbs-Thomson Nanoparticle Melting-Point Depression & LSW Ostwald Ripening - **URL**: https://sheets.arte-soft.com/en/learn/gibbs-thomson-curvature-undercooling-and-ostwald-ripening/ - **Summary**: Calculate curvature-induced melting-point depression Delta_Tm = (2 * gamma_SL * Tm) / (Delta_Hf * r) in Kelvin for nanoparticles/dendrite tips and Lifshitz-Slyozov-Wagner coarsening radius r(t) = (r0^3 + K * t)^(1/3). *Table — Why 5 nm metal nanoparticles sinter and melt tens of degrees below bulk Tm!:* | Copper Particle Radius r | Gibbs-Thomson Depression Delta_Tm | Depressed Melting Point Tm(r) | Capillary Scaling | | --- | --- | --- | --- | | r = 5 nm (Printed Electronics Ink) | 60.36 K | 1,297.64 K (1,024.49 °C) | 10x smaller r -> 10x larger drop | | r = 50 nm (Submicron Powder) | 6.04 K | 1,351.96 K | Approaches bulk 1,358 K | | LSW Ostwald Ripening (r0=10 nm, K*t=7000) | r(t) = (1000 + 7000)^(1/3) | 20.00 nm (Doubled radius!) | 8x volume increase per particle | - **Formula (Gibbs-Thomson Melting-Point Depression Delta_Tm (Kelvin, Radius in nm))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Gibbs-Thomson Inputs", ROUND((2 * B2 * B3) / (B4 * B5 * 0.000000001), 2))` - **Formula (Depressed Nanoparticle Melting Temperature Tm(r) = Tm_bulk - Delta_Tm (Kelvin))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Gibbs-Thomson Inputs", ROUND(B3 - ((2 * B2 * B3) / (B4 * B5 * 0.000000001)), 2))` ### Gifford-McMahon Cryopump Crossover & H2 Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/gifford-mcmahon-cryopump-charcoal-hydrogen-sorption-capacity-and-crossover-pressure/ - **Summary**: Calculate Maximum Safe Rough-to-Cryo Crossover Pressure (mbar), 15 K Activated-Charcoal H2 Sorption Capacity (mbar·L), Hours Between Regenerations (h), and Thawed H2 Pressure (mbar). *Table — Unlike turbopumps that exhaust gas out a foreline, a 15 K capture cryopump STORES every molecule of H2 inside—turning un-purged power-outage warmups into a 149 mbar bomb!:* | G-M Capture Cryopump KPI (Q_cross=320 mbar·L, Charcoal Cap=14.0 std L = 14,185.5 mbar·L) | Formula | Verified Output | | --- | --- | --- | | Max Crossover Roughing P (mbar) | Max_Crossover_mbar_L / Chamber_Volume_L | 1.778 mbar (3.368 mbar @ 95 L lock) | | 15 K H2 Sorption Capacity (mbar·L) | Charcoal_H2_std_L * 1013.25 | 14,185.5 mbar·L | | Run Hours to Regeneration (h) | (Sorption_mbar_L / Process_H2_mbar_Ls) / 3600 | 21.9 h (3.2 h @ reactive H2 sputter!) | | Un-Purged Warmup H2 Rise (mbar) | Sorption_Capacity_mbar_L / Volume_V_L | 78.8 mbar (149.3 mbar >> 40 mbar LEL!) | - **Formula (SEMI S2 Cryopump Crossover Enthalpy, Regeneration & Hydrogen LEL Purge Formula)**: `=LET(vc_l, B2, xc_m, B3, ch_s, B4, qh_m, B5, IF(OR(vc_l < 5, vc_l > 10000, xc_m < 20, xc_m > 2500, ch_s < 1, ch_s > 150, qh_m < 0.0001, qh_m > 20), "Invalid Cryopump Input", ROUND((ch_s * 1013.25) / vc_l, 1)))` - **Formula (Reactive H2 Plasma Process (`Q_H2 = 1.25` mbar·L/s) on Compact 95 L Chamber Check)**: `=IF(ISTEXT(E5), E5, ROUND(((B4 * 1013.25) / B5) / 3600, 1))` ### Gini Coefficient formula: measure income inequality & customer whale concentration - **URL**: https://sheets.arte-soft.com/en/learn/gini-coefficient-and-lorenz-revenue-concentration/ - **Summary**: Calculate a rounded empirical Gini coefficient for five nonnegative observations and compare it with the largest observation share. *Table — Quantify Lorenz-curve inequality and B2B customer concentration risk:* | Distribution Scenario (n = 5, Total = $200k) | Sorted Values ($k) | SUM(i * x_i) | Exact Gini Coefficient | | --- | --- | --- | --- | | Perfect Equality | [40, 40, 40, 40, 40] | 600 | G = 0.0000 (Zero inequality) | | Moderate Whale Skew | [10, 20, 30, 40, 100] | 800 | G = 0.4000 (Top client = 50% ARR) | | Single-Customer Monopoly | [0, 0, 0, 0, 200] | 1000 | G = 0.8000 ((n-1)/n finite max) | - **Formula (Single-cell Gini Coefficient on unsorted values)**: `=IF(OR(COUNT(B2:B6)<>5,MIN(B2:B6)<0,SUM(B2:B6)<=0),"Invalid distribution",LET(n, ROWS(B2:B6), ROUND((2 * SUMPRODUCT(SEQUENCE(n), SORT(B2:B6))) / (n * SUM(B2:B6)) - (n + 1) / n, 4)))` - **Formula (Top-1 customer revenue concentration share (%))**: `=IF(OR(COUNT(B2:B6)<>5,MIN(B2:B6)<0,SUM(B2:B6)<=0),"Invalid distribution",ROUND(MAX(B2:B6) / SUM(B2:B6), 4))` ### Ginzburg-Landau Parameter (κ) & Upper Critical Field (B_c2) Formula - **URL**: https://sheets.arte-soft.com/en/learn/ginzburg-landau-kappa-type-i-vs-type-ii-superconductor-hc2/ - **Summary**: Calculate the Ginzburg-Landau ratio κ = λ_L / ξ_GL, classify Type-I vs. Type-II Abrikosov vortex superconductors across κ = 1/SQRT(2), and compute upper critical field B_c2 = SQRT(2) * κ * B_c. *Table — Why Alexei Abrikosov’s κ = 1/√2 = 0.7071 boundary makes MRI & fusion magnets possible!:* | Superconductor (λ_L & ξ_GL) | GL Parameter κ = λ_L / ξ_GL | Abrikosov Criterion vs 0.7071 | Upper Critical Field B_c2 | | --- | --- | --- | --- | | Nb3Sn Magnet Wire (λ=85 nm, ξ=3.5 nm, Bc=0.52 T) | 24.29 | κ > 1/√2 -> Type-II Vortex State | 17.86 Tesla | | Pure Aluminum (λ=50 nm, ξ=1600 nm, Bc=0.01 T) | 0.0313 | κ < 1/√2 -> Type-I Meissner Only | Quenches at Bc = 0.01 T | | Invalid Length <= 0 | Error Guard | "Invalid Length Inputs" | Positivity Check | - **Formula (Ginzburg-Landau Parameter κ = λ_L / ξ_GL & Type-II Upper Critical Field B_c2 (T))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Superconductor Inputs", IF((B2 / B3) > (1 / SQRT(2)), ROUND(SQRT(2) * (B2 / B3) * B4, 2), "Type-I Superconductor (Quenches at Bc)"))` - **Formula (Dimensionless Ginzburg-Landau Ratio κ = λ_L / ξ_GL)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Superconductor Inputs", ROUND(B2 / B3, 4))` ### Glasgow Alcoholic Hepatitis Score (GAHS) Calculator (5–12 Points) - **URL**: https://sheets.arte-soft.com/en/learn/glasgow-alcoholic-hepatitis-score-gahs-forrest-day-1-and-day-7/ - **Summary**: Compute Ewan Forrest’s Glasgow Alcoholic Hepatitis Score (GAHS, 5–12 points) from age, WBC, blood urea, PT ratio / INR, and serum bilirubin to identify high-mortality patients (GAHS >= 9) who benefit from corticosteroids. *Table — Why GAHS >= 9 sharpens specificity when Maddrey mDF >= 32 over-treats moderate alcoholic hepatitis!:* | GAHS Variable | 1 Point | 2 Points | 3 Points | | --- | --- | --- | --- | | Age (yr) / WBC (× 10^9/L) / Urea (mmol/L) | < 50 / < 15 / < 5.0 | >= 50 / >= 15 / >= 5.0 | — (Max 2 pts each) | | PT Ratio or INR | < 1.5 | 1.5 – 2.0 | > 2.0 | | Total Bilirubin (μmol/L) | < 125 (< 7.3 mg/dL) | 125 – 250 | > 250 (> 14.6 mg/dL) | - **Formula (Glasgow Alcoholic Hepatitis Score (GAHS, 5 to 12 Points))**: `=IF(OR(B2 < 18, B3 <= 0, B4 < 0, B5 <= 0, B6 < 0), "Invalid GAHS Labs", IF(B2 >= 50, 2, 1) + IF(B3 >= 15, 2, 1) + IF(B4 >= 5, 2, 1) + IF(B5 > 2, 3, IF(B5 >= 1.5, 2, 1)) + IF(B6 > 250, 3, IF(B6 >= 125, 2, 1)))` - **Formula (GAHS >= 9 Poor-Prognosis & Steroid-Benefit Threshold)**: `=IF(OR(B2 < 18, B3 <= 0, B4 < 0, B5 <= 0, B6 < 0), "Invalid GAHS Labs", IF(IF(B2 >= 50, 2, 1) + IF(B3 >= 15, 2, 1) + IF(B4 >= 5, 2, 1) + IF(B5 > 2, 3, IF(B5 >= 1.5, 2, 1)) + IF(B6 > 250, 3, IF(B6 >= 125, 2, 1)) >= 9, "High Mortality (GAHS >= 9 — Steroid Benefit)", "Favorable Prognosis (GAHS 5-8 — Supportive Care)"))` ### Glasgow-Blatchford Score: Spreadsheet Points and Unit Checks - **URL**: https://sheets.arte-soft.com/en/learn/glasgow-blatchford-gbs-upper-gi-bleeding-risk-score/ - **Summary**: Calculate the 0–23 Glasgow-Blatchford total from fictional inputs using explicit SI laboratory units, both published hemoglobin threshold sets and validated binary flags. - **Formula (Inspect each point contribution)**: `=IF(COUNT(B2:B9)<>8,"Complete numeric inputs",IF(OR(B2<0,B3<=0,B4<=0,AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1),AND(B9<>0,B9<>1)),"Invalid measurement or flag",IF(AND(B10<>"M",B10<>"F"),"Choose M or F threshold set",IFS(B2<6.5,0,B2<8,2,B2<10,3,B2<25,4,TRUE,6)+IF(B10="M",IFS(B3>=130,0,B3>=120,1,B3>=100,3,TRUE,6),IFS(B3>=120,0,B3>=100,1,TRUE,6))+IFS(B4>=110,0,B4>=100,1,B4>=90,2,TRUE,3)+B5+B6+2*B7+2*B8+2*B9)))` ### Glasgow Coma Scale arithmetic: validate components and preserve not-testable status - **URL**: https://sheets.arte-soft.com/en/learn/glasgow-coma-scale-gcs-neurological-score-formula/ - **Summary**: Practice a validated E/V/M total for fictional observations while keeping non-testable components distinct from numeric scores. - **Formula (Guard ranges, integer values and missing data)**: `=IF(OR(B2="NT",B3="NT",B4="NT"),"Not testable: no total",IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<1,B2>4,B3<1,B3>5,B4<1,B4>6,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4)),"Invalid inputs",SUM(B2:B4))))` - **Formula (Display the component profile alongside the total)**: `=IF(OR(B2="NT",B3="NT",B4="NT"),"Not testable: no total",IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<1,B2>4,B3<1,B3>5,B4<1,B4>6,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4)),"Invalid inputs","E"&B2&" V"&B3&" M"&B4&" (total "&SUM(B2:B4)&")")))` ### Glass Annealing Lehr Cooling Rate & Birefringence Formula - **URL**: https://sheets.arte-soft.com/en/learn/glass-annealing-lehr-maxwell-adams-williamson-stress-relaxation-and-cooling-rate/ - **Summary**: Calculate Maximum Safe Annealing Lehr Cooling Rate hmax (°C/min), Critical Strain-Point Cooling Time (min), Polariscope Optical Retardation (nm/cm), and Anneal Quality Class. *Table — Switch a float-glass annealing lehr from 8 mm architectural glass to 19 mm heavy plate without slowing cooling 6x and the ribbon snaps cleanly in half on the cutting table!:* | Adams-Williamson Annealing Lehr KPI (alpha=0.52 mm²/s, beta=0.82 MPa/K, Span=110°C) | Formula | Verified Output | | --- | --- | --- | | Max Safe Lehr Cooling Rate (°C/min) | (720 * alpha_mm2_s * Allow_MPa) / (beta * d_mm^2) | 17.84 °C/min (1.26 °C/min @ 19 mm optical!) | | Critical Zone Cooling Time (min) | Annealing_Range_C / Max_Cooling_C_min | 6.2 min (87.0 min = 14x longer lehr dwell!) | | Polariscope Birefringence (nm/cm) | Allowable_Stress_MPa * 26.0 (Brewster Const) | 65.0 nm/cm float (26.0 nm/cm precision lens) | | Optical Annealing Grade | <= 30 nm/cm Fine Optical Retardation Gate | COMMERCIAL FLOAT ANNEALED | - **Formula (Adams & Williamson (1920) Inverse-Square Thickness Lehr Cooling Formula)**: `=LET(dm_m, B2, sa_m, B3, al_d, B4, bt_m, B5, dt_c, B6, ro_n, sa_m * 26, IF(OR(dm_m < 1, dm_m > 150, sa_m < 0.1, sa_m > 15, al_d < 0.2, al_d > 1.5, bt_m < 0.3, bt_m > 1.5, dt_c < 40, dt_c > 200), "Invalid Lehr Input", IF(ro_n <= 30, "PRECISION OPTICAL (<=30 nm/cm)", "COMMERCIAL FLOAT ANNEALED")))` - **Formula (19 mm Heavy Optical Window Blank (`d = 19` mm, `sigma = 1.0` MPa) 14x Slowdown Check)**: `=IF(ISTEXT(E2), E2, LET(hm_x, (720 * B4 * B3) / (B5 * (B2 ^ 2)), ROUND(B6 / hm_x, 1)))` ### Glicko Rating & Rating Deviation (RD) Formula: Inactivity Uncertainty & Match Update - **URL**: https://sheets.arte-soft.com/en/learn/glicko-rating-system-rd-uncertainty-decay-and-match-update/ - **Summary**: Upgrade Elo by incorporating Mark Glickman’s Rating Deviation (RD): inflate pre-period uncertainty RD_pre = MIN(350, SQRT(RD_0^2 + c^2*t)), compute opponent attenuation g(RD_j), and update post-match rating and RD. *Table — Why Glicko beats fixed-K Elo: rating movement scales with YOUR uncertainty and shrinks with OPPONENT uncertainty!:* | Glicko Step (r=1500, RD_pre=200 vs r_j=1400, RD_j=30, Win s=1) | Glickman (1995) Formula | Exact IEEE-754 Value | | --- | --- | --- | | Opponent Attenuation g(RD_j = 30) | 1 / SQRT(1 + 3 * q^2 * 30^2 / PI()^2) | 0.9955 | | Expected Score E(r, r_j, RD_j) | 1 / (1 + 10^(-g * (1500 - 1400) / 400)) | 0.6395 | | Post-Match Rating Deviation RD' | 1 / SQRT(1/200^2 + q^2 * g^2 * E * (1 - E)) | 175.22 | | Post-Match Glicko Rating r' | 1500 + q * RD'^2 * g * (1 - E) | 1563.43 (+63.43 pts) | - **Formula (Post-Match Updated Glicko Rating r' (Single Match Outcome s in {0, 0.5, 1}))**: `=IF(OR(B3 <= 0, B7 <= 0, B4 < 0, B5 < 0, B8 < 0, B8 > 1), "Invalid Glicko Inputs", ROUND(B2 + (LN(10) / 400) / (1 / (MIN(350, SQRT(B3 ^ 2 + (B5 ^ 2) * B4)) ^ 2) + ((LN(10) / 400) ^ 2) * (1 / (1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (1 / (1 + 10 ^ (-(1 / SQRT(1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (B2 - B6) / 400))) * (1 - (1 / (1 + 10 ^ (-(1 / SQRT(1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (B2 - B6) / 400))))) * (1 / SQRT(1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (B8 - (1 / (1 + 10 ^ (-(1 / SQRT(1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (B2 - B6) / 400)))), 2))` - **Formula (Post-Match Updated Rating Deviation RD')**: `=IF(OR(B3 <= 0, B7 <= 0, B4 < 0, B5 < 0), "Invalid Glicko Inputs", ROUND(1 / SQRT(1 / (MIN(350, SQRT(B3 ^ 2 + (B5 ^ 2) * B4)) ^ 2) + ((LN(10) / 400) ^ 2) * (1 / (1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (1 / (1 + 10 ^ (-(1 / SQRT(1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (B2 - B6) / 400))) * (1 - (1 / (1 + 10 ^ (-(1 / SQRT(1 + 3 * ((LN(10) / 400) ^ 2) * (B7 ^ 2) / (PI() ^ 2))) * (B2 - B6) / 400))))), 2))` ### Glosten-Milgrom Adverse-Selection Bid-Ask Spread Formula - **URL**: https://sheets.arte-soft.com/en/learn/glosten-milgrom-adverse-selection-bid-ask-spread-formula/ - **Summary**: Derive Bayesian market-maker Ask = E[V | Buy], Bid = E[V | Sell], and Glosten-Milgrom spread from informed-trader probability mu and asset value range V_H - V_L. *Table — Explain why bid-ask spreads exist even with zero inventory risk and zero order-processing fees!:* | Glosten-Milgrom Quote (V_H=110, V_L=90, mu=0.25) | Prior theta_0 = 0.50 | Updated theta_1 = 0.625 | | --- | --- | --- | | Posterior High-State Prob \| Buy | 0.6250 | 0.7353 (25 / 34) | | Competitive Ask Price E[V \| Buy] | 102.5000 | 104.7059 | | Competitive Bid Price E[V \| Sell] | 97.5000 | 100.0000 (Buy+Sell Cancels!) | | Quoted Bid-Ask Spread (Ask - Bid) | 5.0000 (= mu * (V_H - V_L)) | 4.7059 | - **Formula (Bayesian Market-Maker Ask = E[V | Buy] and Bid = E[V | Sell] Formula)**: `=LET(v_hi, B2, v_lo, B3, th_0, B4, mu_in, B5, IF(OR(v_lo < 0, v_hi <= v_lo, th_0 <= 0, th_0 >= 1, mu_in < 0, mu_in >= 1), "Invalid Microstructure Input", LET(p_bh, (th_0 * (1 + mu_in)) / (1 + mu_in * (2 * th_0 - 1)), ROUND(v_lo + p_bh * (v_hi - v_lo), 4))))` - **Formula (Exact Glosten-Milgrom Quoted Bid-Ask Spread (Ask - Bid) Formula)**: `=LET(v_hi, B2, v_lo, B3, th_0, B4, mu_in, B5, IF(OR(v_lo < 0, v_hi <= v_lo, th_0 <= 0, th_0 >= 1, mu_in < 0, mu_in >= 1), "Invalid Microstructure Input", LET(num_s, 4 * mu_in * th_0 * (1 - th_0) * (v_hi - v_lo), den_s, 1 - (mu_in^2) * ((2 * th_0 - 1)^2), ROUND(num_s / den_s, 4))))` ### Glover-Dumm Transient Drain Spacing Formula: Falling Water Table Drawdown m_0 to m_t - **URL**: https://sheets.arte-soft.com/en/learn/glover-dumm-transient-falling-water-table-drain-spacing-formula/ - **Summary**: Calculate subsurface drain spacing L (m) required to lower a storm/irrigation water-table mound from m_0 to m_t within t days using R. E. Glover and L. D. Dumm’s (1954, USBR) Boussinesq diffusion solution. *Table — Design irrigated arid-zone drains to drop the root-zone water table 30 cm inside 2–4 days!:* | Glover-Dumm Design Parameter | Field Value | Physical Role in Drawdown | | --- | --- | --- | | Hydraulic Conductivity K & Avg Thickness D | K = 1.10 m/d, D = 1.90 m | Aquifer Transmissivity T = K * D = 2.09 m^2/d | | Drainable Porosity (Specific Yield) mu | mu = 0.06 (6%) | Hydraulic Diffusivity K*D/mu = 34.83 m^2/d | | Required Drawdown m_0 -> m_t in Time t | 1.00 m -> 0.70 m in 3.0 days | LN(1.16 * 1.4286) = 0.5051 -> L = 45.19 m | - **Formula (Glover-Dumm (USBR Fourth-Degree Parabola) Transient Drain Spacing L (m))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= 0.5, B5 <= 0, B6 <= 0, B7 <= 0, B7 >= B6), "Invalid Glover-Dumm Aquifer, Porosity, or Drawdown Inputs (Requires 0 < m_t < m_0)", ROUND(PI() * SQRT((B2 * B3 * B5) / (B4 * LN(1.16 * (B6 / B7)))), 2))` - **Formula (Predicted Midpoint Water-Table Height m_t (m) at Fixed Spacing L = 40 m)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= 0.5, B5 <= 0, B6 <= 0), "Invalid Glover-Dumm Inputs", ROUND(1.16 * B6 * EXP(-((PI() ^ 2) * B2 * B3 * B5) / (B4 * (40 ^ 2))), 3))` ### Goldman-Hodgkin-Katz (GHK) Membrane Voltage Equation (K+, Na+, Cl-) - **URL**: https://sheets.arte-soft.com/en/learn/goldman-hodgkin-katz-resting-membrane-voltage-equation/ - **Summary**: Calculate mammalian neuron resting membrane potential and action-potential overshoot at 37 C (R*T/F = 26.7267 mV) from relative K+, Na+, and Cl- permeabilities and extra/intracellular ion concentrations. *Table — Model resting membrane voltage and voltage-gated Na+ depolarization spikes!:* | Membrane State (37 C, R*T/F = 26.7267 mV) | Relative P_K : P_Na : P_Cl | Numerator / Denominator | GHK Potential V_m (mV) | | --- | --- | --- | --- | | Resting Neuron ([K]o=5, [K]i=140, [Na]o=145, [Na]i=12) | 1.00 : 0.04 : 0.45 | 15.30 / 189.98 = 0.08053 | -67.33 mV | | Action Potential Peak (Na+ Channels Open) | 1.00 : 20.00 : 0.45 | 2909.50 / 429.50 = 6.7742 | +51.13 mV | | Hyperkalemia Emergency ([K+]_o = 9 mM) | 1.00 : 0.04 : 0.45 | 19.30 / 189.98 = 0.10159 | -61.12 mV (Depolarized!) | - **Formula (Goldman-Hodgkin-Katz Membrane Potential V_m (mV at 37 C))**: `=IF(OR((B2 * B5 + B3 * B7 + B4 * B10) <= 0, (B2 * B6 + B3 * B8 + B4 * B9) <= 0), "Invalid Ion Permeability or Concentration", ROUND(26.7267 * LN((B2 * B5 + B3 * B7 + B4 * B10) / (B2 * B6 + B3 * B8 + B4 * B9)), 2))` - **Formula (Compare Against Pure Potassium Nernst Potential E_K (mV))**: `=ROUND(26.7267 * LN(B5 / B6), 2)` ### Goldman-Sosin-Gatto Floating-Strike Lookback Call Formula - **URL**: https://sheets.arte-soft.com/en/learn/goldman-sosin-gatto-floating-strike-lookback-call-minimum-path-formula/ - **Summary**: Price continuous floating-strike lookback calls paying S_T - S_min in Excel and Arte Sheets using the Goldman-Sosin-Gatto (1979) / Conze-Viswanathan formula. *Table — Understand why buying at the path minimum S_min doubles vanilla ATM option value:* | Lookback Component | Role in Formula | Behavior Check | | --- | --- | --- | | Running Minimum Strike Term | S*EXP(-q*T)*N(a_1) - m_min*EXP(-r*T)*N(a_2) | Equals vanilla call at strike K = m_min | | Future New-Low Bonus Term | S*EXP(-r*T)*(sig^2/(2*b))*((S/m)^(-2*b/sig^2)*N(...) - EXP(b*T)*N(-a_1)) | Captures expected savings if S drops below m_min | | Lower Running Minimum m_min = 90 | Locks in 10 points of already-achieved dip | Raises lookback call value immediately | - **Formula (Inception vs Seasoned Lookback d-Parameter a_1 Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > B2, B6 <= 0, B7 <= 0), "Require 0 < S_min <= S", ROUND((LN(B2 / B3) + (B4 - B5 + 0.5 * B6^2) * B7) / (B6 * SQRT(B7)), 4))` - **Formula (Goldman-Sosin-Gatto Floating-Strike Lookback Call Formula)**: `=LET(s_px, B2, m_low, B3, r_rf, B4, q_div, B5, sig_v, B6, t_yr, B7, b_car, r_rf - q_div, IF(OR(s_px <= 0, m_low <= 0, m_low > s_px, sig_v <= 0, t_yr <= 0, ABS(b_car) < 0.0001), "Invalid Lookback Input", LET(sig_t, sig_v * SQRT(t_yr), a_1, (LN(s_px / m_low) + (b_car + 0.5 * sig_v^2) * t_yr) / sig_t, a_2, a_1 - sig_t, a_3, -a_1 + (2 * b_car / sig_v) * SQRT(t_yr), u_1, 1 / (1 + 0.2316419 * ABS(a_1)), ph_1, 0.3989422804014327 * EXP(-0.5 * a_1^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), na_1, IF(a_1 >= 0, 1 - ph_1, ph_1), nma_1, 1 - na_1, u_2, 1 / (1 + 0.2316419 * ABS(a_2)), ph_2, 0.3989422804014327 * EXP(-0.5 * a_2^2) * u_2 * (0.31938153 + u_2 * (-0.356563782 + u_2 * (1.781477937 + u_2 * (-1.821255978 + 1.330274429 * u_2)))), na_2, IF(a_2 >= 0, 1 - ph_2, ph_2), u_3, 1 / (1 + 0.2316419 * ABS(a_3)), ph_3, 0.3989422804014327 * EXP(-0.5 * a_3^2) * u_3 * (0.31938153 + u_3 * (-0.356563782 + u_3 * (1.781477937 + u_3 * (-1.821255978 + 1.330274429 * u_3)))), na_3, IF(a_3 >= 0, 1 - ph_3, ph_3), c_base, s_px * EXP(-q_div * t_yr) * na_1 - m_low * EXP(-r_rf * t_yr) * na_2, c_bon, s_px * EXP(-r_rf * t_yr) * ((sig_v^2) / (2 * b_car)) * (((s_px / m_low)^(-2 * b_car / (sig_v^2))) * na_3 - EXP(b_car * t_yr) * nma_1), ROUND(c_base + c_bon, 4))))` ### Critical Chain Root-Sum-of-Squares Buffer Formula - **URL**: https://sheets.arte-soft.com/en/learn/goldratt-critical-chain-root-sum-of-squares-project-buffer-formula/ - **Summary**: Pool task contingencies into Eliyahu Goldratt’s (1997) Critical Chain Project Buffer PB_SSQ = SQRT(SUM((P90_i - P50_i)^2)) and monitor execution with the Fever-Chart Buffer Burn Index. *Table — Stop wasting task-level safety padding on Parkinson’s Law and Student Syndrome!:* | Critical Chain Metric (P50=[12,16,12], P90=[18,24,22]) | Formula | Verified Output | | --- | --- | --- | | Traditional Padded Schedule Sum(P90) | SUM(C2:C4) | 64.00 days (24d Local Padding) | | Goldratt SSQ Project Buffer (PB_SSQ) | SQRT(SUMPRODUCT(D2:D4, D2:D4)) | 14.14 days (SQRT(200)) | | Committed CCPM Schedule Duration | SUM(B2:B4) + PB_SSQ | 54.14 days (-9.86d Shorter!) | | Fever-Chart Buffer Burn Ratio (BBI) | (Buf_Used / PB_SSQ) / (Done / Chain) | 0.6000 (Healthy < 1.00) | - **Formula (Root-Sum-of-Squares (SSQ) Pooled Project Buffer Formula)**: `=IF(OR(MIN(B2:B4) <= 0, MIN(D2:D4) < 0), "Require P90 >= P50 > 0", ROUND(SQRT(SUMPRODUCT(D2:D4, D2:D4)), 2))` - **Formula (CCPM Fever-Chart Buffer Burn Index Formula)**: `=LET(ch_tot, SUM(B2:B4), pb_ssq, SQRT(SUMPRODUCT(D2:D4, D2:D4)), ch_dn, H2, bf_us, H3, IF(OR(ch_tot <= 0, pb_ssq <= 0, ch_dn <= 0, ch_dn > ch_tot, bf_us < 0), "Invalid Fever-Chart Input", ROUND((bf_us / pb_ssq) / (ch_dn / ch_tot), 4)))` ### Gompertz-Makeham Force of Mortality and Survival _t p_x Formula - **URL**: https://sheets.arte-soft.com/en/learn/gompertz-makeham-mortality-hazard-and-survival-probability-formula/ - **Summary**: Compute Gompertz-Makeham force of mortality mu(x) = A + B * c^x and exact integrated t-year survival probability _t p_x = EXP(-A*t - (B * c^x / LN(c)) * (c^t - 1)). *Table — Avoid constant-hazard survival bias by integrating exponential aging c^(x+s) exactly:* | Life Contingency Metric (x=50, t=10, c=1.09) | Formula | Verified Output | | --- | --- | --- | | Current Force of Mortality mu(50) | A_mak + B_gom * c_age^x | 0.004218 / yr | | Naive Constant-Hazard Survival | EXP(-t * mu(50)) (Biased High!) | 0.9587 (q = 4.13%) | | Exact Gompertz-Makeham _10 p_50 | EXP(-A*t - (B*c^x / LN(c))*(c^t - 1)) | 0.9380 | | Exact 10-Year Mortality _10 q_50 | 1 - _10 p_50 | 0.0620 (6.20%) | - **Formula (Exact Integrated Gompertz-Makeham t-Year Survival Probability _t p_x Formula)**: `=LET(a_mk, B2, b_gm, B3, c_ag, B4, x_ag, B5, t_hr, B6, IF(OR(a_mk < 0, b_gm <= 0, c_ag <= 1, x_ag < 0, t_hr < 0), "Invalid Mortality Input", LET(h_int, a_mk * t_hr + (b_gm * POWER(c_ag, x_ag) / LN(c_ag)) * (POWER(c_ag, t_hr) - 1), ROUND(EXP(-h_int), 4))))` - **Formula (Instantaneous Force of Mortality mu(x) and t-Year Death Probability _t q_x Formula)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 1, B5 < 0), "Invalid Mortality Input", ROUND(B2 + B3 * POWER(B4, B5), 6))` ### Gompertz Growth Curve: Double-Exponential Volume & K/e Inflection - **URL**: https://sheets.arte-soft.com/en/learn/gompertz-tumor-and-microbial-growth-curve-inflection-formula/ - **Summary**: Model decelerating tumor spheroid, microbial, and SaaS adoption curves via Laird’s Gompertz equation N(t) = K * EXP(-LN(K / N_0) * EXP(-α * t)) and locate the exact peak-growth inflection time t_inf = LN(LN(K / N_0)) / α. *Table — Why biological tumors inflect at K / e (36.8%) instead of logistic K / 2 (50%)!:* | Growth Time Horizon (N0 = 10, K = 1,000, α = 0.15/d) | Gompertz Size N(t) | % of Plateau K | Dynamic Growth Phase | | --- | --- | --- | --- | | Asymmetric Inflection Peak (t_inf = 10.18 d) | 367.88 mm^3 | 36.79% (= 1 / e!) | Maximum Absolute dN/dt Rate | | Two-Week Checkpoint (t = 14.00 d) | 568.97 mm^3 | 56.90% | Post-Inflection Deceleration | | One-Month Plateau (t = 30.00 d) | 950.13 mm^3 | 95.01% | Asymptotic Carrying Capacity | - **Formula (Gompertz Double-Exponential Growth Trajectory N(t))**: `=IF(OR(B2 <= 0, B3 <= B2, B4 <= 0, B5 < 0), "Invalid Gompertz Inputs", ROUND(B3 * EXP(-LN(B3 / B2) * EXP(-B4 * B5)), 2))` - **Formula (Exact Inflection Time t_inf = LN(LN(K / N_0)) / α)**: `=IF(OR(B2 <= 0, B3 <= B2, B4 <= 0), "Invalid Gompertz Inputs", ROUND(LN(LN(B3 / B2)) / B4, 2))` ### Goodman and Kruskal’s Gamma (γ) Ordinal Association Formula - **URL**: https://sheets.arte-soft.com/en/learn/goodman-kruskal-gamma-ordinal-concordance-association-formula/ - **Summary**: Calculate tie-free ordinal monotonic association γ = (N_c - N_d) / (N_c + N_d) across Likert scales and clinical staging tables alongside tie-penalized Kim’s d_y.x. *Table — Measuring monotonic ordinal association across coarse 3×3 or 5×5 Likert tables where ties abound!:* | Pair Counts [Concordant Nc, Discordant Nd, Tied Ty] | Goodman-Kruskal γ | Asymmetric d_y\|x (With Y-Ties) | Ordinal Interpretation | | --- | --- | --- | --- | | Nc = 1,840, Nd = 460, Ty = 520 | +0.6000 | +0.4894 | Strong Positive Monotonic Trend | | Nc = 920, Nd = 920, Ty = 520 | 0.0000 | 0.0000 | Ordinal Independence | | Nc + Nd = 0 (All Pairs Tied) | "No Untied Pairs" | Error Guard | Prevents #DIV/0! | - **Formula (Goodman and Kruskal’s Symmetric Ordinal Gamma γ)**: `=IF(OR(B2 < 0, B3 < 0, B2 + B3 = 0), "No Untied Pairs", ROUND((B2 - B3) / (B2 + B3), 4))` - **Formula (Tie-Penalized Directional Concordance Ratio (N_c - N_d) / (N_c + N_d + T_y))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B2 + B3 + B4 = 0), "No Untied Pairs", ROUND((B2 - B3) / (B2 + B3 + B4), 4))` ### Goodman, Soderberg and Gerber Proportional-Loading Factors - **URL**: https://sheets.arte-soft.com/en/learn/goodman-soderberg-and-gerber-mean-stress-fatigue-safety-factor/ - **Summary**: Compare three mean-stress fatigue factors, calculate the Gerber root stably and check the peak-stress yield factor separately. - **Formula (Compare the straight-line criteria)**: `=IF(E2<>"OK",E2,IF(B2+E3=0,"No finite fatigue factor",1/(B2/B4+E3/B5)))` - **Formula (Calculate the missing Gerber factor)**: `=IF(E2<>"OK",E2,IF(B2+E3=0,"No finite fatigue factor",2/(B2/B4+SQRT((B2/B4)^2+4*(E3/B5)^2))))` - **Formula (Check peak stress and yielding separately)**: `=IF(E2<>"OK",E2,IF(E7=0,"No applied stress",B6/E7))` ### Gordon Growth Model (DDM) formula: intrinsic stock value & implied cost of equity - **URL**: https://sheets.arte-soft.com/en/learn/gordon-growth-dividend-discount-model-ddm-intrinsic-value/ - **Summary**: Value dividend-paying equities via P0 = D0*(1+g)/(ke - g), guard against g >= ke blow-ups, and back out implied market cost of equity. *Table — The #1 valuation mistake: dividing trailing D0 instead of forward D1 = D0*(1+g)!:* | DDM Valuation Output (D0=$2.50, ke=9%, g=4%) | Formula | Result | | --- | --- | --- | | Forward Year-1 Dividend (D1) | =A2 * (1 + C2) | $2.60 | | Intrinsic Stock Value (P0) | =(A2 * (1 + C2)) / (B2 - C2) | $52.00 / share | | Implied Cost of Equity at Market Price D2 | =IF(D2<=0,"Invalid market price",ROUND((A2 * (1 + C2)) / D2 + C2, 4)) | 9.00% (at D2=$52; 10.50% at D2=$40) | | Guardrail when g >= ke (e.g. g=9%) | =IF(C2 >= B2, "Invalid (g >= ke)", ...) | "Invalid (g >= ke)" | - **Formula (Gordon Growth intrinsic value formula (with g >= ke perpetuity guard))**: `=IF(C2 >= B2, "Invalid (g >= ke)", ROUND((A2 * (1 + C2)) / (B2 - C2), 2))` - **Formula (Implied Cost of Equity (ke = D1 / MarketPrice + g))**: `=IF(D2<=0,"Invalid market price",ROUND((A2 * (1 + C2)) / D2 + C2, 4))` ### Gordon-Newell Closed Queueing & Buzen Convolution Formula - **URL**: https://sheets.arte-soft.com/en/learn/gordon-newell-closed-queueing-network-buzen-convolution-throughput/ - **Summary**: Calculate Exact 2-Station Gordon-Newell Normalization Constant G(N) via Buzen’s Convolution Sum, Exact Closed-Loop System Throughput G(N-1)/G(N), Bottleneck Asymptote 1/D_max, and Bottleneck Server Utilization. *Table — Compute exact closed-pallet-loop throughput via Gordon-Newell & Buzen’s G(N-1)/G(N) theorem!:* | Gordon-Newell Closed Loop (X1=2.0s, X2=1.0s, N=3 Circulating Pallets) | Formula | Verified Output | | --- | --- | --- | | Buzen Constant G(N) | IF(X1=X2, (N+1)*X1^N, (X1^(N+1)-X2^(N+1))/(X1-X2)) | 15.0000 (32.0000 @ X1=X2=2) | | Exact System Throughput TH(N) | G(N - 1) / G(N) | 0.4667 /s (0.3750 @ X1=X2=2) | | Infinite-WIP Bottleneck Cap | 1 / MAX(X_1, X_2) | 0.5000 /s | | Station-1 Utilization U_1(N) | X_1 * TH(N) | 0.9333 (0.7500 @ X1=X2=2) | - **Formula (Exact Buzen G(N-1) / G(N) Closed-Network Throughput Formula)**: `=LET(x_1, B2, x_2, B3, n_p, B4, IF(OR(x_1 <= 0, x_2 <= 0, n_p < 1, INT(n_p) <> n_p), "Invalid Closed Network Input", LET(g_n, IF(ABS(x_1 - x_2) < 0.000001, (n_p + 1) * (x_1 ^ n_p), ((x_1 ^ (n_p + 1)) - (x_2 ^ (n_p + 1))) / (x_1 - x_2)), g_m, IF(ABS(x_1 - x_2) < 0.000001, n_p * (x_1 ^ (n_p - 1)), ((x_1 ^ n_p) - (x_2 ^ n_p)) / (x_1 - x_2)), ROUND(g_m / g_n, 4))))` - **Formula (Balanced-Line Singularity Check (Set X_1 = 2.0 s and X_2 = 2.0 s))**: `=IF(ISTEXT(E3), E3, LET(x_1, B2, x_2, B3, n_p, B4, g_m, IF(ABS(x_1 - x_2) < 0.000001, n_p * (x_1 ^ (n_p - 1)), ((x_1 ^ n_p) - (x_2 ^ n_p)) / (x_1 - x_2)), ROUND(x_1 * g_m / E2, 4)))` ### Gordon-Schaefer Fishery MSY, MEY & Open-Access Formula - **URL**: https://sheets.arte-soft.com/en/learn/gordon-schaefer-bioeconomic-fishery-msy-mey-and-open-access/ - **Summary**: Compare biological Maximum Sustainable Yield (E_MSY = r/(2*q)), Open-Access Bionomic rent dissipation (E_OA), and conservationist Maximum Economic Yield (E_MEY = E_OA / 2). *Table — Prove H. Scott Gordon’s (1954) conservation surprise: economic MEY preserves MORE fish than biological MSY!:* | Fishery Regime (r=0.40, K=1,000, q=0.001, p=10, c=2) | Effort E & Steady-State Stock X | Sustainable Harvest & Net Rent | | --- | --- | --- | | Maximum Economic Yield (MEY / ITQ) | E_MEY = 160, X_MEY = 600 tons | H = 96 tons \| Rent = 640.00 (Peak!) | | Biological Max Sustainable Yield (MSY) | E_MSY = 200, X_MSY = 500 tons | H = 100 tons \| Rent = 600.00 | | Unregulated Open Access (Commons) | E_OA = 320, X_OA = 200 tons | H = 64 tons \| Rent = 0.00 (Dissipated!) | - **Formula (Open-Access Bionomic Effort E_OA & Optimal MEY Effort E_MEY = E_OA / 2 Formula)**: `=LET(r_gr, B2, k_cp, B3, q_ct, B4, p_fs, B5, c_bt, B6, IF(OR(r_gr <= 0, k_cp <= 0, q_ct <= 0, p_fs <= 0, c_bt < 0), "Invalid Fishery Input", IF(p_fs * q_ct * k_cp <= c_bt, 0, ROUND(0.5 * (r_gr / q_ct) * (1 - (c_bt / (p_fs * q_ct * k_cp))), 4))))` - **Formula (Maximum Sustainable Economic Rent (Rent_MEY) Formula)**: `=LET(r_gr, B2, k_cp, B3, q_ct, B4, p_fs, B5, c_bt, B6, IF(OR(r_gr <= 0, k_cp <= 0, q_ct <= 0, p_fs <= 0, c_bt < 0), "Invalid Fishery Input", IF(p_fs * q_ct * k_cp <= c_bt, 0, LET(e_mey, 0.5 * (r_gr / q_ct) * (1 - (c_bt / (p_fs * q_ct * k_cp))), x_mey, k_cp * (1 - (q_ct * e_mey / r_gr)), ROUND(p_fs * q_ct * e_mey * x_mey - c_bt * e_mey, 2)))))` ### Gorlin Aortic Valve Area (AVA) Catheterization Formula - **URL**: https://sheets.arte-soft.com/en/learn/gorlin-aortic-and-mitral-valve-area-hemodynamic-catheterization-formula/ - **Summary**: Calculate Invasive Hemodynamic Stroke Volume (mL/beat), Mean Systolic Transvalvular Flow Rate (CO_L_min * 1000)/(HR * SEP), Richard & Sandra Gorlin’s Aortic Valve Area AVA = Flow / (44.3 * SQRT(Mean_Grad_mmHg)), and ACC/AHA Stenosis Severity. *Table — Account for low-flow cardiac output alongside pressure gradient via the Gorlin Equation!:* | Gorlin Cath-Lab Metric (CO=4.5 L/min, HR=75 bpm, SEP=0.24s, Mean Grad=49 mmHg) | Formula | Verified Output | | --- | --- | --- | | Stroke Volume SV (mL/beat) | (Cardiac_Output_L_min * 1000) / HR | 60.00 mL/beat | | Mean Systolic Flow Rate (mL/s) | (CO_L_min * 1000) / (HR * SEP_s) | 250.00 mL/s | | Gorlin Aortic Valve Area (cm^2) | Flow_mL_s / (44.3 * SQRT(Grad_mmHg)) | 0.81 cm^2 (1.41 cm^2 @ 16 mmHg) | | ACC / AHA Valve Stenosis Stage | <=1.0 Severe \| <=1.5 Mod \| >1.5 Mild | Severe Aortic Stenosis (AVA <= 1.0 cm2) | - **Formula (Gorlin Invasive Aortic Valve Area (cm^2) Formula)**: `=LET(co_l, B2, hr_b, B3, sp_s, B4, gr_m, B5, IF(OR(co_l <= 0, hr_b <= 0, sp_s <= 0, hr_b * sp_s >= 60, gr_m <= 0), "Invalid Hemodynamic Trace", LET(fl_s, (co_l * 1000) / (hr_b * sp_s), ROUND(fl_s / (44.3 * SQRT(gr_m)), 2))))` - **Formula (Moderate Stenosis Gradient Check (Set Mean Gradient = 16 mmHg))**: `=IF(ISTEXT(E4), E4, IF(E4 <= 1, "Severe Aortic Stenosis (AVA <= 1.0 cm2)", IF(E4 <= 1.5, "Moderate Aortic Stenosis", "Mild or Normal Valve Area")))` ### GP-Led Continuation Fund Secondary Pricing & LP Cash Formula - **URL**: https://sheets.arte-soft.com/en/learn/gp-led-continuation-fund-secondary-discount-and-lp-rollover-formula/ - **Summary**: Calculate GP-Led Continuation Vehicle (CV) Implied Transaction Value (Reference_NAV * Bid_Pct), Crystallized GP Carried Interest on Selling LPs, Selling-LP Net Cash Wire, and Secondary Buyer Day-1 Mark-to-NAV Gain. *Table — Model selling-LP cash elections vs secondary buyer discounts in GP-led Continuation Vehicles!:* | GP-Led CV Metric ($200M NAV, 92% Bid, 60% Sell Share, $100M Basis, 20% Carry) | Formula | Verified Output | | --- | --- | --- | | Implied CV Transaction Value ($M) | Reference_NAV * Secondary_Bid_Pct | $184.00M ($200.00M @ Par Bid) | | Selling-LP Net Cash Proceeds ($M) | CV_Val * Sell_Pct - Crystallized_Carry | $100.32M ($108.00M @ Par Bid) | | Crystallized Selling-Slice Carry | MAX(0, (CV_Val - Basis)*Sell_Pct*Carry) | $10.08M ($12.00M @ Par Bid) | | Secondary Buyer Day-1 NAV Uplift | (Reference_NAV - CV_Val) / CV_Val | 0.0870 (+8.70%; 0.0000 @ Par) | - **Formula (Continuation Vehicle Selling-LP Net Cash Proceeds Formula)**: `=LET(nv_r, B2, bd_p, B3, sl_s, B4, bs_c, B5, cr_r, B6, IF(OR(nv_r <= 0, bd_p < 0.3, bd_p > 1.3, sl_s <= 0, sl_s > 1, bs_c <= 0, cr_r < 0, cr_r >= 0.5), "Invalid Continuation Fund Terms", LET(cv_v, nv_r * bd_p, gp_c, MAX(0, (cv_v - bs_c) * sl_s * cr_r), ROUND(cv_v * sl_s - gp_c, 2))))` - **Formula (Par-Bid (100% of NAV) Secondary Clearing Check)**: `=IF(ISTEXT(E2), E2, ROUND((B2 - E2) / E2, 4))` ### GP-Led Continuation Vehicle (CV) Carry Rollover & Alignment - **URL**: https://sheets.arte-soft.com/en/learn/gp-led-continuation-vehicle-cv-rollover-carry-crystal-and-new-money-formula/ - **Summary**: Calculate Legacy Fund Crystallized GP Carry ($M), Selling LP Cash Liquidity Payout ($M), Secondary Lead Syndicate Day-1 Check ($M), and GP Day-1 CV Ownership Alignment (%). *Table — Audit crystallized GP carry rollover—LPACs demand skin-in-the-game, not a conflicted GP cash-out!:* | GP-Led CV Cap-Table KPI ($400M Transfer, $150M Cost, 20% Carry, 60% Sell, 80% GP Roll) | Formula | Verified Output | | --- | --- | --- | | Crystallized Old-Fund Carry ($M) | (CV_Equity_M - Legacy_Cost_M) * Carry_Rate | $50.00M | | Selling LP Cash Payout ($M) | (CV_Equity_M - Carry_M) * Selling_LP_Pct | $210.00M ($280.00M @ 80% Sell) | | Secondary Buyer Day-1 Check ($M) | Selling_LP_Cash_M + Carry_M * (1 - GP_Roll) | $220.00M ($280.00M @ 100% Roll) | | GP Day-1 CV Alignment (%) | ((Carry_M * GP_Roll) / CV_Equity_M) * 100 | 10.00% (12.50% @ 100% GP Roll) | - **Formula (Continuation Vehicle Secondary Check & GP Alignment Formula)**: `=LET(cv_e, B2, cs_0, B3, cr_r, B4, sl_p, B5, gp_r, B6, IF(OR(cv_e <= cs_0, cs_0 <= 0, cr_r < 0, cr_r > 0.3, sl_p <= 0, sl_p > 1, gp_r < 0.5, gp_r > 1), "Invalid CV Structure Input", LET(cr_m, (cv_e - cs_0) * cr_r, lp_s, (cv_e - cr_m) * sl_p, ROUND(lp_s + cr_m * (1 - gp_r), 2))))` - **Formula (100% Pre-Tax Carry Rollover Mandate Check (80% LP Sell & 100% GP Carry Roll))**: `=IF(ISTEXT(E4), E4, ROUND((((B2 - B3) * B4 * B6) / B2) * 100, 2))` ### GP Stakes FRE vs PRE Asset-Manager Valuation Formula - **URL**: https://sheets.arte-soft.com/en/learn/gp-stakes-alternative-asset-manager-fre-pre-and-valuation-formula/ - **Summary**: Value Alternative Asset Management Firms via Sum-of-the-Parts: Recurring Fee-Related Earnings (FRE = FPAUM * Fee_Rate * FRE_Margin), Performance-Related Carry Earnings (PRE), FRE Valuation Weight, and Minority GP Stake Check. *Table — Bifurcate durable Management-Fee FRE (20x+) from episodic Carry PRE (6x–10x) in GP Stakes deals!:* | GP-Stakes SOTP Metric ($40B FPAUM, 1.25% Fee @ 50% Margin, $120M PRE, 20x/8x) | Formula | Verified Output | | --- | --- | --- | | Annual Fee-Related Earnings ($M) | FPAUM_B * 1000 * Fee_Rate * FRE_Margin | $250.00M/yr | | GP Franchise SOTP Value ($M) | FRE * FRE_Mult + PRE * PRE_Mult | $5,960.00M ($5,000M @ $0 Carry) | | FRE Share of GP Valuation | (FRE * FRE_Mult) / Total_GP_Value | 0.8389 (83.89%; 1.0000 @ $0 Carry) | | 20% Minority GP Stake Price ($M) | Total_GP_Value * 0.20 | $1,192.00M ($1,000M @ $0 Carry) | - **Formula (GP-Stakes Sum-of-the-Parts Franchise Enterprise Value Formula)**: `=LET(au_b, B2, fe_r, B3, mg_f, B4, pr_e, B5, ml_f, B6, ml_p, B7, IF(OR(au_b <= 0, fe_r <= 0, fe_r >= 0.05, mg_f <= 0, mg_f >= 1, pr_e < 0, ml_f <= 0, ml_p < 0), "Invalid GP Stakes Model", LET(fr_e, au_b * 1000 * fe_r * mg_f, ROUND(fr_e * ml_f + pr_e * ml_p, 2))))` - **Formula (Frozen Exit-Window Zero-Carry Floor Check (Set Net Carry PRE = $0M))**: `=IF(ISTEXT(E3), E3, ROUND((E2 * B6) / E3, 4))` ### GRACE ACS Risk Score: NSTEMI/STEMI Mortality & < 24h Invasive Timing - **URL**: https://sheets.arte-soft.com/en/learn/grace-acute-coronary-syndrome-in-hospital-mortality-score/ - **Summary**: Sum the 8-predictor Global Registry of Acute Coronary Events (GRACE) point score and stratify ESC NSTEMI risk tiers (<= 108 Low, 109–140 Intermediate, > 140 High Risk < 24h angiography). *Table — ESC Class Ia invasive timing—why GRACE > 140 triggers coronary angiography within 24 hours!:* | GRACE NSTE-ACS Total Points | In-Hospital Mortality Tier | ESC Catheterization Timing Strategy | | --- | --- | --- | | <= 108 Points (e.g., Total = 88) | Low Risk (<= 108 — < 1% In-Hospital Mortality) | Selective / Non-Urgent Invasive Evaluation | | 109 – 140 Points | Intermediate Risk (109–140 — 1%–3% Mortality) | Inpatient Invasive Strategy | | > 140 Points (e.g., Total = 169) | High Risk (> 140 — > 3% Mortality, < 24h Invasive) | Early Invasive Angiography Within 24 Hours | - **Formula (Total GRACE Acute Coronary Syndrome Point Score)**: `=IF(MIN(B2:B7) < 0, "GRACE Subscores Cannot Be Negative", SUM(B2:B7))` - **Formula (ESC NSTE-ACS Risk & Early-Invasive (< 24h) Triage Tier)**: `=IF(MIN(B2:B7) < 0, "GRACE Subscores Cannot Be Negative", IF(SUM(B2:B7) > 140, "High Risk (> 140 — > 3% Mortality, < 24h Invasive)", IF(SUM(B2:B7) >= 109, "Intermediate Risk (109–140 — 1%–3% Mortality)", "Low Risk (<= 108 — < 1% In-Hospital Mortality)")))` ### Grade multiple-choice tests against an answer key (SUMPRODUCT, FILTER & TEXTJOIN) - **URL**: https://sheets.arte-soft.com/en/learn/grade-multiple-choice-test-against-answer-key/ - **Summary**: Score student or certification exam responses automatically with unweighted counts, custom per-question point weights, and exact missed-question lists. *Table — Score exams in one formula—and list every missed question ID automatically!:* | Row / Student | Q1 (1 pt) | Q2 (2 pts) | Q3 (2 pts) | Q4 (3 pts) | Q5 (2 pts) | Grading Summary | | --- | --- | --- | --- | --- | --- | --- | | Answer Key (Row 3) | A | C | B | D | A | Max Possible = 10 pts | | Alice (Row 4) | A | C | A (Miss) | D | B (Miss) | 3/5 right \| 6/10 pts \| Missed: Q3, Q5 | | Ben (Row 5) | A | C | B | D | A | 5/5 right \| 10/10 pts \| "Perfect" | - **Formula (Weighted point score against an answer key row and weight row)**: `=IF(OR(COUNTBLANK(B1:F1)>0,COUNTBLANK(B3:F3)>0,COUNT(B2:F2)<>5),"Invalid inputs",IF(MIN(B2:F2)<0,"Invalid inputs",SUMPRODUCT(--(B4:F4 = $B$3:$F$3), $B$2:$F$2)))` - **Formula (List exact missed question labels (or "Perfect" when 100% correct))**: `=IF(OR(COUNTBLANK(B1:F1)>0,COUNTBLANK(B3:F3)>0,COUNT(B2:F2)<>5),"Invalid inputs",IF(MIN(B2:F2)<0,"Invalid inputs",TEXTJOIN(", ", TRUE, FILTER($B$1:$F$1, B4:F4 <> $B$3:$F$3, "Perfect"))))` ### Graham’s Law of Gas Effusion & Knudsen Isotope Separation Factor - **URL**: https://sheets.arte-soft.com/en/learn/grahams-law-of-gas-effusion-and-uf6-isotope-enrichment-factor/ - **Summary**: Calculate molecular pinhole effusion rate ratios r_1 / r_2 = SQRT(M_2 / M_1) from molar masses—comparing rapid H2 vs. O2 vacuum leaks (3.984x) against razor-thin single-stage 235UF6 / 238UF6 gaseous diffusion enrichment (alpha = 1.004303). *Table — Why hydrogen leaks nearly 4x faster than oxygen—while enriching Uranium-235 takes thousands of stages!:* | Binary Gas Effusion Pair | Molar Masses M1 & M2 (g/mol) | Graham Effusion Ratio SQRT(M2 / M1) | Engineering Consequence | | --- | --- | --- | --- | | Hydrogen H2 vs. Oxygen O2 | 2.016 vs. 32.00 g/mol | 3.984095 (3.984x Faster) | Rapid H2 seal & flange permeation | | Helium He vs. Nitrogen N2 | 4.0026 vs. 28.014 g/mol | 2.645554 (2.646x Faster) | Sensitive He mass-spec leak testing | | 235UF6 vs. 238UF6 Isotope Pair | 349.03 vs. 352.04 g/mol | 1.004303 (+0.43% per stage) | Requires ~1,400 gaseous-diffusion stages | - **Formula (Graham’s Law Effusion Rate & Ideal Knudsen Separation Factor SQRT(M_2 / M_1))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Molar Mass", ROUND(SQRT(B3 / B2), 6))` - **Formula (Predicted Gas 1 Effusion Flux From Measured Reference Gas 2 Leak Rate)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Molar Mass", ROUND(B4 * SQRT(B3 / B2), 3))` ### Granular Activated Carbon (GAC) EBCT & Bed-Life Formula - **URL**: https://sheets.arte-soft.com/en/learn/granular-activated-carbon-gac-empty-bed-contact-time-ebct-and-bed-life/ - **Summary**: Calculate Granular Activated Carbon Empty Bed Contact Time EBCT (min), Superficial Hydraulic Loading Rate (m/hr), Daily Carbon Usage Rate CUR (kg/d), and Days to Breakthrough. *Table — EBCT uses GROSS unpacked bed volume (V_bed / Q)—never multiply by bed void porosity!:* | GAC Adsorber Design KPI (120 m³/hr, 30 m³ Bed, 10 m² Vessel, 500 µg/L, q = 20 mg/g) | Formula | Verified Output | | --- | --- | --- | | Empty Bed Contact Time EBCT (min) | (Bed_Volume_m3 * 60) / Flow_m3_hr | 15.00 min | | Hydraulic Loading Rate HLR (m/hr) | Flow_m3_hr / Vessel_Area_m2 | 12.00 m/hr | | Carbon Usage Rate CUR (kg GAC/d) | (Flow * 24 * Cin_ug_L / 10^6) / (q_mg_g / 1000) | 72.00 kg/d (144.00 @ q = 10) | | Bed Life to Breakthrough (days) | (Bed_Volume_m3 * 480) / CUR_kg_d | 200.00 days (100.00 @ q = 10) | - **Formula (GAC Empty Bed Contact Time & Breakthrough Bed-Life Formula)**: `=LET(q_hr, B2, vl_b, B3, ar_v, B4, c_ug, B5, q_cp, B6, IF(OR(q_hr <= 0, vl_b <= 0, ar_v <= 0, c_ug <= 0, q_cp <= 0), "Invalid GAC Adsorber Input", LET(ld_k, q_hr * 24 * c_ug / 1000000, cu_r, ld_k / (q_cp / 1000), ROUND((vl_b * 480) / cu_r, 2))))` - **Formula (NOM Fouling Capacity-Halving Check (Set Dynamic Capacity q = 10.0 mg/g))**: `=IF(ISTEXT(E5), E5, ROUND((B3 * 60) / B2, 2))` ### Grashof Number (Gr) & Rayleigh Number (Ra) Natural Convection - **URL**: https://sheets.arte-soft.com/en/learn/grashof-and-rayleigh-natural-convection-buoyancy-numbers/ - **Summary**: Calculate ideal-gas Grashof and Rayleigh magnitudes with SI inputs, then compare Ra with an illustrative vertical-plate reference without treating it as a universal transition rule. - **Formula (Unrounded Grashof magnitude in D2)**: `=IF(COUNT(B2:B6)<>5,"Enter numeric convection inputs",IF(OR(B2<=0,B3<=0,B5<=0,B6<=0,ABS(B4)>=2*B3),"Require positive properties and Kelvin endpoints",B2*(1/B3)*ABS(B4)*B5^3/B6^2))` - **Formula (Unrounded Rayleigh magnitude in D3)**: `=IF(NOT(ISNUMBER(D2)),D2,IF(COUNT(B7)<>1,"Enter numeric Prandtl number",IF(B7<=0,"Prandtl number must be positive",D2*B7)))` - **Formula (Vertical-plate reference comparison in D4)**: `=IF(NOT(ISNUMBER(D3)),D3,IF(D3=0,"No thermal driving",IF(D3<1000000000,"Below reference Ra=1e9","At or above reference Ra=1e9")))` ### Green-Ampt Wetting-Front Soil Infiltration Rate & Ponding Depth - **URL**: https://sheets.arte-soft.com/en/learn/green-ampt-wetting-front-soil-infiltration-and-ponding/ - **Summary**: Calculate physically based Green-Ampt soil infiltration capacity f = K_s * (1 + (psi * Delta_theta) / F) (mm/hr) and Mein-Larson Cumulative Ponding Depth F_p = (K_s * psi * Delta_theta) / (i - K_s) (mm). *Table — Model stormwater infiltration from measurable soil suction and porosity!:* | Storm & Soil State (Loam K_s = 12 mm/hr, Suction psi = 110 mm, Deficit = 0.30) | Cumulative Depth F / Rain i | Calculated Rate or Depth | Hydrologic Regime | | --- | --- | --- | --- | | Early Wetting Front | F = 25.0 mm | f = 27.84 mm/hr | High capillary suction pull | | Deep Wetting Front | F = 60.0 mm | f = 18.60 mm/hr | Approaching gravity K_s = 12 | | Mein-Larson Ponding Threshold | Storm i = 45.0 mm/hr (> K_s) | F_p = 12.00 mm (t_p = 0.267 hr) | Runoff starts after 16 min! | - **Formula (Green-Ampt Potential Infiltration Capacity f(F) (mm/hr))**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B5 <= 0), "Invalid Soil or Depth Input", ROUND(B2 * (1 + ((B3 * B4) / B5)), 2))` - **Formula (Mein-Larson Cumulative Infiltration at Surface Ponding F_p (mm))**: `=IF(B6 <= B2, "No Ponding (Rainfall Intensity <= Ks)", ROUND((B2 * B3 * B4) / (B6 - B2), 2))` ### Data Center PUE, DCiE, CUE & WUE Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/green-grid-data-center-pue-dcie-cue-and-wue-efficiency-formulas/ - **Summary**: Audit ISO/IEC 30134-2 Power Usage Effectiveness PUE = Total_Facility_Energy / IT_Energy, DCiE = 1 / PUE, Carbon Usage Effectiveness CUE, and Water Usage Effectiveness WUE. *Table — Catch the adiabatic cooling trade-off: lowering PUE can silently spike WUE evaporative water burn!:* | ISO 30134 Data Center KPI (IT=40k MWh, Overhead=10k MWh) | Formula | Verified Output | | --- | --- | --- | | Power Usage Effectiveness (PUE) | (E_IT + E_NonIT) / E_IT | 1.2500 (>= 1.00 Physical Floor) | | Infrastructure Efficiency (DCiE) | E_IT / (E_IT + E_NonIT) | 0.8000 (80.0% to IT Gear) | | Carbon Usage Effectiveness (CUE) | PUE * Grid_EF_kg_kWh | 0.4500 kg CO2e / IT kWh | | Water Usage Effectiveness (WUE) | Water_Liters / (E_IT_MWh * 1,000) | 0.4500 Liters / IT kWh | - **Formula (ISO/IEC 30134-2 Power Usage Effectiveness (PUE) Formula)**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Energy Metering (Require IT > 0, Overhead >= 0)", ROUND((B2 + B3) / B2, 4))` - **Formula (Carbon Usage Effectiveness (CUE) & Water Usage Effectiveness (WUE) Formula)**: `=IF(OR(B2 <= 0, B5 < 0), "Invalid Water Metering", ROUND(B5 / (B2 * 1000), 4))` ### Hydroponic Fertigation Injector Stock Tank & ppm Formula - **URL**: https://sheets.arte-soft.com/en/learn/greenhouse-hydroponic-fertigation-stock-tank-injector-ppm-dilution-formula/ - **Summary**: Calculate Dripper-Line Fertilizer Salt Concentration (mg/L), Concentrated Stock-Tank Salt Concentration (g/L), Total Dry Fertilizer Bag Charge (kg), and Cold-Water Solubility Utilization (%). *Table — Weighing 150 mg/L of Calcium Nitrate salt instead of 150 ppm Elemental Nitrogen starves tomato crops by 84.5%!:* | CEA Fertigation Stock-Tank KPI (150 ppm N, 15.5% Ca(NO3)2, 1:100 Injector, 200 L) | Formula | Verified Output | | --- | --- | --- | | Dripper-Line Salt Conc. (mg/L) | Target_Element_ppm / (Purity_Pct / 100) | 967.74 mg/L | | Concentrated Stock Tank (g/L) | (Line_Salt_mg_L * Injector_Ratio) / 1000 | 96.77 g/L (193.55 g/L @ 1:200 injector) | | Total Dry Salt Charge (kg) | (Stock_Conc_g_L * Tank_Vol_L) / 1000 | 19.35 kg (38.71 kg @ 1:200 injector) | | Ca(NO3)2 Solubility Used (%) | (Stock_Conc_g_L / 1200) * 100 | 8.06% (16.13% @ 1:200 injector) | - **Formula (Proportional Fertigation Injector Dilution & Elemental Salt Mass Formula)**: `=LET(pp_m, B2, pu_p, B3, ir_t, B4, vt_l, B5, IF(OR(pp_m <= 0, pu_p <= 0, pu_p > 100, ir_t < 1, vt_l <= 0), "Invalid Fertigation Input", LET(cl_m, pp_m / (pu_p / 100), cs_g, (cl_m * ir_t) / 1000, ROUND((cs_g / 1200) * 100, 2))))` - **Formula (High-Ratio 1:200 Injector Upgrade Check (Set Injector Ratio R_inj = 200))**: `=IF(ISTEXT(E5), E5, LET(cl_m, B2 / (B3 / 100), cs_g, (cl_m * B4) / 1000, ROUND((cs_g * B5) / 1000, 2)))` ### Greenshields Traffic Flow & Queue Shockwave Formula - **URL**: https://sheets.arte-soft.com/en/learn/greenshields-traffic-flow-jam-density-capacity-and-shockwave-formula/ - **Summary**: Calculate Greenshields (1935) highway speed v(k) = v_f*(1 - k/k_j), parabolic flow q(k) = k*v(k), maximum lane capacity v_f*k_j / 4, and Lighthill-Whitham-Richards backward queue shockwave speed. *Table — Why adding cars past critical density k_j / 2 CUTS highway throughput instead of raising it!:* | Highway Traffic Metric (v_f=100 km/h, k_j=120 veh/km) | Formula | Verified Output | | --- | --- | --- | | Upstream Flow at k_1 = 30 veh/km | 30 * 100 * (1 - 30 / 120) | 2,250.00 veh/h (at 75 km/h) | | Maximum Parabolic Lane Capacity (q_max) | (v_f * k_j) / 4 | 3,000.00 veh/h (at k_c = 60) | | Downstream Congested Flow (k_2 = 108) | 108 * 100 * (1 - 108 / 120) | 1,080.00 veh/h (at 10 km/h) | | LWR Backward Queue Shockwave (w_12) | (q_2 - q_1) / (k_2 - k_1) | -15.00 km/h (Upstream Spillback!) | - **Formula (Greenshields Parabolic Hourly Flow q(k) & Max Lane Capacity Formula)**: `=LET(v_fr, B2, k_jm, B3, k_up, B4, IF(OR(v_fr <= 0, k_jm <= 0, k_up < 0, k_up > k_jm), "Invalid Traffic Input", ROUND(k_up * v_fr * (1 - k_up / k_jm), 2)))` - **Formula (Rankine-Hugoniot / LWR Traffic Shockwave Speed w_12 Formula)**: `=LET(v_fr, B2, k_jm, B3, k_1, B4, k_2, B5, IF(OR(v_fr <= 0, k_jm <= 0, k_1 < 0, k_1 > k_jm, k_2 < 0, k_2 > k_jm, k_1 = k_2), "Invalid Shockwave State", LET(q_1, k_1 * v_fr * (1 - k_1 / k_jm), q_2, k_2 * v_fr * (1 - k_2 / k_jm), ROUND((q_2 - q_1) / (k_2 - k_1), 2))))` ### Greenwood Survival Standard Error and Log-Log Confidence Interval - **URL**: https://sheets.arte-soft.com/en/learn/greenwood-kaplan-meier-survival-variance-and-complimentary-log-log-ci/ - **Summary**: Compute Kaplan-Meier survival S(t), Greenwood’s variance formula, and Kalbfleisch-Prentice log(-log S(t)) confidence bounds that never exceed 100% survival. *Table — Reproduce why linear S(t) + 1.96*SE spills above 1.00 on high-survival cohorts:* | Kaplan-Meier / CI Quantity | Formula Expression | Sample Output (S = 0.9000) | | --- | --- | --- | | Product-Limit Survival S(t_2) | PRODUCT(1 - d_j / n_j) | 0.9000 | | Greenwood Standard Error SE_G | S(t) * SQRT(SUM(d_j / (n_j * (n_j - d_j)))) | 0.0671 | | Naive Linear Upper 95% (Bug) | S(t) + 1.959964 * SE_G | 1.0315 (Impossible > 1.00!) | | Log-Log 95% Interval [L, U] | S(t)^EXP(+/- 1.959964 * SQRT(G_sum) / \|LN(S)\|) | [0.6560, 0.9740] (Strictly in (0,1)) | - **Formula (Greenwood Standard Error SE_G Formula)**: `=IF(OR(D3 <= 0, D3 >= 1), "Boundary Survival (0 or 1)", ROUND(D3 * SQRT(SUM(E2:E3)), 4))` - **Formula (Kalbfleisch-Prentice Complementary Log-Log 95% Upper & Lower Bounds Formula)**: `=LET(s_km, D3, g_sum, SUM(E2:E3), IF(OR(s_km <= 0, s_km >= 1, g_sum <= 0), "Boundary Survival (0 or 1)", LET(se_cll, SQRT(g_sum) / ABS(LN(s_km)), ROUND(s_km^(EXP(-1.959964 * se_cll)), 4))))` ### Greenwood’s Formula & Kalbfleisch-Prentice Log-Log Survival 95% CI - **URL**: https://sheets.arte-soft.com/en/learn/greenwood-standard-error-and-log-log-kaplan-meier-survival-ci/ - **Summary**: Calculate Kaplan-Meier survival standard error SE(S(t)) = S(t) * SQRT(Σ d_i / (n_i * (n_i - d_i))) via Major Greenwood’s 1926 formula and construct bounded [0, 1] log-log 95% confidence limits S(t)^EXP(±1.96 * SQRT(V) / |LN(S(t))|). *Table — Why SAS and R use log-log Kalbfleisch-Prentice CIs instead of naive S(t) ± 1.96·SE!:* | Kaplan-Meier Point S(t) & Greenwood Sum V_sum | Greenwood SE(S(t)) | Log-Log 95% Lower Bound | Log-Log 95% Upper Bound | | --- | --- | --- | --- | | 12-Month Survival (S = 0.7200, V_sum = 0.0085) | 0.0664 | 0.5659 | 0.8274 | | Early 3-Month Survival (S = 0.9200, V_sum = 0.0040) | 0.0582 | 0.6916 | 0.9813 (Never > 1.00!) | | Boundary S <= 0 or S >= 1 | Log-Log Singularity | "Invalid Survival Inputs" | Requires 0 < S(t) < 1, V_sum > 0 | - **Formula (Greenwood Survival Standard Error SE(S(t)) = S(t) * SQRT(V_sum))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0), "Invalid Survival Inputs", ROUND(B2 * SQRT(B3), 4))` - **Formula (Kalbfleisch-Prentice Log-Log 95% Upper Survival Confidence Limit)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0), "Invalid Survival Inputs", ROUND(B2 ^ EXP(-1.96 * SQRT(B3) / ABS(LN(B2))), 4))` ### Solar Curtailment LCOE & Duck-Curve Ramp Formula - **URL**: https://sheets.arte-soft.com/en/learn/grid-solar-curtailment-effective-lcoe-and-duck-curve-ramp-rate-formula/ - **Summary**: Calculate Curtailment-Adjusted Delivered LCOE = LCOE_gross / (1 - c_curt), Nonlinear Curtailment Cost Penalty c_curt / (1 - c_curt), Duck-Belly Midday Net Load, and Sunset Thermal/BESS Ramp Rate (MW/hr). *Table — Avoid the linear-curtailment LCOE fallacy and size evening Duck-Curve ramp capacity!:* | Grid Solar Integration Metric ($36/MWh Gross, 25% Curtail, 11 GW Solar) | Formula | Verified Output | | --- | --- | --- | | Effective Delivered LCOE ($/MWh) | LCOE_gross / (1 - c_curt) | $48.00 / MWh | | Curtailment LCOE Penalty (%) | c_curt / (1 - c_curt) | +0.3333 (+33.33% Cost Lift) | | Duck-Belly Midday Net Load (MW) | L_midday - S_solar | 7,000.00 MW | | Evening Net-Load Ramp Rate (MW/hr) | (L_evening - (L_midday - S_solar)) / h_ramp | 5,000.00 MW/hr | - **Formula (Curtailment-Adjusted Effective Delivered LCOE Formula)**: `=LET(lc_g, B2, cr_r, B3, ld_m, B4, sl_m, B5, ld_e, B6, hr_r, B7, IF(OR(lc_g <= 0, cr_r < 0, cr_r >= 1, ld_m <= 0, sl_m < 0, ld_e <= 0, hr_r <= 0), "Invalid Grid Dispatch", ROUND(lc_g / (1 - cr_r), 2)))` - **Formula (Sunset Duck-Curve Evening Ramp Rate (MW/hr) Formula)**: `=IF(ISTEXT(E2), E2, ROUND((B6 - (B4 - B5)) / B7, 2))` ### Griffith Brittle Fracture & Weibull Ceramic Volume Scaling - **URL**: https://sheets.arte-soft.com/en/learn/griffith-brittle-fracture-strength-and-weibull-ceramic-volume-scaling/ - **Summary**: Calculate Griffith Critical Brittle Fracture Stress SQRT((2*E*gamma_s)/(PI()*a)), Weibull Weakest-Link Effective-Volume Knockdown Factor (V_coupon / V_part)^(1/m), Full-Component Characteristic Strength, and Design Safety Factor. *Table — Account for microscopic Griffith flaws and Weibull volume-size knockdown in structural ceramics!:* | Ceramic Fracture Metric (E=300 GPa, gamma=5 J/m^2, a=30 um, V2/V1=64, m=6) | Formula | Verified Output | | --- | --- | --- | | Coupon Griffith Strength (MPa) | SQRT((2 * E_GPa * gamma * 1000)/(PI()*a_um)) | 178.41 MPa (89.21 @ a=120 um) | | Weibull Volume Scaling Factor | (V_coupon / V_part)^(1 / m) | 0.5000 (1.0000 @ V_part=100) | | Full-Part Strength (MPa) | Coupon_Strength * Weibull_Factor | 89.21 MPa | | Component Safety Factor (x) | Full_Part_Strength / Applied_MPa | 1.27x | - **Formula (Griffith-Weibull Size-Scaled Ceramic Component Strength Formula)**: `=LET(e_gp, B2, gm_s, B3, fl_u, B4, vl_1, B5, vl_2, B6, wb_m, B7, ap_s, B8, IF(OR(e_gp <= 0, gm_s <= 0, fl_u <= 0, vl_1 <= 0, vl_2 <= 0, wb_m <= 0, ap_s <= 0), "Invalid Ceramic Fracture Input", LET(sg_c, SQRT((2 * e_gp * gm_s * 1000) / (PI() * fl_u)), wf_v, (vl_1 / vl_2) ^ (1 / wb_m), ROUND(sg_c * wf_v, 2))))` - **Formula (4x Larger Machining Flaw (a = 120 um) & Equal-Volume Checks)**: `=IF(ISTEXT(E4), E4, ROUND((B5 / B6) ^ (1 / B7), 4))` ### Fundamental Law of Active Management Formula (Grinold IR, IC, Breadth & TC) - **URL**: https://sheets.arte-soft.com/en/learn/grinold-fundamental-law-of-active-management-ir-ic-breadth/ - **Summary**: Calculate ex-ante Information Ratio IR = IC * SQRT(Breadth) * TC and expected active alpha E[R_A] = IR * Tracking_Error under the Clarke-de Silva-Thorley extended Fundamental Law. *Table — Link signal skill (IC), independent bets (Breadth), and portfolio constraints (TC)!:* | Strategy Profile | Skill IC | Breadth BR / TC | Ex-Ante IR & Alpha (TE = 4.5%) | | --- | --- | --- | --- | | Constrained Quant Equity | 0.06 | 225 bets / TC = 0.75 | IR = 0.6750 \| Alpha = +3.0375% | | Unconstrained Long-Short | 0.06 | 225 bets / TC = 1.00 | IR = 0.9000 \| Alpha = +4.0500% | | Concentrated Fundamental | 0.12 | 25 bets / TC = 0.85 | IR = 0.5100 \| Alpha = +2.2950% | - **Formula (Ex-Ante Information Ratio (IR = IC * SQRT(BR) * TC))**: `=IF(OR(ABS(B2) > 1, B3 <= 0, B4 < 0, B4 > 1, B5 <= 0), "Invalid Law Inputs", ROUND(B2 * SQRT(B3) * B4, 4))` - **Formula (Expected Annual Active Alpha (% E[R_A] = IR * TE))**: `=IF(OR(ABS(B2) > 1, B3 <= 0, B4 < 0, B4 > 1, B5 <= 0), "Invalid Law Inputs", ROUND((B2 * SQRT(B3) * B4) * B5, 4))` ### GMROI and Sell-Through Rate formulas (retail merchandising KPIs) - **URL**: https://sheets.arte-soft.com/en/learn/gross-margin-return-on-inventory-gmroi-retail/ - **Summary**: Measure Gross Margin Return on Inventory Investment (GMROI = Gross Margin $ / Avg Inventory Cost) alongside monthly SKU Sell-Through %. *Table — Why GMROI unites low-margin fast movers and high-margin slow movers!:* | Merchandising KPI | Formula | Sample Result | | --- | --- | --- | | Gross Margin $ ($500k Sales - $300k COGS) | =A2 - B2 | $200,000 (40% Margin) | | GMROI ($80k Avg Inventory @ Cost) | =(A2 - B2) / C2 | 2.50 ($2.50 per $1 stock) | | Sell-Through % (420 sold / (200 beg + 400 recv)) | =D2 / (E2 + F2) | 70.0% (0.70) | - **Formula (GMROI and period Sell-Through % formulas)**: `=ROUND((A2 - B2) / C2, 2)` - **Formula (Period Sell-Through Rate (Units Sold / Available Inventory))**: `=ROUND(D2 / (E2 + F2), 4)` ### Gross margin vs markup formula: calculate profit % and target selling price - **URL**: https://sheets.arte-soft.com/en/learn/gross-margin-vs-markup-percentage/ - **Summary**: Distinguish Gross Margin ((Price - Cost) / Price) from Markup ((Price - Cost) / Cost), and price products to hit an exact target margin. *Table — Same $40 gross profit—40% margin vs 66.67% markup:* | UnitCost (A) | SellPrice (B) | Gross Profit | Gross Margin % | Markup % | | --- | --- | --- | --- | --- | | 60 | 100 | 40 | 0.40 (40.0%) | 0.6667 (66.67%) | | 60 | 120 | 60 | 0.50 (50.0%) | 1.0000 (100.0%) | - **Formula (Gross margin, markup, and target-margin price formulas)**: `=ROUND((B2 - A2) / B2, 4)` - **Formula (Selling price required to achieve TargetMargin (C2))**: `=ROUND(A2 / (1 - C2), 2)` ### Grossman-Hart-Moore Hold-Up & Ownership Formula - **URL**: https://sheets.arte-soft.com/en/learn/grossman-hart-moore-hold-up-and-nash-bargaining-underinvestment/ - **Summary**: Calculate non-contractible relationship-specific investment e_HU = (alpha + (1 - alpha)*lambda)*(k_S/c) and quantify how asset ownership shrinks hold-up deadweight loss. *Table — Model the Fisher Body / GM hold-up problem and prove who should own critical assets!:* | Property-Rights Regime (k_S=40, c=4, alpha=0.50) | Effective Weight w_eff & Investment e* | Realized Net Surplus & Hold-Up DWL | | --- | --- | --- | | Complete Contract First-Best | w_eff = 1.00, e_FB = 10.00 | Surplus = 200.00 (DWL = 0.00) | | Buyer Asset Ownership (lambda = 0.00) | w_eff = 0.50, e_HU = 5.00 | Surplus = 150.00 (DWL = 50.00) | | Supplier Asset Ownership (lambda = 0.60) | w_eff = 0.80, e_HU = 8.00 | Surplus = 192.00 (DWL = 8.00!) | - **Formula (Incomplete-Contract Hold-Up Investment e_HU Formula)**: `=LET(ks_v, B2, c_iv, B3, al_b, B4, lm_o, B5, IF(OR(ks_v <= 0, c_iv <= 0, al_b < 0, al_b > 1, lm_o < 0, lm_o > 1), "Invalid GHM Input", LET(w_ef, al_b + (1 - al_b) * lm_o, ROUND(w_ef * (ks_v / c_iv), 4))))` - **Formula (Hold-Up Deadweight Surplus Loss (1 - w_eff)^2 * S_FB Formula)**: `=LET(ks_v, B2, c_iv, B3, al_b, B4, lm_o, B5, IF(OR(ks_v <= 0, c_iv <= 0, al_b < 0, al_b > 1, lm_o < 0, lm_o > 1), "Invalid GHM Input", LET(w_ef, al_b + (1 - al_b) * lm_o, s_fb, (ks_v^2) / (2 * c_iv), ROUND(((1 - w_ef)^2) * s_fb, 4))))` ### Grossman-Stiglitz Equilibrium Informed Trader Formula - **URL**: https://sheets.arte-soft.com/en/learn/grossman-stiglitz-noisy-rational-expectations-information-paradox/ - **Summary**: Solve Sanford Grossman & Joseph Stiglitz’s (1980) equilibrium informed-trader share lambda* and prove why costly fundamental research requires noisy market prices. *Table — Prove the Grossman-Stiglitz (1980) paradox: 100% price efficiency collapses when research is costly!:* | Grossman-Stiglitz Metric (a=1, sig_th^2=4, sig_ep^2=1, sig_x^2=0.25, c=0.25) | Formula | Verified Output | | --- | --- | --- | | Uninformed Conditional Variance Var(u \| P) | sigma_eps^2 * EXP(2 * a * c) | 1.6487 | | Equilibrium Informed Share (lambda*) | CARA-Normal Indifference Root | 0.5682 (56.82% Informed) | | Price Signal Informativeness (R^2_price) | 1 - (Var(u\|P) - sigma_eps^2)/sigma_theta^2 | 0.8378 (83.78% Revealed) | | Zero Noise + Positive Cost (sig_x^2 = 0) | Grossman-Stiglitz Impossibility | No Equilibrium Paradox | - **Formula (Grossman-Stiglitz Equilibrium Informed Trader Fraction lambda* Formula)**: `=LET(a_ra, B2, st_2, B3, se_2, B4, sx_2, B5, c_in, B6, IF(OR(a_ra <= 0, st_2 <= 0, se_2 <= 0, sx_2 < 0, c_in < 0), "Invalid GS Input", IF(c_in = 0, 1, IF(sx_2 = 0, "Grossman-Stiglitz Paradox: No Equilibrium (Zero Noise + Costly Info)", LET(g_mx, st_2 / se_2, k_ex, EXP(2 * a_ra * c_in) - 1, IF(k_ex >= g_mx, 0, ROUND(MIN(1, ((a_ra * se_2 * SQRT(sx_2)) / SQRT(st_2)) * SQRT((g_mx - k_ex) / k_ex)), 4)))))))` - **Formula (Equilibrium Price Signal Informativeness R^2_price Formula)**: `=LET(a_ra, B2, st_2, B3, se_2, B4, sx_2, B5, c_in, B6, IF(OR(a_ra <= 0, st_2 <= 0, se_2 <= 0, sx_2 < 0, c_in < 0), "Invalid GS Input", IF(AND(sx_2 = 0, c_in > 0), "Grossman-Stiglitz Paradox: No Equilibrium (Zero Noise + Costly Info)", LET(k_ex, EXP(2 * a_ra * c_in) - 1, ROUND(MAX(0, 1 - (se_2 * k_ex) / st_2), 4)))))` ### Group arbitrary text values into P&L roll-up buckets (XLOOKUP mapping table) - **URL**: https://sheets.arte-soft.com/en/learn/group-arbitrary-text-categories-mapping-table-xlookup/ - **Summary**: Map dozens of vendor names or raw status labels into clean summary categories—with an automatic "Other" catch-all—using XLOOKUP and SUMIFS. *Table — Replace 12-level nested IFs with an auditable 2-column mapping table!:* | Merchant (A) | Spend $ (B) | Mapped Roll-Up Bucket (C) | Bucket Roll-Up Total | | --- | --- | --- | --- | | AWS ($1,200) & Figma ($300) | $1,500 | "Cloud & SaaS" | $1,500 | | Delta Air ($650) & Hilton ($450) | $1,100 | "Travel" | $1,100 | | City Cab ($80 — not in map!) | $80 | "Other" (XLOOKUP 4th arg) | $80 (Grand Total = $2,680!) | - **Formula (Map each raw text item to its roll-up group with "Other" fallback)**: `=IF(COUNTBLANK(A2)>0,"Missing merchant",IF(COUNTIF($E$2:$E$5,A2)>1,"Review mapping",IF(COUNTIFS($E$2:$E$5,A2,$F$2:$F$5,"")>0,"Review mapping",XLOOKUP(A2,$E$2:$E$5,$F$2:$F$5,"Other"))))` - **Formula (Summarize spend by roll-up bucket with SUMIFS)**: `=SUMIFS(B2:B6, C2:C6, "Cloud & SaaS")` ### Group Numbers into Pricing or Loyalty Tiers (Approximate VLOOKUP vs XLOOKUP -1) - **URL**: https://sheets.arte-soft.com/en/learn/group-numbers-into-tiers-with-approximate-vlookup/ - **Summary**: Bucket continuous revenue, score, or age figures into named brackets without deep nested IF chains—comparing classic sorted VLOOKUP(..., TRUE) against sort-independent XLOOKUP(..., -1). *Table — Why lookup tier tables beat 6-level nested IF chains—and one VLOOKUP trap to watch:* | Method | Requires Ascending Sort? | Below-Minimum Behavior | Formula | | --- | --- | --- | --- | | VLOOKUP (range_lookup = TRUE) | Yes (mandatory) | #N/A error | VLOOKUP(B2, $E$2:$F$5, 2, TRUE) | | XLOOKUP (match_mode = -1) | No | Custom if_not_found text | XLOOKUP(B2, $E$2:$E$5, $F$2:$F$5, "BELOW_MIN", -1) | - **Formula (Approximate Tier Assignment Formula)**: `=XLOOKUP(B2, $E$2:$E$5, $F$2:$F$5, "BELOW_MIN", -1)` ### Group numbers into uneven custom brackets (Deal size & order value cohorts) - **URL**: https://sheets.arte-soft.com/en/learn/group-numbers-into-uneven-brackets-tier-cohort/ - **Summary**: Assign nonnegative deal values to custom lower-inclusive, upper-exclusive tiers, then summarize amounts by tier. *Table — Why FLOOR/MROUND only work for equal intervals—and VLOOKUP handles uneven tiers!:* | Tier Floor (E) | Assigned Cohort Label (F) | Matching Sample Deals | Cohort ARR Sum | | --- | --- | --- | --- | | $0 | "1. SMB (<$5k)" | $1,800 | $1,800 | | $5,000 | "2. Mid-Market [5k,25k)" | $12,000 + $8,000 | $20,000 (2 deals) | | $25,000 | "3. Commercial [25k,100k)" | $45,000 | $45,000 | | $100,000 | "4. Enterprise ($100k+)" | $125,000 | $125,000 | - **Formula (Assign each deal to its uneven bracket cohort)**: `=IF(OR(NOT(ISNUMBER(B2)),B2<0,COUNT($E$2:$E$5)<>4,$E$2<>0,$E$3<=$E$2,$E$4<=$E$3,$E$5<=$E$4),"Invalid inputs",VLOOKUP(B2, $E$2:$F$5, 2, TRUE))` - **Formula (Summarize cohort revenue and deal count)**: `=IF(OR(COUNT(B2:B6)<>5,MIN(B2:B6)<0,COUNTIF(C2:C6,"Invalid inputs")>0),"Invalid inputs",SUMIFS(B2:B6, C2:C6, "2. Mid-Market [5k,25k)"))` ### Group rows into fixed-size batches (1,1,1, 2,2,2) and alternating N-row bands - **URL**: https://sheets.arte-soft.com/en/learn/group-rows-into-fixed-size-batches-and-alternating-bands/ - **Summary**: Assign cohort/pallet batch IDs every N rows, cycle 1..N slot positions within each batch, and shade alternating N-row blocks. *Table — Integer division (QUOTIENT) + remainder (MOD): the universal N-row batching pair:* | Zero-Based idx | Batch ID (N=3) | Slot Within Batch (1..3) | Alternating 3-Row Band? | | --- | --- | --- | --- | | 0, 1, 2 (Rows 2–4) | 1, 1, 1 | 1, 2, 3 | FALSE (Unshaded Band 1) | | 3, 4, 5 (Rows 5–7) | 2, 2, 2 | 1, 2, 3 | TRUE (Shaded Band 2!) | | 6 (Row 8) | 3 | 1 | FALSE (Unshaded Band 3) | - **Formula (Batch ID, within-batch slot, and alternating N-row band formulas)**: `=QUOTIENT(A6, $E$2) + 1` - **Formula (Within-batch slot position (1..N) and alternating N-row shade flag)**: `=MOD(QUOTIENT(A6, $E$2), 2) = 1` - **Formula (Slot within the batch)**: `=MOD(A6,$E$2)+1` ### Group times into 15-minute, 30-minute, or multi-hour buckets - **URL**: https://sheets.arte-soft.com/en/learn/group-times-into-hour-intervals/ - **Summary**: Round call and event timestamps down to the start of any N-minute interval using FLOOR(TimeVal, Minutes / 1440). *Table — Snap fractional times to BucketMinutes / 1440 multiples:* | CallTime (A) | BucketMins (B) | Bucket Start (FLOOR) | Bucket End (Start + Interval) | | --- | --- | --- | --- | | 14:47 | 30 | 14:30 | 15:00 | | 14:22 | 180 | 12:00 | 15:00 | | 14:30 | 30 | 14:30 | 15:00 | - **Formula (30-minute and 3-hour time-bucket formulas)**: `=LET(b, FLOOR(A2, B2 / 1440), HOUR(b) & ":" & RIGHT("00" & MINUTE(b), 2))` - **Formula (3-hour shift bucket check)**: `=LET(b, FLOOR(A3, B3 / 1440), HOUR(b) & ":" & RIGHT("00" & MINUTE(b), 2))` ### Group times & timestamps into unequal shift or daypart buckets (MOD & XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/group-timestamps-into-unequal-shift-buckets-xlookup/ - **Summary**: Map irregular clock windows (e.g., 06:30 Morning, 14:00 Swing, 21:30 Night) from full date-timestamps by stripping date serials with MOD(A2, 1) and XLOOKUP(..., -1). *Table — Assign daily clock windows using integer seconds:* | Bucket Start TIME (D) | Daypart / Shift Label (E) | Sample Timestamp (A) | Mapped Bucket | | --- | --- | --- | --- | | 00:00 (TIME(0,0,0)) | Graveyard | 2026-10-30 03:15 | Graveyard | | 06:30 (TIME(6,30,0)) | Morning (7.5 hrs) | 2026-10-30 10:15 | Morning | | 14:00 (TIME(14,0,0)) | Swing (7.5 hrs) | 2026-10-30 14:00 (Exact boundary) | Swing | | 21:30 (TIME(21,30,0)) | Late (2.5 hrs) | 2026-10-30 22:45 | Late | - **Formula (Assign full timestamp or pure time to unequal shift bucket)**: `=IF(OR(COUNT(A2)<>1,A2<0),"Invalid timestamp",IF(OR(COUNT($D$2:$D$5)<>4,$D$2<>0,MIN($D$2:$D$5)<0,MAX($D$2:$D$5)>=1,$F$2>=$F$3,$F$3>=$F$4,$F$4>=$F$5,COUNTBLANK($E$2:$E$5)>0),"Invalid schedule",XLOOKUP(MOD(ROUND(MOD(A2,1)*86400,0),86400),$F$2:$F$5,$E$2:$E$5,"Unknown",-1)))` - **Formula (Count events landing in a specific daypart bucket)**: `=COUNTIF(B2:B5, "Morning")` ### Group clock times into unequal shift or restaurant daypart buckets (MOD & XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/group-timestamps-into-unequal-shift-or-daypart-buckets/ - **Summary**: Classify timestamps into uneven operational windows (Early Bird, Lunch Rush, Afternoon, Dinner, Overnight) without nested IF chains. *Table — Why FLOOR() fails on uneven dayparts—and MOD(Timestamp, 1) + XLOOKUP(-1) shines:* | Daypart Start Threshold (D) | Bucket Name (E) | Duration | Sample Timestamp -> Bucket | | --- | --- | --- | --- | | 00:00 (=TIME(0,0,0)) | Overnight | 6 hrs | 02:15 -> Overnight | | 06:00 (=TIME(6,0,0)) | Breakfast | 5 hrs | 08:30 -> Breakfast | | 11:00 (=TIME(11,0,0)) | Lunch Rush | 3 hrs | 13:45 -> Lunch Rush | | 14:00 / 17:00 / 22:00 | Afternoon / Dinner / Late Night | 3h / 5h / 2h | 22:00 -> Late Night | - **Formula (Map any time or full datetime into unequal operational buckets)**: `=IF(ISNUMBER(A2),XLOOKUP(MOD(A2, 1), $D$2:$D$7, $E$2:$E$7, "", -1),"Enter a numeric timestamp")` - **Formula (Verify exact boundary rollover at 14:00:00)**: `=IF(ISNUMBER(B2),XLOOKUP(MOD(B2, 1), $D$2:$D$7, $E$2:$E$7, "", -1),"Enter a numeric timestamp")` ### Capped Growing Degree Days (GDD) Maturity Formula - **URL**: https://sheets.arte-soft.com/en/learn/growing-degree-days-gdd-capped-thermal-time-and-crop-maturity-formula/ - **Summary**: Calculate USDA / NOAA Modified Capped Growing Degree Days MAX(0, (MIN(T_max, T_upper) + MAX(T_min, T_base))/2 - T_base), Uncapped Bias, Remaining Thermal Units, and Days to Harvest. *Table — Clamp both T_min and T_max before averaging—never after—under NOAA Modified GDD!:* | Crop Phenology Metric (Tmax=94°F, Tmin=46°F, 50°F/86°F Bounds, 2,160/2,700 GDD) | Formula | Verified Output | | --- | --- | --- | | NOAA Modified Capped GDD | MAX(0, (MIN(Tmax,Tup) + MAX(Tmin,Tb))/2 - Tb) | 18.00 GDD / day | | Simple Uncapped GDD | MAX(0, (T_max + T_min) / 2 - T_base) | 20.00 GDD / day (+2.0 Bias) | | Remaining GDD to Maturity | MAX(0, Target_GDD - Season_GDD) | 540.00 GDD | | Projected Days to Maturity | Remaining_GDD / Capped_Daily_GDD | 30.00 days | - **Formula (NOAA Modified Capped Daily GDD Formula)**: `=LET(t_mx, B2, t_mn, B3, t_bs, B4, t_up, B5, IF(OR(t_mx < t_mn, t_up <= t_bs, B6 < 0, B7 <= 0), "Invalid Thermal Bounds", ROUND(MAX(0, (MIN(t_mx, t_up) + MAX(t_mn, t_bs)) / 2 - t_bs), 2)))` - **Formula (Dormant Frost-Day Guarded Days-to-Maturity Formula)**: `=IF(ISTEXT(E2), E2, IF(B6 >= B7, 0, IF(E2 = 0, "Dormant (0 Daily GDD)", ROUND((B7 - B6) / E2, 2))))` ### Calculate Grubbs G and an upper-end Dixon gap ratio - **URL**: https://sheets.arte-soft.com/en/learn/grubbs-test-and-dixon-q-test-outlier-statistics/ - **Summary**: Calculate two single-extreme statistics for six numeric observations, with explicit assumptions and no automatic deletion of data. *Table — Compute statistics before interpreting an unusual observation:* | Outlier Test Metric | Formula (rng = A2:A7) | Contaminated [10..14, 30] | Clean [10..15] | | --- | --- | --- | --- | | Sample Mean & STDEV.S | AVERAGE & STDEV.S | Mean = 15.00, s = 7.4833 | Mean = 12.50, s = 1.8708 | | Grubbs Statistic G | MAX(A-Mean, Mean-Min) / s | 15 / 7.4833 = 2.0045 | 2.5 / 1.8708 = 1.3363 | | Dixon Upper Gap Ratio Q | (LARGE(1) - LARGE(2)) / Range | (30 - 14) / (30 - 10) = 0.80 | (15 - 14) / (15 - 10) = 0.20 | | Threshold comparison only | Compare unrounded G with supplied D2 | Above supplied threshold | At or below supplied threshold | - **Formula (Two-sided Grubbs Outlier Statistic G = Max(|Max - Mean|, |Mean - Min|) / STDEV.S)**: `=IF(COUNT(A2:A7)<>6,"Invalid inputs",IF(MAX(A2:A7)=MIN(A2:A7),"Undefined spread",ROUND(MAX(MAX(A2:A7) - AVERAGE(A2:A7), AVERAGE(A2:A7) - MIN(A2:A7)) / STDEV.S(A2:A7), 4)))` - **Formula (Dixon's Q-Test Ratio for an upper suspect replicate)**: `=IF(COUNT(A2:A7)<>6,"Invalid inputs",IF(MAX(A2:A7)=MIN(A2:A7),"Undefined spread",ROUND((LARGE(A2:A7, 1) - LARGE(A2:A7, 2)) / (MAX(A2:A7) - MIN(A2:A7)), 4)))` - **Formula (Compare G with a supplied threshold)**: `=IF(COUNT(A2:A7)<>6,"Invalid inputs",IF(MAX(A2:A7)=MIN(A2:A7),"Undefined spread",IF(COUNT(D2)<>1,"Invalid inputs",IF(D2<=0,"Invalid inputs",IF((MAX(MAX(A2:A7) - AVERAGE(A2:A7), AVERAGE(A2:A7) - MIN(A2:A7)) / STDEV.S(A2:A7)) > D2, "Above supplied threshold", "At or below supplied threshold")))))` ### Grubel-Lloyd Intra-Industry Trade & Balassa RCA Formula - **URL**: https://sheets.arte-soft.com/en/learn/grubel-lloyd-intra-industry-trade-index-and-balassa-rca-formula/ - **Summary**: Distinguish two-way variety trade via Grubel-Lloyd Index GL_i = 1 - ABS(X_i - M_i)/(X_i + M_i) from inter-industry specialization via Bela Balassa’s (1965) Revealed Comparative Advantage RCA_ij. *Table — Separate Krugman two-way variety trade (Grubel-Lloyd) from Ricardian specialization (Balassa RCA)!:* | Trade Specialization Metric (X=60, M=40, X_tot=400, X_wj=1.5T, X_wtot=20T) | Formula | Verified Output | | --- | --- | --- | | Grubel-Lloyd Intra-Industry Index (GL) | 1 - ABS(X - M) / (X + M) | 0.8000 (80.0% Two-Way Trade) | | Country vs World Export Shares | (60 / 400) vs (1,500 / 20,000) | 15.00% vs 7.50% | | Balassa Revealed Comparative Advantage | (X_ij / X_tot) / (X_wj / X_wtot) | 2.0000 (> 1.00 Advantage!) | | Laursen Symmetric RSCA Index | (RCA - 1) / (RCA + 1) | 0.3333 (Bounded in [-1, +1]) | - **Formula (Grubel-Lloyd (1975) Intra-Industry Trade Index Formula)**: `=IF(OR(B2 < 0, B3 < 0, B2 + B3 <= 0), "No Sector Trade", ROUND(1 - ABS(B2 - B3) / (B2 + B3), 4))` - **Formula (Balassa (1965) Revealed Comparative Advantage & Symmetric RSCA Formula)**: `=LET(x_ij, B2, x_it, B4, x_wj, B5, x_wt, B6, IF(OR(x_ij < 0, x_it <= 0, x_ij > x_it, x_wj <= 0, x_wt <= 0, x_wj > x_wt), "Invalid Trade Totals", ROUND((x_ij / x_it) / (x_wj / x_wt), 4)))` ### Revised Five-Factor Score (2011 FFS) Formula: Systemic Necrotizing Vasculitis Prognosis - **URL**: https://sheets.arte-soft.com/en/learn/guillevin-revised-five-factor-score-ffs-systemic-vasculitis/ - **Summary**: Calculate Loïc Guillevin’s 2011 Revised Five-Factor Score (FFS) across PAN, MPA, EGPA, and GPA—including the protective ENT absence (+1 when ENT manifestations are absent in GPA/EGPA). *Table — Why ABSENCE of ear-nose-throat symptoms adds +1 adverse risk point in the 2011 Revised FFS!:* | 2011 Revised FFS Total | 5-Year Vasculitis Mortality | French Vasculitis Study Group Induction Regimen | | --- | --- | --- | | FFS = 0 (No Adverse Factors) | ~9% | Glucocorticoids Alone (PAN / Non-Severe EGPA) | | FFS = 1 (Single Visceral/Age Factor) | ~21% | Escalated Induction / Close Visceral Monitoring | | FFS >= 2 (e.g., Cr >= 150 + Cardiomyopathy) | ~40% | Glucocorticoids + Cyclophosphamide / Rituximab | - **Formula (Guillevin 2011 Revised Five-Factor Score (0 to 5 Points))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Flags Must Be 0 or 1", SUM(B2:B6))` - **Formula (5-Year Vasculitis Mortality Risk & Immunosuppressive Induction Tier)**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Flags Must Be 0 or 1", IF(SUM(B2:B6) >= 2, "High Risk (FFS >= 2 — ~40% 5-Yr Mortality, Add Immunosuppressant)", IF(SUM(B2:B6) = 1, "Intermediate Risk (FFS = 1 — ~21% 5-Yr Mortality)", "Low Risk (FFS = 0 — ~9% 5-Yr Mortality)")))` ### Gumbel Return-Period Quantiles and Multi-Year Exceedance Risk - **URL**: https://sheets.arte-soft.com/en/learn/gumbel-extreme-value-100-year-flood-and-wind-return-period/ - **Summary**: Calculate an illustrative Gumbel annual-maximum quantile from a sample mean and standard deviation, and distinguish return period from the chance of an exceedance during several years. - **Formula (Moment-based Gumbel maximum model)**: `=IF(E2="OK",B2+E6*B3,E2)` *Table — Moment-based Gumbel maximum model:* | T (years) | Annual exceedance | Estimated magnitude (m3/s) | | --- | --- | --- | | 10 | 10% | 606.55 | | 100 | 1% | 826.40 | - **Formula (A 100-year event can happen in successive years)**: `=IF(E2="OK",1-(1-1/B4)^B5,E2)` ### Gunn-Yamada Saturated Liquid Molar Volume Correlation (V_sat) - **URL**: https://sheets.arte-soft.com/en/learn/gunn-yamada-saturated-liquid-molar-volume-corresponding-states/ - **Summary**: Calculate saturated liquid molar volume V_sat = V_sc * V_R^(0)(T_r) * (1 - ω * δ(T_r)) (cm^3/mol) across 0.2 <= T_r <= 0.8 via Gunn & Yamada’s 1971 Pitzer corresponding-states polynomial. *Table — Sub-percent liquid density accuracy from critical properties and Pitzer’s acentric factor!:* | n-Butane Reduced Temp T_r (Tc=425.1 K, Pc=37.96 bar, ω=0.152) | Scaling Volume V_sc | Saturated Liquid V_sat (cm^3/mol) | Thermal Expansion Behavior | | --- | --- | --- | --- | | T_r = 0.65 (276.3 K / 3.2 °C Storage) | 258.20 cm^3/mol | 99.86 cm^3/mol | Baseline Pressurized LPG Sphere | | T_r = 0.75 (318.8 K / 45.7 °C Summer Sun) | 258.20 cm^3/mol | 108.67 cm^3/mol (+8.8% Swell!) | Liquid Thermal Expansion Headspace | | T_r = 0.90 (Outside 0.2..0.8 Polynomial) | Out of Range | "Tr Outside 0.20-0.80 Range" | Use High-Tr Branch / Rackett | - **Formula (Gunn-Yamada Saturated Liquid Molar Volume V_sat (cm^3/mol, 0.2 <= T_r <= 0.8))**: `=IF(OR(B2 < 0.2, B2 > 0.8, B3 <= 0, B4 <= 0), "Tr Outside 0.20-0.80 Range", ROUND(((83.1446 * B3 / B4) * (0.292 - 0.0967 * B5)) * (0.33593 - 0.33953 * B2 + 1.51941 * (B2 ^ 2) - 2.02512 * (B2 ^ 3) + 1.11422 * (B2 ^ 4)) * (1 - B5 * (0.29607 - 0.09045 * B2 - 0.04842 * (B2 ^ 2))), 2))` - **Formula (Gunn-Yamada Characteristic Scaling Volume V_sc (cm^3/mol))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Critical Constants", ROUND((83.1446 * B3 / B4) * (0.292 - 0.0967 * B5), 2))` ### Gunther Universal Scalability Law (USL) Peak Formula - **URL**: https://sheets.arte-soft.com/en/learn/gunther-universal-scalability-law-contention-and-coherency-peak/ - **Summary**: Calculate cluster relative capacity C(N) = N / (1 + alpha*(N - 1) + beta*N*(N - 1)) and exact retrograde concurrency peak N_peak* = SQRT((1 - alpha)/beta) under Neil Gunther’s USL. *Table — Why database and consensus clusters get SLOWER past N_peak* when cache/lock crosstalk beta > 0!:* | USL Cluster Metric (alpha = 0.04, beta = 0.0024) | Formula | Verified Output | | --- | --- | --- | | Optimal Node Count (N_peak*) | FLOOR(SQRT((1 - alpha) / beta), 1) | 20 nodes | | Peak Relative Capacity C(20) | 20 / (1 + 0.04*19 + 0.0024*20*19) | 7.4850x Single-Node | | Over-Scaled Retrograde Capacity C(40) | 40 / (1 + 0.04*39 + 0.0024*40*39) | 6.3452x (-15.23% Thrashing!) | | Pure Amdahl Benchmark (beta = 0, N = 20) | 20 / (1 + 0.04*19) | 11.3636x (Asymptote 25.0x) | - **Formula (Gunther USL Relative Capacity C(N) Formula)**: `=LET(al_s, B2, bt_c, B3, n_nd, B4, IF(OR(al_s < 0, al_s >= 1, bt_c < 0, n_nd < 1), "Invalid USL Input", ROUND(n_nd / (1 + al_s * (n_nd - 1) + bt_c * n_nd * (n_nd - 1)), 4)))` - **Formula (Exact Retrograde Peak Concurrency N_peak* Formula)**: `=LET(al_s, B2, bt_c, B3, IF(OR(al_s < 0, al_s >= 1, bt_c < 0), "Invalid USL Input", IF(bt_c = 0, "No Retrograde Peak (Pure Amdahl Law)", FLOOR(SQRT((1 - al_s) / bt_c), 1))))` ### Gupta Perioperative MICA Risk Formula: NSQIP Myocardial Infarction or Cardiac Arrest - **URL**: https://sheets.arte-soft.com/en/learn/gupta-mica-perioperative-myocardial-infarction-cardiac-arrest-logit/ - **Summary**: Calculate 30-day intraoperative/postoperative MI or cardiac arrest probability (%) using Prateek Gupta’s ACS-NSQIP 5-predictor logistic regression model (Age, ASA Class, Creatinine, Functional Status, and Procedure Site). *Table — Why ACC/AHA Perioperative Guidelines pair Lee’s RCRI with Gupta’s 211,410-patient NSQIP MICA model!:* | Preoperative NSQIP Surgical Profile | Gupta MICA Logit x | 30-Day MI / Cardiac Arrest Risk (%) | ACC/AHA Guideline Threshold (< 1% vs >= 1%) | | --- | --- | --- | --- | | Age 75, ASA IV, Cr > 1.5, Partial Dep, Aortic | -1.84 | 13.71% | Elevated Risk (>= 1% — Functional Capacity / Consult) | | Age 60, ASA II, Normal Cr, Independent, Ortho | -6.54 | 0.14% | Low Risk (< 1% — Proceed to Surgery) | | Invalid Age < 18 or Negative Coefficient | Error Guard | "Invalid MICA Preoperative Inputs" | Adult NSQIP Bounds Guard | - **Formula (Gupta NSQIP 30-Day Perioperative MICA Probability (%))**: `=IF(OR(B2 < 18, B2 > 115, MIN(B3:B6) < 0), "Invalid MICA Preoperative Inputs", ROUND(100 / (1 + EXP(-(-10.42 + 0.02 * B2 + B3 + B4 + B5 + B6))), 2))` - **Formula (Gupta MICA Log-Odds Linear Predictor x)**: `=IF(OR(B2 < 18, B2 > 115, MIN(B3:B6) < 0), "Invalid MICA Preoperative Inputs", ROUND(-10.42 + 0.02 * B2 + B3 + B4 + B5 + B6, 2))` ### Guttman’s Split-Half Lambda-4 (λ₄) Reliability Formula (Constrained-Free Variances) - **URL**: https://sheets.arte-soft.com/en/learn/guttman-split-half-lambda-4-unequal-variance-test-reliability/ - **Summary**: Calculate Louis Guttman’s (1945) split-half test reliability λ_4 = 2 * (1 - (s_A^2 + s_B^2) / s_X^2) without Spearman-Brown’s strict equal-half-variance assumption! *Table — Why Spearman-Brown overestimates reliability when odd and even test halves have unequal variance!:* | Exam Total Variance s_X² (s_A² = 4.20, s_B² = 5.40) | Implied Half Correlation r_AB | Guttman Split-Half λ₄ | Psychometric Grade | | --- | --- | --- | --- | | s_X² = 16.00 (Strong Inter-Half Covariance) | 0.6719 | 0.8000 | High-Stakes Licensing Standard (>= 0.80) | | s_X² = 12.00 (Weaker Inter-Half Covariance) | 0.2520 | 0.4000 | Poor Internal Consistency (< 0.70) | | Invalid s² <= 0 | Undefined | "Invalid Half-Test Variances" | Positivity Guard | - **Formula (Guttman Split-Half Reliability Coefficient λ₄)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Half-Test Variances", ROUND(2 * (1 - ((B2 + B3) / B4)), 4))` - **Formula (Implied Pearson Correlation r_AB Between Test Halves)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Half-Test Variances", ROUND((B4 - B2 - B3) / (2 * SQRT(B2 * B3)), 4))` ### Gwet’s AC1 Inter-Rater Agreement Coefficient (Solving the Kappa Paradox) - **URL**: https://sheets.arte-soft.com/en/learn/gwet-ac1-paradox-resistant-inter-rater-agreement-formula/ - **Summary**: Calculate Kilem Gwet’s (2008) paradox-resistant first-order agreement coefficient AC1 = (p_a - p_eγ) / (1 - p_eγ) vs. Cohen’s κ when trait prevalence is skewed near 0% or 100%. *Table — Why 90% raw agreement collapses to Cohen’s κ = 0.44—and how Gwet’s AC1 restores truth!:* | 2×2 Rater Table [a, b, c, d] (Raw p_a = 90%) | Cohen’s κ | Gwet’s AC1 | Prevalence Sensitivity | | --- | --- | --- | --- | | [85, 5, 5, 5] — 90% Skewed Prevalence | 0.4444 (Kappa Paradox!) | 0.8780 | AC1 resists marginal distortion | | [45, 5, 5, 45] — 50% Balanced Prevalence | 0.8000 | 0.8000 | AC1 & κ agree identically at π = 0.5 | | Empty Table (N <= 0) | Undefined | "Empty Contingency Table" | Sample-Size Guard | - **Formula (Gwet’s AC1 Paradox-Resistant Agreement Coefficient (2×2 Binary))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) <= 0), "Empty Contingency Table", ROUND((((B2 + B5) / SUM(B2:B5)) - (2 * (((2 * B2 + B3 + B4) / (2 * SUM(B2:B5)))) * (1 - ((2 * B2 + B3 + B4) / (2 * SUM(B2:B5)))))) / (1 - (2 * (((2 * B2 + B3 + B4) / (2 * SUM(B2:B5)))) * (1 - ((2 * B2 + B3 + B4) / (2 * SUM(B2:B5)))))), 4))` - **Formula (Standard Unadjusted Cohen’s Kappa κ (For Paradox Audit Comparison))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) <= 0), "Empty Contingency Table", ROUND((((B2 + B5) / SUM(B2:B5)) - ((((B2 + B3) * (B2 + B4)) + ((B4 + B5) * (B3 + B5))) / (SUM(B2:B5) ^ 2))) / (1 - ((((B2 + B3) * (B2 + B4)) + ((B4 + B5) * (B3 + B5))) / (SUM(B2:B5) ^ 2))), 4))` ### Haaland’s Explicit Darcy Friction Factor & Laminar-Turbulent Head-Loss Gate - **URL**: https://sheets.arte-soft.com/en/learn/haaland-explicit-turbulent-pipe-friction-factor-and-head-loss/ - **Summary**: Calculate Darcy-Weisbach pipe friction factor f directly without Colebrook circular iteration using S. E. Haaland’s (1983) 1.11-exponent Moody equation plus a laminar 64/Re switch. *Table — Why Haaland’s 1.11 roughness exponent tracks implicit Colebrook within ~1.4%:* | Hydraulic Quantity | Formula | 200 mm Commercial Steel Pipe (Re = 100,000) | | --- | --- | --- | | Relative Roughness eps / D | B3 / B2 | 0.0002 (0.04 mm / 200 mm) | | Haaland Darcy f | (1 / (-1.8 * LOG10(((eps/D)/3.7)^1.11 + 6.9/Re)))^2 | 0.0187 | | 100 m Pipe Head Loss h_f | f * (L / D) * (V^2 / (2 * 9.81)) | 1.91 meters (at V = 2.0 m/s) | - **Formula (Regime-Switching Laminar (64/Re) + Haaland Turbulent Friction Formula)**: `=IF(B4 <= 2300, ROUND(64 / B4, 4), ROUND((1 / (-1.8 * LOG10((((B3 / B2) / 3.7) ^ 1.11) + (6.9 / B4)))) ^ 2, 4))` - **Formula (Darcy-Weisbach Head Loss Formula (Meters))**: `=ROUND(E2 * (B5 / B2) * ((B6 ^ 2) / (2 * 9.81)), 2)` ### Haaland Explicit Turbulent Pipe Friction Factor (Moody Chart Formula) - **URL**: https://sheets.arte-soft.com/en/learn/haaland-explicit-turbulent-pipe-friction-factor-formula/ - **Summary**: Calculate Darcy-Weisbach pipe friction factor f without iterative Colebrook-White loops using S.E. Haaland's explicit formula (-1.8 * LOG10(((eps / D) / 3.7)^1.11 + (6.9 / Re)))^(-2) with a laminar 64 / Re branch. *Table — Replace implicit Moody-chart Colebrook iteration with Haaland's single-cell formula!:* | Pipe Flow Regime | Reynolds Re & Relative Roughness eps/D | Formula Branch | Darcy Friction Factor f | | --- | --- | --- | --- | | Laminar Oil Pipe | Re = 1,600, any eps/D | 64 / Re (Hagen-Poiseuille) | 0.04000 | | Commercial Steel Water Main | Re = 100,000, eps/D = 0.0002 | Haaland Turbulent | 0.01874 | | Rough Corroded Cast Iron | Re = 100,000, eps/D = 0.0050 | Haaland Rough-Wall | 0.03128 | - **Formula (Combined Laminar (64 / Re) & Haaland Turbulent Friction Factor f)**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Re or Roughness", IF(B2 <= 2300, ROUND(64 / B2, 5), ROUND((-1.8 * LOG10(((B3 / 3.7) ^ 1.11) + (6.9 / B2))) ^ -2, 5)))` - **Formula (Fully Rough Wholly-Turbulent Limit (Re -> Infinity))**: `=IF(B3 <= 0, "Smooth Pipe (f -> 0 as Re -> Inf)", ROUND((-1.8 * LOG10((B3 / 3.7) ^ 1.11)) ^ -2, 5))` ### Haber-Bosch Ammonia Synthesis Recycle, Purge & Conversion Formula - **URL**: https://sheets.arte-soft.com/en/learn/haber-bosch-ammonia-single-pass-conversion-recycle-purge-and-h2-feed-formula/ - **Summary**: Calculate Synthesis-Loop Inert Purge Flow (kmol/hr), Overall Reactant Conversion (%), Ammonia Production Rate (t/hr), and Total Reactor Inlet Flow (kmol/hr) from single-pass conversion. *Table — Why 18% single-pass equilibrium conversion still achieves >90% overall yield via recycle—and why trace Argon forces a purge!:* | Haber-Bosch Loop KPI (1,000 kmol/hr, 1% Feed Inert, 10% Loop Cap, 18% Pass) | Formula | Verified Output | | --- | --- | --- | | Total Loop Purge Stream (kmol/hr) | (Fresh_Feed * Feed_Inert_y0) / Loop_Inert_y | 100.00 kmol/hr (200 @ 5% cap) | | Overall Reactant Conversion (%) | ((React_In - Purge_React) / React_In) * 100 | 90.91% (80.81% @ 5% cap) | | Liquid Ammonia Produced (t/hr) | ((React_Converted / 2) * 17) / 1000 | 7.65 t/hr (6.80 @ 5% cap) | | Reactor Inlet Reactants (kmol/hr) | React_Converted / Single_Pass_Conv | 5,000.00 kmol/hr | - **Formula (Inert-Controlled Recycle Purge & Overall Synthesis Conversion Formula)**: `=LET(fr_f, B2, yi_0, B3, yi_l, B4, xs_p, B5, IF(OR(fr_f <= 0, yi_0 <= 0, yi_l <= yi_0, yi_l >= 0.5, xs_p <= 0.02, xs_p > 0.6), "Invalid Loop Input", LET(rc_f, fr_f * (1 - yi_0), pg_t, (fr_f * yi_0) / yi_l, pg_r, pg_t * (1 - yi_l), ROUND(((rc_f - pg_r) / rc_f) * 100, 2))))` - **Formula (Over-Purging Catalyst Protection Tradeoff Check (Set Max Loop Inert = 0.05))**: `=IF(ISTEXT(E3), E3, LET(rc_f, B2 * (1 - B3), pg_r, ((B2 * B3) / B4) * (1 - B4), ROUND((((rc_f - pg_r) / 2) * 17) / 1000, 2)))` ### Habraken Open-Building Support vs Infill Lifecycle Cost - **URL**: https://sheets.arte-soft.com/en/learn/habraken-open-building-support-vs-infill-lifecycle-cost-formula/ - **Summary**: Compare John Habraken Open-Building Decoupled Support + Modular Infill Cumulative Lifecycle Cost against Entangled Monolithic Renovation Tear-Out Penalties, Circular Demolition Savings, and Annualized Cost. *Table — Eliminate destructive gut-renovation penalties by decoupling Base-Building Support from Tenant Infill!:* | Open-Building Lifecycle Metric ($30M Support, $12M Infill, 15-Yr Cycle, 35% Penalty, 75 Yr) | Formula | Verified Output | | --- | --- | --- | | Open-Building 75-Yr Cost ($M) | Support + Infill * (Horizon / Cycle) | $90.00M ($102.00M @ 12.5-Yr Churn) | | Entangled Monolithic 75-Yr Cost | Support + Infill + N_rep*Infill*(1+p_demo) | $106.80M ($123.00M @ 12.5-Yr) | | Decoupling Tear-Out Savings ($M) | Monolithic_Cost - OpenBuilding_Cost | $16.80M ($21.00M @ 12.5-Yr) | | Annualized Open-Building ($M/yr) | OpenBuilding_Total_Cost / Horizon_Yrs | $1.20M/yr | - **Formula (Habraken Open-Building vs Entangled Lifecycle Savings Formula)**: `=LET(sp_c, B2, in_c, B3, cy_y, B4, dm_p, B5, hr_y, B6, IF(OR(sp_c <= 0, in_c <= 0, cy_y <= 0, cy_y > hr_y, dm_p < 0), "Invalid Building Lifecycle Input", LET(n_cy, hr_y / cy_y, ob_t, sp_c + n_cy * in_c, mn_t, sp_c + in_c + (n_cy - 1) * in_c * (1 + dm_p), ROUND(mn_t - ob_t, 2))))` - **Formula (Accelerated 12.5-Year Tenant-Churn Sensitivity Check)**: `=IF(ISTEXT(E4), E4, ROUND(E2 / B6, 2))` ### HACOR Score (0–25) for Noninvasive Ventilation (NIV) Failure Risk - **URL**: https://sheets.arte-soft.com/en/learn/hacor-score-noninvasive-ventilation-niv-failure-intubation-risk/ - **Summary**: Calculate Jun Duan’s 5-component bedside HACOR Score (Heart rate 0–1, Acidosis pH 0–4, Consciousness GCS 0–10, Oxygenation P/F 0–6, Respiratory rate 0–4) at 1 hour of NIV to flag > 5 points for timely endotracheal intubation. *Table — Preventing lethal delayed intubation during BiPAP / NIV trials!:* | 1-Hour Bedside HACOR Total (0–25) | NIV Failure Probability | Respiratory ICU Action | | --- | --- | --- | | 0 – 5 Points (e.g., 0+0+0+3+1 = 4 pts) | Low Risk (~18% Failure) | Continue NIV & Reassess at 12–24h | | > 5 Points (e.g., 1+2+0+4+2 = 9 pts) | High Risk (>80% NIV Failure!) | Prepare Early Endotracheal Intubation | | > 10 Points (Severe Encephalopathy / Acidosis) | Very High Failure (>90%) | Immediate Airway Control Indicated | - **Formula (Total 5-Domain Bedside HACOR Score (0–25))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 4, B4 < 0, B4 > 10, B5 < 0, B5 > 6, B6 < 0, B6 > 4), "Invalid HACOR Subscore", SUM(B2:B6))` - **Formula (1-Hour HACOR > 5 Early Intubation Alert)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 4, B4 < 0, B4 > 10, B5 < 0, B5 > 6, B6 < 0, B6 > 4), "Invalid HACOR Subscore", IF(SUM(B2:B6) > 5, "High NIV Failure Risk (>5: Consider Early Intubation)", "Low NIV Failure Risk (<=5: Continue NIV & Monitor)"))` ### Hagen-Poiseuille Laminar Flow formula: R^4 radius law & hydraulic resistance - **URL**: https://sheets.arte-soft.com/en/learn/hagen-poiseuille-laminar-pipe-flow-and-viscosity/ - **Summary**: Calculate ideal fully developed laminar flow, hydraulic resistance and a Reynolds-number applicability check for a straight round tube. *Table — Radius-to-the-fourth scaling within the laminar model:* | Capillary Parameter | Cell | SI Input | Flow Output | | --- | --- | --- | --- | | Internal Radius R (m) | B2 | 0.002 m (2 mm) | R^4 = 1.6E-11 m^4 | | Pressure Drop dP (Pa) | B3 | 100 Pa | Driving pressure head | | Viscosity mu & Length L | B4 = 0.001 Pa*s, B5 = 0.5 m | Assumed constant viscosity, 0.5 m tube | 8 * mu * L = 0.004 | | Flow Rate Q (mL/s) | Poiseuille Law | 0.4 * PI() = 1.2566 mL/s | At radius1mm:0.0785mL/s | - **Formula (Hagen-Poiseuille laminar flow rate in mL/s (cm^3/s))**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",IF(B6*ABS(B3)*B2^3/(4*B4^2*B5)>=2000,"Outside laminar model",ROUND(1000000*PI()*B2^4*B3/(8*B4*B5),4)))` - **Formula (Hydraulic resistance in Pa·s/m³)**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",ROUND((8 * B4 * B5) / (PI() * (B2 ^ 4)), 0))` - **Formula (Check predicted Reynolds number)**: `=IF(OR(COUNT(B2:B6)<>5,B2<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",ROUND(B6*ABS(B3)*B2^3/(4*B4^2*B5),2))` ### Haider & Levenspiel (1989) Drag Coefficient C_D Formula: Spherical & Non-Spherical Particles - **URL**: https://sheets.arte-soft.com/en/learn/haider-levenspiel-nonspherical-particle-drag-coefficient-sphericity/ - **Summary**: Calculate fluid-particle Drag Coefficient C_D across Stokes, intermediate, and Newton turbulent regimes (Re < 260,000) for spheres (phi = 1) and angular catalyst, mineral, or biomass particles (0.2 <= phi < 1) via A. Haider and Octave Levenspiel (1989). *Table — Predict drag on cubes, flakes, crushed minerals, and catalyst pellets via Wadell Sphericity phi!:* | Particle Shape & Wadell Sphericity phi | Creeping Re = 0.5 Drag C_D | Transitional Re = 50 Drag C_D | Turbulent Re = 1,000 Drag C_D | | --- | --- | --- | --- | | Smooth Sphere (phi = 1.000, Eq. 6) | 49.9 | 1.56 | 0.472 (Newton ~0.44) | | Isometric Cube (phi = 0.806, Eq. 11) | 53.0 | 2.57 | 1.217 (2.6x Sphere Drag!) | | Angular Crushed Mineral (phi = 0.670) | 57.6 | 3.98 | 2.350 (5.0x Sphere Drag!) | - **Formula (Smooth-Sphere Limit (phi = 1.0) Haider-Levenspiel Drag Coefficient C_D)**: `=IF(OR(B2 <= 0, B2 >= 260000), "Requires Sub-Critical Particle Reynolds Number 0 < Re < 260,000", ROUND((24 / B2) * (1 + 0.1806 * (B2 ^ 0.6529)) + 0.4251 / (1 + 6880.95 / B2), 4))` - **Formula (General Non-Spherical Haider-Levenspiel (1989) Drag Coefficient C_D(Re, phi))**: `=IF(OR(B2 <= 0, B2 >= 260000, B3 < 0.2, B3 > 1), "Requires 0 < Re < 260,000 and Sphericity 0.20 <= phi <= 1.00", ROUND((24 / B2) * (1 + EXP(2.3288 - 6.4581 * B3 + 2.4486 * (B3 ^ 2)) * (B2 ^ (0.0964 + 0.5565 * B3))) + EXP(4.905 - 13.8944 * B3 + 18.4222 * (B3 ^ 2) - 10.2599 * (B3 ^ 3)) / (1 + EXP(1.4681 + 12.2584 * B3 - 20.7322 * (B3 ^ 2) + 15.8855 * (B3 ^ 3)) / B2), 4))` ### Haldane Substrate-Inhibition Enzyme & Bioreactor Kinetics Formula - **URL**: https://sheets.arte-soft.com/en/learn/haldane-substrate-inhibition-enzyme-and-bioreactor-kinetics/ - **Summary**: Explore a substrate-inhibition rate curve, its maximizing concentration and its actual peak. Distinguish the fitted rate-scale parameter from the peak and from a reactor feed concentration. - **Formula (Evaluate the rate at the current substrate concentration)**: `=IF(B7<>"OK",B7,IF(B8<>"OK",B8,B2*B5/(B3+B5+B5^2/B4)))` - **Formula (Find the maximum of this curve)**: `=IF(B7<>"OK",B7,B2/(1+2*SQRT(B3/B4)))` ### Hall Voltage, Single-Carrier Density & Seebeck Thermoelectric ZT - **URL**: https://sheets.arte-soft.com/en/learn/hall-effect-voltage-carrier-density-and-seebeck-thermoelectric/ - **Summary**: Calculate a simple transverse Hall voltage and single-carrier density estimate, then explore an independent constant-coefficient Seebeck voltage and dimensionless material ZT. - **Formula (Hall voltage in volts, D2)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric Hall inputs",IF(B5<=0,"Thickness must be positive",B2*B3*B4/B5))` - **Formula (Single-carrier number density in m⁻³, D3)**: `=IF(COUNT(B2)<>1,"Enter numeric Hall coefficient",IF(B2=0,"Carrier density undefined for zero Hall coefficient",1/(ABS(B2)*1.602176634E-19)))` - **Formula (Open-circuit Seebeck voltage in volts, D4)**: `=IF(COUNT(B6,B9:B10)<>3,"Enter numeric Seebeck and temperature inputs",IF(B9-ABS(B10)/2<=0,"Both endpoint temperatures must be positive Kelvin",B6*B10))` - **Formula (Material figure of merit ZT, D5)**: `=IF(COUNT(B6:B9)<>4,"Enter numeric thermoelectric inputs",IF(MIN(B7:B9)<=0,"Conductivities and Kelvin temperature must be positive",B6^2*B7*B9/B8))` ### Hall-Petch Grain-Size Strengthening & Alloy Yield Strength Formula - **URL**: https://sheets.arte-soft.com/en/learn/hall-petch-grain-boundary-yield-strength-metallurgy-formula/ - **Summary**: Calculate polycrystalline metal yield strength sigma_y = sigma_0 + k_y / SQRT(d) (MPa) from lattice friction stress sigma_0, Hall-Petch locking coefficient k_y (MPa*m^0.5), and average grain diameter d (m). *Table — Quantify why refining metal grain size boosts yield strength without losing ductility!:* | Microstructure Condition (Steel: sigma_0 = 70 MPa, k_y = 0.60 MPa·m^0.5) | Grain Size d (um / m) | Boundary Term k_y / SQRT(d) | Yield Strength sigma_y (MPa) | | --- | --- | --- | --- | | Coarse Annealed Grain | 100 um (0.000100 m) | +60.0 MPa | 130.0 MPa | | Normalized Structural Steel | 25 um (0.000025 m) | +120.0 MPa | 190.0 MPa | | Thermomechanically Refined HSLA | 4 um (0.000004 m) | +300.0 MPa | 370.0 MPa (2.85x stronger!) | - **Formula (Hall-Petch Yield Strength sigma_y = sigma_0 + k_y / SQRT(d) (MPa))**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0), "Invalid Metallurgical Input", IF(B4 < 1E-8, "Nanocrystalline Regime (< 10 nm Inverse Hall-Petch)", ROUND(B2 + (B3 / SQRT(B4)), 2)))` - **Formula (Required Maximum Grain Size d_max (Micrometers) to Meet Target Yield Strength)**: `=IF(B5 <= B2, "Target Already Met by Lattice Stress", ROUND(((B3 / (B5 - B2)) ^ 2) * 1000000, 2))` ### Rosenbluth / Hall-Tideman Index (HTI) Formula: Rank-Weighted Market Concentration - **URL**: https://sheets.arte-soft.com/en/learn/hall-tideman-and-rosenbluth-rank-weighted-market-concentration/ - **Summary**: Measure antitrust market concentration with full sensitivity to small-fringe competitors using Gideon Rosenbluth (1955) and Marshall Hall & Nicolaus Tideman’s (1967) rank-weighted index HTI = 1 / (2 * SUM(i * s_i) - 1). *Table — Why HHI ignores the number of small fringe competitors while Hall-Tideman penalizes entry barriers directly!:* | Industry Structure (Descending Shares s_1 >= ... >= s_5) | Weighted Rank Sum SUM(i * s_i) | Hall-Tideman HTI & Equivalent Firms 1/HTI | | --- | --- | --- | | Dominant Leader + Fringe [0.50, 0.25, 0.15, 0.06, 0.04] | 1.8900 | HTI = 0.3597 (Equivalent to 2.78 Equal Firms) | | 5 Equal Competitors [0.20, 0.20, 0.20, 0.20, 0.20] | 3.0000 | HTI = 0.2000 (1 / 5 = 5.00 Equal Firms) | | Near-Monopoly [0.92, 0.04, 0.02, 0.01, 0.01] | 1.1500 | HTI = 0.7692 (Equivalent to 1.30 Firms) | - **Formula (Hall-Tideman / Rosenbluth Concentration Index HTI = 1 / (2 * SUMPRODUCT(Ranks, Shares) - 1))**: `=IF(OR(SUM(B2:B6) <= 0, MIN(B2:B6) < 0, B2 < B3, B3 < B4, B4 < B5, B5 < B6), "Sort Revenues Descending (Rank 1 = Largest) & Positive Total", ROUND(1 / (2 * (SUMPRODUCT(A2:A6, B2:B6) / SUM(B2:B6)) - 1), 4))` - **Formula (Numbers-Equivalent Equal-Sized Firms N_eq = 1 / HTI = 2 * SUM(i * s_i) - 1)**: `=IF(OR(SUM(B2:B6) <= 0, MIN(B2:B6) < 0, B2 < B3, B3 < B4, B4 < B5, B5 < B6), "Sort Revenues Descending (Rank 1 = Largest) & Positive Total", ROUND(2 * (SUMPRODUCT(A2:A6, B2:B6) / SUM(B2:B6)) - 1, 2))` ### Hamada Equation formula: unlever peer Beta & relever to target Debt/Equity - **URL**: https://sheets.arte-soft.com/en/learn/hamada-equation-unlevered-and-relevered-equity-beta/ - **Summary**: Strip financial leverage out of comparable-company betas via Beta_U = Beta_L / (1 + (1 - Tax)*D/E) and relever to your valuation target capital structure. *Table — Adjust an estimated equity beta for financial leverage:* | Valuation Input / Step | Cell | Example Value | Beta Impact | | --- | --- | --- | --- | | Peer Observed Levered Beta | B2 | 1.38 | Includes peer debt risk | | Peer D/E Ratio & Tax Rate | B3 = 0.50, B4 = 0.24 | 1 + (1 - 0.24)*0.50 = 1.38 | After-tax leverage factor | | Unlevered Asset Beta (Beta_U) | B2 / 1.38 | 1.00 | Estimated unlevered beta under model assumptions | | Target D/E ratio (B5) | 1.00 (50% Debt / 50% Eq) | 1.00 * (1 + 0.76 * 1.00) | Relevered Beta = 1.76! | - **Formula (Hamada Unlevered (Asset) Beta formula)**: `=IF(OR(COUNT(B2:B4)<>3,B3<0,B4<0,B4>1),"Invalid inputs",ROUND(B2 / (1 + (1 - B4) * B3), 4))` - **Formula (Single-cell Unlever & Relever to Target D/E (B5) formula)**: `=IF(OR(COUNT(B2:B5)<>4,B3<0,B5<0,B4<0,B4>1),"Invalid inputs",LET(bu, B2 / (1 + (1 - B4) * B3), ROUND(bu * (1 + (1 - B4) * B5), 4)))` ### Hankinson Wood Grain-Angle Bearing Strength Formula - **URL**: https://sheets.arte-soft.com/en/learn/hankinson-orthotropic-wood-and-glulam-grain-angle-bearing-strength-formula/ - **Summary**: Calculate NDS Hankinson Inclined-to-Grain Bearing Strength F_theta (MPa), Retained Parallel Strength (%), Allowable Joint Bearing Load (kN), and Naive Linear Error (MPa). *Table — Never linearly interpolate timber strength between 0° and 90°—wood crushes sideways like bundled drinking straws at 35°!:* | AWC NDS Hankinson Timber KPI (Fc=13.5 MPa, Fc_perp=3.8 MPa, theta=35°, Ab=9,600 mm²) | Formula | Verified Output | | --- | --- | --- | | Hankinson Strength F_theta (MPa) | (Fc * Fcp) / (Fc*SIN(rad)^2 + Fcp*COS(rad)^2) | 7.34 MPa (4.63 MPa @ steep 60° pitch) | | Retained Parallel Strength (%) | (Hankinson_F_theta / Parallel_Fc) * 100 | 54.35% (34.31% @ steep 60° pitch) | | Allowable Notch Bearing Load (kN) | (Hankinson_F_theta_MPa * Area_mm2) / 1000 | 70.44 kN (44.47 kN @ steep 60° pitch) | | Naive Linear Interpolation (MPa) | Fc - (Fc - Fcp) * (Angle_deg / 90) (UNSAFE!) | 9.73 MPa (+32.6% unsafe overprediction!) | - **Formula (AWC NDS Hankinson Orthotropic Grain-Angle Bearing Formula)**: `=LET(fc_p, B2, fp_p, B3, ag_d, B4, ab_m, B5, IF(OR(fp_p <= 0.5, fc_p <= fp_p, ag_d < 0, ag_d > 90, ab_m <= 100), "Invalid Timber Input", ROUND(fc_p - (fc_p - fp_p) * (ag_d / 90), 2)))` - **Formula (Steep 60° A-Frame Strut Side-Grain Crushing Check (Set Grain Angle B4 = 60°))**: `=IF(ISTEXT(E5), E5, LET(rd_a, B4 * (PI() / 180), ROUND((B2 * B3) / (B2 * (SIN(rd_a) ^ 2) + B3 * (COS(rd_a) ^ 2)), 2)))` ### Hannah-Kay Generalized Concentration Index HK(alpha) Formula: Numbers-Equivalent Firms - **URL**: https://sheets.arte-soft.com/en/learn/hannah-kay-generalized-entropy-concentration-index-alpha-formula/ - **Summary**: Unify Shannon Entropy (alpha -> 1), Herfindahl-Hirschman 1/HHI (alpha = 2), and large-firm dominance weighting in a single numbers-equivalent market structure formula: N_HK(alpha) = (SUM(s_i^alpha))^(1 / (1 - alpha)). *Table — One Rényi-entropy parameter alpha unifies Firm Count (alpha=0), Entropy (alpha->1), and 1/HHI (alpha=2)!:* | Sensitivity Parameter alpha on Shares [0.50, 0.25, 0.15, 0.10] | Hannah-Kay N_HK(alpha) Equivalent Firms | Concentration Ratio 1 / N_HK(alpha) | | --- | --- | --- | | alpha = 0.5 (Emphasizes Fringe Presence) | 3.6505 Equal Firms | 0.2739 | | alpha = 1.0 (Shannon Entropy Limit EXP(-SUM s*LN s)) | 3.3467 Equal Firms | 0.2988 | | alpha = 2.0 (Exact Reciprocal of HHI = 0.3450) | 2.8986 Equal Firms | 0.3450 (= HHI!) | | alpha = 3.0 (Dominant-Firm Sensitivity) | 2.6261 Equal Firms | 0.3808 | - **Formula (Hannah-Kay Numbers-Equivalent Firm Count N_HK(alpha) (Includes Exact alpha = 1 Shannon Limit))**: `=IF(OR(MIN(B2:B5) <= 0, D2 < 0), "Requires Positive Firm Revenues & alpha >= 0", IF(D2 = 1, ROUND(EXP(-((B2 / SUM(B2:B5)) * LN(B2 / SUM(B2:B5)) + (B3 / SUM(B2:B5)) * LN(B3 / SUM(B2:B5)) + (B4 / SUM(B2:B5)) * LN(B4 / SUM(B2:B5)) + (B5 / SUM(B2:B5)) * LN(B5 / SUM(B2:B5)))), 4), ROUND((SUMPRODUCT((B2:B5 / SUM(B2:B5)) ^ D2)) ^ (1 / (1 - D2)), 4)))` - **Formula (Hannah-Kay Generalized Concentration Ratio 1 / N_HK(alpha))**: `=IF(OR(MIN(B2:B5) <= 0, D2 < 0), "Requires Positive Firm Revenues & alpha >= 0", IF(D2 = 1, ROUND(1 / EXP(-((B2 / SUM(B2:B5)) * LN(B2 / SUM(B2:B5)) + (B3 / SUM(B2:B5)) * LN(B3 / SUM(B2:B5)) + (B4 / SUM(B2:B5)) * LN(B4 / SUM(B2:B5)) + (B5 / SUM(B2:B5)) * LN(B5 / SUM(B2:B5)))), 4), ROUND(1 / ((SUMPRODUCT((B2:B5 / SUM(B2:B5)) ^ D2)) ^ (1 / (1 - D2))), 4)))` ### Hansen-Jagannathan Bound & Equity Premium Puzzle - **URL**: https://sheets.arte-soft.com/en/learn/hansen-jagannathan-sdf-volatility-bound-and-equity-premium-puzzle/ - **Summary**: Test asset-pricing pricing kernels against Lars Peter Hansen and Ravi Jagannathan’s (1991) lower bound sigma(M) / E[M] >= ABS(E[R_e]) / sigma(R_e) and quantify Mehra-Prescott implied risk aversion. *Table — See in 4 arithmetic lines why smooth aggregate consumption cannot explain historical equity Sharpe ratios!:* | Macro-Finance Kernel Metric (E[R_e]=6.4%, sigma_R=16%, R_f=1%, sigma_c=1.6%) | Formula | Verified Output | | --- | --- | --- | | HJ Lower Bound on sigma(M) / E[M] | ABS(E[R_e]) / sigma_R | 0.4000 (Annual Sharpe Ratio) | | Minimum Unscaled Kernel SD sigma(M)_min | HJ_Ratio / (1 + R_f) | 0.3960 | | CCAPM Kernel Ratio at gamma = 2.50 | gamma_test * sigma_c | 0.0400 (Fails Bound by 10x!) | | Mehra-Prescott Implied Min CRRA (gamma_min) | HJ_Ratio / sigma_c | 25.00 (Equity Premium Puzzle!) | - **Formula (Hansen-Jagannathan Minimum Pricing-Kernel Volatility sigma(M)_min Formula)**: `=LET(er_ex, B2, sg_r, B3, rf_rt, B4, IF(OR(sg_r <= 0, rf_rt <= -1), "Invalid Asset Pricing Input", ROUND((ABS(er_ex) / sg_r) / (1 + rf_rt), 4)))` - **Formula (Mehra-Prescott Implied Minimum CRRA Risk Aversion & Bound Pass/Fail Formula)**: `=LET(er_ex, B2, sg_r, B3, sg_c, B5, IF(OR(sg_r <= 0, sg_c <= 0), "Invalid Asset Pricing Input", ROUND((ABS(er_ex) / sg_r) / sg_c, 2)))` ### Hantush-Jacob Leaky Aquifer Formula: Leakage Factor B, Aquitard Resistance c & Steady Drawdown - **URL**: https://sheets.arte-soft.com/en/learn/hantush-jacob-leaky-confined-aquifer-leakage-factor-and-drawdown/ - **Summary**: Analyze semi-confined ("leaky") pumping wells using Mahdi S. Hantush and C. E. Jacob’s (1955) Characteristic Leakage Length B = SQRT(T * b_prime / K_prime), Hydraulic Resistance c = b_prime / K_prime, and De Glee steady drawdown. *Table — Why real confined cones of depression stabilize once vertical aquitard leakage balances well pumping Q!:* | Leaky Aquifer Quantity (Q = 1,200 m^3/d, T = 300 m^2/d, b_prime = 6 m, K_prime = 0.002 m/d) | Formula | Evaluated Value | | --- | --- | --- | | Aquitard Hydraulic Resistance c (days) | b_prime / K_prime | 3,000 days | | Hantush Leakage Factor B (meters) | SQRT(T * b_prime / K_prime) | 948.68 m | | De Glee / Hantush Steady Drawdown at r = 25 m (r/B = 0.026) | (Q / (2*PI*T)) * LN(1.123 * B / r) | 2.389 m | - **Formula (Hantush-Jacob Characteristic Leakage Factor B (m) = SQRT(T * b_prime / K_prime))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Requires Transmissivity T > 0, b_prime > 0, and K_prime > 0", ROUND(SQRT(B2 * B3 / B4), 2))` - **Formula (Hantush Near-Well Steady-State Leaky Drawdown s_steady (m, Valid for r / B <= 0.10))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Leaky Aquifer Inputs", IF(B6 / SQRT(B2 * B3 / B4) > 0.1, "r / B > 0.10: Use Full Bessel K_0(r/B) Curve", ROUND((B5 / (2 * PI() * B2)) * LN(1.123 * SQRT(B2 * B3 / B4) / B6), 3)))` ### Happy Birthday & Work Anniversary Alert Formula (MONTH & DAY) - **URL**: https://sheets.arte-soft.com/en/learn/happy-birthday-or-work-anniversary-today-alert-month-day/ - **Summary**: Build an annual reminder from numeric dates, with an explicit February 28 policy for leap-day anniversaries in common years and calendar-day comparisons for timestamps. - **Formula (Choose a leap-day policy)**: `=IF(COUNT(B2,D2)<>2,"Enter numeric dates",IF(OR(B2<1,D2<1),"Enter valid date serials",IF(INT(D2)= 1), "Invalid Wedge Input", ROUND(0.5 * eta_q * (tau_w^2) * exp_0, 2)))` - **Formula (Marginal Cost of Public Funds MCPF = (1 - eta * tau) / (1 - 2 * eta * tau) Formula)**: `=LET(exp_0, B2, eta_q, B3, tau_w, B4, IF(OR(exp_0 <= 0, eta_q < 0, tau_w < 0), "Invalid Wedge Input", IF(2 * eta_q * tau_w >= 1, "Past Revenue Peak (Require 2*eta*tau < 1)", ROUND((1 - eta_q * tau_w) / (1 - 2 * eta_q * tau_w), 4))))` ### Hard-Rock TBM Cutterhead Thrust, Torque & Daily Advance - **URL**: https://sheets.arte-soft.com/en/learn/hard-rock-tbm-disc-cutter-penetration-cutterhead-thrust-torque-and-advance-rate/ - **Summary**: Calculate Total Cutterhead Normal Thrust (MN), Cutterhead Drive Torque (MN·m), Net Boring Rate of Penetration ROP (m/h), and Daily Utilization-Adjusted Tunnel Advance (m/d). *Table — Entering 260 MPa quartzite cuts TBM disc penetration from 7.2 to 2.4 mm/rev while abrasive cutter changes slash shift utilization to 28%—collapsing advance from 32.7 to 7.3 m/day!:* | CSM / NTNU Hard-Rock TBM KPI (D=6.8 m, 44 Cutters, 7.5 RPM) | Formula | Verified Output | | --- | --- | --- | | Total Cutterhead Thrust (MN) | (Cutter_Count_N * Normal_Fn_kN) / 1000 | 10.78 MN (12.54 MN @ 285 kN max ring load) | | Cutterhead Drive Torque (MN·m) | (N * (Fn * RC) * (0.30 * Diam_D)) / 1000 | 1.87 MN·m (1.41 MN·m shallow glazed cut) | | Instantaneous Net ROP (m/h) | (Penetration_mm_rev * RPM * 60) / 1000 | 3.24 m/h (1.08 m/h in 260 MPa quartzite) | | Daily Tunnel Advance (m/day) | Net_ROP_m_hr * 24 * (Utilization_Pct / 100) | 32.7 m/d (7.3 m/d schedule stall!) | - **Formula (CSM / NTNU Hard-Rock TBM Disc Thrust, Moment Arm & Utilization Advance Formula)**: `=LET(db_m, B2, nc_i, B3, fn_k, B4, rc_f, B5, pn_m, B6, nr_p, B7, ut_p, B8, rp_h, (pn_m * nr_p * 60) / 1000, IF(OR(db_m < 2.5, db_m > 16, nc_i < 15, nc_i > 110, fn_k < 80, fn_k > 350, rc_f < 0.03, rc_f > 0.2, pn_m < 0.5, pn_m > 20, nr_p < 1.5, nr_p > 15, ut_p < 5, ut_p > 75), "Invalid TBM Input", ROUND(rp_h * 24 * (ut_p / 100), 1)))` - **Formula (Massive Quartzite Dyke (`F_n = 285` kN, `p = 2.4` mm/rev, `U = 28%`) Schedule Double-Hit Check)**: `=IF(ISTEXT(E5), E5, ROUND((B3 * (B4 * B5) * (0.3 * B2)) / 1000, 2))` ### Hardy-Weinberg Equilibrium formula: allele & heterozygous carrier frequency (2pq) - **URL**: https://sheets.arte-soft.com/en/learn/hardy-weinberg-equilibrium-allele-and-carrier-frequency/ - **Summary**: Explore two-allele genotype proportions under Hardy–Weinberg assumptions using an assumed recessive homozygote frequency. *Table — From an assumed recessive homozygote frequency to allele proportions:* | Genetic Equilibrium Quantity (Observed q^2 = 0.0004) | Formula | Population Share | | --- | --- | --- | | Recessive Allele Frequency (q) | SQRT(q^2) = SQRT(0.0004) | 0.0200 (2.00%) | | Other allele frequency (p) | 1 - q = 1 - 0.02 | 0.9800 (98.00%) | | Heterozygous Carrier Frequency (2pq) | 2 * 0.98 * 0.02 | 0.0392 (3.92% — ~1 in 25!) | | Homozygous Dominant Frequency (p^2) | 0.98 ^ 2 | 0.9604 (96.04%) | - **Formula (Calculate heterozygous carrier frequency (2pq) from recessive incidence (q^2))**: `=IF(OR(NOT(ISNUMBER(A2)),A2<0,A2>1),"Invalid inputs",LET(q, SQRT(A2), p, 1 - q, ROUND(2 * p * q, 4)))` - **Formula (Verify homozygous dominant genotype frequency (p^2))**: `=IF(OR(NOT(ISNUMBER(A2)),A2<0,A2>1),"Invalid inputs",LET(q, SQRT(A2), ROUND((1 - q) ^ 2, 4)))` ### Harmless Acute Pancreatitis Score (HAPS) Admission Triage Calculator - **URL**: https://sheets.arte-soft.com/en/learn/harmless-acute-pancreatitis-score-haps-lankisch-triage-formula/ - **Summary**: Evaluate Lankisch’s 30-minute Harmless Acute Pancreatitis Score (HAPS: no rebound/guarding, normal sex-specific hematocrit, creatinine <= 2.0 mg/dL) to predict a benign non-necrotizing ward course with 98% specificity. *Table — Identifying mild acute pancreatitis within 30 minutes of ED arrival—without waiting 48 hours for Ranson!:* | HAPS Admission Parameter | Favorable "Harmless" Rule | Adverse Risk Flag (+1) | Pathophysiologic Meaning | | --- | --- | --- | --- | | Abdominal Exam | No Rebound or Guarding (0) | Rebound / Guarding Present | Peritoneal Retroperitoneal Exudate | | Hematocrit (%) by Sex | Male <= 43.0% / Female <= 39.6% | Hemoconcentrated Above Cutoff | Intravascular Volume Depletion | | Serum Creatinine (mg/dL) | <= 2.0 mg/dL | > 2.0 mg/dL | Early Pre-Renal / Cytokine AKI | - **Formula (HAPS Adverse Risk Flag Count (0 = Harmless Course Predicted; 1 to 3 = Not Harmless))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, B4 <= 10, B4 > 75, B5 <= 0), "Invalid HAPS Inputs", B2 + IF(B3 = 1, IF(B4 > 43, 1, 0), IF(B4 > 39.6, 1, 0)) + IF(B5 > 2, 1, 0))` - **Formula (HAPS Clinical Triage Decision (98% Specificity Rule-In for Mild Course))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, B4 <= 10, B4 > 75, B5 <= 0), "Invalid HAPS Inputs", IF(B2 + IF(B3 = 1, IF(B4 > 43, 1, 0), IF(B4 > 39.6, 1, 0)) + IF(B5 > 2, 1, 0) = 0, "Harmless Course Predicted (0 Flags — 98% Specificity)", "Not Harmless (>=1 Flag — Close Fluid & Organ Monitoring)"))` ### Harmonic THD, True Power Factor & K-Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/harmonic-distortion-thd-true-power-factor-and-transformer-k-factor-formula/ - **Summary**: Calculate IEEE 519 Current Total Harmonic Distortion (THD_I), Total RMS Current, True Total Power Factor PF_disp / SQRT(1 + THD_I^2), and UL 1561 Transformer Eddy-Current K-Factor. *Table — Stop reading cos(phi_1) meters alone on nonlinear VFD and rectifier loads!:* | IEEE 519 / UL 1561 Metric (I1=80A, I5=48A, I7=36A, Displacement PF=0.95) | Formula | Verified Output | | --- | --- | --- | | Current Distortion Ratio THD_I | SQRT(I_5^2 + I_7^2) / I_1 | 0.7500 (75.00%; 0.0000 Linear) | | Total Feeder RMS Current (A) | SQRT(I_1^2 + I_5^2 + I_7^2) | 100.00 A (+25% Thermal Amps) | | True Total Power Factor PF_true | PF_disp * (I_1 / I_rms) | 0.7600 (0.9500 Linear) | | UL 1561 Transformer K-Factor | (I1^2*1 + I5^2*25 + I7^2*49) / Irms^2 | 12.75 (Specify K-13; 1.00 Linear) | - **Formula (UL 1561 Transformer Harmonic K-Factor Formula)**: `=LET(i_f1, B2, i_h5, B3, i_h7, B4, pf_d, B5, IF(OR(i_f1 <= 0, i_h5 < 0, i_h7 < 0, pf_d <= 0, pf_d > 1), "Invalid Harmonic Spectrum", LET(sm_2, (i_f1 ^ 2) + (i_h5 ^ 2) + (i_h7 ^ 2), wt_k, (i_f1 ^ 2) * 1 + (i_h5 ^ 2) * 25 + (i_h7 ^ 2) * 49, ROUND(wt_k / sm_2, 2))))` - **Formula (Active Harmonic Filter / Pure Sinusoidal Verification (I_5 = 0, I_7 = 0))**: `=IF(ISTEXT(E5), E5, ROUND(B5 * (B2 / E3), 4))` ### Harrell’s C-Index & Somers’ D_xy: Survival Model Concordance for Censored Data - **URL**: https://sheets.arte-soft.com/en/learn/harrell-c-index-concordance-censored-survival-pairs-formula/ - **Summary**: Calculate Frank Harrell’s Cox survival discrimination index C = (N_concordant + 0.5*N_tied) / N_permissible and Somers’ rank correlation D_xy = 2*C - 1. *Table — Generalizing ROC AUC to right-censored time-to-event oncology and cardiology cohorts!:* | Permissible Survival Pair Breakdown | Harrell’s C-Index (0.5 = Coin Flip) | Somers’ Rank Correlation D_xy | Prognostic Discrimination Tier | | --- | --- | --- | --- | | 1,420 Concordant / 340 Discordant / 80 Tied | 0.7935 | 0.5870 | Good Clinical Cox Discrimination | | 1,600 Concordant / 160 Discordant / 80 Tied | 0.8913 | 0.7826 | Excellent Biomarker Separation | | Zero Permissible Pairs (All Censored) | Error Guard | "No Permissible Event Pairs" | Zero-Event Guard | - **Formula (Harrell’s Censored Survival Concordance Index C)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B2 + B3 + B4 = 0), "No Permissible Event Pairs", ROUND((B2 + 0.5 * B4) / (B2 + B3 + B4), 4))` - **Formula (Somers’ Rank Correlation D_xy = 2 * C - 1)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B2 + B3 + B4 = 0), "No Permissible Event Pairs", ROUND(2 * ((B2 + 0.5 * B4) / (B2 + B3 + B4)) - 1, 4))` ### Harris-Benedict BMR Formula: Classic 1918 vs Revised Roza-Shizgal (1984) Equations - **URL**: https://sheets.arte-soft.com/en/learn/harris-benedict-revised-roza-shizgal-basal-metabolic-rate-formula/ - **Summary**: Calculate Basal Metabolic Rate (kcal/day) and Total Energy Expenditure using both the original J. Arthur Harris & Francis G. Benedict (1918) equations and Allan M. Roza & Harry M. Shizgal’s (1984) recalibrated equations. *Table — Compare original 1918 Harris-Benedict against Roza & Shizgal’s 1984 body-cell-mass recalibration!:* | Equation Version | Male Equation (W in kg, H in cm, A in yr) | Female Equation (W in kg, H in cm, A in yr) | | --- | --- | --- | | Classic Harris-Benedict (1918) | 66.473 + 13.7516*W + 5.0033*H - 6.755*A | 655.0955 + 9.5634*W + 1.8496*H - 4.6756*A | | Revised Roza-Shizgal (1984) | 88.362 + 13.397*W + 4.799*H - 5.677*A | 447.593 + 9.247*W + 3.098*H - 4.330*A | - **Formula (Revised Roza-Shizgal (1984) Basal Metabolic Rate BMR (kcal/day))**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "M", UPPER(TRIM(B2 & "")) <> "F"), B3 < 25, B3 > 300, B4 < 100, B4 > 250, B5 < 18, B5 > 120), "Invalid Sex (M/F), Weight, Height, or Adult Age", ROUND(IF(UPPER(TRIM(B2 & "")) = "M", 88.362 + 13.397 * B3 + 4.799 * B4 - 5.677 * B5, 447.593 + 9.247 * B3 + 3.098 * B4 - 4.33 * B5), 1))` - **Formula (Classic 1918 Harris-Benedict BMR (kcal/day) for Historical Protocol Comparison)**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "M", UPPER(TRIM(B2 & "")) <> "F"), B3 < 25, B3 > 300, B4 < 100, B4 > 250, B5 < 18, B5 > 120), "Invalid Sex (M/F), Weight, Height, or Adult Age", ROUND(IF(UPPER(TRIM(B2 & "")) = "M", 66.473 + 13.7516 * B3 + 5.0033 * B4 - 6.755 * B5, 655.0955 + 9.5634 * B3 + 1.8496 * B4 - 4.6756 * B5), 1))` ### Harris-Todaro Rural-Urban Migration & Unemployment Formula - **URL**: https://sheets.arte-soft.com/en/learn/harris-todaro-rural-urban-expected-wage-migration-equilibrium/ - **Summary**: Solve John Harris & Michael Todaro’s (1970) expected-wage migration equilibrium w_R = (L_M / L_U)*w_M, urban unemployment rate u* = 1 - w_R/w_M, and the Todaro job-creation paradox. *Table — Explain why rural migration continues despite high urban unemployment — and quantify the Todaro Paradox!:* | Harris-Todaro Metric (w_R=120, w_M=200, L_M=300, L=1,000) | Formula | Verified Output | | --- | --- | --- | | Equilibrium Urban Labor Pool (L_U*) | MIN(L_tot, L_M * (w_M / w_R)) | 500.00 workers | | Urban Unemployed / Informal Pool | L_U* - L_M | 200.00 workers | | Equilibrium Urban Unemployment Rate (u*) | 1 - (L_M / L_U*) | 0.4000 (40.00%) | | Todaro Paradox Extra Unemployed / Job | (w_M / w_R) - 1 | +0.6667 unemployed / job | - **Formula (Equilibrium Urban Labor Pool L_U* & Unemployment Rate u* Formula)**: `=LET(w_r, B2, w_m, B3, l_m, B4, l_tot, B5, IF(OR(w_r <= 0, w_m < w_r, l_m <= 0, l_tot < l_m), "Invalid Harris-Todaro Input", LET(lu_eq, MIN(l_tot, l_m * (w_m / w_r)), ROUND(1 - (l_m / lu_eq), 4))))` - **Formula (Todaro Paradox Induced-Unemployment Multiplier (w_M / w_R - 1) Formula)**: `=LET(w_r, B2, w_m, B3, l_m, B4, l_tot, B5, IF(OR(w_r <= 0, w_m < w_r, l_m <= 0, l_tot < l_m), "Invalid Harris-Todaro Input", IF(l_m * (w_m / w_r) >= l_tot, 0, ROUND((w_m / w_r) - 1, 4))))` ### Harrod-Domar ICOR Growth & Financing Gap Formula - **URL**: https://sheets.arte-soft.com/en/learn/harrod-domar-icor-warranted-growth-and-financing-gap-formula/ - **Summary**: Calculate Harrod-Domar warranted GDP growth g_w = (s / ICOR) - delta, required gross investment share (g_target + delta) * ICOR, and Chenery-Strout external financing gap. *Table — Audit capital-efficiency ICOR assumptions and avoid forgetting capital depreciation delta!:* | Macro Financing Metric (GDP=250B, s=21%, ICOR=3.5, delta=4%, g*=5%) | Formula | Verified Output | | --- | --- | --- | | Self-Financed Warranted Growth (g_w) | (s / ICOR) - delta | 0.0200 (2.00% / yr) | | Required Gross Investment Share (i_req) | (g_target + delta) * ICOR | 0.3150 (31.50% of GDP) | | Saving / Investment Gap (% of GDP) | MAX(0, i_req - s) | 0.1050 (10.50% of GDP) | | Annual External Financing Shortfall ($B) | GDP * MAX(0, i_req - s) | 26.25 ($B / yr) | - **Formula (Harrod-Domar Depreciation-Adjusted Warranted Growth Formula)**: `=IF(OR(B3 < 0, B3 >= 1, B4 <= 0, B5 < 0, B5 >= 1), "Invalid Macro Input", ROUND((B3 / B4) - B5, 4))` - **Formula (Chenery-Strout Annual External Financing Shortfall Formula)**: `=LET(y_gdp, B2, s_dm, B3, ic_r, B4, dl_k, B5, g_tg, B6, IF(OR(y_gdp <= 0, s_dm < 0, s_dm >= 1, ic_r <= 0, dl_k < 0, dl_k >= 1, g_tg < -0.5), "Invalid Macro Input", LET(i_rq, (g_tg + dl_k) * ic_r, ROUND(y_gdp * MAX(0, i_rq - s_dm), 2))))` ### Harsanyi-Selten Risk Dominance (Stag Hunt) Formula - **URL**: https://sheets.arte-soft.com/en/learn/harsanyi-selten-risk-dominance-vs-payoff-dominance-stag-hunt/ - **Summary**: Calculate the Critical Trust Threshold p* = (D - C)/((A - B) + (D - C)) and Harsanyi-Selten (1988) risk-dominance margin in symmetric 2x2 Stag Hunt coordination games. *Table — Why teams get trapped in safe low-output equilibria even when everyone prefers the high-output outcome!:* | Stag Hunt Metric (A=10, C=0, B=8, D=7) | Formula | Verified Output | | --- | --- | --- | | Stag Deviation Loss (Gain to Matching Stag) | A - B | 2.00 | | Hare Deviation Loss (Safety Over Sucker C) | D - C | 7.00 | | Critical Trust Threshold (p*) | (D - C) / ((A - B) + (D - C)) | 0.7778 (77.78% Trust Required!) | | Harsanyi-Selten Risk-Dominance Regime | IF(p* < 0.5, "Stag", IF(p* > 0.5, "Hare", "Tie")) | Hare Risk-Dominant (p* > 0.50) | - **Formula (Critical Cooperation Belief Threshold p* Formula)**: `=LET(a_ss, B2, c_sh, B3, b_hs, B4, d_hh, B5, IF(OR(a_ss <= b_hs, d_hh <= c_sh), "Not a Coordination Game (Require A > B and D > C)", ROUND((d_hh - c_sh) / ((a_ss - b_hs) + (d_hh - c_sh)), 4)))` - **Formula (Harsanyi-Selten Risk-Dominant Equilibrium Selector Formula)**: `=LET(a_ss, B2, c_sh, B3, b_hs, B4, d_hh, B5, IF(OR(a_ss <= b_hs, d_hh <= c_sh), "Not a Coordination Game (Require A > B and D > C)", LET(m_st, (a_ss - b_hs) - (d_hh - c_sh), IF(m_st > 0, "Stag Risk-Dominant", IF(m_st < 0, "Hare Risk-Dominant", "Risk-Neutral Tie")))))` ### Hartung-Knapp-Sidik-Jonkman (HKSJ) Random-Effects Standard Error Formula - **URL**: https://sheets.arte-soft.com/en/learn/hartung-knapp-sidik-jonkman-random-effects-meta-analysis-se/ - **Summary**: Eliminate anti-conservative DerSimonian-Laird false positives in small-k meta-analyses using the Röver-Knapp truncated HKSJ variance factor q = MAX(1, [1/(k-1)] * Σ w_i*(y_i - μ_RE)²) and SE_HKSJ = SQRT(q / Σw_i*). *Table — Why Cochrane and IQWiG now mandate Hartung-Knapp over conventional DerSimonian-Laird Z-intervals when k <= 10!:* | k = 4 Trial Random-Effects Evidence Set (Σw* = 35.0) | HKSJ Scaling Factor q | Truncated SE_HKSJ = √(MAX(1,q)/Σw*) | Small-Sample Coverage | | --- | --- | --- | --- | | Dispersed Effects [-0.95, -0.55, -0.05, +0.35] | 2.7071 (> 1) | 0.2781 (1.65× wider than DL!) | Protects 95% coverage with t_3 | | Tightly Clustered Effects [-0.65, -0.42, -0.18, -0.05] | 0.5663 (< 1 -> MAX=1) | 0.1690 (Matches √(1/35)) | Röver-Knapp ad-hoc floor active | | Non-Positive Random-Effects Weights | Error Guard | "Weights Must Be Positive" | Variance Bounds Guard | - **Formula (Röver-Knapp Truncated HKSJ Standard Error SE_HKSJ = SQRT(MAX(1, q) / Σw*))**: `=IF(OR(MIN(C2:C5) <= 0, COUNT(B2:B5) < 2), "Weights Must Be Positive", ROUND(SQRT(MAX(1, SUM(D2:D5) / (COUNT(B2:B5) - 1)) / SUM(C2:C5)), 4))` - **Formula (Unadjusted Hartung-Knapp Dispersion Factor q & Pooled Effect μ̂_RE)**: `=IF(OR(MIN(C2:C5) <= 0, COUNT(B2:B5) < 2), "Weights Must Be Positive", ROUND(SUM(D2:D5) / (COUNT(B2:B5) - 1), 4))` ### Hartwick Rule & Genuine Saving (ANS) Formula - **URL**: https://sheets.arte-soft.com/en/learn/hartwick-rule-genuine-saving-adjusted-net-national-saving-formula/ - **Summary**: Calculate World Bank Adjusted Net Saving GNS - D_cap + E_edu - R_dep - D_pol and test John Hartwick’s (1977) wealth-sustainability reinvestment rule. *Table — Spot phantom GDP booms when resource depletion exceeds physical and human-capital investment!:* | National Wealth Accounting Line (GNI = 1,000) | Formula | Verified Output | | --- | --- | --- | | Conventional Net National Saving (NNS) | GNS - D_cap | +130.00 (+13.00% of GNI) | | Human-Capital Adjusted Saving | GNS - D_cap + E_edu | +175.00 | | Genuine Saving / Adjusted Net Saving (ANS) | GNS - D_cap + E_edu - R_dep - D_pol | -15.00 (Wealth Declining!) | | Genuine Saving Share of GNI | ANS / GNI | -0.0150 (-1.50% of GNI) | - **Formula (World Bank Genuine Saving (Adjusted Net Saving) Formula)**: `=LET(g_sv, B2, d_cp, B3, e_ed, B4, r_dp, B5, d_pl, B6, g_ni, B7, IF(OR(d_cp < 0, e_ed < 0, r_dp < 0, d_pl < 0, g_ni <= 0), "Invalid Wealth Account Input", ROUND(g_sv - d_cp + e_ed - r_dp - d_pl, 2)))` - **Formula (Genuine Saving Rate (% of GNI) & Hartwick Sustainability Test Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E3 / B7, 4))` ### Harvey-Bradshaw Index (HBI) for Crohn’s Disease Activity & Remission - **URL**: https://sheets.arte-soft.com/en/learn/harvey-bradshaw-index-hbi-crohns-disease-activity-remission-score/ - **Summary**: Calculate R. F. Harvey and J. M. Bradshaw’s single-day clinical Crohn’s Disease activity score across Well-Being (0–4), Abdominal Pain (0–3), Daily Liquid Stools, Abdominal Mass (0–3), and Extraintestinal Complications (< 5 Remission). *Table — Track Crohn’s biologic therapy response in one clinic visit without 7-day CDAI diaries!:* | Harvey-Bradshaw Total Score | Equivalent CDAI Range | Crohn’s Activity Tier | IBD Treat-to-Target Action | | --- | --- | --- | --- | | HBI 0–4 (e.g., 2) | CDAI < 150 | Clinical Remission | Maintain Biologic & Check Fecal Calprotectin | | HBI 5–7 / HBI 8–16 (e.g., 11) | CDAI 150–450 | Mild / Moderate Activity | Therapeutic Drug Monitoring & Optimization | | HBI > 16 | CDAI > 450 | Severe Crohn’s Flare | Urgent Steroid Bridge / Inpatient Evaluation | - **Formula (Total 5-Domain Harvey-Bradshaw Index (HBI))**: `=IF(OR(COUNT(B2:B6) < 5, B2 < 0, B2 > 4, B3 < 0, B3 > 3, B4 < 0, B5 < 0, B5 > 3, B6 < 0, B6 > 8), "Invalid HBI Subscore", SUM(B2:B6))` - **Formula (ECCO / STRIDE-II Crohn’s Clinical Activity Stratification)**: `=IF(OR(COUNT(B2:B6) < 5, B2 < 0, B2 > 4, B3 < 0, B3 > 3, B4 < 0, B5 < 0, B5 > 3, B6 < 0, B6 > 8), "Invalid HBI Subscore", IF(SUM(B2:B6) < 5, "Clinical Remission (HBI < 5)", IF(SUM(B2:B6) <= 7, "Mild Crohn’s Activity (HBI 5-7)", IF(SUM(B2:B6) <= 16, "Moderate Crohn’s Activity (HBI 8-16)", "Severe Crohn’s Flare (HBI > 16)"))))` ### HAS-BLED spreadsheet exercise: nine validated risk-factor flags - **URL**: https://sheets.arte-soft.com/en/learn/has-bled-major-bleeding-risk-score-anticoagulation/ - **Summary**: Practice summing nine binary flags and comparing a historical HAS-BLED review threshold, without making treatment decisions. - **Formula (Validate each binary input before summing)**: `=IF(COUNT(B2:B10)<>9,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1),AND(B9<>0,B9<>1),AND(B10<>0,B10<>1)),"Invalid inputs",SUM(B2:B10)))` - **Formula (Compare with the historical review threshold)**: `=IF(COUNT(B2:B10)<>9,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1),AND(B9<>0,B9<>1),AND(B10<>0,B10<>1)),"Invalid inputs",IF(SUM(B2:B10)>=3,"At or above review threshold (3)","Below review threshold (3)")))` ### Hasbrouck Information Share Bounds for Two-Venue Price Discovery - **URL**: https://sheets.arte-soft.com/en/learn/hasbrouck-information-share-and-effective-tick-microstructure-cost/ - **Summary**: Calculate Hasbrouck (1995) Cholesky upper, lower, and midpoint price-discovery information shares across two cointegrated trading venues and audit correlation sensitivity. *Table — Understand why correlated venue innovations require upper and lower Cholesky bounds:* | Hasbrouck Metric | Formula Expression | Sample Output (rho = 0.60) | | --- | --- | --- | | Random-Walk Variance var_rw | (psi1*sig1)^2 + 2*rho*psi1*psi2*sig1*sig2 + (psi2*sig2)^2 | 0.00832 | | Venue 1 Upper Bound (First) | (psi1*sig1 + rho*psi2*sig2)^2 / var_rw | 0.9308 (93.08%) | | Venue 1 Lower Bound (Second) | (psi1*sig1)^2 * (1 - rho^2) / var_rw | 0.3769 (37.69%) | | Midpoint Information Share | 0.5 * (IS1_upper + IS1_lower) | 0.6538 (65.38%) | - **Formula (Hasbrouck Midpoint Information Share Formula)**: `=LET(p_1, B2, p_2, B3, s_1, B4, s_2, B5, rho_v, B6, a_1, p_1 * s_1, a_2, p_2 * s_2, var_rw, a_1^2 + 2 * rho_v * a_1 * a_2 + a_2^2, IF(OR(ABS(rho_v) >= 1, s_1 <= 0, s_2 <= 0, var_rw <= 0), "Degenerate Covariance", LET(is_up, (a_1 + rho_v * a_2)^2 / var_rw, is_lo, (a_1^2 * (1 - rho_v^2)) / var_rw, ROUND(0.5 * (is_up + is_lo), 4))))` - **Formula (Bound-Width Diagnostic & Zero-Correlation Convergence Check)**: `=LET(a_1, B2 * B4, a_2, B3 * B5, rho_v, B6, var_rw, a_1^2 + 2 * rho_v * a_1 * a_2 + a_2^2, ROUND(((a_1 + rho_v * a_2)^2 - a_1^2 * (1 - rho_v^2)) / var_rw, 4))` ### Hausen Laminar Thermal Entry-Length Formula: Graetz Number & Pipe Nusselt - **URL**: https://sheets.arte-soft.com/en/learn/hausen-laminar-thermal-entry-length-pipe-nusselt-formula/ - **Summary**: Calculate length-averaged laminar tube Nusselt number Nu_D = 3.66 + 0.0668*Gz / (1 + 0.04*Gz^(2/3)) from Graetz number Gz = (D/L)*Re*Pr for constant wall temperature. *Table — Why assuming Nu_D = 3.66 severely underpredicts heat transfer in short viscous-liquid tubes!:* | Tube Length L (D = 0.025 m, Re = 1,600, Pr = 5.8) | Graetz Number Gz = (D/L)RePr | Hausen Average Nu_D | Enhancement Over 3.66 | | --- | --- | --- | --- | | L = 1.5 m (Standard Shell Pass) | 154.67 | 8.460 | 2.31× fully developed | | L = 0.5 m (Short Compact Core) | 464.00 | 12.783 | 3.49× entrance boost | | Turbulent or Invalid (Re >= 2300 or D <= 0) | Out of Laminar Regime | "Outside Laminar Pipe Regime" | Flow-Regime Guard | - **Formula (Hausen Length-Averaged Laminar Pipe Nusselt Number Nu_D)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= 2300, B5 <= 0), "Outside Laminar Pipe Regime", ROUND(3.66 + (0.0668 * ((B2 / B3) * B4 * B5)) / (1 + 0.04 * (((B2 / B3) * B4 * B5) ^ (2 / 3))), 3))` - **Formula (Dimensionless Graetz Number Gz = (D / L) * Re_D * Pr)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= 2300, B5 <= 0), "Outside Laminar Pipe Regime", ROUND((B2 / B3) * B4 * B5, 2))` ### Hausman Fixed-vs-Random-Effects Specification Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/hausman-fixed-vs-random-effects-specification-chi-square-formula/ - **Summary**: Test correlation between unobserved unit effects alpha_i and regressors X_it using Hausman’s (1978) H = (b_FE - b_RE)^2 / (SE_FE^2 - SE_RE^2) chi-square statistic. *Table — Understand why Var(b_FE - b_RE) simplifies cleanly to SE_FE^2 - SE_RE^2 under H0:* | Hausman Panel Diagnostic (df = 1) | Formula Expression | Sample Output | | --- | --- | --- | | FE - RE Slope Difference | b_FE - b_RE = 0.4200 - 0.5600 | -0.1400 | | Asymptotic Variance Difference | SE_FE^2 - SE_RE^2 = 0.0025 - 0.0009 | 0.0016 (SE_diff = 0.0400) | | Hausman Chi-Square Statistic H | (b_FE - b_RE)^2 / (SE_FE^2 - SE_RE^2) | 12.2500 (Z = -3.5000) | | 5% Specification Decision (3.8415) | IF(H >= 3.8415, "Reject RE: Use FE", "Retain RE") | Reject RE: Use FE | - **Formula (Hausman Chi-Square Specification Statistic H (df = 1) Formula)**: `=LET(b_fe, B2, se_fe, B3, b_re, B4, se_re, B5, v_dif, (se_fe^2) - (se_re^2), IF(OR(se_fe <= 0, se_re <= 0, v_dif <= 0), "Non-Positive Variance Diff (Use Mundlak)", ROUND(((b_fe - b_re)^2) / v_dif, 4)))` - **Formula (5% Chi-Square (df = 1) Estimator Selection Rule Formula)**: `=IF(ISNUMBER(E4), IF(E4 >= 3.8415, "Reject RE: Use FE", "Retain RE"), E4)` ### Calculate GPS distance between latitude and longitude coordinates - **URL**: https://sheets.arte-soft.com/en/learn/haversine-great-circle-lat-lon-distance/ - **Summary**: Compute great-circle distance in kilometers or miles with spherical law of cosines—clamping ACOS inside [-1, 1] for identical points. *Table — Convert degrees with RADIANS and clamp ACOS to avoid #NUM!:* | Origin (Lat1, Lon1) | Destination (Lat2, Lon2) | Kilometers | Miles | | --- | --- | --- | --- | | London (51.5074, -0.1278) | Paris (48.8566, 2.3522) | 343.56 | 213.48 | | London (51.5074, -0.1278) | London (51.5074, -0.1278) | 0 | 0 | - **Formula (Spherical distance formula in km and miles)**: `=LET(latRadA, RADIANS(A2), latRadB, RADIANS(C2), dL, RADIANS(D2 - B2), ROUND(6371 * ACOS(MEDIAN(-1, 1, SIN(latRadA)*SIN(latRadB) + COS(latRadA)*COS(latRadB)*COS(dL))), 2))` - **Formula (Statute miles variant (R = 3958.8 mi))**: `=LET(latRadA, RADIANS(A2), latRadB, RADIANS(C2), dL, RADIANS(D2 - B2), ROUND(3958.8 * ACOS(MEDIAN(-1, 1, SIN(latRadA)*SIN(latRadB) + COS(latRadA)*COS(latRadB)*COS(dL))), 2))` ### Hayashi Marginal q & CapEx Adjustment-Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/hayashi-marginal-q-convex-capital-adjustment-cost-investment-rate-formula/ - **Summary**: Calculate Hayashi’s CRS Marginal/Average q Ratio V / K, Optimal Investment-to-Capital Rate I / K = delta + (q - 1) / phi, Optimal Gross CapEx, and Convex Installation Friction Cost. *Table — Link observable Tobin’s Average Q to optimal CapEx intensity via Hayashi’s theorem!:* | Hayashi q-Investment Metric (K=$500M, V=$650M -> q=1.30, delta=10%, phi=5.0) | Formula | Verified Output | | --- | --- | --- | | CRS Marginal / Average q Ratio | Market_EV / Replacement_Capital_K | 1.3000 (1.0000 @ V=$500M) | | Optimal CapEx Intensity I / K | MAX(0, delta + (q - 1) / phi) | 0.1600 (16.00%; 10.00% @ q=1) | | Optimal Gross CapEx ($M) | (I / K) * K | $80.00M ($50.00M Maintenance @ q=1) | | Convex Installation Friction ($M) | (phi / 2) * ((I/K) - delta)^2 * K | $4.50M ($0.00M @ q=1) | - **Formula (Hayashi Optimal Investment-to-Capital Ratio (I / K) Formula)**: `=LET(cp_k, B2, ev_m, B3, dl_r, B4, ph_c, B5, IF(OR(cp_k <= 0, ev_m <= 0, dl_r < 0, dl_r >= 1, ph_c <= 0), "Invalid Hayashi Input", LET(q_rt, ev_m / cp_k, ROUND(MAX(0, dl_r + (q_rt - 1) / ph_c), 4))))` - **Formula (Steady-State Replacement Check (q = 1.00))**: `=IF(ISTEXT(E3), E3, ROUND((B5 / 2) * ((E3 - B4) ^ 2) * B2, 2))` ### Hayduk-Laudie Aqueous Liquid Diffusivity Correlation (EPA VOC Standard) - **URL**: https://sheets.arte-soft.com/en/learn/hayduk-laudie-aqueous-nonelectrolyte-liquid-diffusivity-formula/ - **Summary**: Calculate the U.S. EPA recommended aqueous diffusivity D_AB = 13.26 / (μ_w^1.14 * V_A^0.589) (× 10^-5 cm^2/s) for VOC air-strippers, carbon adsorbers, and groundwater remediation. *Table — Why U.S. EPA air-stripping models specify Hayduk-Laudie for dissolved VOCs in water!:* | Groundwater Temperature | Water Viscosity μ_w (cP) | Benzene D_w (V_A = 96.5 cm³/mol) | Air-Stripper Impact | | --- | --- | --- | --- | | 25 °C Summer Water | 0.890 cP | 1.026 × 10^-5 cm²/s | Matches 1.02 Experimental Value | | 10 °C Winter Groundwater | 1.307 cP | 0.662 × 10^-5 cm²/s | Requires Taller Packing Height HTU | | Invalid μ_w <= 0 or V_A <= 0 | Undefined | "Invalid Hayduk-Laudie Inputs" | Positivity Guard | - **Formula (Hayduk-Laudie Aqueous Solute Diffusivity D_w (× 10^-5 cm²/s))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Hayduk-Laudie Inputs", ROUND(13.26 / ((B2 ^ 1.14) * (B3 ^ 0.589)), 3))` - **Formula (Aqueous Schmidt Number Sc = μ_w / (ρ_w * D_w))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Hayduk-Laudie Inputs", ROUND((B2 * 0.01) / (B4 * (0.0001326 / ((B2 ^ 1.14) * (B3 ^ 0.589)))), 0))` ### Hazen-Williams Water Pipe Head Loss formula: 10.67 * L * Q^1.852 / (C^1.852 * D^4.8704) - **URL**: https://sheets.arte-soft.com/en/learn/hazen-williams-water-pipe-friction-head-loss-formula/ - **Summary**: Estimate straight-pipe friction head loss for turbulent water flow with SI inputs and an assumed Hazen-Williams coefficient. *Table — An empirical straight-pipe estimate:* | Water Main Scenario | Inputs (L=500m, Q=0.05 m^3/s, D=0.20m) | Roughness C | Head Loss h_f & Pressure Drop | | --- | --- | --- | --- | | New Cement-Lined Ductile Iron | 50 L/s through 200 mm main | C = 130 | 6.41 m head (62.88 kPa) | | Aged Tuberculated Cast Iron | Same 50 L/s & 200 mm main | C set to 100 | 10.42 m head (+62.6% loss!) | | Static Zero-Flow Isolation | Flow Q set to 0 m^3/s | C = 100 | 0.00 m head loss | - **Formula (SI Hazen-Williams Pipe Friction Head Loss h_f in meters of water)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B5<=0),"Invalid inputs",ROUND((10.67 * B2 * (B3 ^ 1.852)) / ((B4 ^ 1.852) * (B5 ^ 4.8704)), 2)))` - **Formula (Convert meters of water head loss into kilopascals (kPa = 9.81 * h_f))**: `=IF(COUNT(B6)<>1,"Invalid inputs",IF(B6<0,"Invalid inputs",ROUND(9.81 * B6, 2)))` ### Heap Leach Irrigation Flux, PLS Flow & Metal Recovery Formula - **URL**: https://sheets.arte-soft.com/en/learn/heap-leach-pad-irrigation-flux-pregnant-leach-solution-pls-metal-recovery/ - **Summary**: Calculate Pregnant Leach Solution (PLS) Volumetric Flow (m³/hr), ADR/SX Stripping Efficiency (%), Daily Net Recovered Metal Mass (kg/d), and Daily Gold Equivalent (troy oz/d). *Table — Subtract recycled Barren Leach Solution (BLS) grade—only NET delta (PLS - BLS) is captured in ADR carbon or SX-EW!:* | Heap Leach ADR KPI (80,000 m², 10 L/hr·m², PLS=2.50, BLS=0.15 mg/L, 95% Avail) | Formula | Verified Output | | --- | --- | --- | | Pregnant Solution Flow (m³/hr) | (Pad_Area_m2 * Flux_L_hr_m2) / 1000 | 800.00 m³/hr | | Column Stripping Efficiency (%) | ((PLS_mg_L - BLS_mg_L) / PLS_mg_L) * 100 | 94.00% (87.50% @ PLS = 1.20) | | Net Metal Recovered (kg/d) | (Q_m3_hr * (PLS - BLS) * 24 * Avail)/1000 | 42.86 kg/d (19.15 @ PLS = 1.20) | | Payable Dore Equivalent (oz/d) | (Net_Metal_kg_d * 1000) / 31.1035 | 1,378.11 oz/d (615.75 @ PLS = 1.20) | - **Formula (Closed-Loop Heap Leach PLS-BLS Net Metal Production Formula)**: `=LET(ar_m, B2, fx_l, B3, pl_s, B4, bl_s, B5, av_f, B6, IF(OR(ar_m <= 0, fx_l <= 1, fx_l > 50, bl_s < 0, pl_s <= bl_s, av_f <= 0, av_f > 1), "Invalid Heap Leach Input", LET(q_pl, (ar_m * fx_l) / 1000, ROUND((q_pl * (pl_s - bl_s) * 24 * av_f) / 1000, 2))))` - **Formula (Late-Cycle Mature Lift Leach-Curve Grade Decay Check (Set PLS Grade = 1.20 mg/L))**: `=IF(ISTEXT(E4), E4, LET(kg_d, (((B2 * B3) / 1000) * (B4 - B5) * 24 * B6) / 1000, ROUND((kg_d * 1000) / 31.1035, 2)))` ### HEART Score Spreadsheet: Validate and Sum Five Subscores - **URL**: https://sheets.arte-soft.com/en/learn/heart-score-chest-pain-ed-risk-stratification-formula/ - **Summary**: Practice input validation, SUM and IFS with five fictional HEART subscores. Calculate a total from 0 to 10 and a numerical score band without generating treatment or discharge instructions. - **Formula (Calculate the validated total)**: `=IF(COUNT(B2:B6)<>5,"Enter all five numeric subscores",IF(OR(AND(B2<>0,B2<>1,B2<>2),AND(B3<>0,B3<>1,B3<>2),AND(B4<>0,B4<>1,B4<>2),AND(B5<>0,B5<>1,B5<>2),AND(B6<>0,B6<>1,B6<>2)),"Use integer subscores 0, 1 or 2",SUM(B2:B6)))` - **Formula (Display a numerical score band)**: `=IF(COUNT(B2:B6)<>5,"Enter all five numeric subscores",IF(OR(AND(B2<>0,B2<>1,B2<>2),AND(B3<>0,B3<>1,B3<>2),AND(B4<>0,B4<>1,B4<>2),AND(B5<>0,B5<>1,B5<>2),AND(B6<>0,B6<>1,B6<>2)),"Use integer subscores 0, 1 or 2",IFS(SUM(B2:B6)<=3,"Score band 0-3",SUM(B2:B6)<=6,"Score band 4-6",TRUE,"Score band 7-10")))` ### TEMA Heat Exchanger Fouling & Dirty U-Value Formula - **URL**: https://sheets.arte-soft.com/en/learn/heat-exchanger-fouling-resistance-overall-u-value-and-cleanliness-factor/ - **Summary**: Calculate Outer-Area-Referenced Total Fouling Resistance R_f_tot = R_f_in * (D_o / D_i) + R_f_out, Service Dirty Overall Conductance U_dirty, Cleanliness Factor, and Surface Overdesign Fraction. *Table — Scale inner tube-side fouling resistance by D_o / D_i when U is referenced to outer tube area!:* | TEMA Exchanger Fouling Metric (U_clean=1,000, Rf_in=0.0002, OD/ID=1.25, Rf_out=0.00025) | Formula | Verified Output | | --- | --- | --- | | Outer-Referenced Total R_f | R_f_in * (D_o / D_i) + R_f_out | 0.00050 m^2*K/W | | Service Dirty Overall U_dirty | 1 / (1 / U_clean + R_f_total) | 666.67 W/(m^2*K) | | Exchanger Cleanliness Factor | U_dirty / U_clean | 0.6667 (1.0000 when clean) | | Required Excess Area Fraction | U_clean * R_f_total | 0.5000 (+50% @ U=1k; +100% @ U=2k) | - **Formula (TEMA Outer-Referenced Service Dirty U-Value Formula)**: `=LET(u_cl, B2, rf_i, B3, d_rt, B4, rf_o, B5, IF(OR(u_cl <= 0, rf_i < 0, d_rt <= 1, rf_o < 0), "Invalid TEMA Geometry", LET(rf_t, rf_i * d_rt + rf_o, ROUND(1 / (1 / u_cl + rf_t), 2))))` - **Formula (High-Conductance Fouling Sensitivity Check (U_clean = 2,000))**: `=IF(ISTEXT(E3), E3, ROUND(B2 * E2, 4))` ### Heat Exchanger LMTD (Log-Mean Temperature Difference) & Area sizing formula - **URL**: https://sheets.arte-soft.com/en/learn/heat-exchanger-lmtd-log-mean-temperature-difference/ - **Summary**: Calculate counter-current heat exchanger Log-Mean Temperature Difference LMTD = (dT1 - dT2) / LN(dT1 / dT2) with L'Hopital equal-pinch guard and required surface area. *Table — Logarithmic mean for an ideal counterflow model:* | Stream / Metric | Cells & Inputs | Counter-Current Values | Design Output | | --- | --- | --- | --- | | Hot Stream (In -> Out) | B2 = 140 C, B3 = 80 C | Cools by 60 K | Hot terminal ends | | Cold Stream (In -> Out) | B4 = 60 C, B5 = 80 C | dT1 = 140-80 = 60 K \| dT2 = 80-60 = 20 K | Arithmetic mean = 40.00 K (Too high!) | | True LMTD Driving Force | (60 - 20) / LN(60 / 20) | 40 / LN(3) = 36.41 K | 9% lower than arithmetic mean | | Required Area A = Q / (U*LMTD) | Duty B6=182048 W, U B7=500 W/(m²·K) | 182048 / (500 × 36.4096) | 10.00 m^2 heat-transfer area | - **Formula (L'Hopital-safe Counter-Current LMTD formula (K or C))**: `=IF(OR(COUNT(B2:B5)<>4,B2<=B5,B3<=B4,B26,B2<=B5,B3<=B4,B23,"Enter numeric U, area and Cmin",IF(OR(B2<0,B3<0,B4<=0),"Require U>=0, area>=0 and Cmin>0",B2*B3/B4))` - **Formula (Avoid loss of precision near balanced capacities)**: `=IF(COUNT(E2:E5)<>4,"Check NTU and capacity inputs",E2*E5/(1+E3*E2*E5))` - **Formula (Compare the ideal isothermal phase-change limit)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(E2<0.0001,E2*(1-E2/2+E2^2/6-E2^3/24+E2^4/120),1-EXP(-E2)))` - **Formula (Calculate counterflow heat duty)**: `=IF(NOT(ISNUMBER(E6)),E6,IF(COUNT(B6:B7)<>2,"Enter numeric inlet temperatures",IF(B6 180 MPa) shatters!:* | USP <1062> Heckel Compaction KPI (rho_true=1.52 g/cm³, P=180 MPa) | Formula | Verified Output | | --- | --- | --- | | Solid Fraction / Rel Density D | Apparent_Density_g_cm3 / True_Density_g_cm3 | 0.8684 (0.7500 @ brittle blend) | | Residual Tablet Porosity (%) | (1 - Relative_Density_D) * 100 | 13.16% (25.00% friable @ brittle blend) | | Heckel Value LN(1 / (1 - D)) | LN(1 / (1 - Relative_Density_D)) | 2.028 (1.386 @ brittle blend) | | Mean Yield Pressure Py (MPa) | Pressure_MPa / (LN(1 / (1 - D)) - A) | 124.3 MPa (186.3 MPa brittle fragmentation!) | - **Formula (Heckel Log-Reciprocal Porosity Transform & Mean Yield Pressure Py Formula)**: `=LET(ra_g, B2, rt_g, B3, pp_m, B4, ai_c, B5, dr_f, ra_g / rt_g, hv_l, LN(1 / (1 - dr_f)), IF(OR(rt_g <= 0.5, ra_g <= 0.3 * rt_g, ra_g >= 0.99 * rt_g, pp_m < 20, pp_m > 600, ai_c < 0, hv_l <= ai_c + 0.05), "Invalid Heckel Input", ROUND(pp_m / (hv_l - ai_c), 1)))` - **Formula (Brittle Anhydrous Drug Load (rho_app = 1.14 g/cm³, A = 0.42) High-Py Capping Risk Check)**: `=IF(ISTEXT(E5), E5, ROUND(LN(1 / (1 - (B2 / B3))), 3))` ### Hedges’ g Small-Sample Bias Correction and Glass’s Delta Formula - **URL**: https://sheets.arte-soft.com/en/learn/hedges-g-small-sample-bias-correction-and-glass-delta-control-effect-size/ - **Summary**: Correct upward small-sample bias in Cohen’s d using Hedges’ J(df) = 1 - 3 / (4*df - 1) factor and switch to Glass’s Delta when treatment alters group variance. *Table — Spot two classic Cohen’s d traps: small-df upward bias and treatment-inflated variance:* | Effect Size Estimator | Formula Definition | Pilot Output (n1=n2=6) | | --- | --- | --- | | Pooled Cohen’s d | (M1 - M2) / SQRT(((n1-1)*SD1^2 + (n2-1)*SD2^2) / df) | 1.2649 (Biased high at df = 10) | | Hedges Correction J(df) | 1 - 3 / (4 * df - 1) = 36 / 39 = 12 / 13 | 0.9231 | | Unbiased Hedges’ g | J(df) * d_Cohen (with asymptotic SE_g) | 1.1676 (SE_g = 0.6246) | | Glass’s Control Delta | (M1 - M2) / SD_ctrl | 2.0000 (Untouched baseline SD = 6) | - **Formula (Unbiased Hedges’ g Formula)**: `=LET(n_1, B2, m_1, B3, sd_1, B4, n_2, B5, m_2, B6, sd_2, B7, df_p, n_1 + n_2 - 2, IF(OR(n_1 < 2, n_2 < 2, sd_1 <= 0, sd_2 <= 0), "Invalid Group Stats", LET(sp_val, SQRT(((n_1 - 1) * sd_1^2 + (n_2 - 1) * sd_2^2) / df_p), d_raw, (m_1 - m_2) / sp_val, j_cor, 1 - 3 / (4 * df_p - 1), ROUND(j_cor * d_raw, 4))))` - **Formula (Glass’s Delta & Large-Sample Convergence Check)**: `=IF(B7 <= 0, "Invalid Group Stats", ROUND((B3 - B6) / B7, 4))` ### Lean Heijunka Pitch & Every Part Every Interval (EPEI) Level-Scheduling Formula - **URL**: https://sheets.arte-soft.com/en/learn/heijunka-pitch-every-part-every-interval-epei-lean-formula/ - **Summary**: Calculate Toyota Production System Heijunka box Pitch = (Takt_Time * Pack_Qty) in minutes and mixed-model Every Part Every Interval EPEI = Total_Changeover_Min / (Available_Min - Daily_Run_Min) in days. *Table — Pace material handlers by Heijunka Pitch and shrink batch sizes via SMED & EPEI!:* | Lean Level-Loading Metric | Shop-Floor Inputs | Formula | Result | | --- | --- | --- | --- | | Heijunka Pitch (Minutes) | 450 min/day, 900 units/day, Pack = 20 | (450 / 900) * 20 | 10.0 minutes per tote | | Baseline Cell EPEI (Days) | Total Setup = 135 min, Free Cap = 90 min/d | 135 / (450 - 360) | 1.50 days | | After 50% SMED Setup Cut | Total Setup = 67.5 min, Free Cap = 90 min/d | 67.5 / (450 - 360) | 0.75 days (Every Part Every Shift!) | - **Formula (Heijunka Box Pitch Interval in Minutes = (Available_Min / Daily_Demand) * Pack_Qty)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Heijunka Inputs", ROUND((B2 / B3) * B4, 2))` - **Formula (Every Part Every Interval EPEI in Days = Total_Changeover / (Available_Min - Run_Min))**: `=IF(OR(B2 <= 0, B5 < 0, B6 < 0, B5 >= B2), "Overloaded Cell (Zero Changeover Capacity)", ROUND(B6 / (B2 - B5), 2))` ### Heikin-Ashi Candlestick Formula: Smoothed HA-OHLC Recursion & Wickless Trend Filter - **URL**: https://sheets.arte-soft.com/en/learn/heikin-ashi-smoothed-candlestick-ohlc-and-body-wick-ratio-formula/ - **Summary**: Transform noisy raw OHLC price bars into Munehisa Homma’s smoothed Heikin-Ashi ("Average Bar") coordinates HA_Open, HA_High, HA_Low, HA_Close and detect pure wickless trend candles. *Table — Filter whipsaw candlestick noise with recursive Heikin-Ashi OHLC!:* | Heikin-Ashi Coordinate | Exact Formula (O=102, H=110, L=100, C=108; Prev HAO=99, HAC=103) | Evaluated Value | | --- | --- | --- | | HA_Close | (102 + 110 + 100 + 108) / 4 | 105.00 | | HA_Open | (99 + 103) / 2 | 101.00 (Bullish body = +4.00) | | HA_High & HA_Low | MAX(110, 101, 105) & MIN(100, 101, 105) | 110.00 & 100.00 (Lower wick = 1.00) | - **Formula (Heikin-Ashi Average Bar Close (HA_Close))**: `=IF(OR(B3 < B4, B2 < B4, B2 > B3, B5 < B4, B5 > B3), "Invalid Raw OHLC Ordering", ROUND((B2 + B3 + B4 + B5) / 4, 2))` - **Formula (Heikin-Ashi Lower Shadow Length (Zero = Pure Bullish Impulse))**: `=ROUND(MIN((B6 + B7) / 2, (B2 + B3 + B4 + B5) / 4) - MIN(B4, (B6 + B7) / 2, (B2 + B3 + B4 + B5) / 4), 2)` ### Heisenberg Uncertainty Principle: Momentum Spread & Natural Linewidth - **URL**: https://sheets.arte-soft.com/en/learn/heisenberg-uncertainty-position-momentum-and-lifetime-linewidth/ - **Summary**: Calculate minimum quantum momentum spread delta_p*c >= hbar*c / (2 * delta_x) (using hbar*c = 197.327 eV*nm) and excited-state / ultrafast-laser energy linewidth delta_E >= hbar / (2 * tau) (using hbar = 658.212 meV*fs). *Table — Skip 10^-34 Joule-second exponent headaches with exact CODATA eV*nm and meV*fs constants!:* | Quantum Confinement / Lifetime Scenario | Input Spread (dx or dt) | Minimum Conjugate Uncertainty | Physical Quantum Consequence | | --- | --- | --- | --- | | Atomic Electron Localization | dx = 0.10 nm | dp * c >= 986.63 eV | keV-scale zero-point kinetic energy | | Ultrafast Laser / Core-Hole Decay | dt = 15.0 fs | dE >= 21.940 meV | Broadened spectral bandwidth | | Sub-Femtosecond Attosecond Pulse | dt = 1.0 fs | dE >= 329.106 meV | Spans > 0.3 eV photon spectrum | - **Formula (Minimum Momentum Uncertainty delta_p * c (eV) = 197.32698 / (2 * delta_x_nm))**: `=IF(B2 <= 0, "Invalid Quantum Uncertainty", ROUND(197.32698 / (2 * B2), 2))` - **Formula (Minimum Transform-Limited Energy Spread delta_E (meV) = 658.21195 / (2 * delta_t_fs))**: `=IF(B3 <= 0, "Invalid Quantum Uncertainty", ROUND(658.21195 / (2 * B3), 3))` ### Hellmann Wind Shear Hub-Height Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/hellmann-power-law-wind-shear-hub-height-speed-and-power-multiplier/ - **Summary**: Extrapolate meteorological mast wind speed to turbine hub height via Gustav Hellmann’s Power Law v_hub = v_ref * (z_hub / z_ref)^alpha and compute the Cubic Wind Power Density Multiplier (z_hub / z_ref)^(3*alpha). *Table — See why a 50% hub-height wind-speed gain more than TRIPLES wind power density!:* | Wind Resource Extrapolation (z_ref=16m -> z_hub=81m, v_ref=6 m/s, alpha=0.25) | Formula | Verified Output | | --- | --- | --- | | Hub-Height Wind Speed v_hub (m/s) | v_ref * (z_hub / z_ref)^alpha | 9.00 m/s (+50.0% Speed) | | Cubic Power Density Multiplier | (z_hub / z_ref)^(3 * alpha) | 3.3750x (+237.5% Power) | | Reference Power Density @ 16m | 0.5 * rho * v_ref^3 | 129.60 W/m^2 | | Hub-Height Power Density @ 81m | 0.5 * rho * v_hub^3 | 437.40 W/m^2 | - **Formula (Hellmann Hub-Height Wind Speed & Power Density Formula)**: `=LET(z_rf, B2, z_hb, B3, v_rf, B4, al_s, B5, rh_a, B6, IF(OR(z_rf <= 0, z_hb <= 0, v_rf < 0, al_s < 0, al_s > 0.6, rh_a <= 0), "Invalid Wind Shear Input", LET(v_hb, v_rf * (z_hb / z_rf) ^ al_s, ROUND(0.5 * rh_a * v_hb ^ 3, 2))))` - **Formula (Cubic Wind Power Elevation Multiplier Formula)**: `=IF(ISTEXT(E5), E5, ROUND((B3 / B2) ^ (3 * B5), 4))` ### Helmholtz Resonator Frequency Formula (With Flanged Neck End Correction) - **URL**: https://sheets.arte-soft.com/en/learn/helmholtz-acoustic-cavity-resonator-frequency-formula/ - **Summary**: Calculate the resonant frequency f_H = (c / (2 * PI())) * SQRT(A_neck / (V_cavity * L_eff)) in Hz of bass-reflex speaker ports, engine intake resonators, and acoustic absorbers including neck end correction L_eff = L + 1.7 * r. *Table — Include the radiation mass end correction or your resonator will tune 20–30% too high!:* | Resonator Configuration (c = 343 m/s, r = 25 mm, L = 80 mm) | Effective Neck Length L_eff | Cavity Volume V | Resonant Frequency f_H | | --- | --- | --- | --- | | 4-Liter Side-Branch Silencer | 0.08 + 1.7*0.025 = 0.1225 m | 0.004 m^3 (4 L) | 109.28 Hz | | 1-Liter Compact Intake Trap | 0.1225 m | 0.001 m^3 (1 L) | 218.56 Hz (Exact 2.0x!) | | Naive Uncorrected Error (L = 0.08 m) | Ignores +42.5 mm end mass! | 0.004 m^3 | 135.22 Hz (+24% error!) | - **Formula (Helmholtz Resonant Frequency f_H with Double-Flanged End Correction (Hz))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid Resonator Geometry", ROUND((B2 / (2 * PI())) * SQRT((PI() * (B3 ^ 2)) / (B5 * (B4 + (1.7 * B3)))), 2))` - **Formula (Effective Acoustic Neck Length L_eff = L + 1.7 * r (Meters))**: `=IF(OR(B3 <= 0, B4 < 0), "Invalid Resonator Geometry", ROUND(B4 + (1.7 * B3), 4))` ### HEMORR2HAGES Bleeding Risk Score in Atrial Fibrillation (0–12 Points) - **URL**: https://sheets.arte-soft.com/en/learn/hemorr2hages-bleeding-risk-score-atrial-fibrillation-formula/ - **Summary**: Calculate Brian Gage’s Medicare-derived HEMORR2HAGES major bleeding score (0–12 points, weighting Rebleeding history at 2 points) to stratify anticoagulated atrial fibrillation patients. *Table — Why HEMORR2HAGES uniquely captures fall risk, malignancy, anemia, and prior rebleeding!:* | HEMORR2HAGES Total Score (0–12) | Bleeding Risk Tier | Major Bleeds / 100 Pt-Yr | Anticoagulation Stewardship | | --- | --- | --- | --- | | 0 – 1 points | Low Bleeding Risk | 1.9 – 2.5 | Standard DOAC / Warfarin Prophylaxis | | 2 – 3 points | Intermediate Bleeding Risk | 5.3 – 8.4 | Deprescribe Unnecessary Aspirin/NSAIDs + PPI | | >= 4 points ( up to 12 ) | High Bleeding Risk | 10.4 – 12.3 | Close Hgb/Renal Surveillance; DOAC / LAAO Review | - **Formula (Total HEMORR2HAGES Bleeding Score (0 to 12 Points))**: `=IF(OR(MIN(B2:B8) < 0, B6 > 1, SUM(B2:B5) + B7 + B8 > 10), "Invalid HEMORR2HAGES Flags", SUMPRODUCT(B2:B8, C2:C8))` - **Formula (HEMORR2HAGES Bleeding Risk Stratum (Low / Intermediate / High))**: `=IF(OR(MIN(B2:B8) < 0, B6 > 1, SUM(B2:B5) + B7 + B8 > 10), "Invalid HEMORR2HAGES Flags", IF(SUMPRODUCT(B2:B8, C2:C8) <= 1, "Low Bleeding Risk (0-1)", IF(SUMPRODUCT(B2:B8, C2:C8) <= 3, "Intermediate Bleeding Risk (2-3)", "High Bleeding Risk (>=4 — >=10.4/100 py)")))` ### Henderson-Hasselbalch equation: Buffer pH & Conjugate Base/Acid ratio - **URL**: https://sheets.arte-soft.com/en/learn/henderson-hasselbalch-buffer-ph-and-pka-chemistry/ - **Summary**: Estimate buffer pH from a weak-acid/conjugate-base concentration ratio, and invert the approximation for a target pH. *Table — Formulate Acetate, Phosphate, and Tris buffers with pH = pKa + LOG10([A-]/[HA]):* | Acetate Buffer Case (pKa = 4.76) | [Base A-] / [Acid HA] | Computed Buffer pH | | --- | --- | --- | | 0.15 M Base / 0.05 M Acid | 3.00 : 1 | 4.76 + LOG10(3) = 5.24 | | 0.10 M Base / 0.10 M Acid (Equimolar) | 1.00 : 1 | 4.76 (under the approximation) | | Target pH = 5.76 (+1.0 above pKa) | 10^(5.76 - 4.76) = 10.0 : 1 | 5.76 | - **Formula (Henderson-Hasselbalch Buffer pH and Required [Base]/[Acid] Ratio formulas)**: `=IF(OR(COUNT(A2:C2)<>3,B2<=0,C2<=0),"Invalid inputs",ROUND(A2+LOG10(B2/C2),2))` - **Formula (Solve required Conjugate Base-to-Acid molar ratio [A-] / [HA] for Target pH D2)**: `=IF(OR(NOT(ISNUMBER(A2)),NOT(ISNUMBER(D2))),"Invalid inputs",ROUND(10^(D2-A2),4))` ### Hendrich II Fall Risk Model (HIIFRM) Inpatient Nursing Score - **URL**: https://sheets.arte-soft.com/en/learn/hendrich-ii-fall-risk-model-inpatient-nursing-score-formula/ - **Summary**: Calculate Ann Hendrich’s 8-factor inpatient fall-risk score (0–16) combining intrinsic CNS/medication risk factors (confusion +4, depression +2, elimination +1, dizziness +1, male +1, antiepileptics +2, benzodiazepines +1) and Get-Up-and-Go rising ability (0–4), flagging >= 5 as High Risk. *Table — Why Hendrich II targets modifiable CNS drug culprits instead of generic "age > 65"!:* | Inpatient Clinical Profile | Weighted Hendrich II Total (0–16) | Fall Precaution Threshold (>=5) | | --- | --- | --- | | Alert Post-Op Patient Pushing Up Once (GUG = 1, Male = 1) | 2 pts (< 5) | Standard Precautions (<5) | | Dizziness (+1) + Benzo (+1) + Multiple Chair Attempts (+3) | 5 pts (>= 5 Cutoff!) | High Fall Risk (>=5: Alarm & Med Review) | | Delirium (+4) + Antiepileptic (+2) + Altered Elimination (+1) | 7 pts (>= 5) | High Fall Risk (>=5: Close Observation) | - **Formula (Weighted 8-Factor Hendrich II Fall Risk Total Score (0–16))**: `=IF(OR(SUMPRODUCT((B2:B8 <> 0) * (B2:B8 <> 1)) > 0, NOT(OR(B9 = 0, B9 = 1, B9 = 3, B9 = 4))), "Invalid Hendrich II Input", 4 * B2 + 2 * B3 + B4 + B5 + B6 + 2 * B7 + B8 + B9)` - **Formula (Hendrich II High Fall Risk (>= 5 Points) Nursing Protocol Trigger)**: `=IF(OR(SUMPRODUCT((B2:B8 <> 0) * (B2:B8 <> 1)) > 0, NOT(OR(B9 = 0, B9 = 1, B9 = 3, B9 = 4))), "Invalid Hendrich II Input", IF(4 * B2 + 2 * B3 + B4 + B5 + B6 + 2 * B7 + B8 + B9 >= 5, "High Fall Risk (>=5: Activate Fall Bundle)", "Standard Risk (<5)"))` ### SIR Herd Immunity Threshold & Vaccine Efficacy Formula - **URL**: https://sheets.arte-soft.com/en/learn/herd-immunity-threshold-sir-reproduction-number-and-vaccine-efficacy/ - **Summary**: Calculate the Kermack-McKendrick Herd Immunity Threshold 1 - 1/R_0, Effective Reproduction Number R_eff = R_0*(1 - v*VE), and critical coverage v_crit = (1 - 1/R_0)/VE. *Table — Avoid the #1 public-health mistake: divide 1 - 1/R_0 by leaky vaccine efficacy VE!:* | SIR Epidemiological Metric (R_0=4.0, VE=0.80, v_cov=0.75) | Formula | Verified Output | | --- | --- | --- | | Perfect-Vaccine Herd Threshold (HIT) | 1 - (1 / R_0) | 0.7500 (75.00% Immune Needed) | | Effective Reproduction Number (R_eff) | R_0 * (1 - v_cov * VE) | 1.6000 (> 1, Outbreak Grows!) | | Critical Vaccine Coverage (v_crit) | (1 - 1 / R_0) / VE | 0.9375 (93.75% Coverage Needed) | | Leaky Vaccine Failure (VE = 0.60 < 0.75) | v_crit > 1.00 | Impossible with Vaccine Alone | - **Formula (Effective Reproduction Number R_eff = R_0 * (1 - v_cov * VE) Formula)**: `=LET(r_0, B2, ve_ef, B3, v_cv, B4, IF(OR(r_0 <= 0, ve_ef <= 0, ve_ef > 1, v_cv < 0, v_cv > 1), "Invalid SIR Input", ROUND(r_0 * (1 - v_cv * ve_ef), 4)))` - **Formula (Imperfect-Vaccine Critical Coverage v_crit = (1 - 1 / R_0) / VE Formula)**: `=LET(r_0, B2, ve_ef, B3, IF(OR(r_0 <= 0, ve_ef <= 0, ve_ef > 1), "Invalid SIR Input", IF(r_0 <= 1, 0, LET(hit_p, 1 - (1 / r_0), IF(ve_ef < hit_p, "Impossible with Vaccine Alone (VE < HIT)", ROUND(hit_p / ve_ef, 4))))))` ### Herfindahl-Hirschman Index (HHI) formula for market & supplier concentration - **URL**: https://sheets.arte-soft.com/en/learn/herfindahl-hirschman-index-hhi-market-concentration/ - **Summary**: Calculate revenue-share HHI on the 0–10,000 scale and the equivalent number of equal-sized firms for a defined market or supplier set. *Table — Compute antitrust HHI (0 to 10,000 scale) directly from raw dollar revenues:* | Market Structure (Total = $1,000M) | Firm Shares (%) | Squared Shares Sum (HHI) | Effective Firms (10,000 / HHI) | | --- | --- | --- | --- | | 4 Skewed Firms ($400, $300, $200, $100) | 40%, 30%, 20%, 10% | 1600+900+400+100 = 3,000 | 3.33 effective competitors | | 4 Equal Firms ($250 each) | 25%, 25%, 25%, 25% | 625 * 4 = 2,500 | 4.00 effective competitors | | 10 Equal Firms ($100 each) | 10% each | 100 * 10 = 1,000 | 10.00 equivalent equal-sized firms | - **Formula (Calculate HHI (0–10,000 scale) directly from raw firm revenues)**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0,SUM(B2:B5)<=0),"Invalid inputs",ROUND(10000 * SUMPRODUCT(B2:B5, B2:B5) / (SUM(B2:B5) ^ 2), 0))` - **Formula (Equivalent number of equal-sized firms)**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0,SUM(B2:B5)<=0),"Invalid inputs",LET(hhi, 10000 * SUMPRODUCT(B2:B5, B2:B5) / (SUM(B2:B5) ^ 2), ROUND(10000 / hhi, 2)))` ### Herning-Zipperer Rule: Multicomponent Natural Gas Mixture Viscosity Formula - **URL**: https://sheets.arte-soft.com/en/learn/herning-zipperer-gas-mixture-viscosity-sqrt-mw-rule/ - **Summary**: Calculate multicomponent hydrocarbon & flue-gas mixture viscosity μ_m = Σ(y_i * μ_i * SQRT(M_i)) / Σ(y_i * SQRT(M_i)) using square-root molecular weights. *Table — Industry-standard pipeline viscosity rule when binary collision parameters aren’t tabulated!:* | Gas Stream Composition (CH4 / C2H6 / CO2) | Denominator Σ y_i√M_i | Herning-Zipperer μ_m (μPa·s) | Pipeline Application | | --- | --- | --- | --- | | 85% CH4, 10% C2H6, 5% CO2 | 4.2843 | 11.102 μPa·s | Pipeline sales gas Reynolds number | | 60% CH4, 10% C2H6, 30% CO2 | 4.9457 | 12.364 μPa·s | High-CO2 acid gas gathering | | Mole Fractions Σ y_i <> 1 | Error Guard | "Mole Fractions Must Sum to 1" | Mass-Balance Audit | - **Formula (Herning-Zipperer Multicomponent Gas Mixture Viscosity μ_m (μPa·s))**: `=IF(ABS(SUM(B2:B4) - 1) > 0.0001, "Mole Fractions Must Sum to 1", ROUND(SUM(E2:E4) / SUM(F2:F4), 3))` - **Formula (Square-Root Molecular-Weight Normalization Factor Σ(y_i * SQRT(M_i)))**: `=IF(ABS(SUM(B2:B4) - 1) > 0.0001, "Mole Fractions Must Sum to 1", ROUND(SUM(F2:F4), 4))` ### Herschel-Bulkley Yield Stress & Pipe Plug-Flow Formula - **URL**: https://sheets.arte-soft.com/en/learn/herschel-bulkley-and-bingham-plastic-drilling-mud-yield-stress-and-wall-shear-formula/ - **Summary**: Calculate Herschel-Bulkley Total Shear Stress tau (Pa), Apparent Viscosity (mPa·s / cP), Unsheared Central Plug Radius Ratio rp/R, and Sheared Flowing Area (%). *Table — Why xanthan drilling muds and concrete slurries travel down pipe centers as a solid, un-sheared cylindrical plug!:* | API RP 13D Herschel-Bulkley KPI (K=0.42, n=0.68, gamma=511 s⁻¹, tau_w=24 Pa) | Formula | Verified Output | | --- | --- | --- | | Total Shear Stress tau (Pa) | Yield_tau_y_Pa + K * (Shear_Rate ^ n) | 37.57 Pa (48.97 Pa @ gelled 19.8 Pa) | | Apparent Viscosity (mPa·s / cP) | (Shear_Stress_Pa / Shear_Rate_inv_s) * 1000 | 73.53 cP (95.84 cP @ gelled 19.8 Pa) | | Central Plug Radius Ratio (rp / R) | MIN(1, Yield_tau_y_Pa / Wall_tau_w_Pa) | 0.350 (0.825 massive core plug @ 19.8 Pa!) | | Sheared Annular Area (%) | (1 - (Plug_Radius_Ratio ^ 2)) * 100 | 87.75% (31.94% thin wall slip @ 19.8 Pa!) | - **Formula (API RP 13D Herschel-Bulkley Constitutive Law & Cylindrical Plug-Core Formula)**: `=LET(ty_p, B2, kc_p, B3, nb_i, B4, gd_s, B5, tw_p, B6, IF(OR(ty_p < 0, kc_p <= 0.001, nb_i <= 0.1, nb_i > 2, gd_s <= 0.1, tw_p <= 0.1), "Invalid Rheology Input", ROUND((1 - (MIN(1, ty_p / tw_p) ^ 2)) * 100, 2)))` - **Formula (Flocculated High-Yield Bentonite Gel (`tau_y = 19.8` Pa) 82.5% Plug-Core Check (Set Yield Stress B2 = 19.8 Pa))**: `=IF(ISTEXT(E5), E5, ROUND(MIN(1, B2 / B6), 3))` ### Hertzian Contact Stress: Ball-on-Flat Contact Radius & Max Pressure - **URL**: https://sheets.arte-soft.com/en/learn/hertz-contact-stress-sphere-on-flat-and-bearing-pressure/ - **Summary**: Calculate reduced contact modulus E*, circular contact-patch radius a = ((3 * F * R) / (4 * E*))^(1/3), and peak Hertzian bearing stress p_max = (3 * F) / (2 * PI() * a^2) (MPa). *Table — Why doubling ball-bearing load increases contact stress by only 26% (2^(1/3))!:* | Hertzian Contact Metric (Steel Ball R=10 mm on Steel Flat: E=210 GPa, nu=0.30) | Formula | Load F = 1,000 N | 8x Load F = 8,000 N | | --- | --- | --- | --- | | Reduced Contact Modulus E* | 1 / (2 * (1 - 0.30^2) / 210 GPa) | 115.38 GPa | 115.38 GPa | | Contact Patch Radius a (mm) | ((3 * F * R) / (4 * E*))^(1/3) * 1000 | 0.4021 mm | 0.8042 mm (2x wider!) | | Peak Contact Pressure p_max | (3 * F) / (2 * PI() * a^2) (MPa) | 2,953.47 MPa | 5,906.94 MPa (Exact 2x!) | - **Formula (Peak Sphere-on-Flat Hertzian Contact Pressure p_max (MPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Load, Radius, or Modulus", LET(Estar, 1 / ((2 * (1 - (B5 ^ 2))) / B4), a, ((3 * B2 * B3) / (4 * Estar)) ^ (1 / 3), ROUND(((3 * B2) / (2 * PI() * (a ^ 2))) / 1E6, 2)))` - **Formula (Hertzian Contact Patch Radius a (in Millimeters))**: `=LET(Estar, 1 / ((2 * (1 - (B5 ^ 2))) / B4), ROUND((((3 * B2 * B3) / (4 * Estar)) ^ (1 / 3)) * 1000, 4))` ### Hestia Criteria for Outpatient Pulmonary Embolism (PE) Disposition - **URL**: https://sheets.arte-soft.com/en/learn/hestia-criteria-outpatient-pulmonary-embolism-home-treatment/ - **Summary**: Evaluate all 11 binary Hestia exclusion criteria (hemodynamics, thrombolysis, active bleeding, >24h oxygen, breakthrough PE, IV opioids, CrCl <30, severe liver disease, pregnancy, HIT, social support) to clear low-risk PE patients for direct home DOAC therapy. *Table — Why ESC guidelines pair Hestia = 0 with sPESI = 0 for safe home PE treatment!:* | 11-Item Hestia Exclusion Count | Disposition Recommendation | Clinical Action Plan | | --- | --- | --- | | 0 Positive Criteria (All 11 = 0) | Outpatient Home Treatment Eligible (Hestia = 0) | Direct DOAC + 24–72h Outpatient Follow-Up | | 1 Positive Criterion (e.g., CrCl < 30 or O2 > 24h) | Inpatient Admission Required (Hestia >= 1) | Hospitalize for Monitoring & Adjusted Anticoagulation | | Unanswered or Non-Binary Entry | "Invalid Binary Hestia Input" | All 11 Items Must Be Verified 0 or 1 | - **Formula (Total Positive Hestia Exclusion Criteria Count (0–11))**: `=IF(OR(COUNTA(B2:B12) < 11, SUMPRODUCT((B2:B12 <> 0) * (B2:B12 <> 1)) > 0), "Invalid Binary Hestia Input", SUM(B2:B12))` - **Formula (Hestia Outpatient vs Inpatient PE Disposition Decision)**: `=IF(OR(COUNTA(B2:B12) < 11, SUMPRODUCT((B2:B12 <> 0) * (B2:B12 <> 1)) > 0), "Invalid Binary Hestia Input", IF(SUM(B2:B12) = 0, "Outpatient Home Treatment Eligible (Hestia = 0)", "Inpatient Admission Required (Hestia >= 1)"))` ### Convert Decimal Bytes (0–255) To & From Hexadecimal and Octal (Positional Radix Math) - **URL**: https://sheets.arte-soft.com/en/learn/hexadecimal-binary-and-octal-radix-conversion-formulas/ - **Summary**: Convert 8-bit RGB channels, register bytes, and permissions between Decimal, 2-digit Hexadecimal, and 3-digit Octal using positional INT, MOD, MID, and FIND. *Table — Translate 8-bit bytes across Base-10, Base-16 (Hex), and Base-8 (Octal):* | Decimal Byte | Base-16 Nibbles | 2-Digit Hex | 3-Digit Octal | | --- | --- | --- | --- | | 0 | 0 * 16 + 0 | 00 | 000 | | 42 | 2 * 16 + 10 | 2A | 052 | | 175 | 10 * 16 + 15 | AF | 257 | | 255 | 15 * 16 + 15 | FF | 377 | - **Formula (Decimal Byte (0..255) to Zero-Padded 2-Digit Hexadecimal)**: `=IF(OR(B2 < 0, B2 > 255, B2 <> INT(B2)), "Byte 0..255 Required", MID("0123456789ABCDEF", INT(B2 / 16) + 1, 1) & MID("0123456789ABCDEF", MOD(B2, 16) + 1, 1))` - **Formula (2-Character Hexadecimal Byte Back to Decimal (0..255))**: `=IF(LEN(B3) <> 2, "2-Char Hex Required", (FIND(MID(UPPER(B3), 1, 1), "0123456789ABCDEF") - 1) * 16 + (FIND(MID(UPPER(B3), 2, 1), "0123456789ABCDEF") - 1))` ### Hick-Hyman Law Formula: Choice Reaction Time RT = a + b * log2(n + 1) - **URL**: https://sheets.arte-soft.com/en/learn/hick-hyman-choice-reaction-time-information-entropy-law-formula/ - **Summary**: Quantify menu-navigation and cockpit decision latency across n equally probable choices using William Edmund Hick (1952) and Ray Hyman’s (1953) logarithmic law RT = a + b * LOG(n + 1, 2). *Table — Why doubling menu items adds a CONSTANT ~150 ms decision step instead of doubling reaction time!:* | Equally Probable Choices n | Hick Entropy LOG(n + 1, 2) | Choice Reaction Time RT (a=0.18s, b=0.15s/bit) | | --- | --- | --- | | n = 1 Single Action | 1.0000 bit | 0.3300 seconds (330 ms) | | n = 7 Ungrouped Menu Choices | 3.0000 bits | 0.6300 seconds (630 ms) | | n = 15 Choices (+1 bit over n=7) | 4.0000 bits | 0.7800 seconds (+150 ms constant step) | - **Formula (Hick-Hyman Choice Reaction Time RT (s) = a + b * LOG(n + 1, 2))**: `=IF(OR(B2 < 1, B3 < 0, B4 <= 0), "Requires n >= 1 Choices & Positive Slope", ROUND(B3 + B4 * LOG(B2 + 1, 2), 4))` - **Formula (Hick Stimulus Uncertainty Information Load H = LOG(n + 1, 2) (Bits))**: `=IF(OR(B2 < 1, B3 < 0, B4 <= 0), "Requires n >= 1 Choices & Positive Slope", ROUND(LOG(B2 + 1, 2), 4))` ### Higbie Penetration & Danckwerts Surface-Renewal Mass Transfer (kL) - **URL**: https://sheets.arte-soft.com/en/learn/higbie-penetration-and-danckwerts-surface-renewal-mass-transfer/ - **Summary**: Calculate liquid-side gas-absorption mass-transfer coefficients k_L (mm/s) using Ralph Higbie’s unsteady penetration model 2*SQRT(D_AB / (π * t_e)) and Peter Danckwerts’ random surface-renewal theory SQRT(D_AB * s). *Table — Why k_L scales with SQRT(D_AB) instead of D_AB^1.0 in real packed towers!:* | Turbulent Liquid Contact Regime (DAB = 1.92E-9 m^2/s) | Higbie kL (mm/s) | Danckwerts kL at s = 1/te | Diffusivity Scaling | | --- | --- | --- | --- | | Standard Packing Exposure (te = 0.08 s, s = 12.5 s^-1) | 0.1748 mm/s | 0.1549 mm/s | kL ∝ D_AB^0.5 | | High-Shear Structured Packing (te = 0.02 s, s = 50 s^-1) | 0.3496 mm/s (2.0x!) | 0.3098 mm/s | 4x Faster Renewal Doubles kL | | Zero / Negative Exposure Guard (te <= 0) | "Invalid Mass Transfer Inputs" | "Invalid Mass Transfer Inputs" | Requires DAB > 0, te > 0 | - **Formula (Higbie Unsteady Penetration Liquid Mass-Transfer Coefficient k_L (mm/s))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Mass Transfer Inputs", ROUND(1000 * 2 * SQRT(B2 / (PI() * B3)), 4))` - **Formula (Danckwerts Random Surface-Renewal Coefficient k_L (mm/s))**: `=IF(OR(B2 <= 0, B4 <= 0), "Invalid Mass Transfer Inputs", ROUND(1000 * SQRT(B2 * B4), 4))` ### Die-Casting Gate Area, Cavity Fill Time & Plunger Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/high-pressure-die-casting-gate-velocity-cavity-fill-time-and-plunger-speed/ - **Summary**: Calculate Cavity+Overflow Melt Volume (cm³), Volumetric Injection Flow Rate Q (cm³/s), Required Ingate Cross-Sectional Area A_g (mm²), and Cold-Chamber Fast-Shot Plunger Speed (m/s). *Table — Fill a thin-wall aluminum die in 28 milliseconds at 42 m/s gate atomization—without soldering the steel die core!:* | NADCA HPDC Gating KPI (920 g Melt @ 2.50 g/cm³, tfill=28 ms, vgate=42 m/s, Dp=70 mm) | Formula | Verified Output | | --- | --- | --- | | Cavity + Overflow Melt Vol (cm³) | Part_Overflow_Mass_g / Melt_Dens_g_cm3 | 368.00 cm³ | | Cavity Fill Flow Rate Q (cm³/s) | Melt_Volume_cm3 / (Fill_Time_ms / 1000) | 13,142.9 cm³/s (20,444.4 @ 18 ms) | | Required Ingate Area Ag (mm²) | Flow_Rate_cm3_s / Target_Gate_Vel_m_s | 312.93 mm² (486.77 mm² @ 18 ms!) | | Fast-Shot Plunger Speed (m/s) | Flow_cm3_s / ((PI()/4) * Plunger_D_mm^2) | 3.42 m/s (5.31 m/s @ 18 ms) | - **Formula (NADCA Continuity Gate Area & Cold-Chamber Fast-Shot Velocity Formula)**: `=LET(ms_g, B2, rh_m, B3, tf_m, B4, vg_s, B5, dp_m, B6, IF(OR(ms_g <= 0, rh_m < 1.5, rh_m > 8.5, tf_m < 5, tf_m > 200, vg_s < 20, vg_s > 65, dp_m <= 20), "Invalid HPDC Input", LET(vc_m, ms_g / rh_m, qf_l, vc_m / (tf_m / 1000), ap_l, (PI() / 4) * (dp_m ^ 2), ROUND(qf_l / ap_l, 2))))` - **Formula (Ultra-Thin 2.0 mm Rib 18-Millisecond Fill Upgrade Check (Set Fill Time = 18.0 ms))**: `=IF(ISTEXT(E5), E5, ROUND(((B2 / B3) / (B4 / 1000)) / B5, 2))` ### Vacuum Chamber Conductance Throttling & Pumpdown Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/high-vacuum-chamber-pumpdown-time-conductance-throttled-effective-pumping-speed/ - **Summary**: Calculate Foreline/Valve Throttled Effective Pumping Speed S_eff (L/s), Outgassing-Limited Ultimate Base Pressure P_ult (10^-3 mbar), Pumpdown Time to Target Vacuum (s), and Throttling Loss (%). *Table — Connecting a 500 L/s turbopump through a 200 L/s bellows pipe wastes 71% of your pump!:* | High-Vacuum Pumpdown KPI (V=250 L, Sp=500 L/s, C=200 L/s, Qout=0.002 mbar·L/s) | Formula | Verified Output | | --- | --- | --- | | Effective Pumping Speed Seff (L/s) | (Pump_Sp * Pipe_C) / (Pump_Sp + Pipe_C) | 142.86 L/s (333.33 @ C = 1,000 L/s) | | Ultimate Base Pressure (10^-3 mbar) | (Outgas_Q / Seff) * 1000 | 0.014 ubar (0.006 @ C = 1,000 L/s) | | Pumpdown Time to 1e-4 mbar (s) | (V / Seff) * LN((P0 - Pult)/(Pt - Pult)) | 16.38 s (6.95 s @ C = 1,000 L/s!) | | Conductance Throttling Loss (%) | ((Sp - Seff) / Sp) * 100 | 71.43% (33.33% @ C = 1,000 L/s) | - **Formula (Outgassing-Asymptote Throttled Vacuum Pumpdown Time Formula)**: `=LET(vl_l, B2, sp_l, B3, cd_l, B4, p0_m, B5, pt_m, B6, qo_m, B7, IF(OR(vl_l <= 0, sp_l <= 0, cd_l <= 0, pt_m <= 0, p0_m <= pt_m, qo_m < 0), "Invalid Vacuum Input", LET(se_f, (sp_l * cd_l) / (sp_l + cd_l), pu_l, qo_m / se_f, IF(pt_m <= pu_l, "TARGET BELOW BASE PRESSURE", ROUND((vl_l / se_f) * LN((p0_m - pu_l) / (pt_m - pu_l)), 2)))))` - **Formula (Direct-Flange DN160 Gate Valve Conductance Upgrade Check (Set Conductance C = 1,000 L/s))**: `=IF(ISTEXT(E4), E4, LET(se_f, (B3 * B4) / (B3 + B4), ROUND(((B3 - se_f) / B3) * 100, 2)))` ### Highlight Cells That End With a Specific Suffix (RIGHT & LEN Exact Suffix Rule) - **URL**: https://sheets.arte-soft.com/en/learn/highlight-cells-ending-with-suffix-right-len-conditional-rule/ - **Summary**: Flag filenames, SKUs, or email domains ending with a target suffix like ".csv" or "-TEMP" using TRIM, RIGHT, and LEN—avoiding wildcard false positives on "?" and "*". *Table — Why RIGHT + LEN beats COUNTIF(A2, "*" & suffix) for suffix checks:* | Cell Value | Target Suffix ($D$2) | RIGHT(TRIM(A2), LEN($D$2)) | Rule Result | | --- | --- | --- | --- | | "payroll_2026.CSV " | ".csv" | ".CSV" | TRUE (Case-insensitive) | | "csv_backup.xlsx" | ".csv" | ".lsx" | FALSE (Prefix ignored) | | "gl_export.csv" | ".csv" | ".csv" | TRUE | | (Blank cell) | ".csv" | — | FALSE | - **Formula (Case-Insensitive Suffix Conditional Formatting Formula)**: `=AND(NOT(ISBLANK(A2)), LEN($D$2) > 0, LOWER(RIGHT(TRIM(A2), LEN($D$2))) = LOWER($D$2))` - **Formula (Case-Sensitive Suffix Variant Using EXACT)**: `=AND(NOT(ISBLANK(A2)), LEN($D$2) > 0, EXACT(RIGHT(TRIM(A2), LEN($D$2)), $D$2))` ### Highlight Cells Matching Any Value in a Watchlist Range (COUNTIF Membership Rule) - **URL**: https://sheets.arte-soft.com/en/learn/highlight-cells-matching-any-value-in-allowlist-countif-rule/ - **Summary**: Replace brittle 10-way OR formulas with a table-driven COUNTIF($D$2:$D$5, TRIM(A2)) > 0 rule that highlights any row matching an editable watchlist or priority code table. *Table — Why a range-driven COUNTIF rule scales better than OR(A2="X", A2="Y", ...):* | Order Country (A) | Watchlist ($D$2:$D$4 = BG, DE, NL) | COUNTIF > 0 Flag | | --- | --- | --- | | "DE" | 1 match | TRUE (Highlight) | | "US" | 0 matches | FALSE | | " nl " (padded lowercase) | 1 match after TRIM | TRUE (Highlight) | | (Blank cell) | Guarded by NOT(ISBLANK) | FALSE | - **Formula (Watchlist Membership Highlight Rule)**: `=AND(NOT(ISBLANK(A2)), COUNTIF($D$2:$D$4, TRIM(A2)) > 0)` - **Formula (Inverted Non-Allowlist Exception Rule)**: `=AND(NOT(ISBLANK(A2)), COUNTIF($D$2:$D$4, TRIM(A2)) = 0)` ### Highlight Entire Rows by Day of Week or Incomplete Required Fields - **URL**: https://sheets.arte-soft.com/en/learn/highlight-specific-day-of-week-and-rows-with-missing-required-fields/ - **Summary**: Apply column-locked row formatting rules using WEEKDAY($B2, 2) = $G$2 to spotlight Friday/Monday cutoffs and AND(COUNTA($A2:$D2) > 0, COUNTBLANK($A2:$D2) > 0) to catch half-entered rows. *Table — Column-locked $B2 mixed references and avoiding blank-table highlighting:* | Shipment Row | Ship Date (ISO Weekday) | Target Day ($G$2 = 5 Fri) | Target-Day Flag | Incomplete-Row Flag | | --- | --- | --- | --- | --- | | SHP-01 (Complete, Fri May 8) | 5 (Friday) | 5 | TRUE | FALSE | | SHP-02 (Missing Carrier, Mon May 4) | 1 (Monday) | 5 | FALSE | TRUE (1 blank field) | | SHP-03 (Complete, Mon May 11) | 1 (Monday) | 5 | FALSE | FALSE | | Row 5 (All 4 cells blank) | — | 5 | FALSE | FALSE (Ignored) | - **Formula (Highlight Entire Rows Falling on a Specific ISO Weekday)**: `=AND(ISNUMBER($B2), WEEKDAY($B2, 2) = $G$2)` - **Formula (Highlight Partially Entered Rows Missing Required Fields)**: `=AND(COUNTA($A2:$D2) > 0, COUNTBLANK($A2:$D2) > 0)` ### Highlight Strictly Unique (Once-Only) Values with Blank-Safe COUNTIF Rules - **URL**: https://sheets.arte-soft.com/en/learn/highlight-unique-once-only-values-conditional-formatting-countif/ - **Summary**: Flag single-occurrence IDs, unmatched reconciliation entries, or one-time buyers using COUNTIF($A$2:$A$7, A2) = 1 while preventing blank rows from highlighting. *Table — Distinct values vs. strictly once-only (singleton) values:* | Reference Code | COUNTIF($A$2:$A$7, A2) | Once-Only Rule (= 1) | Interpretation | | --- | --- | --- | --- | | TXN-401 | 2 | FALSE | Matched pair | | TXN-402 | 1 | TRUE (Highlight) | Unmatched singleton | | TXN-401 | 2 | FALSE | Matched pair | | (Blank cell) | 0 | FALSE | Ignored empty row | | TXN-409 | 1 | TRUE (Highlight) | Unmatched singleton | - **Formula (Blank-Safe Singleton Highlight Rule)**: `=AND(NOT(ISBLANK(A2)), COUNTIF($A$2:$A$7, A2) = 1)` - **Formula (Extract All Singleton Values into an Exception List)**: `=FILTER(A2:A7, B2:B7 = TRUE)` ### Highway Fourth-Power Law & ESAL Axle Damage Formula - **URL**: https://sheets.arte-soft.com/en/learn/highway-pavement-fourth-power-law-esal-axle-load-equivalency-formula/ - **Summary**: Calculate the AASHO Road Test Fourth-Power Load Equivalency Factor LEF = (Axle_kips / 18)^4, Daily & Cumulative Design Million ESALs, and Cubic Nonlinear Damage Amplification vs Linear Weight. *Table — Overloading a truck axle by 50% multiplies highway fatigue damage 5.06x—and doubling it 16x!:* | AASHO Fourth-Power ESAL Metric (27-kip Axle vs 18-kip Ref, 400/day, 20 Yrs) | Formula | Verified Output | | --- | --- | --- | | Load Equivalency Factor (LEF) | (Axle_kips / Ref_18_kips) ^ 4 | 5.0625 ESALs (16.0000 @ 36 kips) | | Daily Corridor ESALs | Daily_Passes * LEF | 2,025.00 ESALs/day | | 20-Year Design Traffic (MESALs) | (Daily_ESALs * 365 * Yrs) / 10^6 | 14.7825 Million ESALs | | Damage vs Linear Weight Ratio | LEF / (Axle / Ref) = (Axle / Ref)^3 | 3.3750x Nonlinear Multiplier | - **Formula (AASHO Fourth-Power Cumulative Million ESALs Formula)**: `=LET(ax_k, B2, rf_k, B3, dp_n, B4, yr_s, B5, IF(OR(ax_k <= 0, rf_k <= 0, dp_n <= 0, yr_s <= 0), "Invalid Axle Traffic Input", LET(lf_4, (ax_k / rf_k) ^ 4, ROUND((dp_n * lf_4 * 365 * yr_s) / 1000000, 4))))` - **Formula (36-Kip Heavy Overload (16 ESALs) vs 1.8-Kip Passenger Sedan (0.0001 ESALs))**: `=IF(ISTEXT(E4), E4, ROUND((B2 / B3) ^ 4, 4))` ### Hildebrand Solubility Parameter (delta) & Cohesive Energy Density - **URL**: https://sheets.arte-soft.com/en/learn/hildebrand-solubility-parameter-cohesive-energy-density-formula/ - **Summary**: Calculate cohesive energy density c = (DeltaH_vap - R * T) / V_m (MPa) and Joel Hildebrand’s SI solubility parameter delta = SQRT(c) (MPa^0.5) to predict polymer-solvent miscibility. *Table — Turn "like dissolves like" into quantitative MPa^0.5 numbers!:* | Solvent at 298.15 K | DeltaH_vap (J/mol) & Vm (cm^3/mol) | Cohesive Energy Density c (MPa) | Hildebrand delta (MPa^0.5) | | --- | --- | --- | --- | | Acetone (Polar Aprotic Ketone) | 31,300 J/mol, 74.0 cm^3/mol | 389.47 MPa | 19.74 MPa^0.5 (9.65 cal^0.5/cm^1.5) | | Water (3D Hydrogen-Bond Network) | 43,990 J/mol, 18.07 cm^3/mol | 2,297.24 MPa | 47.93 MPa^0.5 | | Unphysical Vaporization (DeltaH <= R*T) | Cohesion Guard | "Invalid Thermodynamic Inputs" | Requires DeltaH_vap > R * T | - **Formula (Cohesive Energy Density c (MPa = J/cm^3) = (DeltaH_vap - R * T) / V_m)**: `=IF(OR(B3 <= 0, B4 <= 0, B2 <= 8.31446 * B4), "Invalid Thermodynamic Inputs", ROUND((B2 - 8.31446 * B4) / B3, 2))` - **Formula (SI Hildebrand Solubility Parameter delta (MPa^0.5) = SQRT(c))**: `=IF(OR(B3 <= 0, B4 <= 0, B2 <= 8.31446 * B4), "Invalid Thermodynamic Inputs", ROUND(SQRT((B2 - 8.31446 * B4) / B3), 2))` ### Hiley Dynamic Pile-Driving Set & Ultimate Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/hiley-dynamic-pile-driving-set-hammer-energy-loss-and-ultimate-capacity/ - **Summary**: Calculate Newtonian Cushion Impact Efficiency eta_impact, Net Transferred Blow Energy (kN·m), Hiley Ultimate Driving Resistance R_u (kN), and Safe Working Pile Capacity (kN at FS = 3.0). *Table — Why legacy Engineering-News formulas dangerously overpredict capacity—Hiley penalizes BOTH inelastic ram-pile impact AND elastic bounce!:* | Hiley Pile-Driving KPI (Wh=50 kN, H=1.2 m, Wp=35 kN, e=0.5, s=4 mm, c=12 mm) | Formula | Verified Output | | --- | --- | --- | | Newtonian Impact Efficiency | (Wh + (e^2) * Wp) / (Wh + Wp) | 0.6912 | | Net Blow Energy Delivered (kN·m) | eta_h * Wh * H_m * Impact_Efficiency | 35.25 kN·m | | Hiley Ultimate Resistance Ru (kN) | (Net_Energy_kNm * 1000) / (s_mm + c_mm/2) | 3,525.00 kN (1,762.50 @ s = 14 mm) | | Allowable Working Load (FS = 3.0) | Ultimate_Resistance_Ru / 3 | 1,175.00 kN (587.50 @ s = 14 mm) | - **Formula (Hiley Dynamic Pile Ultimate Driving Resistance Formula)**: `=LET(wh_k, B2, st_m, B3, eh_m, B4, wp_k, B5, rs_e, B6, st_s, B7, el_c, B8, IF(OR(wh_k <= 0, st_m <= 0, eh_m <= 0.4, eh_m > 1, wp_k <= 0, rs_e < 0, rs_e > 1, st_s < 0, el_c <= 0), "Invalid Pile Blow Input", LET(ei_m, (wh_k + (rs_e ^ 2) * wp_k) / (wh_k + wp_k), en_t, eh_m * wh_k * st_m * ei_m, ROUND((en_t * 1000) / (st_s + el_c / 2), 2))))` - **Formula (Softer Bearing Stratum Easier Set Check (Set Permanent Blow Set s = 14.0 mm/blow))**: `=IF(ISTEXT(E4), E4, ROUND(E4 / 3, 2))` ### Hill Equation: Cooperative Oxygen / Receptor Binding & Hill Coefficient (nH) - **URL**: https://sheets.arte-soft.com/en/learn/hill-equation-cooperative-ligand-binding-and-hill-coefficient/ - **Summary**: Calculate fractional receptor or hemoglobin saturation θ (%) = 100 / (1 + (EC_50 / [L])^n_H) and arterial-to-venous cooperative O_2 unloading across positive (n_H > 1), non-cooperative (n_H = 1), and negative (n_H < 1) allostery. *Table — How n_H = 2.8 allosteric cooperativity doubles hemoglobin’s tissue oxygen delivery!:* | Ligand / Oxygen Tension [L] (P50 = 26.6 mmHg) | Hill Coefficient nH | Fractional Saturation θ (%) | Allosteric Regime | | --- | --- | --- | --- | | Alveolar Arterial Blood (PO2 = 100 mmHg) | nH = 2.8 (Cooperative) | 97.61% | Near-Complete R-State Loading | | Resting Venous Tissue (PO2 = 40 mmHg) | nH = 2.8 (Cooperative) | 75.81% (-21.80% Unload) | Steep Sigmoidal Shoulder | | Hypothetical Non-Cooperative Site (PO2 = 40 mmHg) | nH = 1.0 (Hyperbolic) | 60.06% | Independent Langmuir/Michaelis | - **Formula (Hill Fractional Receptor / Hemoglobin Saturation θ (%))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid Hill Parameters", IF(B2 = 0, 0, ROUND(100 / (1 + ((B3 / B2) ^ B4)), 2)))` - **Formula (Hill Logit Linearization Y = LOG10(θ / (1 - θ)) = n_H * LOG10([L] / EC_50))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Hill Parameters", ROUND(B4 * LOG10(B2 / B3), 4))` ### Hill Sphere Radius (rH) & Orbital Moon Stability Calculator - **URL**: https://sheets.arte-soft.com/en/learn/hill-sphere-gravitational-capture-radius-satellite-stability/ - **Summary**: Calculate George William Hill’s pericenter gravitational dominance sphere r_H = a * (1 - e) * (m_planet / (3 * M_star))^(1/3) (km) for planetary moons, James Webb L1/L2 halo orbits, and exoplanets. *Table — Why Earth keeps the Moon—and why James Webb orbits 1.5 million km away at L2!:* | Planetary System (Star Mass Ms = 1.9885e30 kg) | Semi-Major Axis a (km) & e | Hill Sphere Radius r_H (km) | Prograde Moon Stability Limit (~r_H / 3) | | --- | --- | --- | --- | | Earth–Sun System (m = 5.9722e24 kg) | 149,597,871 km, e = 0.0167 | 1,471,546 km (~0.01 AU) | 490,515 km (Moon = 384,400 km Safe!) | | Hot Jupiter at 0.05 AU (m = 1.898e27 kg) | 7,500,000 km, e = 0.0000 | 512,009 km | 170,670 km (Tidal Stripping Zone) | | Parabolic/Hyperbolic Escape (e >= 1) | Bound-Orbit Guard | "Invalid Orbital Inputs" | Requires a > 0 and 0 <= e < 1 | - **Formula (Pericenter Hill Sphere Radius r_H (km) = a * (1 - e) * (m_p / (3 * M_s))^(1/3))**: `=IF(OR(B2 <= 0, B3 < 0, B3 >= 1, B4 <= 0, B5 <= B4), "Invalid Orbital Inputs", ROUND(B2 * (1 - B3) * ((B4 / (3 * B5)) ^ (1 / 3)), 0))` - **Formula (Conservative Prograde Satellite Stability Ceiling (~r_H / 3 in km))**: `=IF(OR(B2 <= 0, B3 < 0, B3 >= 1, B4 <= 0, B5 <= B4), "Invalid Orbital Inputs", ROUND((B2 * (1 - B3) * ((B4 / (3 * B5)) ^ (1 / 3))) / 3, 0))` ### HLOOKUP function: look up values across horizontal column headers - **URL**: https://sheets.arte-soft.com/en/learn/hlookup-exact-match-across-columns/ - **Summary**: Search the top row of a wide quarterly table for an exact period label and return the value from a specified row beneath it. *Table — When periods run left-to-right across the top row:* | Line item (A) | Q1 (B) | Q2 (C) | Q3 (D) | Q4 (E) | | --- | --- | --- | --- | --- | | Freight (row 2) | 410 | 465 | 520 | 490 | | Packaging (row 3) | 120 | 135 | 150 | 140 | - **Formula (Set the fourth argument to FALSE for exact header matches)**: `=HLOOKUP(G2,B1:E3,2,FALSE)` - **Formula (Missing headers (#N/A) and row-insertion fragility)**: `=IFNA(HLOOKUP(G2,B1:E3,2,FALSE),"Quarter not found")` ### Ho-Lee and Hull-White Short-Rate Drift Theta Calibration Formula - **URL**: https://sheets.arte-soft.com/en/learn/ho-lee-and-hull-white-theta-drift-calibration-to-initial-discount-curve/ - **Summary**: Calibrate no-arbitrage time-dependent drift theta(t) in Ho-Lee and one-factor Hull-White models to the observed forward curve f(0, t), slope df/dt, and convexity term. *Table — Include the Jensen convexity term when fitting initial forward rates:* | Calibration Quantity (t = 2 yr) | Closed-Form Expression | Exact Output | | --- | --- | --- | | Hull-White Convexity Term | (sig^2 / (2*a)) * (1 - EXP(-2*a*t)) | 0.000182 | | Hull-White Drift theta_HW(t) | df/dt + a * f(0,t) + (sig^2/(2*a))*(1 - EXP(-2*a*t)) | 0.014182 | | Ho-Lee Limit Drift (a = 0) | df/dt + sig^2 * t | 0.003788 | | Hull-White Bond Factor B(t, T=5) | (1 - EXP(-a * (T - t))) / a | 2.110534 (vs Ho-Lee 3.0) | - **Formula (Hull-White No-Arbitrage Drift theta(t) Formula with Ho-Lee Limit)**: `=LET(t_hor, B2, f_mkt, B3, df_slp, B4, a_rev, B5, sig_r, B6, IF(OR(t_hor < 0, a_rev < 0, sig_r < 0), "Invalid Curve Input", IF(a_rev < 0.000001, ROUND(df_slp + (sig_r^2) * t_hor, 6), ROUND(df_slp + a_rev * f_mkt + ((sig_r^2) / (2 * a_rev)) * (1 - EXP(-2 * a_rev * t_hor)), 6))))` - **Formula (Hull-White Bond Sensitivity Factor B(t, T) Formula)**: `=LET(tau_rem, B7 - B2, a_rev, B5, IF(tau_rem < 0, "Invalid Maturity", IF(a_rev < 0.000001, ROUND(tau_rem, 6), ROUND((1 - EXP(-a_rev * tau_rem)) / a_rev, 6))))` ### Generalized Hoek-Brown Rock Mass GSI & Strength Formula - **URL**: https://sheets.arte-soft.com/en/learn/hoek-brown-intact-to-fractured-rock-mass-gsi-mb-s-a-strength-criterion-formula/ - **Summary**: Calculate Generalized Hoek-Brown Reduced Constant mb, Rock Mass Cohesion Parameter s, Non-Linear Exponent a, and Triaxial Major Principal Failure Stress sigma_1 (MPa). *Table — Heavy production bench blasting (Disturbance D = 0.8) slashes jointed open-pit rock mass triaxial strength by 36% without changing intact drill-core UCS!:* | Hoek-Brown (2002) Rock Mass KPI (UCS=95 MPa, mi=17, GSI=58, sig3=4.5 MPa) | Formula | Verified Output | | --- | --- | --- | | Reduced Frictional Constant mb | mi * EXP((GSI - 100) / (28 - 14 * D)) | 3.793 (1.395 @ heavy blast D=0.8!) | | Rock Mass Cohesion Parameter s | EXP((GSI - 100) / (9 - 3 * D)) | 0.00940 (0.00172 @ D=0.8) | | Envelope Curvature Exponent a | 0.5 + (1/6) * (EXP(-GSI/15) - EXP(-20/3)) | 0.5033 | | Triaxial Strength sigma_1 (MPa) | sig3 + sigci * ((mb*(sig3/sigci) + s) ^ a) | 45.58 MPa (29.02 MPa = -36.3% @ D=0.8!) | - **Formula (Hoek, Carranza-Torres & Corkum (2002) GSI-to-Triaxial Failure Envelope Formula)**: `=LET(sc_m, B2, mi_c, B3, gs_i, B4, df_b, B5, s3_m, B6, mb_r, mi_c * EXP((gs_i - 100) / (28 - 14 * df_b)), sm_r, EXP((gs_i - 100) / (9 - 3 * df_b)), ae_x, 0.5 + (1 / 6) * (EXP(-gs_i / 15) - EXP(-20 / 3)), IF(OR(sc_m < 1, sc_m > 400, mi_c < 4, mi_c > 35, gs_i < 10, gs_i > 95, df_b < 0, df_b > 1, s3_m < 0), "Invalid Hoek-Brown Input", ROUND(s3_m + sc_m * ((mb_r * (s3_m / sc_m) + sm_r) ^ ae_x), 2)))` - **Formula (Heavy Open-Pit Production Blasting (`D = 0.8`) 36% Bench-Wall Strength Loss Check (Set D B5 = 0.8))**: `=IF(ISTEXT(E5), E5, ROUND(B3 * EXP((B4 - 100) / (28 - 14 * B5)), 3))` ### Hohmann Transfer Orbit formulas: Perigee Burn, Apogee Burn & Coast Time - **URL**: https://sheets.arte-soft.com/en/learn/hohmann-transfer-orbit-delta-v-and-transfer-time-formula/ - **Summary**: Calculate signed tangential velocity changes and coast time for an ideal two-impulse transfer between coplanar circular orbits. *Table — Ideal two-body transfer between circular orbits:* | Orbital Maneuver Quantity | Formula | LEO (6,678 km) -> GEO (42,164 km) | Result | | --- | --- | --- | --- | | Transfer Semi-Major Axis a_t | (B3 + B4) / 2 | (6,678 + 42,164) / 2 | 24,421.0 km | | Burn 1: GTO Perigee Kick | SQRT(mu/r1) * (SQRT(2*r2/(r1+r2)) - 1) | Enters elliptical GTO | 2.4258 km/s | | Burn 2: GEO Apogee Kick | SQRT(mu/r2) * (1 - SQRT(2*r1/(r1+r2))) | Circularizes at 35,786 km alt | 1.4668 km/s (Total 3.8926) | | Half-Ellipse Coast Duration | PI() * SQRT(a_t^3 / mu) / 3600 | Perigee to Apogee coast | 5.28 hours | - **Formula (Departure burn: signed tangential delta-v)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0),"Invalid inputs",ROUND(SQRT(B2 / B3) * (SQRT((2 * B4) / (B3 + B4)) - 1), 4)))` - **Formula (Half-ellipse coast time in hours)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0),"Invalid inputs",IF(B3=B4,0,ROUND((PI()*SQRT((((B3+B4)/2)^3)/B2))/3600,2))))` - **Formula (Arrival burn: signed tangential delta-v)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0),"Invalid inputs",ROUND(SQRT(B2 / B4) * (1 - SQRT((2 * B3) / (B3 + B4))), 4)))` ### Hollomon Strain Hardening & Considere Necking Formula - **URL**: https://sheets.arte-soft.com/en/learn/hollomon-power-law-strain-hardening-and-considere-necking-formula/ - **Summary**: Calculate John Hollomon’s True Flow Stress sigma_true = K * (eps_true ^ n), Armand Considère’s Diffuse Necking True Strain Limit (eps_u = n), Maximum Uniform Engineering Elongation EXP(n) - 1, and Stamping Instability Status. *Table — Why sheet-metal stamping splits right when true plastic strain reaches Hollomon’s exponent n!:* | Hollomon-Considère Metric (K=600 MPa, Exponent n=0.25, Panel Strain eps=0.0625) | Formula | Verified Output | | --- | --- | --- | | True Plastic Flow Stress (MPa) | K * (eps_true ^ n) | 300.00 MPa (600.00 MPa @ eps=1.0) | | Considère Necking True Strain | n (From d_sigma / d_eps = sigma) | 0.2500 | | Max Uniform Eng Elongation e_u | EXP(n) - 1 | 0.2840 (28.40% Engineering Strain) | | Sheet-Forming Split Gate | Applied_True_Strain <= n | Stable Uniform Work-Hardening | - **Formula (Hollomon True Flow Stress & Considère Necking Gate Formula)**: `=LET(k_cf, B2, n_ex, B3, ep_t, B4, IF(OR(k_cf <= 0, n_ex <= 0, n_ex >= 1, ep_t <= 0), "Invalid Plasticity Parameter", ROUND(k_cf * (ep_t ^ n_ex), 2)))` - **Formula (Post-Considère Stamping Split Check (eps = 0.30) & Unit-Strain K Identity (eps = 1.0))**: `=IF(ISTEXT(E2), E2, IF(B4 > B3, "Necking Instability (eps > n)", "Stable Uniform Work-Hardening"))` ### Holmström-Milgrom Optimal Incentive Intensity (beta*) Formula - **URL**: https://sheets.arte-soft.com/en/learn/holmstrom-milgrom-linear-moral-hazard-optimal-incentive-beta/ - **Summary**: Design an optimal linear bonus contract w(x) = alpha + beta * x under CARA moral hazard using beta* = k^2 / (k^2 + r * c * sigma^2), base salary alpha*, and agency loss. *Table — Quantify the classic Incentive-Insurance Trade-Off in sales and executive pay:* | LEN Contract Quantity (k=10, c=2, r=0.05, sig^2=1500) | Formula | Verified Output | | --- | --- | --- | | Optimal Commission Share (beta*) | k_p^2 / (k_p^2 + r * c * sigma^2) | 0.4000 (40.00%) | | Induced Agent Effort (e*) | k_p * beta* / c | 2.0000 (vs FB = 5.00) | | Optimal Fixed Base Pay (alpha*) | U_0 + 0.5*(r*sigma^2 - k^2/c)*(beta*)^2 | 42.00 | | Principal Net Expected Profit | (k_p^2 / (2 * c)) * beta* - U_0 (if U_0=0: +10) | -30.00 (Net Surplus +10.00) | - **Formula (Holmström-Milgrom Optimal Piece-Rate Commission Intensity beta* Formula)**: `=LET(k_pr, B2, c_ef, B3, r_av, B4, v_ns, B5, IF(OR(k_pr <= 0, c_ef <= 0, r_av < 0, v_ns < 0), "Invalid Contract Input", ROUND((k_pr^2) / ((k_pr^2) + r_av * c_ef * v_ns), 4)))` - **Formula (Participation-Binding Base Salary alpha* and Joint Certainty-Equivalent Gain Formula)**: `=LET(k_pr, B2, c_ef, B3, r_av, B4, v_ns, B5, u_res, B6, IF(OR(k_pr <= 0, c_ef <= 0, r_av < 0, v_ns < 0), "Invalid Contract Input", LET(bt_s, (k_pr^2) / ((k_pr^2) + r_av * c_ef * v_ns), ROUND(u_res + 0.5 * (r_av * v_ns - (k_pr^2) / c_ef) * (bt_s^2), 4))))` ### Holmstrom-Milgrom Multitask Incentive Formula - **URL**: https://sheets.arte-soft.com/en/learn/holmstrom-milgrom-multitask-incentive-distortion-formula/ - **Summary**: Calculate Bengt Holmstrom and Paul Milgrom’s (1991) multitask optimal piece rate beta_1* when measured volume effort substitutes away from unmeasured quality effort (c_12 > 0). *Table — Understand why high-powered piece rates backfire when quality is unmeasurable!:* | Incentive Design Metric (v_1=1, v_2=0.8, c_1=c_2=2, c_12=1, r*sig^2=1) | Formula | Verified Output | | --- | --- | --- | | Naive Single-Task Piece Rate (c_12 Ignored) | v_1 / (1 + r * c_1 * sigma_1^2) | 0.3333 (33.33%) | | Exact Multitask Optimal Piece Rate (beta_1*) | MAX(0, (v_1 - v_2*c_12/c_2) / (1 + r*sig^2*(det_C/c_2))) | 0.2400 (24.00%) | | Multitask Distortion Haircut | beta_single - beta_1* | 0.0933 (933 bps Muted) | | High-Safety Stakes Case (v_2 = 2.20) | v_1 - v_2*(c_12/c_2) <= 0 | 0.0000 (Flat Fixed Salary) | - **Formula (Holmstrom-Milgrom (1991) Multitask Optimal Commission Formula)**: `=LET(v_ms, B2, v_un, B3, c_m1, B4, c_u2, B5, c_x, B6, r_ra, B7, sg_v, B8, dt_c, c_m1 * c_u2 - (c_x ^ 2), IF(OR(v_ms <= 0, v_un < 0, c_m1 <= 0, c_u2 <= 0, dt_c <= 0, r_ra < 0, sg_v < 0), "Invalid Convex Cost Matrix", ROUND(MAX(0, (v_ms - v_un * (c_x / c_u2)) / (1 + r_ra * sg_v * (dt_c / c_u2))), 4)))` - **Formula (Single-Task Benchmark & Incentive Regime Formula)**: `=IF(ISTEXT(E3), E3, IF(E3 = 0, "Flat Fixed Salary (Zero Piece Rate)", "Muted Multitask Commission"))` ### Holmström Team Moral Hazard & 1/N Free-Rider Formula - **URL**: https://sheets.arte-soft.com/en/learn/holmstrom-moral-hazard-in-teams-free-rider-and-budget-breaker/ - **Summary**: Quantify Bengt Holmström’s (1982) 1/N team partnership free-rider effort e_Nash = k_p/(N*c) against first-best e_FB = k_p/c and prove the exact ((N - 1)/N)^2 surplus loss. *Table — Why equal-sharing partnerships underinvest by 1/N — and why Holmström’s budget-breaker restores full effort!:* | Holmström Team Metric (N=5, k_p=20, c=2) | Formula | Verified Output | | --- | --- | --- | | First-Best / Budget-Breaker Effort (e_FB) | k_p / c | 10.0000 | | Equal-Share 1/N Nash Effort (e_Nash) | k_p / (N * c) | 2.0000 (1/5 of First-Best) | | First-Best Team Net Surplus (S_FB) | N * k_p^2 / (2 * c) | 500.00 | | 1/N Partnership Net Surplus (S_Nash) | S_FB * (2*N - 1) / N^2 | 180.00 (Loss = 320.00, -64%!) | - **Formula (Equal-Sharing 1/N Partnership Nash Effort & Net Surplus Formula)**: `=LET(n_tm, B2, kp_v, B3, c_ef, B4, IF(OR(n_tm < 1, kp_v <= 0, c_ef <= 0), "Require N >= 1 and Positive Parameters", LET(s_fb, n_tm * (kp_v^2) / (2 * c_ef), ROUND(s_fb * (2 * n_tm - 1) / (n_tm^2), 4))))` - **Formula (Exact Free-Rider Deadweight Surplus Loss S_FB * ((N - 1) / N)^2 Formula)**: `=LET(n_tm, B2, kp_v, B3, c_ef, B4, IF(OR(n_tm < 1, kp_v <= 0, c_ef <= 0), "Require N >= 1 and Positive Parameters", LET(s_fb, n_tm * (kp_v^2) / (2 * c_ef), ROUND(s_fb * (((n_tm - 1) / n_tm)^2), 4))))` ### Holmström-Tirole Pledgeable Income & Leverage Multiplier - **URL**: https://sheets.arte-soft.com/en/learn/holmstrom-tirole-pledgeable-income-and-borrowing-capacity-formula/ - **Summary**: Calculate unit pledgeable income rho_0 = p_H*(R - b/dp), the Holmström-Tirole (1997) equity multiplier 1/(1 - rho_0/gamma), and maximum borrowing capacity I_max - A. *Table — Why positive-NPV firms still hit hard net-worth leverage caps: pledgeable income vs total return!:* | Holmström-Tirole Metric (A=40, p_H=0.80, dp=0.30, R=1.75, b=0.30) | Formula | Verified Output | | --- | --- | --- | | Total Social Return per $1 (rho_1) | p_H * R | 1.4000 (+40% NPV) | | Unit Pledgeable Income (rho_0) | p_H * (R - b / dp) | 0.6000 (< gamma = 1.00) | | Equity Investment Multiplier (k_mult) | 1 / (1 - rho_0 / gamma) | 2.5000x Net Worth | | Max Project Scale I_max (Debt = I_max - A) | k_mult * A | 100.00 (Max Debt = 60.00) | - **Formula (Unit Pledgeable Income rho_0 & Equity Multiplier Formula)**: `=LET(a_nw, B2, p_hi, B3, d_pr, B4, r_un, B5, b_pv, B6, gm_r, B7, IF(OR(a_nw <= 0, p_hi <= 0, p_hi > 1, d_pr <= 0, d_pr > p_hi, r_un <= 0, b_pv < 0, gm_r <= 0), "Invalid Pledgeability Input", IF(p_hi * r_un <= gm_r, "Negative NPV Project", LET(rh_0, p_hi * (r_un - (b_pv / d_pr)), IF(rh_0 >= gm_r, "Self-Financing (No Net-Worth Cap)", IF(rh_0 <= 0, "Zero External Borrowing Capacity", ROUND(1 / (1 - (rh_0 / gm_r)), 4)))))))` - **Formula (Maximum Project Scale I_max & Credit-Crunch Sensitivity Formula)**: `=IF(ISTEXT(E3), IF(E3 = "Zero External Borrowing Capacity", B2, E3), ROUND(E3 * B2, 4))` ### HOMA-IR & QUICKI Fasting Insulin Resistance Indices Formula - **URL**: https://sheets.arte-soft.com/en/learn/homa-ir-and-quicki-insulin-resistance-indices-formula/ - **Summary**: Calculate Homeostatic Model Assessment of Insulin Resistance HOMA-IR = (Insulin_uIUmL * Glucose_mgdL) / 405 (or / 22.5 in mmol/L) and Quantitative Insulin Sensitivity Check Index QUICKI = 1 / (LOG10(Insulin) + LOG10(Glucose_mgdL)). *Table — Quantify metabolic insulin resistance and sensitivity from a single fasting draw!:* | Metabolic Phenotype | Fasting Insulin / Glucose (mg/dL) | HOMA-IR (/ 405) | QUICKI Sensitivity Index | | --- | --- | --- | --- | | Insulin-Sensitive Normoglycemic | 6.0 uIU/mL \| 88 mg/dL | 1.30 (< 2.0 Optimal) | 0.3673 (> 0.35 Sensitive) | | Borderline Metabolic Syndrome | 12.0 uIU/mL \| 98 mg/dL | 2.90 | 0.3257 | | Marked Insulin Resistance | 18.0 uIU/mL \| 108 mg/dL | 4.80 (>= 2.5 Resistant!) | 0.3041 (< 0.33 Resistant!) | - **Formula (HOMA-IR Score from Fasting Insulin (uIU/mL) & Glucose (mg/dL))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Fasting Lab Input", ROUND((B2 * B3) / 405, 2))` - **Formula (QUICKI Quantitative Insulin Sensitivity Check Index)**: `=IF(OR(B2 <= 0, B3 <= 0, (LOG10(B2) + LOG10(B3)) <= 0), "Invalid Fasting Lab Input", ROUND(1 / (LOG10(B2) + LOG10(B3)), 4))` ### Hooghoudt Subsurface Tile Drain Spacing Formula: Equivalent Depth d_e & Midpoint Mound m - **URL**: https://sheets.arte-soft.com/en/learn/hooghoudt-steady-subsurface-tile-drain-spacing-formula/ - **Summary**: Size parallel agricultural subsurface pipe/ditch drain spacing L (m) under steady-state rainfall or leaching recharge q using S. B. Hooghoudt’s (1940) equation L = SQRT((8 * K_b * d_e * m + 4 * K_a * m^2) / q). *Table — Account for radial flow convergence near perforated tile pipes via Hooghoudt’s Equivalent Depth d_e!:* | Drainage Scenario (m = 0.60 m, d_e = 1.40 m, q = 0.007 m/day = 7 mm/d) | Soil Conductivity (m/day) | Hooghoudt Drain Spacing L (m) | | --- | --- | --- | | Silty Clay Loam (Homogeneous K_a = K_b = 0.45 m/day) | K = 0.45 m/day | L = 22.90 m | | Sandy Loam (Homogeneous K_a = K_b = 1.20 m/day) | K = 1.20 m/day | L = 37.40 m | | Layered Soil (K_a = 0.60 above, K_b = 1.50 below) | Higher permeable substratum | L = 39.54 m | - **Formula (Hooghoudt Two-Layer Steady-State Tile Drain Spacing L (m))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B6 >= B2), "Invalid Conductivity, Equivalent Depth, Mound Height, or Recharge q >= K_a", ROUND(SQRT((8 * B3 * B4 * B5 + 4 * B2 * (B5 ^ 2)) / B6), 2))` - **Formula (Below-Drain Substratum Flow Share (%) of Total Drainage Discharge)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Hooghoudt Inputs", ROUND(100 * (8 * B3 * B4 * B5) / (8 * B3 * B4 * B5 + 4 * B2 * (B5 ^ 2)), 2))` ### Hoover Index (Robin Hood / Schutz Index) & Exact Parity Reallocation Share - **URL**: https://sheets.arte-soft.com/en/learn/hoover-robin-hood-index-and-schutz-redistribution-share-formula/ - **Summary**: Calculate the Hoover (Robin Hood / Pietra) index 0.5 * SUM(|resource_share - population_share|) and the exact volume that must shift from surplus to deficit units to reach equal per-capita parity. *Table — Operational meaning of the Hoover / Robin Hood index:* | District | Headcount Share | Budget Share | Absolute Gap \|s_x - s_p\| | | --- | --- | --- | --- | | North (30 staff, 150K) | 0.3000 | 0.1500 | 0.1500 (Deficit -150K) | | East (30 staff, 210K) | 0.3000 | 0.2100 | 0.0900 (Deficit -90K) | | South (20 staff, 240K) | 0.2000 | 0.2400 | 0.0400 (Surplus +40K) | | West (20 staff, 400K) | 0.2000 | 0.4000 | 0.2000 (Surplus +200K) | - **Formula (Row-Level Absolute Share Gap & Hoover Index Formula)**: `=ROUND(0.5 * SUM(D2:D5), 4)` - **Formula (Exact Reallocation Volume Required for Per-Capita Parity)**: `=ROUND(G2 * SUM(C2:C5), 2)` ### Horton Soil Infiltration Capacity Curve f(t) & Cumulative Depth F(t) - **URL**: https://sheets.arte-soft.com/en/learn/horton-infiltration-decay-capacity-and-cumulative-depth/ - **Summary**: Calculate exponentially decaying storm infiltration capacity f(t) = f_c + (f_0 - f_c) * EXP(-k * t) (mm/hr) and exact integrated cumulative infiltration depth F(t) = f_c * t + ((f_0 - f_c) / k) * (1 - EXP(-k * t)) (mm). *Table — Model how dry soil infiltration saturates down to equilibrium conductivity during a storm!:* | Elapsed Storm Time t (Sandy Loam: f_0 = 75 mm/hr, f_c = 10 mm/hr, k = 2.0 /hr) | Instantaneous Rate f(t) (mm/hr) | Cumulative Infiltrated F(t) (mm) | Soil Saturation State | | --- | --- | --- | --- | | Storm Start (t = 0.0 hr) | 75.00 mm/hr (= f_0) | 0.00 mm | Dry capillary suction peak | | 30 Minutes (t = 0.5 hr) | 33.91 mm/hr | 25.54 mm | Rapid pore-filling transition | | 2 Hours (t = 2.0 hr) | 11.19 mm/hr (~ f_c) | 51.90 mm | Near-saturated equilibrium | - **Formula (Horton Instantaneous Infiltration Rate f(t) (mm/hr))**: `=IF(OR(B3 < 0, B2 < B3, B4 <= 0, B5 < 0), "Invalid Horton Soil Parameters", ROUND(B3 + (B2 - B3) * EXP(-B4 * B5), 2))` - **Formula (Cumulative Infiltrated Water Depth F(t) (mm))**: `=IF(OR(B3 < 0, B2 < B3, B4 <= 0, B5 < 0), "Invalid Horton Soil Parameters", ROUND((B3 * B5) + ((B2 - B3) / B4) * (1 - EXP(-B4 * B5)), 2))` ### Horvitz-Thompson vs Hajek Inverse Probability Weighting (IPW) ATE - **URL**: https://sheets.arte-soft.com/en/learn/horvitz-thompson-vs-hajek-inverse-probability-weighting-ate/ - **Summary**: Compare unnormalized Horvitz-Thompson IPW against self-normalized Hajek IPW in Excel and Arte Sheets to eliminate finite-sample baseline-level distortion and audit propensity positivity. *Table — See in 6 rows why unnormalized Horvitz-Thompson IPW fails location invariance:* | IPW Estimator | Denominator Rule | Result on Deterministic +10 Data | | --- | --- | --- | | Horvitz-Thompson (Unnormalized) | Divides both arms by nominal N = 6 | +65.0000 (Severe Level Distortion!) | | Hajek Self-Normalized IPW | Divides by SUM(D/e)=9 and SUM((1-D)/(1-e))=6 | +10.0000 (Exact True Effect) | | Positivity Overlap Guard | Requires 0 < MIN(e) and MAX(e) < 1 | Flags Extreme Propensity Tail | - **Formula (Hajek Self-Normalized IPW Average Treatment Effect Formula)**: `=IF(OR(MIN(C2:C7) <= 0, MAX(C2:C7) >= 1, SUM(E2:E7) <= 0, SUM(F2:F7) <= 0), "Positivity Violation: 0 < e < 1", ROUND(SUMPRODUCT(E2:E7, D2:D7) / SUM(E2:E7) - SUMPRODUCT(F2:F7, D2:D7) / SUM(F2:F7), 4))` - **Formula (Unnormalized Horvitz-Thompson IPW Comparison Formula)**: `=IF(OR(MIN(C2:C7) <= 0, MAX(C2:C7) >= 1), "Positivity Violation: 0 < e < 1", ROUND((SUMPRODUCT(E2:E7, D2:D7) - SUMPRODUCT(F2:F7, D2:D7)) / ROWS(D2:D7), 4))` ### Expected Calibration Error (ECE) & Expected-to-Observed (E/O) Risk Ratio - **URL**: https://sheets.arte-soft.com/en/learn/hosmer-lemeshow-expected-calibration-ratio-and-ece-formula/ - **Summary**: Audit clinical risk scores and ML classifiers across probability bins using Expected Calibration Error ECE = SUM(n_b * |p_pred - p_obs|) / N and overall Expected-to-Observed event ratio E/O = SUM(n_b * p_pred) / SUM(n_b * p_obs). *Table — High AUC discrimination does NOT guarantee calibrated probabilities!:* | Calibration Bin (n_b = 100 Patients Each) | Mean Predicted p_pred | Observed Event Rate p_obs | Absolute Calibration Gap \|pred - obs\| | | --- | --- | --- | --- | | Bin 1 (Low Risk) & Bin 2 (Low-Med) | 0.08 / 0.25 | 0.10 / 0.20 | 0.02 / 0.05 | | Bin 3 (Med-High) & Bin 4 (High Risk) | 0.60 / 0.85 | 0.52 / 0.88 | 0.08 / 0.03 | | Overall Cohort Summary (N = 400) | Expected = 178 | Observed = 170 (E/O = 1.0471) | Weighted ECE = 0.0450 (4.50%) | - **Formula (Sample-Weighted Expected Calibration Error (ECE) Across 4 Probability Bins)**: `=IF(SUM(B2:B5) <= 0, "Empty Validation Cohort", ROUND((B2 * ABS(C2 - D2) + B3 * ABS(C3 - D3) + B4 * ABS(C4 - D4) + B5 * ABS(C5 - D5)) / SUM(B2:B5), 4))` - **Formula (Calibration-in-the-Large Expected-to-Observed Ratio (E / O))**: `=IF(SUMPRODUCT(B2:B5, D2:D5) <= 0, "Zero Observed Events", ROUND(SUMPRODUCT(B2:B5, C2:C5) / SUMPRODUCT(B2:B5, D2:D5), 4))` ### Hospital Case-Mix Index (CMI) & Cost per Case Formula - **URL**: https://sheets.arte-soft.com/en/learn/hospital-case-mix-index-cmi-adjusted-discharge-and-cost-per-case-formula/ - **Summary**: Calculate Hospital Case-Mix Index (CMI = Total_DRG_Weights / Discharges), AHA Outpatient-Adjusted Discharges, CMI-Adjusted Equivalent Discharges, and Acuity-Normalized Cost per Case. *Table — Normalize hospital operating costs for BOTH outpatient volume AND inpatient acuity!:* | HFMA Hospital Acuity Metric (10k Disch, 16k DRG Wt, $200M IP / $100M OP, $192M Cost) | Formula | Verified Output | | --- | --- | --- | | Hospital Case-Mix Index (CMI) | Sum_DRG_Weights / Inpatient_Discharges | 1.6000 | | AHA Outpatient-Adjusted Discharges | Discharges * ((IP_Rev + OP_Rev) / IP_Rev) | 15,000.00 (Factor = 1.50x) | | CMI-Adjusted Equivalent Discharges | AHA_Adjusted_Discharges * CMI | 24,000.00 | | Acuity-Normalized Cost per Case ($) | Total_Operating_Cost / CMI_Equiv_Disch | $8,000.00 ($12,000 @ $0 OP Rev) | - **Formula (HFMA Acuity-Normalized Cost per Equivalent Discharge Formula)**: `=LET(ds_i, B2, wt_s, B3, rv_i, B4, rv_o, B5, op_x, B6, IF(OR(ds_i <= 0, wt_s <= 0, rv_i <= 0, rv_o < 0, op_x <= 0), "Invalid Hospital Census", LET(cm_i, wt_s / ds_i, ad_d, ds_i * ((rv_i + rv_o) / rv_i), eq_d, ad_d * cm_i, ROUND(op_x / eq_d, 2))))` - **Formula (Pure Inpatient vs Quaternary Acuity Sensitivity Check)**: `=IF(ISTEXT(E2), E2, ROUND(E3 * E2, 2))` ### Hospital MS-DRG & High-Cost Outlier Payment Formula - **URL**: https://sheets.arte-soft.com/en/learn/hospital-ms-drg-case-mix-index-blended-rate-and-outlier-payment-formula/ - **Summary**: Calculate CMS Inpatient Prospective Payment System (IPPS) Base MS-DRG Reimbursement, Cost-to-Charge Ratio (CCR) Estimated Case Cost, 80% High-Cost Outlier Add-On, and Total Claim Payment. *Table — Deflate hospital chargemaster bills by CCR before testing CMS outlier stop-loss!:* | CMS IPPS Outlier Metric (Base=$7k, Wt=2.50, Charges=$250k, CCR=0.30, Stop=$42.5k) | Formula | Verified Output | | --- | --- | --- | | Base MS-DRG Bundle Payment ($) | Hospital_Base_Rate * DRG_Weight | $17,500.00 | | CCR-Deflated Case Cost ($) | Billed_Charges * Hospital_CCR | $75,000.00 ($60k Outlier Stop) | | 80% High-Cost Outlier Add-On ($) | 0.80 * MAX(0, Case_Cost - (Base + Stop)) | $12,000.00 ($0 @ $120k Charges) | | Total IPPS Claim Reimbursement ($) | Base_DRG + Outlier_Addon | $29,500.00 | - **Formula (CMS IPPS Base MS-DRG + 80% Outlier Payment Formula)**: `=LET(bs_r, B2, dr_w, B3, ch_g, B4, cc_r, B5, fl_s, B6, IF(OR(bs_r <= 0, dr_w <= 0, ch_g < 0, cc_r <= 0, cc_r > 1, fl_s <= 0), "Invalid IPPS Claim", LET(bs_p, bs_r * dr_w, cs_e, ch_g * cc_r, ot_p, 0.8 * MAX(0, cs_e - (bs_p + fl_s)), ROUND(bs_p + ot_p, 2))))` - **Formula (Standalone High-Cost Outlier Add-On Audit Formula)**: `=IF(ISTEXT(E2), E2, ROUND(0.8 * MAX(0, (B4 * B5) - (E2 + B6)), 2))` ### HOSPITAL Score for Potentially Avoidable 30-Day Readmission (0–13) - **URL**: https://sheets.arte-soft.com/en/learn/hospital-score-potentially-avoidable-30-day-readmission-donze/ - **Summary**: Calculate Jacques Donzé’s internationally validated HOSPITAL score (0–13 points: Hemoglobin < 12, Oncology, Sodium < 135, Procedure, Urgent Index Type, Prior Admissions, LOS >= 5) before medical discharge. *Table — Targeting POTENTIALLY AVOIDABLE readmissions rather than unavoidable planned hospitalizations!:* | HOSPITAL Score Band (0–13 Points) | Avoidable 30-Day Readmission Rate | Discharge Stewardship Action | | --- | --- | --- | | 0 – 4 points | 5.8% (Low Risk) | Standard Written Discharge Summary & PCP Handoff | | 5 – 6 points | 11.9% (Intermediate Risk) | Structured Teach-Back & Post-Discharge Nurse Phone Check | | >= 7 points (7 – 13) | 22.8% (High Risk) | Pharmacist Med-Rec + 7-Day Bridge Clinic Appointment | - **Formula (Total Donzé HOSPITAL Readmission Score (0 to 13 Points))**: `=IF(OR(B2 <= 2, B3 < 0, B3 > 1, B4 < 100, B5 < 0, B5 > 2, B6 < 0, B7 < 0), "Invalid HOSPITAL Inputs", IF(B2 < 12, 1, 0) + (2 * B3) + IF(B4 < 135, 1, 0) + B5 + IF(B6 > 5, 5, IF(B6 >= 2, 2, 0)) + IF(B7 >= 5, 2, 0))` - **Formula (HOSPITAL Potentially Avoidable Readmission Risk Tier)**: `=IF(OR(B2 <= 2, B3 < 0, B3 > 1, B4 < 100, B5 < 0, B5 > 2, B6 < 0, B7 < 0), "Invalid HOSPITAL Inputs", IF(IF(B2 < 12, 1, 0) + (2 * B3) + IF(B4 < 135, 1, 0) + B5 + IF(B6 > 5, 5, IF(B6 >= 2, 2, 0)) + IF(B7 >= 5, 2, 0) <= 4, "Low Risk (0-4 — 5.8% Avoidable)", IF(IF(B2 < 12, 1, 0) + (2 * B3) + IF(B4 < 135, 1, 0) + B5 + IF(B6 > 5, 5, IF(B6 >= 2, 2, 0)) + IF(B7 >= 5, 2, 0) <= 6, "Intermediate Risk (5-6 — 11.9%)", "High Risk (>=7 — 22.8% Avoidable Readmission)")))` ### Hot-Dip Galvanizing Zinc Thickness & Service-Life Formula - **URL**: https://sheets.arte-soft.com/en/learn/hot-dip-galvanizing-zinc-kettle-pickup-coating-thickness-and-service-life/ - **Summary**: Calculate Metallurgical Zinc Coating Thickness (um and mils) from Area Mass (g/m²), Total Molten-Kettle Zinc Pickup Weight (kg), and ISO 14713 Time to First Maintenance (years). *Table — Hot-dip galvanizing service life scales linearly with zinc micron thickness—and ISO 9223 atmosphere class changes life 3x!:* | ASTM A123 / ISO 1461 Galvanizing KPI (610 g/m² on 48 m² Steel, rho=7.14, C3=1.4 um/yr) | Formula | Verified Output | | --- | --- | --- | | Metallurgical Zinc Thickness (um) | Zinc_Mass_g_m2 / Zinc_Density_g_cm3 | 85.43 um (exceeds Grade 85 um spec) | | Imperial Coating Gauge (mils) | (Zinc_Mass_g_m2 / Zinc_Density) / 25.4 | 3.36 mils | | Total Kettle Zinc Pickup (kg) | (Zinc_Mass_g_m2 * Wetted_Area_m2) / 1000 | 29.28 kg | | Time to First Maintenance (years) | Coating_Thickness_um / Corrosion_um_yr | 61.0 years (20.3 yr @ coastal C4 4.2 um/yr!) | - **Formula (ASTM A123 / ISO 1461 Zinc Mass-to-Thickness & ISO 9223 Corrosion Life Formula)**: `=LET(mz_g, B2, as_m, B3, rz_g, B4, cr_u, B5, tu_m, mz_g / rz_g, IF(OR(mz_g < 100, mz_g > 2000, as_m <= 0, rz_g < 6.8, rz_g > 7.5, cr_u <= 0.05, cr_u > 25), "Invalid Galvanizing Input", ROUND(tu_m / cr_u, 1)))` - **Formula (Coastal Marine Salt-Spray ISO C4/C5 Environment Check (Set Corrosion Rate B5 = 4.20 um/yr))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * B3) / 1000, 2))` ### Hot Extrusion Ratio, Johnson Ram Pressure & Exit Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/hot-extrusion-ratio-johnson-ram-pressure-and-exit-velocity-formula/ - **Summary**: Calculate Extrusion Area Ratio R_ext = A_0 / A_f, Direct-Extrusion Peak Ram Pressure p_ext (MPa), Hydraulic Press Force (MN), and Runout-Table Profile Exit Velocity (m/min). *Table — Why direct billet extrusion needs extra container-wall friction tonnage at stroke start—and shoots profile out 40x faster than the ram!:* | Direct Hot Extrusion KPI (D0=200 mm, Af=785 mm², Yf=48 MPa, vram=12, L=500 mm) | Formula | Verified Output | | --- | --- | --- | | Extrusion Area Ratio R_ext | ((PI()/4) * D0^2) / Profile_Area_Af | 40.02 (89.76 @ thin Af = 350 mm²) | | Peak Breakthrough Pressure (MPa) | Yf * (0.8 + 1.5*LN(R_ext) + 2*L/D0) | 544.04 MPa (602.19 @ Af = 350 mm²) | | Hydraulic Press Force Fram (MN) | (p_ext_MPa * A0_mm2) / 1,000,000 | 17.09 MN (18.92 MN @ Af = 350 mm²) | | Profile Runout Speed (m/min) | (Ram_mm_s * R_ext * 60) / 1000 | 28.81 m/min (64.63 m/min @ Af=350!) | - **Formula (Johnson Direct-Extrusion Breakthrough Tonnage & Continuity Runout Formula)**: `=LET(db_m, B2, af_m, B3, yf_m, B4, vr_m, B5, lb_m, B6, IF(OR(db_m <= 30, af_m <= 0, yf_m <= 0, vr_m <= 0, lb_m < 0), "Invalid Extrusion Input", LET(az_m, (PI() / 4) * (db_m ^ 2), rx_t, az_m / af_m, IF(rx_t < 2, "RATIO BELOW EXTRUSION MIN", ROUND((vr_m * rx_t * 60) / 1000, 2)))))` - **Formula (Thin-Wall Solar Frame 89.8:1 High-Ratio Speed-Cracking Check (Set Profile Area A_f = 350.0 mm²))**: `=IF(ISTEXT(E5), E5, LET(az_m, (PI() / 4) * (B2 ^ 2), rx_t, az_m / B3, px_m, B4 * (0.8 + 1.5 * LN(rx_t) + (2 * B6) / B2), ROUND((px_m * az_m) / 1000000, 2)))` ### Hot-Mix Asphalt Air Voids (Va), VMA & VFA Formula - **URL**: https://sheets.arte-soft.com/en/learn/hot-mix-asphalt-vma-vfa-air-voids-and-effective-binder-volumetrics-formula/ - **Summary**: Calculate Compacted Specimen Air Voids V_a (%), Voids in Mineral Aggregate VMA (%), Voids Filled with Asphalt VFA (%), and Superpave Volumetric Acceptance Status. *Table — Below 3% Air Voids hot-mix asphalt bleeds and ruts under summer truck tires—above 7% it oxidizes and ravel-cracks!:* | Superpave HMA Volumetric KPI (Gmb=2.380, Gmm=2.480, Gsb=2.660, Pb=5.3%) | Formula | Verified Output | | --- | --- | --- | | Compacted Air Voids Va (%) | ((Gmm - Gmb) / Gmm) * 100 | 4.03% (1.61% @ Gmb=2.440 flushing!) | | Voids in Mineral Agg VMA (%) | 100 - ((Gmb * (100 - Pb)) / Gsb) | 15.27% (13.13% @ Gmb=2.440 crushed!) | | Voids Filled w/ Asphalt VFA (%) | ((VMA - Va) / VMA) * 100 | 73.59% (87.72% @ Gmb=2.440 rutting!) | | 12.5 mm Superpave Spec Gate | Va in [3,5] & VMA>=14 & VFA in [65,75] | SUPERPAVE SPEC PASS | - **Formula (AASHTO R 35 Superpave Air Voids, VMA & VFA Volumetric Gate Formula)**: `=LET(gm_b, B2, gm_m, B3, gs_b, B4, pb_p, B5, IF(OR(gm_b < 1.8, gm_m <= gm_b, gm_m > 3, gs_b <= 2, pb_p < 2.5, pb_p > 10), "Invalid HMA Gravity Input", LET(va_p, ((gm_m - gm_b) / gm_m) * 100, vm_a, 100 - ((gm_b * (100 - pb_p)) / gs_b), IF(vm_a <= va_p, "Invalid HMA Gravity Input", LET(vf_a, ((vm_a - va_p) / vm_a) * 100, IF(AND(va_p >= 3, va_p <= 5, vm_a >= 14, vf_a >= 65, vf_a <= 75), "SUPERPAVE SPEC PASS", "OUT OF VOLUMETRIC SPEC"))))))` - **Formula (Collapsed Aggregate Gradation Flushing & Rutting Failure Check (Set G_mb = 2.440))**: `=IF(ISTEXT(E2), E2, LET(va_p, ((B3 - B2) / B3) * 100, vm_a, 100 - ((B2 * (100 - B5)) / B4), ROUND(((vm_a - va_p) / vm_a) * 100, 2)))` ### Hotel ADR, RevPAR, TRevPAR & GOPPAR Formulas - **URL**: https://sheets.arte-soft.com/en/learn/hotel-adr-revpar-trevpar-and-goppar-hospitality-formulas/ - **Summary**: Calculate USALI hotel KPIs accurately: Occupancy, Average Daily Rate (ADR = Room_Rev / Rooms_Sold), RevPAR = Room_Rev / Available_Rooms, TRevPAR, and bottom-line GOPPAR. *Table — Why high RevPAR driven by OTA commissions and complimentary breakfast can STILL sink GOPPAR!:* | USALI Hotel Metric (6,000 Avail, 4,500 Sold, $900k Room Rev) | Formula | Verified Output | | --- | --- | --- | | Average Daily Rate (ADR) | Room_Revenue / Paid_Rooms_Sold | 200.00 $ / sold room | | Revenue Per Available Room (RevPAR) | Room_Revenue / Available_Rooms | 150.00 $ / avail room (75% Occ) | | Total RevPAR (TRevPAR) | (Room_Rev + Ancillary_Rev) / Avail_Rooms | 200.00 $ / avail room | | Gross Operating Profit PAR (GOPPAR) | (Total_Rev - OpEx) / Avail_Rooms | 80.00 $ / avail room | - **Formula (Exact USALI RevPAR = Room_Revenue / Available_Room_Nights Formula)**: `=IF(OR(B2 <= 0, B3 < 0, B3 > B2, B4 < 0), "Invalid Hotel Inventory", ROUND(B4 / B2, 2))` - **Formula (Bottom-Line GOPPAR (Gross Operating Profit Per Available Room) Formula)**: `=LET(n_av, B2, n_sl, B3, r_rm, B4, r_an, B5, c_op, B6, IF(OR(n_av <= 0, n_sl < 0, n_sl > n_av, r_rm < 0, r_an < 0, c_op < 0), "Invalid Hotel Inventory", ROUND((r_rm + r_an - c_op) / n_av, 2)))` ### Hotelling’s Rule Formula: Exhaustible Resource Scarcity Rent & Price Trajectory - **URL**: https://sheets.arte-soft.com/en/learn/hotelling-exhaustible-resource-scarcity-rent-rule-formula/ - **Summary**: Project competitive mine, lithium, oil, and mineral equilibrium prices P_t = (P_0 - c) * (1 + r)^t + c using Harold Hotelling’s 1931 arbitrage law that in-situ net scarcity rent (P_t - c) rises at the real interest rate r. *Table — Why a mineral owner is indifferent between extracting today and leaving ore in the ground only when net rent grows at r!:* | Resource Valuation Scenario (P_0=$85, Cost c=$35) | Initial Scarcity Rent R_0 | Year-10 Rent R_10 = R_0*(1+r)^10 | Hotelling Price P_10 = R_10 + c | | --- | --- | --- | --- | | Real Discount Rate r = 6.0%, t = 10 yr | $50.00 / unit | $89.54 / unit | $124.54 / unit | | Higher Capital Cost r = 8.0%, t = 10 yr | $50.00 / unit | $107.95 / unit | $142.95 / unit | | Uneconomic Deposit P_0 <= Cost c | Non-Positive Rent | Deferred Extraction | "Requires Spot Price Above Extraction Cost" | - **Formula (Hotelling Equilibrium Exhaustible Resource Price P_t = (P_0 - c) * (1 + r)^t + c)**: `=IF(OR(B2 <= B3, B3 < 0, B4 <= 0, B5 < 0), "Requires Spot Price Above Extraction Cost", ROUND((B2 - B3) * ((1 + B4) ^ B5) + B3, 2))` - **Formula (Initial In-Situ Net Scarcity Rent (Royalty Value) R_0 = P_0 - c)**: `=IF(OR(B2 <= B3, B3 < 0, B4 <= 0, B5 < 0), "Requires Spot Price Above Extraction Cost", ROUND(B2 - B3, 2))` ### Hotelling Linear City & Salop Circular City Pricing Formula - **URL**: https://sheets.arte-soft.com/en/learn/hotelling-linear-city-and-salop-circular-city-spatial-pricing/ - **Summary**: Calculate Hotelling endpoint Nash price c + t, Salop free-entry firm count SQRT(t / F), Salop equilibrium price c + SQRT(t * F), and Salop’s 2x excess-entry theorem. *Table — Quantify spatial differentiation markups and Salop’s excess-entry theorem:* | Spatial Equilibrium Metric (c=10, t=36, F=1) | Formula | Verified Output | | --- | --- | --- | | Hotelling Endpoint Price (p_Hot*) | c + t_tr | 46.00 | | Salop Free-Entry Firm Count (N_FE*) | SQRT(t_tr / F) | 6.0000 firms | | Salop Free-Entry Price (p_FE*) | c + SQRT(t_tr * F) | 16.00 | | Planner Optimal Firm Count (N_opt*) | 0.5 * SQRT(t_tr / F) | 3.0000 firms (Half of N_FE!) | - **Formula (Salop Circular-City Free-Entry Firm Count N_FE* and Equilibrium Price Formula)**: `=LET(c_mc, B2, t_tr, B3, f_fix, B4, IF(OR(c_mc < 0, t_tr <= 0, f_fix <= 0), "Invalid Spatial Input", ROUND(c_mc + SQRT(t_tr * f_fix), 4)))` - **Formula (Social-Planner Total Entry + Mismatch Cost Comparison (Free Entry vs Optimum) Formula)**: `=LET(t_tr, B3, f_fix, B4, IF(OR(t_tr <= 0, f_fix <= 0), "Invalid Spatial Input", ROUND(0.5 * SQRT(t_tr / f_fix), 4)))` ### HOUR and MINUTE: extract clock components and calculate elapsed shift minutes - **URL**: https://sheets.arte-soft.com/en/learn/hour-and-minute-functions/ - **Summary**: Pull 0-23 hours and 0-59 minutes from timestamps with HOUR and MINUTE, and avoid the 24-hour rollover trap on long durations. *Table — Decompose timestamps into hour (0-23) and minute (0-59):* | ShiftStart (A) | ShiftEnd (B) | Start Hour:Min | End Hour:Min | Elapsed Min | | --- | --- | --- | --- | --- | | =TIME(8, 30, 0) | =TIME(17, 15, 0) | 8:30 | 17:15 | 525 | - **Formula (Calculate same-day shift minutes from HOUR and MINUTE)**: `=(HOUR(B2)*60 + MINUTE(B2)) - (HOUR(A2)*60 + MINUTE(A2))` - **Formula (Warning: durations >= 24 hours wrap in HOUR())**: `=HOUR(1.25)` ### Calculate hours that overlap a specific time window (shift differential) - **URL**: https://sheets.arte-soft.com/en/learn/hours-overlapping-night-or-shift-window/ - **Summary**: Measure exact hours of a work shift or booking that fall inside an evening differential or peak-rate time block using MAX and MIN. *Table — Interval intersection math for shift differentials:* | ShiftStart (A) | ShiftEnd (B) | WinStart (C) | WinEnd (D) | Overlap Hours | | --- | --- | --- | --- | --- | | 14:00 | 22:30 | 18:00 | 22:00 | 4.00 hrs (18:00–22:00) | | 19:30 | 21:00 | 18:00 | 22:00 | 1.50 hrs (19:30–21:00) | | 08:00 | 16:00 | 18:00 | 22:00 | 0.00 hrs | - **Formula (Same-day time window overlap formula)**: `=ROUND(MAX(0, MIN(B2, D2) - MAX(A2, C2)) * 24, 2)` - **Formula (Regular non-differential hours in the same shift)**: `=ROUND(((B2 - A2) - MAX(0, MIN(B2, D2) - MAX(A2, C2))) * 24, 2)` ### HSTACK function: join separate columns or ranges side by side - **URL**: https://sheets.arte-soft.com/en/learn/hstack-function-combine-columns/ - **Summary**: Assemble a clean lookup or summary table horizontally from separate column blocks using HSTACK. *Table — Combine separate columns without helper links:* | Badge (A) | PayGrade (B) | Team (C) | BillableHrs (D) | | --- | --- | --- | --- | | E-101 | G4 | Core | 38 | | E-102 | G5 | Cloud | 42 | | E-103 | G4 | Data | 40 | - **Formula (Verify horizontal width and read assembled cells)**: `=INDEX(HSTACK(A2:A4, D2:D4), 2, 2)` - **Formula (Uneven row heights pad missing cells with #N/A)**: `=INDEX(HSTACK(A2:A4, D2:D3), 3, 2)` ### Hubert-Arabie Adjusted Rand Index (ARI) Chance-Corrected Formula - **URL**: https://sheets.arte-soft.com/en/learn/hubert-arabie-adjusted-rand-index-ari-chance-corrected-partition-similarity/ - **Summary**: Eliminate true-negative chance inflation in raw Rand cluster accuracy using the Hubert-Arabie (1985) Adjusted Rand Index pairwise formula in Excel and Arte Sheets. *Table — Expose raw Rand Index inflation under random cluster assignments:* | Similarity Metric (M = 100 Pairs) | Pairwise Formula | Sample Output | | --- | --- | --- | | Unadjusted Rand Index RI | (TP + TN) / (TP + FP + FN + TN) | 0.7500 (Inflated by TN = 55) | | Expected Co-Clustered Pairs | (TP + FP) * (TP + FN) / M | 10.5000 (30 * 35 / 100) | | Hubert-Arabie Adjusted Rand ARI | 2*(TP*TN - FP*FN) / ((TP+FP)*(FP+TN) + (TP+FN)*(FN+TN)) | 0.4318 (Exact 19 / 44) | | Chance Independence Check | TP=12, FP=18, FN=28, TN=42 (TP*TN = FP*FN) | RI = 0.5400 vs ARI = 0.0000 | - **Formula (Hubert-Arabie Adjusted Rand Index (ARI) Formula)**: `=LET(tp_p, B2, fp_p, B3, fn_p, B4, tn_p, B5, denom, (tp_p + fp_p) * (fp_p + tn_p) + (tp_p + fn_p) * (fn_p + tn_p), IF(denom <= 0, IF(fp_p + fn_p = 0, 1, "Degenerate Pairs"), ROUND(2 * (tp_p * tn_p - fp_p * fn_p) / denom, 4)))` - **Formula (Chance-Inflation Gap (RI minus ARI) Formula)**: `=ROUND((B2 + B5) / SUM(B2:B5), 4)` ### Hudson Breakwater Armor Stone Mass & Kd Stability Formula - **URL**: https://sheets.arte-soft.com/en/learn/hudson-formula-rubble-mound-breakwater-armor-stone-weight-and-kd-stability/ - **Summary**: Calculate Submerged Relative Rock Density S_r, Median Armor Unit Mass M_50 (metric tons) under Cubic Wave-Height Scaling H^3, Nominal Cube Dimension D_n50 (m), and Double-Layer Thickness (m). *Table — Armor block weight scales with Wave Height CUBED (H^3)—a 25% storm-wave jump demands DOUBLE-weight boulders!:* | Hudson Breakwater KPI (Granite 2,650 kg/m³, H = 4.5 m, Kd = 4.0, 1V:2H) | Formula | Verified Output | | --- | --- | --- | | Relative Submerged Density Sr | Armor_Density_rhor / Water_Density_rhow | 2.585 | | Median Armor Unit Mass M50 (t) | (rhor * H^3 / (Kd * (Sr - 1)^3 * cot)) / 1000 | 7.58 t (3.79 t @ Tetrapod Kd = 8.0) | | Nominal Cube Size Dn50 (m) | (M50_kg / rhor)^(1/3) | 1.42 m (1.13 m @ Kd = 8.0) | | 2-Layer Armor Thickness (m) | 2 * ROUND(Dn50, 2) | 2.84 m (2.26 m @ Kd = 8.0) | - **Formula (Hudson Breakwater Median Armor Mass M50 Formula)**: `=LET(rr_k, B2, rw_k, B3, wh_m, B4, kd_s, B5, ct_s, B6, IF(OR(rw_k <= 950, rr_k <= 1.8 * rw_k, wh_m <= 0, kd_s < 1, kd_s > 25, ct_s < 1.25, ct_s > 6), "Invalid Breakwater Input", LET(sr_f, rr_k / rw_k, m5_k, (rr_k * (wh_m ^ 3)) / (kd_s * ((sr_f - 1) ^ 3) * ct_s), ROUND(m5_k / 1000, 2))))` - **Formula (Interlocking Concrete Tetrapod Weight Halving Check (Set Stability K_D = 8.0))**: `=IF(ISTEXT(E3), E3, ROUND(2 * E4, 2))` ### Calculate a Complete Four-Period Hull Moving Average and Efficiency Ratio - **URL**: https://sheets.arte-soft.com/en/learn/hull-moving-average-hma-and-kaufman-efficiency-ratio-er/ - **Summary**: Calculate two consecutive raw Hull values and their final weighted smoothing, then compare net change with total absolute movement using Kaufman’s efficiency ratio. - **Formula (Calculate the first raw value in D5)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric observations",2*(B4+2*B5)/3-(B2+2*B3+3*B4+4*B5)/10)` - **Formula (Calculate the next raw value in D6)**: `=IF(COUNT(B3:B6)<>4,"Enter numeric observations",2*(B5+2*B6)/3-(B3+2*B4+3*B5+4*B6)/10)` - **Formula (Complete the HMA in E6)**: `=IF(COUNT(B2:B6)<>5,"Enter numeric observations",(D5+2*D6)/3)` - **Formula (Measure efficiency over three changes in F5)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric observations",IF(ABS(B3-B2)+ABS(B4-B3)+ABS(B5-B4)=0,0,ABS(B5-B2)/(ABS(B3-B2)+ABS(B4-B3)+ABS(B5-B4))))` ### Hume (1966) Lean Body Mass & Hume-Weyers (1971) Total Body Water Formula - **URL**: https://sheets.arte-soft.com/en/learn/hume-weyers-lean-body-mass-and-total-body-water-height-weight/ - **Summary**: Calculate antipyrine/tritiated-water-calibrated Lean Body Mass (Hume, 1966) and Total Body Water (Hume & Weyers, 1971) from Height (cm) and Weight (kg) for hydrophilic drug dosing and peritoneal dialysis adequacy. *Table — Dose narrow-therapeutic-index hydrophilic drugs accurately using Hume Lean Body Mass & Hume-Weyers TBW!:* | Adult Patient (Height cm, Weight kg) | Hume (1966) Lean Body Mass (kg) | Hume-Weyers (1971) TBW (L) | Implied Body Fat Mass (W - LBM) | | --- | --- | --- | --- | | Adult Male (178 cm, 84 kg) | 58.42 kg LBM | 45.59 L TBW | 25.58 kg Fat Mass | | Adult Female (165 cm, 70 kg) | 46.40 kg LBM | 34.45 L TBW | 23.60 kg Fat Mass | - **Formula (Hume (1966) Sex-Specific Lean Body Mass LBM (kg))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 120, B3 > 230, B4 < 30, B4 > 300), "Invalid Adult Sex (M/F), Height (cm), or Weight (kg)", ROUND(IF(B2 = "M", 0.3281 * B4 + 0.33929 * B3 - 29.5336, 0.29569 * B4 + 0.41813 * B3 - 43.2933), 2))` - **Formula (Hume-Weyers (1971) Sex-Specific Total Body Water TBW (Liters))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 120, B3 > 230, B4 < 30, B4 > 300), "Invalid Adult Sex (M/F), Height (cm), or Weight (kg)", ROUND(IF(B2 = "M", 0.194786 * B3 + 0.296785 * B4 - 14.012934, 0.34454 * B3 + 0.183809 * B4 - 35.270121), 2))` ### Vertical Specialization (VS) & VAX Export Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/hummels-ishii-yi-vertical-specialization-import-content-of-exports/ - **Summary**: Calculate Hummels, Ishii, and Yi’s (2001) Vertical Specialization Foreign Value Added in Exports VS = (M_int / Y_gross) * X_gross, Domestic Value Added (DVA), and Johnson-Noguera VAX ratio. *Table — Stop double-counting imported semiconductors and components as domestic export GDP!:* | Global Value Chain TiVA Metric (M_int=180, Y=600, X=250, M_part=150) | Formula | Verified Output | | --- | --- | --- | | Vertical Specialization / Foreign VA (VS) | (M_int / Y_gross) * X_gross | $75.00B | | Domestic Value Added in Exports (DVA) | X_gross - VS | $175.00B | | Johnson-Noguera VAX Ratio | DVA / X_gross = 1 - (M_int / Y_gross) | 0.7000 (70.00%) | | Value-Added Bilateral Balance (vs +100 Gross) | DVA - M_partner | +$25.00B | - **Formula (Hummels-Ishii-Yi (2001) Vertical Specialization (VS) Formula)**: `=LET(m_in, B2, y_gr, B3, x_gr, B4, IF(OR(m_in < 0, y_gr <= 0, m_in >= y_gr, x_gr <= 0, x_gr > y_gr, B5 < 0), "Invalid GVC Input", ROUND((m_in / y_gr) * x_gr, 2)))` - **Formula (Domestic Value Added (DVA) & VAX Ratio Formula)**: `=IF(ISTEXT(E2), E2, ROUND(1 - (B2 / B3), 4))` ### 100% Stacked Column & Bar Mix Matrix Formula: Mixed-Reference Period Shares (B$2:B$4) - **URL**: https://sheets.arte-soft.com/en/learn/hundred-percent-stacked-column-and-bar-composition-matrix/ - **Summary**: Normalize multi-quarter revenue or headcount tables into a 100% composition matrix using column-row-locked mixed references ROUND(B2 / SUM(B$2:B$4) * 100, 2) and measure mix shift percentage-point changes. *Table — How mixed reference B$2:B$4 normalizes every quarter column to 100.00% in a single drag-across formula!:* | Customer Segment | Q1 Bookings ($400k Total) | Q1 Mix Share % | Q2 Bookings ($500k Total) | Q2 Mix Share & Shift | | --- | --- | --- | --- | --- | | Enterprise | $180k | 45.00% | $210k | 42.00% (-3.00 pp shift) | | Mid-Market | $120k | 30.00% | $150k | 30.00% (0.00 pp flat) | | SMB Self-Serve | $100k | 25.00% | $140k | 28.00% (+3.00 pp gain) | - **Formula (Q1 Segment Percentage Share with Mixed Row-Locked Denominator = ROUND(B2 / SUM(B$2:B$4) * 100, 2))**: `=IF(SUM(B$2:B$4) <= 0, "Zero Period Total", ROUND(B2 / SUM(B$2:B$4) * 100, 2))` - **Formula (Period-Over-Period Mix Shift in Percentage Points (Q2 Share % minus Q1 Share %))**: `=IF(OR(SUM(B$2:B$4) <= 0, SUM(C$2:C$4) <= 0), "Zero Period Total", ROUND((C2 / SUM(C$2:C$4) - B2 / SUM(B$2:B$4)) * 100, 2))` ### Modified Fisher CT Scale (0–4) & Hunt-Hess Subarachnoid Hemorrhage (SAH) Grade - **URL**: https://sheets.arte-soft.com/en/learn/hunt-hess-and-modified-fisher-subarachnoid-hemorrhage-scales/ - **Summary**: Determine the Modified Fisher CT Grade (0 to 4) for delayed cerebral ischemia / vasospasm risk from subarachnoid blood thickness and bilateral intraventricular hemorrhage (IVH), alongside Hunt & Hess SAH clinical severity (Grades 1–5). *Table — Predict cerebral vasospasm (Days 4–14) and SAH mortality after aneurysmal rupture!:* | SAH Cisternal Blood on Head CT | Intraventricular Blood (IVH) | Modified Fisher Grade | Symptomatic Vasospasm / DCI Risk | | --- | --- | --- | --- | | None (0 = No SAH, 0 = No IVH) | Absent or Isolated IVH | Grade 0 (if no SAH & no IVH) | 0% – Low baseline | | Thin SAH (1 = Thin) | 0 = No Bilateral IVH | Grade 1 | ~24% Symptomatic Vasospasm | | Thin SAH (1 = Thin) | 1 = Bilateral IVH Present | Grade 2 | ~33% Symptomatic Vasospasm | | Thick SAH (2 = Thick Clot) | 0 = No Bilateral IVH | Grade 3 | ~33% Symptomatic Vasospasm | | Thick SAH (2 = Thick Clot) | 1 = Bilateral IVH Present | Grade 4 (Highest!) | ~40% Symptomatic Vasospasm! | - **Formula (Modified Fisher CT Scale Grade (0 to 4) from SAH Thickness & Bilateral IVH)**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 1), "Invalid CT Inputs", IF(B2 = 0, IF(B3 = 1, 2, 0), IF(B2 = 1, IF(B3 = 0, 1, 2), IF(B3 = 0, 3, 4))))` - **Formula (Combined Neuro-ICU Hunt & Hess (1–5) + Vasospasm Surveillance Tier)**: `=IF(OR(B4 < 1, B4 > 5), "Invalid Hunt-Hess Grade (1-5)", IF(B4 <= 2, "Good-Grade SAH (HH 1-2: Early Aneurysm Securing + Nimodipine)", IF(B4 = 3, "Intermediate SAH (HH 3: Drowsy/Focal Deficit — Neuro-ICU)", "Poor-Grade High-Mortality SAH (HH 4-5: Stupor/Coma — EVD & ICU)")))` ### Hurlbert’s PIE Formula: Unbiased Probability of Interspecific Encounter & S_PIE - **URL**: https://sheets.arte-soft.com/en/learn/hurlbert-pie-probability-of-interspecific-encounter-evenness/ - **Summary**: Compute Stuart H. Hurlbert’s (1971) finite-sample-unbiased Probability of Interspecific Encounter PIE = (N / (N - 1)) * (1 - SUM((n_i / N)^2)) and Effective Common Species Count S_PIE = 1 / (1 - PIE). *Table — Why Hurlbert’s finite-sample N / (N - 1) factor fixes Gini-Simpson’s small-quadrat downward bias!:* | Small-Sample Quadrat (Counts [6, 5, 5, 4]; N = 20, S = 4) | Naive Plug-In 1 - SUM(p_i^2) | Unbiased Hurlbert PIE | Effective Species S_PIE = 1 / (1 - PIE) | | --- | --- | --- | --- | | Observed 4-Species Quadrat (N = 20) | 0.7450 (Downward Biased) | 0.7842 | 4.6341 | | Equal-Count Small Quadrat [5, 5, 5, 5] (N = 20) | 0.7500 | 0.7895 | 4.7500 | | Monoculture Single Species [20, 0, 0, 0] | 0.0000 | 0.0000 | 1.0000 | - **Formula (Unbiased Hurlbert Probability of Interspecific Encounter PIE (Without-Replacement))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) < 2), "Requires Non-Negative Integer Counts & N >= 2", ROUND((SUM(B2:B5) / (SUM(B2:B5) - 1)) * (1 - SUMPRODUCT((B2:B5 / SUM(B2:B5)) ^ 2)), 4))` - **Formula (Chase-Knight Effective Number of Common Species S_PIE = 1 / (1 - PIE))**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) < 2), "Requires Non-Negative Integer Counts & N >= 2", IF(MAX(B2:B5) = 1, "All Singletons: Infinite Asymptotic S_PIE", ROUND(1 / (1 - (SUM(B2:B5) / (SUM(B2:B5) - 1)) * (1 - SUMPRODUCT((B2:B5 / SUM(B2:B5)) ^ 2))), 4)))` ### HVAC Airside Economizer Mixed-Air & Free-Cooling Formula - **URL**: https://sheets.arte-soft.com/en/learn/hvac-airside-economizer-mixed-air-temperature-outside-air-fraction-and-cooling/ - **Summary**: Calculate Modulating Outside-Air Damper Fraction (%), Mixed-Air Plenum Temperature T_mix (°C), Minimum-Ventilation Baseline Mixed Temp (°C), and Chiller Sensible Free-Cooling Saved (kW). *Table — Running a chiller in 11 °C shoulder weather wastes 70+ kW when modulating AHU economizer dampers hit 14.5 °C supply air for free!:* | ASHRAE 90.1 Economizer KPI (8.5 m³/s, Tra=24 °C, Toa=11 °C -> Tset=14.5 °C, fmin=20%) | Formula | Verified Output | | --- | --- | --- | | Modulated Outside-Air Damper (%) | IF(Toa>=Tlock, fmin, CLAMP((Tra-Tset)/(Tra-Toa)))*100 | 73.08% OA (20.00% min @ 22 °C lockout) | | Actual Mixed-Air Temp T_mix (°C) | f_oa * Toa + (1 - f_oa) * Tra | 14.50 °C (23.60 °C @ 22 °C lockout) | | Min-OA Baseline Temp T_base (°C) | f_min * Toa + (1 - f_min) * Tra | 21.40 °C (23.60 °C @ 22 °C lockout) | | Sensible Free-Cooling Saved (kW) | 1.20 * 1.006 * Q_m3_s * MAX(0, Tbase - Tmix) | 70.80 kW (0.00 kW @ 22 °C lockout) | - **Formula (ASHRAE 90.1 Modulating Economizer Damper & High-Limit Lockout Formula)**: `=LET(qf_s, B2, tr_c, B3, to_c, B4, ts_c, B5, fm_n, B6, tl_k, B7, IF(OR(qf_s <= 0, ts_c >= tr_c, fm_n < 0, fm_n > 1, tl_k > tr_c), "Invalid Economizer Input", LET(fo_a, IF(to_c >= tl_k, fm_n, MIN(1, MAX(fm_n, (tr_c - ts_c) / (tr_c - to_c)))), tm_x, fo_a * to_c + (1 - fo_a) * tr_c, tb_s, fm_n * to_c + (1 - fm_n) * tr_c, ROUND(1.2 * 1.006 * qf_s * MAX(0, tb_s - tm_x), 2))))` - **Formula (Warm 22.0 °C Summer Afternoon High-Limit Lockout Check (Set Outside Air Toa B4 = 22.0 °C))**: `=IF(ISTEXT(E5), E5, ROUND(IF(B4 >= B7, B6, MIN(1, MAX(B6, (B3 - B5) / (B3 - B4)))) * 100, 2))` ### HVAC Rotary Enthalpy Wheel Sensible & Latent Recovery Formula - **URL**: https://sheets.arte-soft.com/en/learn/hvac-enthalpy-wheel-sensible-latent-and-total-energy-recovery-formula/ - **Summary**: Calculate ASHRAE Standard 84 Desiccant Rotary Enthalpy Wheel Leaving Supply Air Temperature (°C), Total Recovered Enthalpy Power (kW), Sensible Heat Recovered (kW), and Latent Dehumidification/Humidification Power Recovered (kW). *Table — See why desiccant enthalpy wheels recover 3x more summer cooling than sensible plate exchangers!:* | Rotary Enthalpy Wheel Metric (2.4 kg/s, 35°C/92 kJ Outdoor -> 23°C/48 kJ Return, ε=0.75) | Formula | Verified Output | | --- | --- | --- | | Leaving Supply Temp (°C) | T_oa - ε * (T_oa - T_ret) | 26.00°C (+14.50°C @ -5°C Winter) | | Total Enthalpy Recovered (kW) | m_da * ε * ABS(h_oa - h_ret) | 79.20 kW (Same @ Δh=44 Winter) | | Sensible Heat Recovered (kW) | m_da * 1.006 * ε * ABS(T_oa - T_ret) | 21.73 kW (47.08 kW @ -5°C Winter) | | Latent Moisture Recovered (kW) | Total_Recovered_kW - Sensible_kW | 57.47 kW (32.12 kW @ -5°C Winter) | - **Formula (Desiccant Wheel Latent Moisture Power Recovered Formula)**: `=LET(md_a, B2, to_c, B3, tr_c, B4, ho_k, B5, hr_k, B6, ep_w, B7, dh_t, ABS(ho_k - hr_k), ds_t, 1.006 * ABS(to_c - tr_c), IF(OR(md_a <= 0, ep_w <= 0, ep_w >= 1, dh_t < ds_t), "Invalid Psychrometric Wheel State", LET(qt_k, md_a * ep_w * dh_t, qs_k, md_a * ep_w * ds_t, ROUND(qt_k - qs_k, 2))))` - **Formula (Sub-Freezing Winter Heating & Humidification Check (Set Outdoor = -5°C, -2 kJ/kg; Return = 21°C, 42 kJ/kg))**: `=IF(ISTEXT(E5), E5, ROUND(B3 - B7 * (B3 - B4), 2))` ### HVAC sensible cooling/heating BTU/hr (1.08 * CFM * DeltaT) & Air Changes (ACH) - **URL**: https://sheets.arte-soft.com/en/learn/hvac-sensible-cooling-btu-load-and-air-changes-per-hour/ - **Summary**: Calculate HVAC sensible heat transfer in BTU/hr and cooling tons from airflow (CFM) and supply-to-room temperature delta, plus room Air Changes per Hour (ACH). *Table — Where the HVAC 1.08 constant comes from—and how CFM drives BTU/hr & ACH:* | HVAC Design Metric (1,200 CFM, 75 °F Room, 55 °F Supply) | Formula | Output | | --- | --- | --- | | Sensible Cooling Load (BTU/hr) | 1.08 * 1,200 * ABS(75 - 55) | 25,920 BTU/hr | | Sensible Cooling Tonnage (Tons) | 25,920 / 12,000 | 2.16 Tons | | Air Changes per Hour (9,000 ft^3 room) | (1,200 * 60) / 9,000 | 8.0 ACH | | Required CFM for 12 ACH Target | (12 * 9,000) / 60 | 1,800 CFM | - **Formula (Sensible cooling or heating output in BTU/hr)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0),"Invalid inputs",ROUND(1.08 * A2 * ABS(B2 - C2), 0))` - **Formula (Sensible heat expressed in refrigeration-ton equivalents)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0),"Invalid inputs",ROUND((1.08 * A2 * ABS(B2 - C2)) / 12000, 2))` - **Formula (Nominal airflow turnovers per hour)**: `=IF(OR(NOT(ISNUMBER(A2)),NOT(ISNUMBER(D2)),A2<0,D2<=0),"Invalid inputs",ROUND((A2 * 60) / D2, 2))` ### HVAC Sensible Heat Ratio (SHR) & Coil Tons Formula - **URL**: https://sheets.arte-soft.com/en/learn/hvac-sensible-heat-ratio-shr-supply-cfm-and-latent-condensate-load-formula/ - **Summary**: Calculate ASHRAE Sea-Level Air-Side Sensible Cooling Q_s = 1.08 * CFM * Delta_T_F, Latent Dehumidification Q_L = 0.68 * CFM * Delta_W_grains, Total Chiller Tons (/ 12,000), and Sensible Heat Ratio SHR = Q_s / Q_total. *Table — Separate dry-bulb temperature drop from latent moisture condensation across cooling coils!:* | ASHRAE Air-Side Coil Metric (5,000 CFM, Delta_T=20 °F, Delta_W=15 gr/lb) | Formula | Verified Output | | --- | --- | --- | | Sensible Cooling Load Q_s (BTU/h) | 1.08 * CFM * Delta_T_F | 108,000 BTU/h (9.00 Tons) | | Latent Moisture Load Q_L (BTU/h) | 0.68 * CFM * Delta_W_grains | 51,000 BTU/h (0 BTU/h Dry Coil) | | Total Coil Refrigeration Tons | (Q_s + Q_L) / 12000 | 13.2500 Tons (9.0000 Dry Coil) | | Sensible Heat Ratio (SHR) | Q_s / (Q_s + Q_L) | 0.6792 (1.0000 Dry Server Hall) | - **Formula (ASHRAE Sensible Heat Ratio (SHR) & Coil Tonnage Formula)**: `=LET(cf_m, B2, dt_f, B3, dw_g, B4, IF(OR(cf_m <= 0, dt_f < 0, dw_g < 0, dt_f + dw_g <= 0), "Invalid Psychrometric Coil Load", LET(q_sn, 1.08 * cf_m * dt_f, q_lt, 0.68 * cf_m * dw_g, ROUND(q_sn / (q_sn + q_lt), 4))))` - **Formula (Dry Data-Center CRAH Coil Check (Delta_W = 0 grains/lb))**: `=IF(ISTEXT(E5), E5, ROUND((E2 + E3) / 12000, 4))` ### Hveem Stabilometer Resistance R-Value Formula (ASTM D2844) & Subgrade Modulus - **URL**: https://sheets.arte-soft.com/en/learn/hveem-stabilometer-r-value-resistance-and-gravel-equivalent-formula/ - **Summary**: Calculate ASTM D2844 / Caltrans Test 301 Hveem Stabilometer Resistance R-Value (0–100 scale) from 160-psi vertical pressure, transmitted horizontal fluid pressure P_h, and displacement turns D_2, plus AASHTO Resilient Modulus M_R. *Table — Measure lateral plastic soil flow directly on a 0 (water) to 100 (rigid steel) resistance scale!:* | Compacted Pavement Material (P_v = 160 psi) | Horizontal Pressure P_h (psi) | Displacement Turns D_2 | Evaluated Hveem R-Value | | --- | --- | --- | --- | | Expansive Plastic Clay Subgrade | 118 psi | 2.35 turns | 27.4 | | Silty Sand Embankment Fill | 52 psi | 2.85 turns | 64.6 | | Crushed Aggregate Base (Class 2) | 22 psi | 3.40 turns | 82.2 (Spec >= 78) | - **Formula (ASTM D2844 Hveem Stabilometer Resistance R-Value (0 to 100))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > B2, B4 <= 0), "Requires 0 < Horizontal P_h <= Vertical P_v and Turns D_2 > 0", ROUND(100 - (100 / ((2.5 / B4) * ((B2 / B3) - 1) + 1)), 2))` - **Formula (AASHTO / Asphalt Institute Subgrade Resilient Modulus M_R (psi) from R-Value)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > B2, B4 <= 0), "Requires Valid Hveem R-Value Inputs", ROUND(1155 + 555 * (100 - (100 / ((2.5 / B4) * ((B2 / B3) - 1) + 1))), 0))` ### Hvorslev Slug Test Formula: Piezometer Hydraulic Conductivity & Basic Time Lag T_0 - **URL**: https://sheets.arte-soft.com/en/learn/hvorslev-piezometer-slug-test-hydraulic-conductivity-formula/ - **Summary**: Determine in-situ aquifer horizontal hydraulic conductivity K = (r_c^2 * LN(L_e / R)) / (2 * L_e * T_0) from rising- or falling-head piezometer slug-test recovery data using M. Juul Hvorslev’s (1951) USACE equation. *Table — Why Hvorslev’s 37% unrecovered-head Basic Time Lag T_0 is the workhorse of hydrogeologic slug testing!:* | Hvorslev Slug-Test Quantity (r_c=0.025 m, R=0.10 m, L_e=1.5 m) | Hvorslev (1951) Formula | Computed Value | | --- | --- | --- | | Basic Time Lag T_0 (s) from H_0=0.80 m, H(120s)=0.2943 m | -t / LN(H_t / H_0) | 119.99 s (36.79% Head Remaining) | | Hydraulic Conductivity K (m/s) | (r_c^2 * LN(L_e / R)) / (2 * L_e * T_0) | 4.702E-06 m/s (4.702 um/s) | | Hydraulic Conductivity K (m/day) | 86400 * K_ms | 0.4063 m/day (Silty Fine Sand) | - **Formula (Hvorslev Hydraulic Conductivity in Meters per Day (86,400 * K_m/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 / B3 < 8, B5 <= 0, B6 <= 0, B6 >= B5, B7 <= 0), "Invalid Slug Test Geometry (Requires Le/R >= 8 & 0 < Ht < H0)", ROUND(86400 * ((B2 ^ 2) * LN(B4 / B3)) / (2 * B4 * (-B7 / LN(B6 / B5))), 4))` - **Formula (Hvorslev Basic Time Lag T_0 (Seconds to 63.2% Recovery, H/H_0 = 0.3679))**: `=IF(OR(B5 <= 0, B6 <= 0, B6 >= B5, B7 <= 0), "Invalid Head Recovery Inputs", ROUND(-B7 / LN(B6 / B5), 2))` ### Stepper Motor Microstep Resolution & Corner Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/hybrid-stepper-motor-step-angle-microstepping-resolution-and-back-emf-corner-speed/ - **Summary**: Calculate Microsteps per Revolution, Ballscrew Linear Microstep Resolution (um), Required Step-Pulse Frequency (kHz), and Inductive L/R Chopper Corner Speed (RPM). *Table — Buying a "high-holding-torque" high-inductance NEMA 23 stepper and running it on 24 V starves phase current above 127 RPM—stalling rapid G0 moves!:* | Hybrid Stepper Motion KPI (200 Steps/Rev, 16x uStep, 5 mm Lead, 80 mm/s, I=4.2 A) | Formula | Verified Output | | --- | --- | --- | | Microsteps per Revolution | Full_Steps_Rev * Microstep_Divisor_M | 3,200 usteps/rev | | Linear Axis Resolution (um/ustep) | (Ballscrew_Lead_mm * 1000) / uSteps_Rev | 1.5625 um/ustep | | Required Step-Pulse Rate (kHz) | ((Feed_mm_s / Lead_mm) * uSteps_Rev) / 1000 | 51.20 kHz | | Inductive Full-Torque Corner RPM | (60 * Vbus) / (2*PI() * (Nfs/4) * (L/1000) * I) | 574.4 RPM (126.9 RPM @ 24V, 8.6 mH!) | - **Formula (Hybrid Stepper 50-Pole Electrical Reactance Corner Speed & Step-Clock Formula)**: `=LET(nf_s, B2, ms_f, B3, pl_m, B4, vf_m, B5, vb_v, B6, lm_h, B7, ip_a, B8, IF(OR(nf_s < 48, nf_s > 400, ms_f < 1, ms_f > 256, pl_m <= 0.2, vf_m <= 0, vb_v < 12, vb_v > 160, lm_h < 0.2, lm_h > 50, ip_a < 0.2, ip_a > 15), "Invalid Stepper Input", ROUND((60 * vb_v) / (2 * PI() * (nf_s / 4) * (lm_h / 1000) * ip_a), 1)))` - **Formula (24 V Power Supply + High-Inductance 8.6 mH Winding Mid-Speed Stall Check)**: `=IF(ISTEXT(E5), E5, ROUND(((B5 / B4) * (B2 * B3)) / 1000, 2))` ### Hydraulic Cylinder Push/Pull Force & Regenerative Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/hydraulic-cylinder-extension-vs-rod-end-retraction-force-speed-and-regen-flow/ - **Summary**: Calculate Full-Bore Push Force (kN), Annular Rod-End Pull Force (kN), Normal Extension Speed (mm/s), Retraction Speed (mm/s), and Regenerative Fast-Approach Speed (mm/s). *Table — Routing rod-end oil back into the cap port speeds cylinder advance 2.78x—by acting solely on the piston rod cross-section!:* | Hydraulic Cylinder KPI (Bore D=100 mm, Rod d=60 mm, P=210 bar, Q=45 L/min) | Formula | Verified Output | | --- | --- | --- | | Full-Bore Push Force Fpush (kN) | (0.1 * P_bar * (PI()/4 * D^2)) / 1000 | 164.93 kN | | Annular Rod Pull Force Fpull (kN) | (0.1 * P_bar * (PI()/4 * (D^2-d^2)))/1000 | 105.56 kN (84.12 kN @ d = 70 mm rod) | | Normal Extension Speed vext (mm/s) | (Q_L_min * 1e6 / 60) / (PI()/4 * D^2) | 95.49 mm/s | | Regenerative Fast-Advance (mm/s) | (Q_L_min * 1e6 / 60) / (PI()/4 * d^2) | 265.26 mm/s (194.88 @ d = 70 mm rod) | - **Formula (ISO 3320 Hydraulic Cylinder Force, Asymmetric Speed & Regenerative Flow Formula)**: `=LET(br_d, B2, rd_d, B3, pr_b, B4, fl_l, B5, IF(OR(br_d <= 10, rd_d <= 0, rd_d >= 0.9 * br_d, pr_b <= 0, pr_b > 700, fl_l <= 0), "Invalid Cylinder Input", LET(ar_s, (PI() / 4) * (rd_d ^ 2), ROUND(((fl_l * 1000000) / 60) / ar_s, 2))))` - **Formula (Oversized Anti-Buckling 70 mm Rod Area-Ratio Check (Set Rod Diameter d = 70.0 mm))**: `=IF(ISTEXT(E5), E5, ROUND((0.1 * B4 * ((PI() / 4) * ((B2 ^ 2) - (B3 ^ 2)))) / 1000, 2))` ### Hydrocyclone Cut Size d50c, G-Force & Slurry Flow Formula - **URL**: https://sheets.arte-soft.com/en/learn/hydrocyclone-cut-size-d50c-underflow-water-split-and-pressure-capacity-formula/ - **Summary**: Calculate Hydrocyclone Volumetric Slurry Capacity (m³/h), Tangential Inlet Velocity (m/s), Wall Centrifugal G-Force, and Plitt-Arterburn Corrected Cut Size d50c (um). *Table — Let ball-mill cyclone feed solids creep from 18% to 32% by volume and hindered settling coarsens cut size d50c nearly 3x!:* | Plitt-Arterburn Hydrocyclone KPI (Dc=25 cm, Ore SG=2.75: 120 kPa/18% vs 65 kPa/32% Cv) | Formula | Verified Output | | --- | --- | --- | | Slurry Volumetric Flow Q (m³/h) | 0.016 * (Dc_cm ^ 1.9) * SQRT(dP_kPa) | 79.4 m³/h (58.4 m³/h @ 65 kPa) | | Tangential Inlet Velocity (m/s) | 0.85 * SQRT((2 * dP_kPa * 1000) / 1280) | 11.64 m/s (8.57 m/s @ 65 kPa) | | Wall Centrifugal Acceleration (Gs) | (vin_m_s ^ 2) / (9.80665 * (Dc_cm / 200)) | 110.5 Gs (59.9 Gs @ 65 kPa) | | Corrected Cut Diameter d50c (um) | (14.8*Dc^0.46*EXP(0.063*Cv))/(dP^0.28*SQRT(SG-1)) | 40.01 um (114.74 um coarse grit carryover!) | - **Formula (Plitt-Arterburn Hydrocyclone Cut Diameter d50c, G-Field & Capacity Formula)**: `=LET(dc_c, B2, dp_k, B3, sg_s, B4, cv_p, B5, IF(OR(dc_c < 5, dc_c > 100, dp_k < 20, dp_k > 400, sg_s <= 1.2, sg_s > 8, cv_p < 1, cv_p > 50), "Invalid Cyclone Input", ROUND((14.8 * (dc_c ^ 0.46) * EXP(0.063 * cv_p)) / ((dp_k ^ 0.28) * SQRT(sg_s - 1)), 2)))` - **Formula (Sump Dilution-Valve Loss & Pump Wear (dP = 65 kPa, Cv = 32%) Roping Coarsening Check)**: `=IF(ISTEXT(E5), E5, LET(vi_n, 0.85 * SQRT((2 * B3 * 1000) / 1280), ROUND((vi_n ^ 2) / (9.80665 * (B2 / 200)), 1)))` ### Hydroelectric Net Head, MW Output & Pelton Jet Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/hydroelectric-head-penstock-friction-and-pelton-jet-velocity-formula/ - **Summary**: Calculate Hydropower Net Effective Head (Gross_Head - Penstock_Loss), Electrical Generation Power (rho*g*Q*H_net*eta)/10^6 (MW), Pelton Impulse Nozzle Spouting Velocity Cv*SQRT(2*g*H_net), and Optimal Bucket Pitch Speed. *Table — Size high-head Pelton impulse turbines on Net Effective Penstock Head—never static reservoir elevation!:* | Hydropower Metric (Hgross=210 m, hf=10 m, Q=15 m^3/s, eta=90%, Cv=0.98) | Formula | Verified Output | | --- | --- | --- | | Net Effective Head H_net (m) | Gross_Head_m - Penstock_Loss_m | 200.00 m (180.00 m @ hf=30 m) | | Electrical Power Output (MW) | (1000 * 9.81 * Q * H_net * eta) / 10^6 | 26.487 MW (23.838 MW @ hf=30 m) | | Pelton Nozzle Jet Speed (m/s) | C_v * SQRT(2 * 9.81 * H_net) | 61.39 m/s | | Optimal Runner Pitch Speed u | 0.47 * Nozzle_Jet_Velocity | 28.85 m/s | - **Formula (Hydroelectric Net-Head Megawatt Generation Formula)**: `=LET(h_gr, B2, h_fl, B3, q_fl, B4, et_c, B5, cv_n, B6, h_nt, h_gr - h_fl, IF(OR(h_gr <= 0, h_fl < 0, h_nt <= 0, q_fl <= 0, et_c <= 0, et_c > 1, cv_n <= 0.8, cv_n > 1), "Invalid Hydropower Head Input", ROUND((1000 * 9.81 * q_fl * h_nt * et_c) / 1000000, 3)))` - **Formula (Fouled-Penstock 30 m Head-Loss Sensitivity Check)**: `=IF(ISTEXT(E3), E3, ROUND(B6 * SQRT(2 * 9.81 * E2), 2))` ### Hydraulic Bladder Accumulator Polytropic Sizing Formula - **URL**: https://sheets.arte-soft.com/en/learn/hydropneumatic-bladder-accumulator-boyle-adiabatic-usable-oil-volume-sizing/ - **Summary**: Calculate Dry-Nitrogen Precharge Pressure P_0 (bar_a), Naive Isothermal Gas Shell Volume V_0,iso (L), Polytropic/Adiabatic Required Shell Volume V_0,n (L), and Adiabatic Cooling Oversize Penalty (%). *Table — Sizing an emergency accumulator with isothermal Boyle’s Law P*V = const leaves you 28.6% SHORT of hydraulic oil during a fast stroke!:* | Nitrogen Accumulator KPI (dV=12 L Oil, Pmax=210, Pmin=140 bara, P0=0.9*Pmin, n=1.40) | Formula | Verified Output | | --- | --- | --- | | N2 Precharge Pressure P0 (bar_a) | Precharge_Ratio * Min_Working_P_bara | 126.00 bar_a | | Naive Isothermal Shell Vol (L) | dV_L / ((P0 / Pmin) - (P0 / Pmax)) | 40.00 L | | Polytropic/Adiabatic Shell Vol (L) | dV_L / ((P0/Pmin)^(1/n) - (P0/Pmax)^(1/n)) | 51.45 L (44.26 L @ slow n = 1.15) | | Adiabatic Cooling Oversize (%) | ((V0_poly - V0_iso) / V0_iso) * 100 | +28.63% (+10.65% @ slow n = 1.15) | - **Formula (Polytropic Nitrogen-Cushion Accumulator Gas Volume Formula)**: `=LET(dv_l, B2, px_b, B3, pn_b, B4, pf_c, B5, pl_n, B6, IF(OR(dv_l <= 0, pn_b <= 1, px_b <= pn_b, pf_c < 0.6, pf_c > 0.95, pl_n < 1, pl_n > 1.67), "Invalid Accumulator Input", LET(pz_b, pf_c * pn_b, IF((px_b / pz_b) > 4, "EXCEEDS 4:1 BLADDER RATIO", LET(vi_s, dv_l / ((pz_b / pn_b) - (pz_b / px_b)), vp_l, dv_l / (((pz_b / pn_b) ^ (1 / pl_n)) - ((pz_b / px_b) ^ (1 / pl_n))), ROUND(((vp_l - vi_s) / vi_s) * 100, 2))))))` - **Formula (Slow 2-Minute Leakage-Compensation Stroke Check (Set Polytropic n = 1.15))**: `=IF(ISTEXT(E5), E5, LET(pz_b, B5 * B4, ROUND(B2 / (((pz_b / B4) ^ (1 / B6)) - ((pz_b / B3) ^ (1 / B6))), 2)))` ### Thoma Hydropower Surge-Tank Area & Upsurge Formula - **URL**: https://sheets.arte-soft.com/en/learn/hydropower-thoma-minimum-surge-tank-area-governor-stability-and-upsurge-amplitude/ - **Summary**: Calculate Thoma Critical Surge-Tank Area Ath (m²), Governor Stability Factor (As / Ath), Rigid-Column Mass-Oscillation Period T (s), and Frictionless Full-Rejection Upsurge Zmax (m). *Table — Lining a headrace tunnel smoother reduces friction head hf0—paradoxically DOUBLING Dieter Thoma’s minimum surge-tank area and triggering runaway governor water-level hunting!:* | Thoma Surge-Tank Transient KPI (L=3,200 m, At=18 m², H0=42 m, Q0=65 m³/s) | Formula | Verified Output | | --- | --- | --- | | Thoma Critical Area Ath (m²) | (L_m * At_m2) / (2 * 9.80665 * hf0 * (H0 - hf0)) | 40.59 m² (83.96 m² @ smooth hf0=0.85 m!) | | Thoma Stability Factor (As / Ath) | Surge_Tank_As_m2 / Thoma_Ath_m2 | 1.85 STABLE (0.45 < 1.0 RUNAWAY HUNTING!) | | Mass Oscillation Period T (s) | 2 * PI() * SQRT((L_m * As_m2) / (9.80665 * At_m2)) | 231.7 s (164.9 s @ narrow 38 m² shaft) | | Frictionless Peak Upsurge Zmax (m) | Q0_m3s * SQRT(L_m / (9.80665 * At_m2 * As_m2)) | 31.96 m (44.90 m overtopping surge!) | - **Formula (Dieter Thoma (1910) Surge-Shaft Governor Damping & Rigid-Column Upsurge Formula)**: `=LET(lt_m, B2, at_a, B3, hz_m, B4, hf_m, B5, qz_s, B6, as_a, B7, IF(OR(lt_m < 100, lt_m > 50000, at_a < 1, at_a > 250, hz_m < 10, hz_m > 800, hf_m < 0.1, hf_m > 0.35 * hz_m, qz_s <= 0, as_a < 2), "Invalid Surge Input", ROUND(qz_s * SQRT(lt_m / (9.80665 * at_a * as_a)), 2)))` - **Formula (Smooth-Lined Tunnel (`h_f0 = 0.85` m) + Undersized Shaft (`A_s = 38` m²) Hunting Check)**: `=IF(ISTEXT(E5), E5, LET(ath_a, (B2 * B3) / (2 * 9.80665 * B5 * (B4 - B5)), ROUND(B7 / ath_a, 2)))` ### Hydrotreater LHSV, WHSV & Catalyst Bed Inventory Formula - **URL**: https://sheets.arte-soft.com/en/learn/hydrotreating-reactor-lhsv-whsv-catalyst-bed-volume-and-residence-time/ - **Summary**: Calculate Required Catalyst Bed Volume V_cat (m³) from LHSV, Loaded CoMo/NiMo Catalyst Mass (metric tons), True Weight Hourly Space Velocity WHSV (hr^-1), and Apparent Space Time (min). *Table — LHSV and WHSV are NOT equal unless oil density happens to match packed catalyst bulk density!:* | Hydrotreater Catalyst KPI (120 m³/hr, SG=0.85, LHSV=1.5 hr^-1, rho_cat=750) | Formula | Verified Output | | --- | --- | --- | | Required Catalyst Bed Volume (m³) | Liquid_Feed_m3_hr / Design_LHSV | 80.00 m³ (150.00 m³ @ LHSV = 0.8) | | Loaded Catalyst Mass (metric tons) | (Catalyst_Vol_m3 * Bulk_Dens_kg_m3) / 1000 | 60.00 t (112.50 t @ LHSV = 0.8) | | Weight Space Velocity WHSV (hr^-1) | LHSV * ((Feed_SG * 1000) / Bulk_Dens) | 1.70 hr^-1 (0.91 @ LHSV = 0.8) | | Apparent Bed Space Time (min) | 60 / Design_LHSV | 40.00 min (75.00 min @ LHSV = 0.8) | - **Formula (LHSV-to-WHSV Bridge & Reactor Catalyst Tonnage Formula)**: `=LET(qf_l, B2, sg_f, B3, lh_s, B4, rh_c, B5, IF(OR(qf_l <= 0, sg_f < 0.5, sg_f > 1.25, lh_s <= 0.05, lh_s > 20, rh_c < 300, rh_c > 1800), "Invalid Hydrotreater Input", ROUND(lh_s * ((sg_f * 1000) / rh_c), 2)))` - **Formula (Cracked Cycle-Oil Deep Desulfurization Lower-LHSV Check (Set LHSV = 0.80 hr^-1))**: `=IF(ISTEXT(E4), E4, ROUND(((B2 / B4) * B5) / 1000, 2))` ### Hyperbolic COSH, SINH & TANH via EXP: Overhead Cable Catenary Sag & Length - **URL**: https://sheets.arte-soft.com/en/learn/hyperbolic-cosh-sinh-tanh-overhead-cable-catenary-sag/ - **Summary**: Evaluate exact hyperbolic cosine COSH(u) = (e^u + e^-u)/2 and hyperbolic sine SINH(u) = (e^u - e^-u)/2 using EXP to compute transmission-line catenary sag and true suspended arc length. *Table — Model true catenary sag & conductor length beyond parabolic shortcuts!:* | Span Metric (S = 200 m, H = 15,000 N, w = 15 N/m) | Formula (a = H/w = 1,000 m, u = 0.10) | Exact Value | | --- | --- | --- | | True Catenary Mid-Span Sag (d) | a * (COSH(0.10) - 1) | 5.0042 m | | Parabolic Sag Approximation | w * S^2 / (8 * H) | 5.0000 m | | Suspended Conductor Arc Length (L) | 2 * a * SINH(0.10) | 200.3335 m | - **Formula (Exact Catenary Mid-Span Sag (m) via Exponential COSH)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid Span or Tension", ROUND((B3 / B4) * ((EXP(B2 * B4 / (2 * B3)) + EXP(-B2 * B4 / (2 * B3))) / 2 - 1), 4))` - **Formula (Exact Suspended Cable Arc Length (m) via Exponential SINH)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid Span or Tension", ROUND((B3 / B4) * (EXP(B2 * B4 / (2 * B3)) - EXP(-B2 * B4 / (2 * B3))), 4))` ### Hyperbolic Secant Envelope & Complex Hyperbolic Reciprocals (SECH, IMSECH & IMCSCH) - **URL**: https://sheets.arte-soft.com/en/learn/hyperbolic-secant-and-complex-hyperbolic-reciprocals-sech-imsech-imcsch/ - **Summary**: Model optical soliton pulse envelopes sech^2(t/tau) with SECH(x) = 2 / (EXP(x) + EXP(-x)) and compute complex hyperbolic secant and cosecant components (IMSECH & IMCSCH). *Table — Real sech(x) pulse profiles and complex waveguide reciprocals:* | Quantity | Expression | At a = ln(2), b = 0 | At a = ln(2), b = pi/2 | | --- | --- | --- | --- | | Real SECH(a) | 2 / (EXP(a) + EXP(-a)) | 0.8000 | 0.8000 | | Soliton Intensity SECH^2(a) | SECH(a)^2 | 0.6400 | 0.6400 | | IMSECH(a + b*i) | 1 / cosh(a + b*i) | 0.8000 + 0i | 0 - 1.3333i | | IMCSCH(a + b*i) | 1 / sinh(a + b*i) | 1.3333 + 0i | 0 - 0.8000i | - **Formula (Real Hyperbolic Secant & Soliton Intensity (SECH))**: `=ROUND(2 / (EXP(B2) + EXP(-B2)), 4)` - **Formula (Complex Hyperbolic Secant & Cosecant (IMSECH & IMCSCH))**: `=LET(re_a, B2, im_b, B3, ch_a, (EXP(re_a) + EXP(-re_a)) / 2, sh_a, (EXP(re_a) - EXP(-re_a)) / 2, ur, ch_a * COS(im_b), ui, sh_a * SIN(im_b), ROUND(-ui / (ur ^ 2 + ui ^ 2), 4))` ### Hypergeometric probability formula: exact sampling without replacement via FACT - **URL**: https://sheets.arte-soft.com/en/learn/hypergeometric-probability-without-replacement-fact/ - **Summary**: Calculate exact finite-lot inspection probabilities P(X = k) = C(K, k) * C(N - K, n - k) / C(N, n) and finite-population variance using FACT and LET. *Table — Why Binomial fails on small audit lots—and how Hypergeometric counts exact draws!:* | Lot Audit Parameter | Cell | Value | Exact Result | | --- | --- | --- | --- | | Lot Size (popN) | B2 | 20 | C(20, 5) = 15,504 total samples | | Defectives in Lot (defK) | B3 | 4 | Non-defective = 16 | | Sample Drawn (drawN) | B4 | 5 | Expected defects E[X] = 1.00 | | Defectives Found (hitK) | B5 | 2 | P(X = 2) = 3,360 / 15,504 = 0.2167 | - **Formula (Exact Hypergeometric PMF P(X = k) via FACT & LET)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<1,B2>170,B3<0,B3>B2,B4<0,B4>B2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B5MIN(B3,B4)),0,LET(popN, B2, defK, B3, drawN, B4, hitK, B5, cHit, FACT(defK) / (FACT(hitK) * FACT(defK - hitK)), cMiss, FACT(popN - defK) / (FACT(drawN - hitK) * FACT(popN - defK - (drawN - hitK))), cAll, FACT(popN) / (FACT(drawN) * FACT(popN - drawN)), ROUND((cHit * cMiss) / cAll, 4)))))` - **Formula (Finite-population variance n * (K/N) * (1 - K/N) * (N - n)/(N - 1))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<1,B2>170,B3<0,B3>B2,B4<0,B4>B2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(B2=1,0,ROUND(B4 * (B3 / B2) * (1 - B3 / B2) * ((B2 - B4) / (B2 - 1)), 4))))` ### Corrected Sodium for Hyperglycemia (DKA / HHS): Katz & Hillier Formulas - **URL**: https://sheets.arte-soft.com/en/learn/hyperglycemia-corrected-serum-sodium-katz-and-hillier-formula/ - **Summary**: Correct dilutional hyponatremia in Diabetic Ketoacidosis (DKA) and Hyperosmolar Hyperglycemic State (HHS) using Katz's +1.6 mEq/L and Hillier's +2.4 mEq/L per 100 mg/dL serum glucose above 100. *Table — Unmask true hypernatremic dehydration hidden behind high blood sugar!:* | Correction Method (Measured Na = 128 mEq/L) | Glucose = 600 mg/dL (+500 excess) | Glucose = 90 mg/dL (Euglycemic) | Clinical Selection | | --- | --- | --- | --- | | Katz (1973) +1.6 Factor | 128 + 1.6 * 5 = 136.0 mEq/L | 128.0 mEq/L (Unchanged) | Standard <= 400 mg/dL | | Hillier (1999) +2.4 Factor | 128 + 2.4 * 5 = 140.0 mEq/L | 128.0 mEq/L (Unchanged) | Preferred in severe DKA/HHS > 400 | | Auto-Switched ADA Hybrid | IF(Gluc > 400, Hillier, Katz) | 140.0 mEq/L at 600 | Applies 1.6 <=400, 2.4 >400 | - **Formula (Katz Hyperglycemia-Corrected Serum Sodium (+1.6 per 100 mg/dL > 100))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Lab Input", ROUND(B2 + (1.6 * (MAX(0, B3 - 100) / 100)), 1))` - **Formula (Hillier Severe-Hyperglycemia Sodium Correction (+2.4 per 100 mg/dL > 100))**: `=ROUND(B2 + (2.4 * (MAX(0, B3 - 100) / 100)), 1)` ### Hyperscale Data-Center REIT $/kW Lease & PUE NOI Formula - **URL**: https://sheets.arte-soft.com/en/learn/hyperscale-data-center-reit-kw-it-lease-rate-pue-pass-through-noi-formula/ - **Summary**: Calculate Wholesale Data-Center REIT Annual Base $/kW Lease Revenue ($M), Metered PUE Power Pass-Through Revenue ($M), Facility Cash NOI ($M), and Development Yield-on-Cost (%). *Table — Wholesale data centers lease critical IT kW—not square feet—and pass utility kWh through at zero margin!:* | Hyperscale Data-Center KPI (25 MW @ $140/kW/mo, 1.25 PUE, $80/MWh, $300M CapEx) | Formula | Verified Output | | --- | --- | --- | | Annual Base $/kW Lease Rev ($M) | IT_MW * 1000 * Rent_kW_Mo * 12 / 10^6 | $42.00M ($48.00M @ $160/kW) | | Metered PUE Power Pass-Through ($M) | IT_MW * 0.80 * PUE * 8760 * Rate_MWh / 10^6 | $17.52M ($26.28M @ $120/MWh) | | Facility Cash NOI ($M) | Base_Lease_Rev_M - Unreimbursed_OpEx_M | $37.50M ($43.50M @ $160/kW) | | Development Yield-on-Cost (%) | (Facility_Cash_NOI_M / Dev_CapEx_M) * 100 | 12.50% (14.50% @ $160/kW) | - **Formula (Data-Center $/kW Lease NOI & Development Yield-on-Cost Formula)**: `=LET(mw_i, B2, rn_k, B3, pu_e, B4, pw_r, B5, op_u, B6, cp_d, B7, IF(OR(mw_i <= 0, rn_k <= 0, pu_e < 1.02, pu_e > 2.5, pw_r < 0, op_u < 0, cp_d <= 0), "Invalid Data Center Input", LET(rv_b, mw_i * rn_k * 12 / 1000, no_i, rv_b - op_u, ROUND((no_i / cp_d) * 100, 2))))` - **Formula (Utility Tariff Surge Insulation & AI Liquid-Cooling Rent Hike Checks)**: `=IF(ISTEXT(E5), E5, ROUND((B2 * 0.8 * B4 * 8760 * B5) / 1000000, 2))` ### Air Cargo vs Ocean LCL Chargeable Weight Formula - **URL**: https://sheets.arte-soft.com/en/learn/iata-air-cargo-vs-ocean-lcl-volumetric-and-chargeable-weight-formula/ - **Summary**: Calculate IATA Air Volumetric & Chargeable Weight MAX(W_gross, V_cbm * 167), Air Freight Cost, Ocean LCL W/M Revenue Tons MAX(W_gross / 1000, V_cbm), and Modal Freight Savings. *Table — Prevent 40%+ air-freight invoice shocks on bulky, low-density shipments!:* | Freight Forwarding Metric (12.0 CBM, 1,400 kg Gross, Air $4.50/kg, LCL $85/WM) | Formula | Verified Output | | --- | --- | --- | | IATA Air Chargeable Weight (kg) | MAX(W_gross, V_cbm * 167) | 2,004.00 kg (+604 kg Volumetric) | | Total Air Freight Charge ($) | MAX(W_gross, V_cbm * 167) * Rate_air | $9,018.00 | | Ocean LCL Billable W/M Tons | MAX(1, MAX(W_gross / 1000, V_cbm)) | 12.00 W/M Revenue Tons | | Total Ocean LCL Freight Charge ($) | Billable_WM * Rate_lcl | $1,020.00 ($7,998 Saved vs Air) | - **Formula (IATA Air Chargeable Weight & Freight Cost Formula)**: `=LET(v_cb, B2, w_gr, B3, dm_f, B4, r_ar, B5, r_oc, B6, IF(OR(v_cb <= 0, w_gr <= 0, dm_f <= 0, r_ar <= 0, r_oc <= 0), "Invalid Shipment Specs", ROUND(MAX(w_gr, v_cb * dm_f) * r_ar, 2)))` - **Formula (Ocean LCL W/M Revenue Ton & Minimum-1-CBM Floor Formula)**: `=IF(ISTEXT(E3), E3, ROUND(MAX(1, MAX(B3 / 1000, B2)) * B6, 2))` ### HVAC Ice-Bank Latent Fusion & Peak-Chiller Shift Formula - **URL**: https://sheets.arte-soft.com/en/learn/ice-bank-thermal-energy-storage-latent-fusion-and-peak-chiller-shift/ - **Summary**: Calculate Commercial Ice-Bank Thermal Energy Storage Capacity (kWh_th) from Water Mass and 334 kJ/kg Latent Heat of Fusion, Latent Energy Share, Daytime On-Peak Chiller Electric Demand Shaved (kW_e), and Daily TOU Tariff Arbitrage Savings ($) Accounting for Lower Ice-Making COP. *Table — Account for lower nighttime glycol ice-making COP when sizing TOU ice-storage arbitrage!:* | Ice-Bank TES Metric (30,000 kg, +26 kJ/kg Sensible, 5 hr Peak, COP 3.0 vs 2.5 Ice) | Formula | Verified Output | | --- | --- | --- | | Stored Thermal Cooling (kWh_th) | (Water_Mass_kg * (334 + Sensible_kJ)) / 3600 | 3,000.00 kWh_th | | Latent Fusion Energy Share | 334 / (334 + Sensible_kJ_kg) | 0.9278 (92.78% Phase Change) | | Peak Electric Demand Shaved (kW) | (Stored_kWh_th / Peak_Hours) / Daytime_COP | 200.00 kW_e | | Daily Net TOU Energy Savings ($) | (Q/COP_day)*P_peak - (Q/2.5)*P_offpeak | +$168.00 (-$4.00 @ Flat Tariff) | - **Formula (Ice-Bank Daily TOU Energy Arbitrage Formula (vs Night Ice COP = 2.5))**: `=LET(mw_k, B2, dh_s, B3, hr_p, B4, cp_d, B5, pr_p, B6, pr_o, B7, IF(OR(mw_k <= 0, dh_s < 0, hr_p <= 0, cp_d <= 1, pr_p <= 0, pr_o <= 0), "Invalid Ice-Storage Input", LET(qt_h, (mw_k * (334 + dh_s)) / 3600, el_d, qt_h / cp_d, el_n, qt_h / 2.5, ROUND(el_d * pr_p - el_n * pr_o, 2))))` - **Formula (Flat-Tariff Ice-COP Penalty Check ($0.08 Peak vs $0.07 Off-Peak))**: `=IF(ISTEXT(E5), E5, ROUND((((B2 * (334 + B3)) / 3600) / B4) / B5, 2))` ### Ice Cream Overrun %, Air Fraction & Gallon Weight Formula - **URL**: https://sheets.arte-soft.com/en/learn/ice-cream-overrun-percentage-mix-density-and-finished-pint-weight-formula/ - **Summary**: Calculate Gravimetric Overrun (%), Dispersed Air Volume Fraction (%), Finished Gallon Net Weight (lb/gal vs FDA 4.50 lb/gal Minimum), and Continuous Freezer Volumetric Yield (L/h). *Table — 100% overrun does NOT mean 100% air—it means 50% dispersed air bubbles, and whipping past ~103% violates the US FDA 4.50 lb/gal legal weight floor!:* | FDA 21 CFR 135.110 Ice Cream Overrun KPI (Mix=1,096 g/L, 650 L/h, Frozen=602 vs 505 g/L) | Formula | Verified Output | | --- | --- | --- | | Gravimetric Overrun (%) | ((Mix_g_L - Frozen_g_L) / Frozen_g_L) * 100 | 82.06% (117.03% over-whipped @ 505 g/L!) | | Dispersed Air Volume Fraction (%) | ((Mix_g_L - Frozen_g_L) / Mix_g_L) * 100 | 45.07% (53.92% air foam @ 505 g/L) | | Finished US Gallon Weight (lb/gal) | (Frozen_g_L * 3.78541178) / 453.59237 | 5.02 lb/gal (4.21 < 4.50 ILLEGAL @ 505 g/L!) | | Volumetric Freezer Output (L/h) | Mix_Feed_L_h * (Mix_g_L / Frozen_g_L) | 1,183.4 L/h (1,410.7 L/h @ 505 g/L) | - **Formula (Gravimetric Overrun Cup, Air Volume Fraction & FDA lb/gal Compliance Formula)**: `=LET(wm_g, B2, wf_g, B3, qm_l, B4, IF(OR(wm_g < 1000, wm_g > 1250, wf_g < 350, wf_g > wm_g, qm_l <= 0), "Invalid Freezer Input", ROUND(qm_l * (wm_g / wf_g), 1)))` - **Formula (Over-Whipped 505 g/L Cup (`117%` Overrun) FDA Short-Weight Rejection Check (Set Frozen Cup B3 = 505 g/L))**: `=IF(ISTEXT(E5), E5, ROUND((B3 * 3.78541178) / 453.59237, 2))` ### ICH Score (Hemphill 0–6 Points): Intracerebral Hemorrhage Severity Formula - **URL**: https://sheets.arte-soft.com/en/learn/ich-score-intracerebral-hemorrhage-30-day-mortality-formula/ - **Summary**: Calculate J. Claude Hemphill's 5-component ICH Score (0 to 6 points) from Glasgow Coma Scale (3–15), Hematoma Volume (>= 30 cm^3), Intraventricular Hemorrhage (IVH), Infratentorial Origin, and Age (>= 80 years). *Table — Standardize spontaneous hemorrhagic stroke communication across ED & neurosurgery!:* | ICH Score Component | Scoring Criterion | Points Awarded | | --- | --- | --- | | Glasgow Coma Scale (GCS 3–15) | 3–4 = +2 pts \| 5–12 = +1 pt \| 13–15 = 0 pts | 0 to 2 points | | ICH Clot Volume (ABC/2, cm^3) | >= 30.0 cm^3 = +1 pt \| < 30.0 cm^3 = 0 pts | 0 or 1 point | | Intraventricular Hemorrhage (IVH) | Present (1) = +1 pt \| Absent (0) = 0 pts | 0 or 1 point | | Infratentorial Origin (Cerebellum/Pons) | Yes (1) = +1 pt \| Supratentorial (0) = 0 pts | 0 or 1 point | | Patient Age (Years) | >= 80 years = +1 pt \| < 80 years = 0 pts | 0 or 1 point (Max Total = 6) | - **Formula (Total Hemphill ICH Score (0 to 6 Points) from Raw GCS, Volume, CT & Age)**: `=IF(OR(B2 < 3, B2 > 15, B3 < 0, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 < 18), "Invalid ICH Inputs", IF(B2 <= 4, 2, IF(B2 <= 12, 1, 0)) + IF(B3 >= 30, 1, 0) + B4 + B5 + IF(B6 >= 80, 1, 0))` - **Formula (Historical Derivation Cohort 30-Day Mortality Reference Band)**: `=IF(OR(B2 < 3, B2 > 15, B3 < 0, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 < 18), "Invalid ICH Inputs", CHOOSE(1 + IF(B2 <= 4, 2, IF(B2 <= 12, 1, 0)) + IF(B3 >= 30, 1, 0) + B4 + B5 + IF(B6 >= 80, 1, 0), "ICH 0 (Low Baseline Severity: ~0% in 2001 Cohort)", "ICH 1 (Mild-Moderate: ~13% in 2001 Cohort)", "ICH 2 (Moderate Severity: ~26% in 2001 Cohort)", "ICH 3 (High Severity: ~72% in 2001 Cohort)", "ICH 4 (Severe ICH: ~97% in 2001 Cohort)", "ICH 5 (Critical ICH: ~100% in 2001 Cohort)", "ICH 6 (Maximal Severity Score)"))` ### ICIQ-UI Short Form Urinary Incontinence Severity Score (0–21) - **URL**: https://sheets.arte-soft.com/en/learn/iciq-ui-sf-urinary-incontinence-short-form-severity-score/ - **Summary**: Score the International Consultation on Incontinence Questionnaire Short Form (ICIQ-UI SF, 0–21) across frequency (0–5), even-weighted volume (0/2/4/6), and QoL impact (0–10). *Table — Catching even-weighted leakage volume (0, 2, 4, 6) and Klovning’s validated 0–21 severity bands!:* | ICIQ-UI SF Total Score (0–21) | Klovning (2009) Severity Band | Typical Clinical Impact | | --- | --- | --- | | 1 – 5 Points | Slight Urinary Incontinence (1–5) | Occasional drops; pelvic floor lifestyle training | | 6 – 12 Points | Moderate Urinary Incontinence (6–12) | Regular pad use; supervised PFMT / pharmacotherapy | | 13 – 18 Points (e.g., 3 + 4 + 7 = 14) | Severe Urinary Incontinence (13–18) | Major QoL restriction; urodynamics / surgical review | | 19 – 21 Points | Very Severe Urinary Incontinence (19–21) | Continuous high-volume leakage | - **Formula (ICIQ-UI Short Form Total Score (0–21) with Even-Volume Guard)**: `=IF(OR(B2 < 0, B2 > 5, MOD(B3, 2) <> 0, B3 < 0, B3 > 6, B4 < 0, B4 > 10), "Invalid ICIQ-UI-SF Item Score", B2 + B3 + B4)` - **Formula (Klovning Validated ICIQ-UI SF Severity Tier)**: `=IF(OR(B2 < 0, B2 > 5, MOD(B3, 2) <> 0, B3 < 0, B3 > 6, B4 < 0, B4 > 10), "Invalid ICIQ-UI-SF Item Score", IF(B2 + B3 + B4 = 0, "Continence (0)", IF(B2 + B3 + B4 <= 5, "Slight Urinary Incontinence (1–5)", IF(B2 + B3 + B4 <= 12, "Moderate Urinary Incontinence (6–12)", IF(B2 + B3 + B4 <= 18, "Severe Urinary Incontinence (13–18)", "Very Severe Urinary Incontinence (19–21)")))))` ### Devine weight, an adjusted-weight example and predicted body weight - **URL**: https://sheets.arte-soft.com/en/learn/ideal-body-weight-devine-and-adjusted-body-weight-dosing/ - **Summary**: Compare distinct weight equations with explicit units and assumptions; demonstrate why similarly named estimates should not be substituted blindly. *Table — Separate the model from the clinical decision:* | Calculation | M equation at 70 inches, actual 110 kg | F equation at 64 inches | | --- | --- | --- | | Devine weight | 73.0 kg | 54.7 kg | | Adjusted example with factor 0.4 | 87.8 kg | Requires actual weight | | PBW using 0.91 kg/cm | 73.114 kg before rounding | 54.7456 kg before rounding | | Illustrative 6 mL/kg of unrounded PBW | 439 mL rounded | 328 mL rounded | - **Formula (Devine equation in kilograms)**: `=IF(OR(NOT(ISTEXT(B2)),AND(UPPER(B2)<>"M",UPPER(B2)<>"F"),NOT(ISNUMBER(B3))),"Invalid inputs",IF(B3<60,"Outside example scope",ROUND(IF(UPPER(B2)="M",50,45.5)+2.3*(B3-60),1)))` - **Formula (Adjusted weight with an explicit factor)**: `=IF(OR(NOT(ISTEXT(B2)),AND(UPPER(B2)<>"M",UPPER(B2)<>"F"),NOT(ISNUMBER(B3))),"Invalid inputs",IF(B3<60,"Outside example scope",IF(OR(OR(NOT(ISTEXT(B2)),AND(UPPER(B2)<>"M",UPPER(B2)<>"F"),NOT(ISNUMBER(B3))),COUNT(B4,B6)<>2),"Invalid inputs",IF(OR(B4<=0,B6<0,B6>1),"Invalid inputs",IF(B4<(IF(UPPER(B2)="M",50,45.5)+2.3*(B3-60)),"Outside example scope",ROUND((IF(UPPER(B2)="M",50,45.5)+2.3*(B3-60))+B6*(B4-(IF(UPPER(B2)="M",50,45.5)+2.3*(B3-60))),1))))))` - **Formula (Predicted body weight using the centimetre convention)**: `=IF(OR(NOT(ISTEXT(B2)),AND(UPPER(B2)<>"M",UPPER(B2)<>"F"),NOT(ISNUMBER(B3))),"Invalid inputs",IF(B3<60,"Outside example scope",IF(UPPER(B2)="M",50,45.5)+0.91*(B3*2.54-152.4)))` - **Formula (Illustrative volume multiplication)**: `=IF(COUNT(B7)<>1,"Invalid inputs",ROUND(6*B7,0))` ### Ideal Gas Law (PV = nRT) and Combined Gas Law formulas - **URL**: https://sheets.arte-soft.com/en/learn/ideal-gas-law-pv-nrt-and-boyles-charles-law/ - **Summary**: Solve pressure, volume, or moles with PV = nRT and scale compressed-gas states via (P1*V1)/T1 = (P2*V2)/T2 using mandatory Kelvin temperatures. *Table — Always convert Celsius to absolute Kelvin (+ 273.15) inside gas laws!:* | Gas Engineering Equation | Inputs | Calculated Output | | --- | --- | --- | | Ideal Gas Pressure P = nRT / V | 2 mol, 25°C (298.15 K), 10 L | 4.8931 atm | | Boyle's Compression (Halve V, same T) | P1 = 2 atm, V1 = 12L -> V2 = 6L | 4.00 atm (2x P) | | Combined Compression + Heating | 12L->6L & 300K->450K | 6.00 atm (2 * 1.5x P) | - **Formula (Ideal Gas Law pressure (atm) and Combined Gas Law state formulas)**: `=ROUND((A2 * 0.082057 * (B2 + 273.15)) / C2, 4)` - **Formula (Combined Gas Law final pressure P2 from (P1, V1, T1_C -> V2, T2_C))**: `=ROUND(D2 * (E2 / G2) * ((H2 + 273.15) / (F2 + 273.15)), 4)` ### IEEE 1584 Arc-Flash Incident Energy & Boundary Formula - **URL**: https://sheets.arte-soft.com/en/learn/ieee-1584-arc-flash-incident-energy-working-distance-and-ppe-arc-flash-boundary/ - **Summary**: Calculate Switchgear Arc-Flash Incident Energy (J/cm² and cal/cm²), 1.2 cal/cm² Second-Degree Burn Arc-Flash Boundary (m), and NFPA 70E Arc-Rated PPE Category Gate. *Table — A sticky upstream breaker delaying fault clearing from 85 ms to 420 ms multiplies switchgear arc-flash burn energy 5x—even at identical fault current!:* | IEEE 1584 / NFPA 70E Arc-Flash KPI (En=14.8 J/cm², D=455 mm, x=1.473) | Formula | Verified Output | | --- | --- | --- | | Incident Energy E (J/cm²) | En_J_cm2 * (Clear_s / 0.2) * ((610 / D_mm) ^ x) | 9.69 J/cm² (47.87 J/cm² @ 0.42 s delay!) | | Incident Energy (cal/cm²) | Incident_Energy_J_cm2 / 4.184 | 2.32 cal/cm² (11.44 cal/cm² 40-cal suit!) | | 1.2 cal/cm² Arc-Flash Boundary (m) | (610 * ((En*(t/0.2)/5.0208) ^ (1/x))) / 1000 | 0.71 m (2.10 m approach cordon!) | | NFPA 70E PPE Hazard Tier | <= 4.0 cal/cm² Cat 2 Daily AR Clothing Gate | PPE CAT 1-2 (<= 4 cal/cm2) | - **Formula (IEEE 1584 Incident Energy Scaling & 5.0208 J/cm² Stoll Burn Boundary Formula)**: `=LET(en_j, B2, tc_s, B3, dw_m, B4, xd_e, B5, ec_l, (en_j * (tc_s / 0.2) * ((610 / dw_m) ^ xd_e)) / 4.184, IF(OR(en_j <= 0.1, tc_s < 0.008, tc_s > 2, dw_m < 200, dw_m > 3000, xd_e < 0.8, xd_e > 2.2), "Invalid Arc-Flash Input", IF(ec_l <= 4, "PPE CAT 1-2 (<= 4 cal/cm2)", "PPE CAT 3-4 / SUIT (> 4 cal/cm2)")))` - **Formula (Disabled Maintenance-Mode Switch (`t = 0.42` s Short-Time Delay) Cat-3 Escalation Check (Set B3 = 0.42 s))**: `=IF(ISTEXT(E2), E2, ROUND((B2 * (B3 / 0.2) * ((610 / B4) ^ B5)) / 4.184, 2))` ### IEEE C37.110 CT Knee Voltage & X/R Saturation Formula - **URL**: https://sheets.arte-soft.com/en/learn/ieee-c37-110-current-transformer-ct-knee-voltage-x-over-r-dc-offset-saturation-formula/ - **Summary**: Calculate Secondary Symmetrical Fault Current (A), Symmetrical Burden Voltage Vs (V), Transient DC-Offset Excitation Demand Vs*(1 + X/R) (V), and % of Knee Voltage Vk. *Table — A C400 relay CT with only 62 V symmetrical burden voltage still saturates violently at 1,178 V when X/R = 18—causing bus differential false trips!:* | IEEE C37.110 CT Saturation KPI (24 kA Fault, 1200:5 N=240, Vk=320 V) | Formula | Verified Output | | --- | --- | --- | | Secondary Symmetrical Fault (A) | (Primary_Fault_kA * 1000) / Turns_Ratio_N | 100.0 A RMS (20x 5 A tap) | | Symmetrical Burden Voltage Vs (V) | Secondary_Fault_A * Loop_Burden_Zb_Ohm | 18.0 V (62.0 V @ long #12 AWG yard run) | | Transient DC-Offset Demand Vtr (V) | Symmetrical_Vs_V * (1 + Primary_X_Over_R) | 234.0 V (1,178.0 V >> 320 V knee!) | | Knee Flux Utilization (%) | (Transient_Demand_Vtr / CT_Knee_Vk_V) * 100 | 73.1% LINEAR (368.1% DEEP SATURATION!) | - **Formula (IEEE C37.110 (1 + X/R) Transient Dimensioning Factor & Knee-Point Formula)**: `=LET(if_k, B2, nc_t, B3, zb_o, B4, xr_r, B5, vk_v, B6, is_a, (if_k * 1000) / nc_t, vt_r, (is_a * zb_o) * (1 + xr_r), IF(OR(if_k < 0.5, if_k > 100, nc_t < 10, nc_t > 2000, zb_o < 0.02, zb_o > 10, xr_r < 1, xr_r > 80, vk_v < 20, vk_v > 2000), "Invalid CT Input", ROUND((vt_r / vk_v) * 100, 1)))` - **Formula (Long Switchyard Control Cable + Close-In Bus X/R = 18 (`Z_b = 0.62` Ohm) Saturation Check)**: `=IF(ISTEXT(E5), E5, ROUND(((B2 * 1000) / B3) * B4 * (1 + B5), 1))` ### IES Zonal Cavity Lumen Method, RCR & Fixture Count Formula - **URL**: https://sheets.arte-soft.com/en/learn/ies-zonal-cavity-lumen-method-room-cavity-ratio-rcr-and-lighting-fixture-count-formula/ - **Summary**: Calculate IES Room Cavity Ratio RCR, Exact Fractional Luminaire Count, Rounded-Up Integer Luminaire Count, and Maintained Workplane Illuminance (Lux). *Table — Sizing LED troffers from raw initial lumens without Room Cavity Ratio (RCR) and Light Loss Factor (LLF) leaves offices 44% under-lit at year five!:* | IES Zonal Cavity KPI (18x12 m = 216 m², 500 Lux Target, 4,800 lm LED) | Formula | Verified Output | | --- | --- | --- | | Room Cavity Ratio (RCR) | (5 * Cavity_hrc_m * (Length_m + Width_m)) / (L * W) | 1.67 office (3.33 tall dusty bay!) | | Exact Luminaires Required | (Target_Lux * L * W) / (Lumens * CU * LLF) | 40.35 (64.88 @ high bay CU=0.51, LLF=0.68) | | Installed Integer Luminaires | ROUNDUP(Exact_Luminaires_Required, 0) | 41 fixtures (65 fixtures high-bay) | | Maintained Workplane Lux | (Installed_N * Lumens * CU * LLF) / (L * W) | 508.0 lux (>= 500 lux EN 12464-1) | - **Formula (IESNA Zonal Cavity Room Cavity Ratio (RCR) & Maintained Illuminance Formula)**: `=LET(rl_m, B2, rw_m, B3, hc_m, B4, et_l, B5, fl_m, B6, cu_f, B7, lf_f, B8, ex_n, (et_l * rl_m * rw_m) / (fl_m * cu_f * lf_f), IF(OR(rl_m < 1, rw_m < 1, hc_m <= 0.3, et_l < 10, et_l > 5000, fl_m < 100, cu_f <= 0.1, cu_f > 1.05, lf_f <= 0.2, lf_f > 1), "Invalid Lumen Input", ROUND((ROUNDUP(ex_n, 0) * fl_m * cu_f * lf_f) / (rl_m * rw_m), 1)))` - **Formula (Double-Height Dusty Machine Shop (`h_rc = 4.8` m, `CU = 0.51`, `LLF = 0.68`) 65-Fixture Check)**: `=IF(ISTEXT(E5), E5, ROUNDUP((B5 * B2 * B3) / (B6 * B7 * B8), 0))` ### Roll weekend or Monday dates to Friday / Monday (nearest workday rules) - **URL**: https://sheets.arte-soft.com/en/learn/if-monday-roll-back-to-friday-weekend-shift/ - **Summary**: Apply illustrative weekend shifts or calculate the previous Monday–Friday working date. *Table — Three common business-calendar adjustment rules:* | Calendar Date (A) | Weekday | Nearest Workday (Sat->Fri, Sun->Mon) | Prior Close WORKDAY(d,-1) | | --- | --- | --- | --- | | 2026-05-04 | Monday | 2026-05-04 (unchanged) | 2026-05-01 (Friday) | | 2026-05-09 | Saturday | 2026-05-08 (Friday, -1d) | 2026-05-08 (Friday) | | 2026-05-10 | Sunday | 2026-05-11 (Monday, +1d) | 2026-05-08 (Friday) | - **Formula (Nearest workday and Monday-rollback formulas)**: `=TEXT(A3 + CHOOSE(WEEKDAY(A3, 2), 0, 0, 0, 0, 0, -1, 1),"yyyy-mm-dd")` - **Formula (Previous business day (rolls Monday back to Friday))**: `=TEXT(WORKDAY(A2,-1),"yyyy-mm-dd")` ### Build an "IF NOT ERROR" Rule (Execute Custom Logic Only When Lookup Succeeds) - **URL**: https://sheets.arte-soft.com/en/learn/if-not-error-execute-action-only-on-valid-lookup-iserror/ - **Summary**: Invert Excel’s built-in IFERROR—which only replaces errors while passing raw successes straight through—by combining IF(ISNA(XMATCH(...)), Fallback, Custom_Success_Result) or IF(NOT(ISERROR(expr)), Success, Error). *Table — Why IFERROR cannot return a custom message when a formula SUCCEEDS!:* | Goal | Why IFERROR Falls Short | Exact IF-NOT-ERROR Formula Pattern | | --- | --- | --- | | Return Custom Badge on Match | IFERROR(XMATCH(...), "Missing") returns raw index 2 | =IF(ISNA(XMATCH(E2, A2:A5)), "Unregistered", "Approved (Row " & XMATCH(E2, A2:A5) & ")") | | Apply Tax Only When Valid Number | Raw pass-through skips post-processing | =IF(ISERROR(B2 / C2), "Check Denominator", ROUND((B2 / C2) * 1.2, 2)) | | Boolean Valid-Match Flag | Need TRUE/FALSE output | =NOT(ISNA(XMATCH(E2, A2:A5))) | - **Formula (Lookup IF-NOT-ERROR Pattern: Custom Success String vs. Missing Fallback)**: `=IF(ISNA(XMATCH(D2, A2:A5)), "Unregistered Vendor", "Approved Vendor (List #" & XMATCH(D2, A2:A5) & ")")` - **Formula (General Calculation IF-NOT-ERROR Pattern Using NOT(ISERROR(...)))**: `=IF(NOT(ISERROR(B2 / B3)), ROUND((B2 / B3) * 100, 1) & "% Margin", "Invalid Ratio Inputs")` ### IF NOT This or That: Avoid the Always-True OR(<>X, <>Y) Trap - **URL**: https://sheets.arte-soft.com/en/learn/if-not-this-or-that-de-morgan-exclusion-logic/ - **Summary**: Apply surcharges or workflow rules whenever a cell equals neither X nor Y using NOT(OR(cell=X, cell=Y)) or AND(cell<>X, cell<>Y). *Table — Why OR(B2 <> "Pickup", B2 <> "Local") is ALWAYS TRUE:* | Order | Delivery Mode | Order Subtotal | Exempt (Pickup/Local)? | Fuel Fee (8%) | | --- | --- | --- | --- | --- | | SHP-10 | Air Freight | $500.00 | No | $40.00 | | SHP-11 | Pickup | $300.00 | Yes (Exempt) | $0.00 | | SHP-12 | Local | $250.00 | Yes (Exempt) | $0.00 | | SHP-13 | Ground Parcel | $400.00 | No | $32.00 | - **Formula (Row-Level Surcharge When Mode Is Neither Exempt Option (Row 2))**: `=IF(ISBLANK(B2), 0, IF(NOT(OR(B2 = $B$6, B2 = $B$7)), ROUND(C2 * $B$8, 2), 0))` - **Formula (Total Surcharge Across Non-Exempt Orders)**: `=ROUND(SUMIFS(C2:C5, B2:B5, "<>", B2:B5, "<>" & B6, B2:B5, "<>" & B7) * B8, 2)` ### IF in Excel: flag low stock and keep missing counts visible - **URL**: https://sheets.arte-soft.com/en/learn/if-function-stock-threshold-missing-values/ - **Summary**: Compare a stock count with a minimum level. Decide what happens exactly at the threshold, then distinguish a missing count from a real zero. - **Formula (Choose the two results)**: `=IF(B2 0 or ISNUMBER(SEARCH()). *Table — Why =IF(A2 = "*PRO*", ...) ALWAYS returns FALSE—unless A2 literally contains asterisks!:* | SKU / Invoice Code (A) | Wildcard Pattern (E2 = "INV-????-EU") | COUNTIF(A, E2) > 0 | IF Output Label | | --- | --- | --- | --- | | "INV-4082-EU" | 4 chars between INV- and -EU | TRUE (1) | "EU_Valid_Format" | | "INV-99-EU" | Only 2 middle chars (fails ????) | FALSE (0) | "Non_Matching_Code" | | "INV-7710-US" | Ends in -US instead of -EU | FALSE (0) | "Non_Matching_Code" | - **Formula (IF Statement with Full * and ? Wildcard Mask (COUNTIF Bridge))**: `=IF(COUNTIF(A2, $E$2) > 0, "EU_Valid_Format", "Non_Matching_Code")` - **Formula (Count Rows Matching Wildcard Pattern Across Table)**: `=COUNTIF(A2:A6, $E$2)` ### IFNA vs IFERROR: handle missing lookups without hiding broken data - **URL**: https://sheets.arte-soft.com/en/learn/ifna-vs-iferror-lookup-errors/ - **Summary**: A missing lookup key produces #N/A, whereas a zero pack size or broken reference produces a different error. Use IFNA so genuinely missing codes show a friendly label while real arithmetic mistakes stay visible. *Table — Two very different failures in the same price lookup:* | Part code (A) | Carton cost (B) | Units per carton (C) | | --- | --- | --- | | P-101 | 48 | 6 | | P-204 | 45 | 0 | | P-309 | 36 | 4 | - **Formula (Use IFNA when "not found" is the only error you expect)**: `=IFNA(VLOOKUP(E2,A2:C4,2,FALSE)/VLOOKUP(E2,A2:C4,3,FALSE),"Unlisted code")` - **Formula (Compare how IFNA and IFERROR react to row 3)**: `=IFERROR(VLOOKUP(E2,A2:C4,2,FALSE)/VLOOKUP(E2,A2:C4,3,FALSE),"Unlisted code")` ### IFS function: assign ordered score bands without nested IFs - **URL**: https://sheets.arte-soft.com/en/learn/ifs-function-ordered-rating-bands/ - **Summary**: Evaluate checklist scores from highest to lowest threshold because IFS stops at the first TRUE condition. Guard blank cells first and finish with a TRUE catch-all. *Table — Order thresholds deliberately because first TRUE wins:* | Machine (A) | Audit score (B) | Expected band | | --- | --- | --- | | Press 1 | 82 | Pass B | | Press 2 | 90 | Pass A | | Press 3 | 60 | Review | | Press 4 | | Missing score | - **Formula (Check blank or non-numeric cells first, then step downward)**: `=IFS(NOT(ISNUMBER(B2)),"Missing score",B2>=90,"Pass A",B2>=80,"Pass B",B2>=60,"Review",TRUE,"Fail")` ### IIEF-5 (SHIM) Erectile Dysfunction Severity Score Calculator (5–25) - **URL**: https://sheets.arte-soft.com/en/learn/iief-5-shim-sexual-health-inventory-erectile-dysfunction-score/ - **Summary**: Sum the 5-item abridged International Index of Erectile Function (IIEF-5 / Sexual Health Inventory for Men, 5–25 points) across its five validated clinical severity bands. *Table — Standardizing PDE5-inhibitor response and post-prostatectomy nerve recovery on a 5–25 scale!:* | IIEF-5 / SHIM Total Score (5–25) | Erectile Dysfunction Tier | Clinical & Trial Interpretation | | --- | --- | --- | | 22 – 25 / 17 – 21 points | No ED (22–25) / Mild ED (17–21) | Cardiometabolic Screen; Lifestyle ± On-Demand PDE5i | | 12 – 16 / 8 – 11 points | Mild-to-Moderate / Moderate ED | PDE5i Titration; Check Morning Testosterone / Lipids / HbA1c | | 5 – 7 points | Severe ED | Specialist Urology Workup (Doppler / Intracavernosal / Prosthesis) | - **Formula (Total 5-Item IIEF-5 / SHIM Score (5 to 25 Points))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 1, MAX(B2:B6) > 5), "Invalid IIEF-5 Item (1-5)", SUM(B2:B6))` - **Formula (IIEF-5 Five-Band Clinical Severity Classification)**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 1, MAX(B2:B6) > 5), "Invalid IIEF-5 Item (1-5)", IF(SUM(B2:B6) <= 7, "Severe ED (5-7)", IF(SUM(B2:B6) <= 11, "Moderate ED (8-11)", IF(SUM(B2:B6) <= 16, "Mild-to-Moderate ED (12-16)", IF(SUM(B2:B6) <= 21, "Mild ED (17-21)", "No Erectile Dysfunction (22-25)")))))` ### Restore a table from an image with AI, then check the numbers - **URL**: https://sheets.arte-soft.com/en/learn/image-to-table-ai-checked-transcription/ - **Summary**: Turn a screenshot into editable spreadsheet cells. Review uncertain values, verify quantities and prices, and add formulas only after checking the transcription. - **Formula (Rebuild and test the arithmetic)**: `=B2*C2+B3*C3+B4*C4` - **Formula (Check numeric types and credit usage)**: `=COUNT(B2:C4)` ### IMO Shipping CII Rating, AER & EEOI Carbon Formula - **URL**: https://sheets.arte-soft.com/en/learn/imo-shipping-carbon-intensity-indicator-cii-aer-and-eeoi-formula/ - **Summary**: Calculate IMO MARPOL Annex VI Attained Annual Efficiency Ratio AER (g CO2 / DWT-nm), Voluntary Operational EEOI (g CO2 / cargo-ton-nm), CII Compliance Ratio, and A-to-E Rating Band. *Table — Never confuse mandatory capacity-based AER with cargo-based EEOI in IMO CII audits!:* | IMO MARPOL Annex VI Metric (6,000t HFO @ CF=3.114, 100k DWT, 60k nm, 60k Cargo, Req=3.20) | Formula | Verified Output | | --- | --- | --- | | Attained Mandatory AER | (Fuel * CF * 10^6) / (DWT * Dist_nm) | 3.114 g CO2 / (DWT * nm) | | Operational Voluntary EEOI | (Fuel * CF * 10^6) / (Cargo * Dist_nm) | 5.190 g CO2 / (t-cargo * nm) | | CII Compliance Ratio | Attained_AER / Required_CII | 0.9731 (0.7161 on LNG) | | IMO Annual CII Rating (A–E) | Bulk Carrier d1..d4 Thresholds | Rating C (Moderate Compliant) | - **Formula (IMO Attained AER & CII Compliance Ratio Formula)**: `=LET(fl_t, B2, cf_c, B3, dw_t, B4, ds_n, B5, cg_t, B6, rq_c, B7, IF(OR(fl_t <= 0, cf_c <= 0, dw_t <= 0, ds_n <= 0, cg_t <= 0, cg_t > dw_t, rq_c <= 0), "Invalid IMO Noon Log", LET(ae_r, (fl_t * cf_c * 1000000) / (dw_t * ds_n), ROUND(ae_r / rq_c, 4))))` - **Formula (IMO Five-Band CII Rating Classifier (A through E))**: `=IF(ISTEXT(E4), E4, IF(E4 <= 0.86, "Rating A (Major Superior)", IF(E4 <= 0.94, "Rating B (Minor Superior)", IF(E4 <= 1.06, "Rating C (Moderate Compliant)", IF(E4 <= 1.18, "Rating D (Corrective Plan @ 3 Yrs)", "Rating E (Immediate SEEMP Action)")))))` ### Landed Cost per unit formula: allocate ocean freight & customs tariffs across SKUs - **URL**: https://sheets.arte-soft.com/en/learn/import-landed-cost-freight-and-tariff-allocation/ - **Summary**: Estimate per-unit cost using supplied duty rates and a weight-based allocation of shared freight. *Table — Choose and document the allocation basis:* | SKU | Units & FOB | HTS Duty | Weight Share of $2,500 Freight | Unit Landed Cost | | --- | --- | --- | --- | --- | | SKU-A | 500 @ $12 ($6,000) | 8% = $480 | 400 / 1,000 kg (40%) = $1,000 | $7,480 / 500 = $14.96/unit | | SKU-B | 200 @ $35 ($7,000) | 15% = $1,050 | 600 / 1,000 kg (60%) = $1,500 | $9,550 / 200 = $47.75/unit | | Total | $13,000 FOB | $1,530 Duty | $2,500 Freight (100% allocated) | $17,030 Total COGS | - **Formula (Fully loaded Unit Landed Cost formula (FOB + HTS Duty + Weight-Allocated Freight))**: `=IF(OR(B2<=0,C2<=0,SUM($D$2:$D$3)<=0,MIN($D$2:$D$3)<0,E2<0,$G$2<0),"Invalid cost inputs",ROUND(((B2 * C2) * (1 + E2) + $G$2 * (D2 / SUM($D$2:$D$3))) / B2, 2))` - **Formula (Landed multiplier % above factory FOB price)**: `=IF(OR(B2<=0,C2<=0,SUM($D$2:$D$3)<=0,MIN($D$2:$D$3)<0,E2<0,$G$2<0),"Invalid cost inputs",ROUND((((B2 * C2) * (1 + E2) + $G$2 * (D2 / SUM($D$2:$D$3))) / B2) / C2 - 1, 4))` ### In-App AI Plan Validator, Suggest Style Guard & Undo Audit - **URL**: https://sheets.arte-soft.com/en/learn/in-app-ai-plan-validator-10k-range-cap-style-guard-and-undo-audit/ - **Summary**: Audit the client-side validatePlan and applyPlan safety rules in Arte Sheets: <=100 cell changes, <=2,000-char strings, <=10,000-cell range/SEQUENCE caps, suggest-mode style rejection, and local Undo stack recording. *Table — Verify every client-side guardrail before applying or proposing an AI cell plan!:* | Client Plan Validator Rule (js/assistant/actions.js) | Hard Contract Threshold | Verified Baseline State | | --- | --- | --- | | Patch Count & String Cap | 1 <= n_chg <= 100; n_len <= 2,000 chars | 40 cells (60 Headroom) | | Range & SEQUENCE Cell Cap | n_rng <= 10,000; 0 A:A / OFFSET / INDIRECT | 1,200 cells (8,800 Headroom) | | Suggest-Mode Style Guard | If f_sug = 1, f_sty MUST equal 0 | Plan Valid: Direct Apply | | Local Undo vs Shared Collab | f_shr = 0 pushes {label:"AI"} to undoStack | Local UndoStack Patch Recorded | - **Formula (Client-Side validatePlan Gate Status Formula)**: `=LET(n_ch, B2, n_ln, B3, n_rg, B4, n_bk, B5, f_st, B6, f_sg, B7, f_sh, B8, IF(OR(n_ch < 1, n_ln < 0, n_rg < 0, n_bk < 0, NOT(OR(f_st = 0, f_st = 1)), NOT(OR(f_sg = 0, f_sg = 1)), NOT(OR(f_sh = 0, f_sh = 1))), "Invalid Audit Flags", IF(OR(n_ch > 100, n_ln > 2000), "Rejected: Exceeds 100-Cell or 2000-Char Cap", IF(OR(n_rg > 10000, n_bk > 0), "Rejected: Range >10k or Blocked Formula/Spill", IF(AND(f_sg = 1, f_st = 1), "Rejected: Styles Blocked in Suggest Mode", IF(f_sg = 1, "Plan Valid: Route to Cell Suggestions", "Plan Valid: Direct Apply"))))))` - **Formula (UndoStack vs Cloud Collaboration Routing Formula)**: `=IF(LEFT(E4, 10) <> "Plan Valid", "No Mutation Applied", IF(B7 = 1, "Peer-Review Suggestion Queue", IF(B8 = 0, "Local UndoStack Patch Recorded", "Shared Cloud Live Sync Applied")))` ### In-App 2 MB Attachment vs MCP 200-Cell Read Audit - **URL**: https://sheets.arte-soft.com/en/learn/in-app-file-attachment-2mb-safe-excerpt-vs-mcp-read-range-200-cell-audit/ - **Summary**: Choose the right inspection path in Arte Sheets: metered in-app Pro Assistant file excerpts (.xlsx/.csv/.tsv/.txt <= 2 MB, safe non-executing) versus external MCP read_range (<= 200 cells raw values/formulas + revision, 0 Arte AI credits). *Table — Understand exact size caps, formula evaluation behavior, and credit rules across both AI read paths!:* | Inspection Governance Dimension | In-App Pro Assistant Attachment | MCP Connector read_range (0.1.0 In Review) | | --- | --- | --- | | Supported Source & Payload Cap | .xlsx/.csv/.tsv/.txt <= 2,097,152 bytes | Cloud Workbook Range <= 200 cells / call | | Formula & Execution Semantics | Safe non-executing excerpt + live sheet context | Raw inputs/formulas + revision (No Recalc!) | | Arte AI Credit Consumption | Metered monthly Pro AI credits per send | 0 Arte AI credits (120 calls/min burst cap) | | 15x12 Range (180 cells) & 1.5 MB CSV | Attachment Valid (0.50 MB Headroom) | Single read_range Call (20 cells headroom) | - **Formula (MCP read_range Required Paginated Call Count Formula (<= 200 Cells / Call))**: `=LET(r_ct, B2, c_ct, B3, cl_wb, B6, IF(OR(r_ct < 1, INT(r_ct) <> r_ct, c_ct < 1, INT(c_ct) <> c_ct), "Invalid Range Dimensions", IF(cl_wb <> 1, "Unavailable: Local Browser-Only Workbook", CEILING_MATH((r_ct * c_ct) / 200))))` - **Formula (In-App Pro Assistant 2 MB Safe Attachment Gate Formula)**: `=LET(by_sz, B4, ex_ok, B5, IF(ex_ok <> 1, "Rejected: Require .xlsx/.csv/.tsv/.txt", IF(OR(by_sz <= 0, by_sz > 2097152), "Rejected: Exceeds 2 MB Attachment Cap", "Valid Safe Non-Executing Excerpt")))` ### In-App Voice 3-Min Cap & Owner Share Preview Audit - **URL**: https://sheets.arte-soft.com/en/learn/in-app-voice-3min-session-and-owner-share-preview-governance-audit/ - **Summary**: Audit bounded WebRTC voice sessions (<=180s expiry, 15s heartbeat, barge-in turn guards) and verify why share_document requires verified-owner UI confirmation and cannot run inside execute_steps. *Table — Understand bounded WebRTC voice guardrails and owner-confirmed sharing!:* | Governance Check Layer | Rule Enforced in Arte Sheets | Verified Audit Outcome | | --- | --- | --- | | WebRTC Voice Session Lifetime | Active Pro + 15s Heartbeat + <= 180s Cap | 150s -> Live WebRTC Active; >180s -> Stopped at 180s (voiceEnded) | | Single share_document Tool Call | Verified-Email Owner + viewer/suggester/contributor | Preview Only: Explicit UI Confirm Button Required | | share_document Inside execute_steps | Explicitly Forbidden in Multi-Step Chains | Rejected: share_document Forbidden in execute_steps | | MCP Connector share_workbook (0.1.0 In Review) | sheets:share + Pro + Owner (120/min cap) | In-App Invite (emailSent: false), 0 Arte AI Credits | - **Formula (Bounded WebRTC Voice Session Gate Formula)**: `=LET(sc_dr, B2, pr_ok, B3, IF(OR(sc_dr <= 0, NOT(OR(pr_ok = 0, pr_ok = 1)), NOT(OR(B4 = 0, B4 = 1)), NOT(OR(B5 = 1, B5 = 2, B5 = 3)), NOT(OR(B6 = 0, B6 = 1))), "Invalid Governance Input", IF(pr_ok = 0, "Blocked: Active Pro Required", IF(sc_dr > 180, "Stopped at 180s (voiceEnded)", "Live WebRTC Active (15s Heartbeat)"))))` - **Formula (Action & Sharing Confirmation Gate Formula)**: `=IF(ISTEXT(E2), IF(E2 = "Invalid Governance Input", E2, IF(B3 = 0, E2, IF(B5 = 2, "Rejected: share_document Forbidden in execute_steps", IF(B5 = 1, IF(AND(B4 = 1, B6 = 1), "Preview Only: Explicit UI Confirm Button Required", "Rejected: Verified Owner & Valid Role Required"), "Validated UI Plan (Preview / Undo / Suggest)")))), "Invalid Governance Input")` ### Build in-cell histograms and 10-slot progress bars with REPT - **URL**: https://sheets.arte-soft.com/en/learn/in-cell-histogram-and-progress-bar-rept/ - **Summary**: Scale large counts down by a divisor for compact REPT("|", ...) histograms, and clamp [====------] progress bars safely with MEDIAN. *Table — Scale frequency counts and clamp fixed-width progress bars:* | Responses (A) | ScalePerTick (B) | CompletionPct (C) | Progress Bar | | --- | --- | --- | --- | | 35 | 5 | 0.7 | [=======---] | | 35 | 5 | 1.4 | [==========] (clamped) | | 35 | 5 | 0 | [----------] | - **Formula (Clamped 10-slot progress bar and scaled histogram formulas)**: `=LET(n, MEDIAN(0, 10, ROUND(C2 * 10, 0)), "[" & REPT("=", n) & REPT("-", 10 - n) & "]")` - **Formula (Scaled tick histogram formula)**: `=IF(B2<=0, "Invalid scale", REPT("|", MIN(100, MAX(0, ROUND(A2 / B2, 0)))))` ### Leave Inline Comments in Formulas (+ N("Note") & Self-Documenting LET) - **URL**: https://sheets.arte-soft.com/en/learn/in-formula-comments-and-self-documenting-let-variables/ - **Summary**: Document complex audit logic directly inside spreadsheet formulas using the classic + N("Inline comment") zero-addition trick or modern LET(doc_note, "...", ...) named variables. *Table — Document why a magic constant exists right inside the formula bar!:* | Documentation Technique | Formula Pattern | Works on Text Output? | Verified Output ($200, 5% disc, 8.25% tax) | | --- | --- | --- | --- | | Classic + N("Note") Trick | =ROUND(B2*(1-B3)*(1+B4), 2) + N("5% VIP + TX tax") | Numeric formulas only (+0) | 205.68 | | Self-Documenting LET Variables | =LET(note, "...", discSub, B2*(1-B3), ROUND(discSub*(1+B4), 2)) | Yes! Works on Numbers, Text & Arrays! | 205.68 | | Verify N("any string") = 0 | =N("Audit comment string") | Returns numeric 0 | 0 | - **Formula (Modern Self-Documenting Formula with LET Named Steps & Inline Note)**: `=LET(note, "Applies VIP discount before sales tax", discountedSub, B2 * (1 - B3), taxMult, 1 + B4, ROUND(discountedSub * taxMult, 2))` - **Formula (Classic Numeric Inline Comment via + N("Audit Note"))**: `=ROUND(B2 * (1 - B3) * (1 + B4), 2) + N("Applies VIP discount before sales tax")` ### Vibrating Screen G-Force, Bed Depth & VSMA Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/inclined-vibrating-screen-deck-g-force-throw-index-bed-depth-and-screening-area/ - **Summary**: Calculate Peak-to-Peak Circular Stroke (mm), Centrifugal Vibrator Acceleration Kv (G), Discharge-End Oversize Bed Depth (mm), and VSMA Bed-to-Aperture Ratio (<= 4.0). *Table — Flooding a 16 mm vibrating screen deck to an 8.5x bed-to-aperture ratio (136.5 mm thick!) traps undersize fines on top so clean spec gravel rides straight to the oversize pile!:* | VSMA Inclined Screen KPI (r=4.5 mm, 920 RPM, W=1.8 m, a=16 mm mesh) | Formula | Verified Output | | --- | --- | --- | | Peak-to-Peak Throw Stroke (mm) | 2 * Eccentric_Radius_r_mm | 9.0 mm | | Vibrator Acceleration Kv (G) | ((r / 1000) * ((2 * PI * RPM / 60) ^ 2)) / g | 4.26 G (3.5–5.5 G structural window) | | Discharge Lip Bed Depth (mm) | (((Oversize_t_hr / 60) / rho_b) / (W * v_m)) * 1000 | 39.4 mm (136.5 mm flooded deck!) | | VSMA Bed-to-Aperture Ratio | Discharge_Bed_Depth_mm / Mesh_Opening_a_mm | 2.46 PASS (8.53 > 4.0 FINES CARRYOVER!) | - **Formula (VSMA Vibrating Screen Centrifugal G-Force & Discharge Bed-Depth Formula)**: `=LET(er_m, B2, nr_p, B3, dw_m, B4, qo_t, B5, vm_m, B6, rb_t, B7, ap_m, B8, bd_m, (((qo_t / 60) / rb_t) / (dw_m * vm_m)) * 1000, IF(OR(er_m < 1, er_m > 12, nr_p < 500, nr_p > 1800, dw_m < 0.6, dw_m > 4.5, qo_t < 5, qo_t > 2500, vm_m < 6, vm_m > 45, rb_t < 0.8, rb_t > 3.2, ap_m < 1, ap_m > 150), "Invalid Screen Input", ROUND(bd_m / ap_m, 2)))` - **Formula (Reversed Counter-Rotation + Surge Feed (`Q_over = 320` t/h, `v_m = 14` m/min) Deck-Flooding Check)**: `=IF(ISTEXT(E5), E5, ROUND((((B5 / 60) / B7) / (B4 * B6)) * 1000, 1))` ### Income tax bracket formula: calculate progressive marginal and effective tax - **URL**: https://sheets.arte-soft.com/en/learn/income-tax-marginal-bracket-formula/ - **Summary**: Compute progressive multi-bracket tax in a single SUMPRODUCT formula using differential bracket rates without nested IF ladders. *Table — How differential rates eliminate nested IF tax formulas:* | Floor (A) | MarginalRate (B) | DiffRate (C) | Tax on 60,000 Income | | --- | --- | --- | --- | | 0 | 0.1 | 0.1 | 60,000 * 10% = 6,000.00 | | 11000 | 0.12 | 0.02 | 49,000 * 2% = 980.00 | | 44725 | 0.22 | 0.1 | 15,275 * 10% = 1,527.50 | - **Formula (Total progressive tax and effective tax rate)**: `=ROUND(SUMPRODUCT(--(D2 > A2:A4), D2 - A2:A4, C2:C4), 2)` - **Formula (Effective rate vs top marginal bracket)**: `=IF(D2<=0, "Undefined", ROUND(SUMPRODUCT(--(D2 > A2:A4), D2 - A2:A4, C2:C4) / D2, 4))` ### Increment a Calculation Automatically with ROW or COLUMN Step Ladders - **URL**: https://sheets.arte-soft.com/en/learn/increment-calculation-step-by-row-or-column-offset/ - **Summary**: Create arithmetic scenario ladders down rows or across columns from a base and a step. Keep full precision in rates and round only displayed cost results. - **Formula (Vertical ladder: enter in D2 and fill to D6)**: `=IF(COUNT($B$2:$B$3)<>2,"Enter numeric base and step",$B$2+(ROW(D2)-ROW($D$2))*$B$3)` - **Formula (Illustrative simple-period cost: E2 filled down)**: `=IF(COUNT(D2,$B$4)<>2,"Enter numeric rate and principal",IF($B$4<0,"Principal must be nonnegative",ROUND($B$4*D2,2)))` - **Formula (Horizontal ladder: D8 filled right to H8)**: `=IF(COUNT($B$2:$B$3)<>2,"Enter numeric base and step",$B$2+(COLUMN(D8)-COLUMN($D$8))*$B$3)` ### Increment a zero-padded ID number inside a text string (INV-0099 -> INV-0100) - **URL**: https://sheets.arte-soft.com/en/learn/increment-id-number-inside-text-string/ - **Summary**: Isolate the trailing numeric segment of a structured code, add N, and preserve leading-zero width automatically across 99-to-100 rollovers. *Table — Keep leading zeros intact when 0099 rolls over to 0100:* | CurrentID (A) | Step (B) | Next ID Result | | --- | --- | --- | | INV-0099 | 1 | INV-0100 (4-digit width kept) | | LOT-2026-0007 | 5 | LOT-2026-0012 | | INV-9999 | 1 | INV-10000 (expands cleanly without truncating) | - **Formula (Rollover-safe prefixed ID increment formula)**: `=LET(pfx, TEXTBEFORE(A2, "-", -1), sfx, TEXTAFTER(A2, "-", -1), nxt, VALUE(sfx) + B2, pfx & "-" & REPT("0", MAX(0, LEN(sfx) - LEN(nxt))) & nxt)` - **Formula (Inspect the numeric suffix)**: `=TEXTAFTER(A2, "-", -1)` ### Increment a Cell Reference Every Nth Row When Copying Down (Non-Volatile INDEX) - **URL**: https://sheets.arte-soft.com/en/learn/increment-nth-row-cell-reference-when-copying-index/ - **Summary**: Extract every 3rd (or k-th) row from repeating stacked export blocks—such as stacked Vendor / Invoice / Amount triplets—using non-volatile INDEX + ROW math instead of OFFSET or INDIRECT. *Table — Why dragging a formula shifts by 1 row—and how 1 + (ROW(A1) - 1) * k steps by k:* | Summary Row i = ROW(A1) | Vendor Index: 1 + (i-1)*3 | Invoice Index: 2 + (i-1)*3 | Amount Index: 3 + (i-1)*3 | | --- | --- | --- | --- | | i = 1 (first record) | Index 1 (B2) | Index 2 (B3) | Index 3 (B4) | | i = 2 (second record) | Index 4 (B5) | Index 5 (B6) | Index 6 (B7) | | i = 3 (third record) | Index 7 (B8) | Index 8 (B9) | Index 9 (B10) | - **Formula (Nth-Row Stepping INDEX Formula)**: `=INDEX($B$2:$B$10, 1 + (ROW(A1) - 1) * 3)` ### ICER & Net Monetary Benefit (NMB) QALY Formula - **URL**: https://sheets.arte-soft.com/en/learn/incremental-cost-effectiveness-ratio-icer-and-net-monetary-benefit/ - **Summary**: Calculate the Incremental Cost-Effectiveness Ratio (C_1 - C_0)/(E_1 - E_0), Net Monetary Benefit lambda*Delta_E - Delta_C, and expose the South-West quadrant ICER sign trap. *Table — Why raw ICER ratios mislead in Dominance and South-West quadrants — and how NMB fixes every case!:* | Cost-Effectiveness Plane Scenario (lambda = 50,000) | Raw Ratio Delta_C / Delta_E | NMB = lambda*Delta_E - Delta_C | | --- | --- | --- | | Baseline North-East (+18,000, +0.60 QALY) | 30,000.00 / QALY | +12,000.00 (Cost-Effective!) | | South-West Trap (-6,000, -0.20 QALY) | 30,000.00 (Misleading!) | -4,000.00 (Reject: QALY Loss Too High!) | | North-West Dominated (+5,000, -0.10 QALY) | Dominated (Do Not Divide) | -10,000.00 (Strictly Dominated) | | South-East Dominant (-2,000, +0.30 QALY) | Dominant (Cost-Saving) | +17,000.00 (Strictly Dominant) | - **Formula (Quadrant-Safe Incremental Cost-Effectiveness Ratio (ICER) Formula)**: `=LET(d_c, B2 - B3, d_e, B4 - B5, IF(OR(B2 < 0, B3 < 0, B4 < 0, B5 < 0, B6 <= 0), "Invalid HTA Input", IF(AND(d_e <= 0, d_c >= 0), "Dominated (Worse or Equal QALYs, Higher Cost)", IF(AND(d_e > 0, d_c <= 0), "Dominant (More QALYs, Lower or Equal Cost)", ROUND(d_c / d_e, 2)))))` - **Formula (All-Quadrant Net Monetary Benefit (NMB = lambda * Delta_E - Delta_C) Formula)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B5 < 0, B6 <= 0), "Invalid HTA Input", ROUND(B6 * (B4 - B5) - (B2 - B3), 2))` ### Add Leading Spaces & Indent Hierarchy Levels with REPT(" ", ...) - **URL**: https://sheets.arte-soft.com/en/learn/indent-hierarchy-levels-with-leading-spaces-rept/ - **Summary**: Create a visual hierarchy by prefixing labels with a validated number of spaces. Keep original labels and numeric levels for sorting and lookup. - **Formula (Create the display label in C4)**: `=IF(COUNT(A4,$D$2)<>2,"Enter numeric level and step",IF(OR(A4<1,A4<>INT(A4),$D$2<0,$D$2<>INT($D$2)),"Use whole-number level >=1 and step >=0",IF((A4-1)*$D$2+LEN(B4)>32767,"Output exceeds 32767 characters",REPT(" ",(A4-1)*$D$2)&B4)))` - **Formula (Count only the spaces added by this formula)**: `=IF(COUNT(A4,$D$2)<>2,"Check level and step",IF(OR(A4<1,A4<>INT(A4),$D$2<0,$D$2<>INT($D$2)),"Check level and step",IF((A4-1)*$D$2+LEN(B4)>32767,"Check output length",LEN(C4)-LEN(B4))))` ### INDEX and MATCH: look up a column to the left of the search key - **URL**: https://sheets.arte-soft.com/en/learn/index-match-lookup-left-column/ - **Summary**: VLOOKUP can only search the leftmost column of a range. Combine INDEX and exact MATCH when the identifier you have sits to the right of the value you need to retrieve. *Table — When the lookup key is not in column A:* | Bin (A) | Part (B) | SKU (C) | | --- | --- | --- | | Aisle 1B | Copper elbow | SKU-410 | | Aisle 2A | Brass valve | SKU-205 | | Aisle 2D | PVC coupling | SKU-730 | | Aisle 3C | Drain trap | SKU-118 | | Aisle 4A | Seal ring | SKU-592 | - **Formula (Pair MATCH for the row position with INDEX for the return column)**: `=INDEX(A2:A6,MATCH(E2,C2:C6,0))` - **Formula (Guard missing SKUs explicitly with ISNA on MATCH)**: `=IF(ISNA(MATCH(E2,C2:C6,0)),"SKU not found",INDEX(A2:A6,MATCH(E2,C2:C6,0)))` ### INDEX and MATCH with multiple criteria: boolean array lookup without XLOOKUP - **URL**: https://sheets.arte-soft.com/en/learn/index-and-match-multiple-criteria/ - **Summary**: Match two or more columns simultaneously with INDEX(return_range, MATCH(1, (col1=x)*(col2=y), 0)) for universal workbook compatibility. *Table — Multiply boolean criteria arrays to find row where all equal 1:* | Zone (A) | Service (B) | ShippingFee (C) | TargetZone (E1) | TargetService (E2) | | --- | --- | --- | --- | --- | | North | Standard | 12 | South | Express | | North | Express | 25 | | | | South | Standard | 15 | | | | South | Express | 30 | | | - **Formula (Look up non-numeric text or numeric rates across two keys)**: `=INDEX(C2:C5, MATCH(1, (A2:A5=E1)*(B2:B5=E2), 0))` - **Formula (Handle unmatched combinations cleanly with LET + ISNA)**: `=LET(pos, MATCH(1, (A2:A5=E1)*(B2:B5=E2), 0), IF(ISNA(pos), "No rate", INDEX(C2:C5, pos)))` ### Two-way lookup with INDEX and MATCH: find a value by row and column - **URL**: https://sheets.arte-soft.com/en/learn/index-match-two-way-matrix-lookup/ - **Summary**: Retrieve a rate at the intersection of a row label and a column header by passing two exact MATCH positions into INDEX. *Table — A shipping rate grid indexed by zone and box size:* | Zone (A) | S (B) | M (C) | L (D) | | --- | --- | --- | --- | | Domestic | 6 | 9 | 14 | | EU | 11 | 16 | 24 | | Overseas | 19 | 28 | 42 | - **Formula (Supply one MATCH for the row and one MATCH for the column)**: `=INDEX(B2:D4,MATCH(F2,A2:A4,0),MATCH(G2,B1:D1,0))` - **Formula (Guard unknown zones or sizes explicitly)**: `=IF(OR(ISNA(MATCH(F2,A2:A4,0)),ISNA(MATCH(G2,B1:D1,0))),"Invalid zone or size",INDEX(B2:D4,MATCH(F2,A2:A4,0),MATCH(G2,B1:D1,0)))` ### INDIRECT function: turn text cell and range strings into live references - **URL**: https://sheets.arte-soft.com/en/learn/indirect-function-text-to-reference/ - **Summary**: Evaluate cell or range addresses stored as text with INDIRECT so summary formulas can switch target columns dynamically. *Table — Switch which range SUM reads from a selector cell:* | Quarter (A) | Plan (B) | Actual (C) | Selector E2 | SUM(INDIRECT(E2)) | | --- | --- | --- | --- | --- | | Q1 | 120 | 135 | B2:B5 | 540 (Plan total) | | Q2 | 130 | 140 | C2:C5 | 580 (Actual total) | | Q3 | 140 | 150 | C4 | 150 (single cell) | | Q4 | 150 | 155 | (blank) | "Choose range" with IF guard | - **Formula (Dynamic range total and fixed-row behavior)**: `=SUM(INDIRECT(E2))` - **Formula (Guard empty or unvalidated address inputs)**: `=IF(E2="", "Choose range", SUM(INDIRECT(E2)))` ### Radiographic NDT Geometric Unsharpness (Ug) & SFD Formula - **URL**: https://sheets.arte-soft.com/en/learn/industrial-radiography-ndt-geometric-unsharpness-ug-and-minimum-sfd-formula/ - **Summary**: Calculate Source-to-Object Distance D_o = SFD - t (mm), Penumbra Geometric Unsharpness U_g = F*t/(SFD - t) (mm), Minimum Code Source-to-Film Distance SFD_min (mm), and ASME Sec V Compliance. *Table — Place an Ir-192 gamma source too close to a thick pipe weld and focal-spot penumbra blurs hairline cracks invisible!:* | ASME Sec V Radiography KPI (F=3.0 mm, t=28 mm, SFD=650 mm, Ug,max=0.51 mm) | Formula | Verified Output | | --- | --- | --- | | Source-to-Object Distance Do (mm) | Source_to_Film_SFD - Object_Film_t | 622.0 mm (132.0 mm @ tight 160 SFD) | | Geometric Unsharpness Ug (mm) | (Focal_Spot_F * t) / (SFD - t) | 0.135 mm (0.636 > 0.51 @ 160 SFD!) | | Minimum Code SFD_min (mm) | t * (1 + Focal_Spot_F / Max_Ug_Code) | 192.7 mm | | ASME Sec V Art. 2 Penumbra Gate | Ug_mm <= Max_Ug_Code_mm | ASME UG COMPLIANT (FAIL @ 160 SFD!) | - **Formula (ASME Section V Article 2 Geometric Unsharpness & Minimum SFD Formula)**: `=LET(fs_m, B2, tf_m, B3, sf_d, B4, ug_x, B5, IF(OR(fs_m <= 0, tf_m <= 0, sf_d <= 1.2 * tf_m, ug_x <= 0), "Invalid RT Setup", LET(ug_v, (fs_m * tf_m) / (sf_d - tf_m), IF(ug_v <= ug_x, "ASME UG COMPLIANT", "PENUMBRA BLUR EXCEEDS CODE"))))` - **Formula (Cramped Pipe-Rack 160 mm Double-Wall Stand-Off Reject Check (Set SFD = 160.0 mm))**: `=IF(ISTEXT(E2), E2, ROUND((B2 * B3) / (B4 - B3), 3))` ### Infinite Slope Stability Factor of Safety & Seepage Formula - **URL**: https://sheets.arte-soft.com/en/learn/infinite-slope-stability-factor-of-safety-dry-vs-seepage-saturated-formula/ - **Summary**: Calculate Effective Cohesion Resistance FS_c, Pore-Pressure-Adjusted Frictional Resistance FS_phi, Total Translational Slope Factor of Safety FS, and Landslide Stability Status. *Table — Why storm-saturated parallel seepage cuts frictional slope resistance IN HALF—triggering shallow translational landslides!:* | Infinite Slope KPI (beta=24°, z=2.5 m, gamma=19.62, c'=8 kPa, phi'=32°) | Formula | Verified Output | | --- | --- | --- | | Cohesion Safety Term FS_c | c' / (gamma * z * SIN(beta) * COS(beta)) | 0.44 | | Frictional Seepage Term FS_phi | ((gamma - mw*9.81)/gamma) * (TAN(phi')/TAN(beta)) | 1.40 (0.70 @ mw = 1.0 seepage!) | | Total Factor of Safety FS | FS_cohesion + FS_friction | 1.84 (1.14 @ mw = 1.0 seepage) | | Hillslope Stability Status | FS >= 1.30 STABLE; >= 1.00 MARGINAL; < 1 FAILURE | STABLE (MARGINAL @ mw = 1.0) | - **Formula (Effective-Stress Translational Infinite Slope Factor of Safety Formula)**: `=LET(bt_d, B2, dp_z, B3, gm_s, B4, cp_k, B5, ph_d, B6, mw_r, B7, IF(OR(bt_d <= 1, bt_d > 75, dp_z <= 0, gm_s < 13, cp_k < 0, ph_d < 0, ph_d > 50, mw_r < 0, mw_r > 1), "Invalid Slope Input", LET(br_d, bt_d * PI() / 180, pr_d, ph_d * PI() / 180, fs_c, cp_k / (gm_s * dp_z * SIN(br_d) * COS(br_d)), fs_f, ((gm_s - mw_r * 9.81) / gm_s) * (TAN(pr_d) / TAN(br_d)), ROUND(fs_c + fs_f, 2))))` - **Formula (Extreme Rainstorm Full-Mantle Seepage Halving Check (Set Groundwater Ratio m_w = 1.00))**: `=IF(ISTEXT(E4), E4, IF(E4 >= 1.3, "STABLE", IF(E4 >= 1, "MARGINAL", "FAILURE")))` ### Injection Molding Clamping Tonnage & Shot Weight Formula - **URL**: https://sheets.arte-soft.com/en/learn/injection-molding-projected-area-cavity-pressure-clamping-tonnage-and-shot/ - **Summary**: Calculate Total Part+Runner Projected Area (cm²), Required Mold Clamping Force (kN), Press Clamping Rating (Metric Tons-Force at g = 9.81), and Polymer Shot Weight (g). *Table — Under-sizing clamping force by even 10% lets pack/hold cavity pressure crack the parting line and flash the mold!:* | Injection Press Sizing KPI (4 Cav x 45 cm² + 20 cm² Runner, 40 MPa, SF=1.15) | Formula | Verified Output | | --- | --- | --- | | Total Projected Area (cm²) | N_Cavities * Part_Area + Runner_Area | 200.00 cm² (380.00 @ 8 cavities) | | Required Clamping Force (kN) | 0.10 * Total_Area_cm2 * P_MPa * SF | 920.00 kN (1,748.00 @ 8 cavities) | | Press Clamping Tonnage (t-f) | Clamping_Force_kN / 9.81 | 93.78 t (178.19 t @ 8 cavities) | | Total Barrel Shot Weight (g) | Total_Shot_Volume_cm3 * Density_g_cm3 | 147.20 g | - **Formula (Parting-Line Mold Clamping Force & Metric Tonnage Formula)**: `=LET(ap_c, B2, nc_v, B3, ar_c, B4, pc_m, B5, sf_c, B6, vs_c, B7, rh_g, B8, IF(OR(ap_c <= 0, nc_v < 1, INT(nc_v) <> nc_v, ar_c < 0, pc_m < 10, pc_m > 150, sf_c < 1, vs_c <= 0, rh_g < 0.7, rh_g > 2.5), "Invalid Molding Input", LET(at_c, nc_v * ap_c + ar_c, ROUND(0.1 * at_c * pc_m * sf_c, 2))))` - **Formula (8-Cavity High-Volume Production Tool Press Upgrade Check (Set Cavities = 8))**: `=IF(ISTEXT(E3), E3, ROUND(E3 / 9.81, 2))` ### Injury Severity Score (ISS) Anatomic Polytrauma Formula (LARGE & AIS) - **URL**: https://sheets.arte-soft.com/en/learn/injury-severity-score-iss-and-new-injury-severity-score/ - **Summary**: Calculate Susan Baker’s 0–75 Injury Severity Score ISS = LARGE(AIS,1)^2 + LARGE(AIS,2)^2 + LARGE(AIS,3)^2 across the 6 Abbreviated Injury Scale (AIS 0–6) body regions—automatically assigning ISS = 75 if any region has AIS = 6. *Table — Sum the squares of the top 3 injured body regions—and remember the AIS = 6 automatic-75 rule!:* | Polytrauma AIS Profile (6 Body Regions) | Top 3 AIS Regions Squared | Calculated ISS (0–75) | Trauma Registry Classification | | --- | --- | --- | --- | | Chest 4, Extremity 3, Head 2, Face 1, Abd 0, Ext 0 | 4^2 + 3^2 + 2^2 = 16 + 9 + 4 | 29 | Major Polytrauma (ISS > 15) | | Isolated Moderate Ankle Fracture (Extremity 2) | 2^2 + 0^2 + 0^2 | 4 | Minor / Moderate Trauma (ISS <= 15) | | Any Single Unsurvivable Injury (AIS = 6) | Automatic Registry Override | 75 (Maximum) | Maximal / Unsurvivable Injury | - **Formula (Baker (1974) Injury Severity Score ISS (0 to 75) Using LARGE & AIS = 6 Override)**: `=IF(OR(MIN(B2:B7) < 0, MAX(B2:B7) > 6), "Invalid AIS Grade (0-6)", IF(MAX(B2:B7) = 6, 75, LARGE(B2:B7, 1) ^ 2 + LARGE(B2:B7, 2) ^ 2 + LARGE(B2:B7, 3) ^ 2))` - **Formula (Major Polytrauma Registry Classification (ISS > 15 Threshold))**: `=IF(MAX(B2:B7) = 6, "Critical / Maximal Trauma (ISS = 75)", IF((LARGE(B2:B7, 1) ^ 2 + LARGE(B2:B7, 2) ^ 2 + LARGE(B2:B7, 3) ^ 2) > 15, "Major Polytrauma (ISS > 15)", "Minor / Moderate Trauma (ISS <= 15)"))` ### Insurance Loss Ratio, Expense Ratio & Combined Ratio formulas - **URL**: https://sheets.arte-soft.com/en/learn/insurance-loss-ratio-expense-ratio-and-combined-ratio/ - **Summary**: Calculate loss, expense and combined ratios with an explicit earned/written premium convention, then subtract investment income relative to earned premium. *Table — Keep premium bases and reporting conventions explicit:* | P&C Underwriting Metric | Example convention | Normal Year ($6.4M Loss / $10M EP) | Catastrophe Storm Year ($7.8M Loss) | | --- | --- | --- | --- | | Loss & LAE Ratio | B4 / B2 (Earned Premium) | 64.00% (0.6400) | 78.00% (0.7800) | | Trade Expense Ratio | B5 / B3 (Written Premium) | 28.00% ($2.94M / $10.5M) | 28.00% (0.2800) | | Trade Combined Ratio | (B4 / B2) + (B5 / B3) | 92.00% on stated mixed basis | 106.00% on stated mixed basis | | Operating ratio (4.5% of earned premium) | CombinedRatio - B6 | 87.50% (0.8750) | 101.50% (1.0150) | - **Formula (Combined ratio with earned/written premium bases)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Positive premiums required",ROUND((B4 / B2) + (B5 / B3), 4)))` - **Formula (Insurance Operating Ratio = CombinedRatio - InvestmentIncomeRatio)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Positive premiums required",ROUND((B4 / B2) + (B5 / B3) - B6, 4)))` - **Formula (Loss and loss-adjustment expense ratio)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Positive premiums required",ROUND(B4 / B2, 4)))` - **Formula (Written-premium expense ratio)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Positive premiums required",ROUND(B5/B3,4)))` - **Formula (Same amounts on an earned-premium basis)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Positive premiums required",ROUND((B4+B5)/B2,4)))` ### INTERCEPT function: estimate fixed overhead cost where X equals zero - **URL**: https://sheets.arte-soft.com/en/learn/intercept-function-fixed-baseline/ - **Summary**: Separate fixed baseline overhead from variable unit cost with INTERCEPT, and pair it with SLOPE for transparent forecasts. *Table — Find the Y-axis starting point of a best-fit line:* | Units (A) | TotalCost (B) | TargetUnits (D) | | --- | --- | --- | | 10 | 650 | 50 | | 20 | 800 | | | 30 | 950 | | | 40 | 1100 | | - **Formula (Combine INTERCEPT + SLOPE * X to project future volume)**: `=INTERCEPT(B2:B5, A2:A5)` - **Formula (Constant X values return #DIV/0!)**: `=INTERCEPT(B2:B5, A2:A5) + SLOPE(B2:B5, A2:A5) * D2` ### Interest-at-Maturity Note Clean Price & Yield (PRICEMAT & YIELDMAT Formulas) - **URL**: https://sheets.arte-soft.com/en/learn/interest-at-maturity-note-pricemat-and-yieldmat-formula/ - **Summary**: Calculate the clean secondary-market price (PRICEMAT), dirty invoice price, and annualized yield to maturity (YIELDMAT) for certificates of deposit and notes paying interest in a single lump sum at maturity. *Table — Separate dirty present value from accrued interest since issue:* | Component (Issue Jan 1, Settle Mar 2, Mat Jun 30) | Days / Rate | Formula Value (per $100 Par) | | --- | --- | --- | | Total Issue-to-Maturity Span (DIM) | 180 days @ r = 6.0% | Maturity Cash Flow = $103.00 | | Remaining Settle-to-Maturity (DSM) | 120 days @ y = 4.5% | Dirty Invoice Price = $101.4778 | | Accrued Interest Since Issue (A) | 60 days @ r = 6.0% | Accrued Interest = $1.0000 | | Clean Secondary Price (PRICEMAT) | Dirty - Accrued | Clean Price = $100.4778 | - **Formula (Clean Price of an Interest-at-Maturity Security (PRICEMAT))**: `=IF(OR(B3 < B2, B4 <= B3, B7 <= 0), "Invalid Dates", LET(dim, B4 - B2, dsm, B4 - B3, accDays, B3 - B2, dirty, (100 + 100 * B5 * dim / B7) / (1 + B6 * dsm / B7), ROUND(dirty - 100 * B5 * accDays / B7, 4)))` - **Formula (Annualized Yield From Clean Market Price (YIELDMAT))**: `=LET(dim, B4 - B2, dsm, B4 - B3, accDays, B3 - B2, matPay, 100 + 100 * B5 * dim / B7, dirtyIn, B8 + 100 * B5 * accDays / B7, ROUND((matPay / dirtyIn - 1) * (B7 / dsm), 6))` ### Interest Coverage Ratio (TIE) and Net Debt / EBITDA covenant formulas - **URL**: https://sheets.arte-soft.com/en/learn/interest-coverage-ratio-ebit-ebitda-leverage-covenants/ - **Summary**: Monitor corporate credit agreements with Times Interest Earned (EBIT / Interest), Net Leverage ((TotalDebt - Cash) / EBITDA), and automated covenant flags. *Table — Test maintenance credit covenants: Minimum Interest Coverage & Maximum Net Leverage:* | Credit Covenant Metric ($500m EBITDA, $100m D&A, $80m Int) | Formula | Result | | --- | --- | --- | | Times Interest Earned (EBIT / Int) | =(500 - 100) / 80 | 5.00x (>= 3.0x Floor) | | EBITDA Coverage | =500 / 80 | 6.25x | | Net Debt ($1,600m Debt - $200m Cash) | =1600 - 200 | $1,400m | | Net Leverage Ratio (NetDebt / EBITDA) | =1400 / 500 | 2.80x (<= 3.5x Cap -> Passes example thresholds!) | - **Formula (Net Debt / EBITDA, Interest Coverage, and Covenant Gate formulas)**: `=IF(OR(A2<=0,C2<=0),"Check EBITDA and interest",ROUND((D2 - E2) / A2, 2))` - **Formula (Automated dual-covenant compliance flag (TIE >= 3.0x AND NetLev <= 3.5x))**: `=IF(OR(A2<=0,C2<=0),"Check EBITDA and interest",IF(AND(((A2 - B2) / C2) >= 3, ((D2 - E2) / A2) <= 3.5), "Passes example thresholds", "Outside example thresholds"))` ### Internal Expanding Drum Brake Leading vs Trailing Torque - **URL**: https://sheets.arte-soft.com/en/learn/internal-expanding-drum-shoe-brake-leading-vs-trailing-shoe-torque-and-self-locking/ - **Summary**: Calculate Self-Energizing Leading-Shoe Braking Torque (N·m), De-Energizing Trailing-Shoe Braking Torque (N·m), Total Simplex Drum Torque (N·m), and Shoe Wear Asymmetry Ratio. *Table — Why the front "leading" shoe inside a rear drum brake wears out 2.4x faster than the rear "trailing" shoe pushed by the EXACT SAME wheel cylinder!:* | Simplex Drum Brake KPI (F=3,200 N, c=195 mm, a=108 mm, r=125 mm, mu=0.36 vs 0.52) | Formula | Verified Output | | --- | --- | --- | | Leading-Shoe Torque T_lead (N·m) | mu * ((F * c) / (a - mu * r)) * (r / 1000) | 445.7 N·m (943.3 N·m grabby @ mu=0.52!) | | Trailing-Shoe Torque T_trail (N·m) | mu * ((F * c) / (a + mu * r)) * (r / 1000) | 183.5 N·m (234.5 N·m @ mu=0.52) | | Total Simplex Drum Torque (N·m) | Leading_Torque_Nm + Trailing_Torque_Nm | 629.2 N·m (1,177.7 N·m @ mu=0.52) | | Leading / Trailing Wear Ratio | (a_mm + mu * r_mm) / (a_mm - mu * r_mm) | 2.43 : 1 (4.02 : 1 severe fade sensitivity!) | - **Formula (Internal Expanding Leading/Trailing Moment Equilibrium & Self-Locking Formula)**: `=LET(fc_n, B2, cm_m, B3, am_m, B4, rd_m, B5, mu_f, B6, dn_l, am_m - mu_f * rd_m, IF(OR(fc_n <= 0, am_m <= 20, cm_m <= am_m, rd_m <= 40, mu_f <= 0.05, mu_f > 0.85, dn_l <= 0), "Invalid or Self-Locked Shoe", ROUND((am_m + mu_f * rd_m) / dn_l, 2)))` - **Formula (Aggressive High-Friction Lining (mu = 0.52) 4:1 Sensitivity & Lockup Proximity Check (Set Friction B6 = 0.52))**: `=IF(ISTEXT(E5), E5, LET(tl_n, B6 * ((B2 * B3) / (B4 - B6 * B5)) * (B5 / 1000), tt_n, B6 * ((B2 * B3) / (B4 + B6 * B5)) * (B5 / 1000), ROUND(tl_n + tt_n, 1)))` ### IPI & R-IPI Score Formula: Diffuse Large B-Cell Lymphoma Prognostic Index (0 to 5) - **URL**: https://sheets.arte-soft.com/en/learn/international-prognostic-index-ipi-diffuse-large-b-cell-lymphoma/ - **Summary**: Calculate Margaret Shipp’s landmark 5-factor International Prognostic Index (IPI, 0–5: Age > 60, Stage III–IV, LDH > ULN, ECOG >= 2, Extranodal sites > 1) across standard 4-tier IPI and Sehn’s 3-tier Rituximab R-IPI. *Table — Five universal lymphoma clinical factors (APLES) across both classic 4-tier IPI and R-CHOP 3-tier R-IPI!:* | IPI Factor Sum (0–5) | Classic 4-Group Shipp IPI (1993) | 3-Group Sehn R-IPI (R-CHOP Era) | | --- | --- | --- | | 0 Factors | Low Risk (0–1) | Very Good (> 90% 4-Yr PFS/OS) | | 1–2 Factors | 1 = Low; 2 = Low-Intermediate | Good (~80% 4-Yr OS) | | 3 Factors | High-Intermediate Risk | Poor (~55%–60% 4-Yr OS) | | 4–5 Factors (e.g., 4) | High Risk (4–5) | Poor — Clinical Trial / Intensified Regimen Consideration | - **Formula (Total 5-Factor Shipp Aggressive Lymphoma IPI Score (0 to 5))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Each IPI Factor Must Be 0 or 1", SUM(B2:B6))` - **Formula (Classic 4-Tier Shipp IPI Risk Group Classifier (Low, Low-Int, High-Int, High))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Each IPI Factor Must Be 0 or 1", IF(SUM(B2:B6) >= 4, "High Risk (IPI 4–5)", IF(SUM(B2:B6) = 3, "High-Intermediate Risk (IPI 3)", IF(SUM(B2:B6) = 2, "Low-Intermediate Risk (IPI 2)", "Low Risk (IPI 0–1)"))))` ### Interquartile Range (IQR) formula and 1.5xIQR outlier detection fences - **URL**: https://sheets.arte-soft.com/en/learn/interquartile-range-iqr-outlier-fences/ - **Summary**: Measure middle-50% spread with QUARTILE.INC(r, 3) - QUARTILE.INC(r, 1) and flag potential outliers outside Tukey's Q1 - 1.5*IQR and Q3 + 1.5*IQR fences. *Table — Use IQR fences to flag observations for investigation:* | Metric | Formula | Value on {10,12,14,15,16,18,50} | | --- | --- | --- | | Q1 (25th pct) | =QUARTILE.INC(A2:A8, 1) | 13 | | Q3 (75th pct) | =QUARTILE.INC(A2:A8, 3) | 17 | | IQR | =Q3 - Q1 | 4 | | Upper Fence | =Q3 + 1.5 * IQR | 23 (flags 50) | - **Formula (IQR, upper/lower fences, and outlier count formulas)**: `=QUARTILE.INC(A2:A8, 3) - QUARTILE.INC(A2:A8, 1)` - **Formula (Count total outliers outside 1.5xIQR fences)**: `=LET(quartileLow, QUARTILE.INC(A2:A8, 1), quartileHigh, QUARTILE.INC(A2:A8, 3), iqr, quartileHigh - quartileLow, COUNTIF(A2:A8, "<" & (quartileLow - 1.5 * iqr)) + COUNTIF(A2:A8, ">" & (quartileHigh + 1.5 * iqr)))` ### Intraclass Correlation Shrout-Fleiss ICC(2,1) Agreement vs ICC(3,1) Consistency - **URL**: https://sheets.arte-soft.com/en/learn/intraclass-correlation-shrout-fleiss-icc-2-1-consistency-vs-agreement/ - **Summary**: Calculate single-measure and k-rater Intraclass Correlation Coefficients ICC(2,1), ICC(3,1), and ICC(2,k) from two-way ANOVA Mean Squares (MS_R, MS_C, MS_E) to isolate systematic rater bias. *Table — Why Pearson r and ICC(3,1) miss harsh-vs-lenient rater offset that ICC(2,1) catches:* | Shrout-Fleiss Model | ANOVA Mean-Square Formula | Score (n=10, k=3, MSR=25, MSC=13, MSE=1) | | --- | --- | --- | | ICC(2,1) Single-Rater Agreement | (MSR - MSE) / (MSR + (k-1)*MSE + (k/n)*(MSC - MSE)) | 0.7843 (Penalizes rater bias MSC=13) | | ICC(3,1) Single-Rater Consistency | (MSR - MSE) / (MSR + (k-1)*MSE) | 0.8889 (Rank/additive consistency) | | ICC(2,k) Mean-of-k Agreement | (MSR - MSE) / (MSR + (MSC - MSE)/n) | 0.9160 (Averaging all 3 raters) | - **Formula (Two-Way Random Single-Measure Absolute Agreement ICC(2,1) Formula)**: `=ROUND((B4 - B6) / (B4 + (B3 - 1) * B6 + (B3 / B2) * (B5 - B6)), 4)` - **Formula (Consistency ICC(3,1) & Average-Rater ICC(2,k) Formulas)**: `=ROUND((B4 - B6) / (B4 + (B5 - B6) / B2), 4)` ### Inventory Turnover, Days Sales of Inventory (DSI), and Cash Conversion Cycle - **URL**: https://sheets.arte-soft.com/en/learn/inventory-turnover-and-cash-conversion-cycle/ - **Summary**: Measure working-capital velocity with Inventory Turnover (COGS / AvgInventory), DSI (365 / Turnover), and Cash Conversion Cycle (DSI + DSO - DPO). *Table — How inventory, receivables, and payables govern working-capital cash:* | Working Capital Metric | Formula ($730k COGS, $90k–$110k Inv) | Result | | --- | --- | --- | | Average Inventory | =(90,000 + 110,000) / 2 | $100,000 | | Inventory Turnover | =730,000 / 100,000 | 7.30x / yr | | Days Sales of Inventory (DSI) | =365 / 7.30 | 50.0 days | | Cash Conversion Cycle (CCC) | =50.0 DSI + 38 DSO - 45 DPO | 43.0 days | - **Formula (Inventory Turnover, DSI, and CCC formulas)**: `=LET(avgInv, (B2 + C2) / 2, IF(avgInv=0, "No average inventory", ROUND(A2 / avgInv, 2)))` - **Formula (Full Cash Conversion Cycle (DSI + DSO - DPO))**: `=LET(avgInv, (B2 + C2) / 2, dsi, 365 / (A2 / avgInv), ROUND(dsi + D2 - E2, 1))` ### Invoice Age, Days Past Due & Collection Status Escalation Formula - **URL**: https://sheets.arte-soft.com/en/learn/invoice-age-days-past-due-and-collection-status-tier-formula/ - **Summary**: Calculate open days past due against an as-of reporting date while short-circuiting settled invoices first, then classify each receivable into PAID, CURRENT, PAST_DUE_1_30, PAST_DUE_31_60, or ESCALATE_60_PLUS. *Table — Why Paid_Date must short-circuit Due_Date comparison in AR status formulas:* | Invoice State | Days Past Due (D2) | Status Bucket (E2) | Action | | --- | --- | --- | --- | | Paid_Date populated | 0 | PAID | Closed — exclude from dunning | | Open, As_Of <= Due_Date | 0 | CURRENT | Not yet due | | Open, 1..30 days late | 1–30 | PAST_DUE_1_30 | Automated reminder | | Open, > 60 days late | 61+ | ESCALATE_60_PLUS | Collections hold / account call | - **Formula (Open Days Past Due Formula)**: `=IF(NOT(ISBLANK(C2)), 0, MAX(0, $G$2 - B2))` - **Formula (Collection Status Tier Classification Formula)**: `=IF(NOT(ISBLANK(C2)), "PAID", IF(D2 = 0, "CURRENT", IF(D2 <= 30, "PAST_DUE_1_30", IF(D2 <= 60, "PAST_DUE_31_60", "ESCALATE_60_PLUS"))))` ### Invoice Factoring Advance, Reserve & True APR Formula - **URL**: https://sheets.arte-soft.com/en/learn/invoice-factoring-advance-rate-reserve-holdback-and-effective-apr-formula/ - **Summary**: Calculate Funded Receivable Factoring Cash Advance, Net Reserve Holdback Rebate, True Effective Annualized Cost (APR on Funded Cash), and Naive Face-Value APR Understatement. *Table — Annualize invoice factoring fees against funded cash advance—never gross invoice face!:* | Receivable Factoring Metric ($100k Invoice, 80% Adv, 2.40% Fee, 73 Days) | Formula | Verified Output | | --- | --- | --- | | Day-0 Funded Cash Advance ($) | Invoice_Face * Advance_Rate | $80,000.00 ($90k @ 90% Adv) | | Collection Net Reserve Rebate ($) | Face * (1 - Adv_Rate - Fee_Pct) | $17,600.00 ($2,400 Factor Fee) | | True Effective Cash APR (365d) | (Fee_USD / Funded_Advance) * (365 / Days) | 0.1500 (15.00%; 13.33% @ 90% Adv) | | Naive Face-Value APR | Fee_Pct * (365 / Collection_Days) | 0.1200 (Understates Cost by 300 bps) | - **Formula (True Usable-Cash Factoring Effective APR Formula)**: `=LET(fc_v, B2, ad_r, B3, fe_p, B4, cl_d, B5, IF(OR(fc_v <= 0, ad_r <= 0, ad_r > 1, fe_p <= 0, fe_p > 1 - ad_r, cl_d < 1), "Invalid Factoring Terms", LET(ad_c, fc_v * ad_r, fe_d, fc_v * fe_p, ROUND((fe_d / ad_c) * (365 / cl_d), 4))))` - **Formula (Advance-Rate & Turn-Velocity Sensitivity Check)**: `=IF(ISTEXT(E4), E4, ROUND(B4 * (365 / B5), 4))` ### Invoice calculation formulas: line discounts, SUMIFS subtotal, and tax-exempt flag - **URL**: https://sheets.arte-soft.com/en/learn/invoice-subtotal-and-line-tax-rounding-template/ - **Summary**: Build two-decimal invoice templates with per-line ROUND(Qty * Price * (1 - Disc%), 2), multi-invoice SUMIFS rollups, and Tax-Exempt customer overrides. *Table — Round every extended line item to 2 decimals BEFORE summing the invoice:* | InvID (A) | Qty (B) | Price (C) | Disc (D) | LineNet = ROUND(B*C*(1-D),2) (E) | | --- | --- | --- | --- | --- | | INV-501 | 4 | 125 | 10% (0.10) | 450.00 | | INV-501 | 2 | 80 | 0% (0.00) | 160.00 (INV-501 Sub = 610.00) | | INV-502 | 5 | 60 | 20% (0.20) | 240.00 | - **Formula (Invoice Subtotal, Sales Tax, and Grand Total formulas)**: `=LET(sub, SUMIFS(E2:E4, A2:A4, "INV-501"), tax, IF(G2, 0, ROUND(sub * F2, 2)), sub + tax)` - **Formula (Cent-rounded extended line item amount)**: `=ROUND(B2 * C2 * (1 - D2), 2)` ### Ion-Exchange Water Softener Hardness & Brine Salt Formula - **URL**: https://sheets.arte-soft.com/en/learn/ion-exchange-water-softener-grains-hardness-resin-bed-and-brine-salt/ - **Summary**: Calculate Ion-Exchange Softener Hardness in Grains per Gallon (gpg), Total Bed Kilograin Capacity (kgr), Service Gallon Run Before Regeneration (gal), and Salt Brining Efficiency (grains/lb NaCl). *Table — Convert ppm CaCO3 by dividing by 17.1—and brining at 8 lb/ft³ beats 15 lb/ft³ salt waste!:* | Cation Softener Sizing KPI (256.5 ppm CaCO3, 5.0 ft³ Resin, 24 kgr @ 8 lb/ft³) | Formula | Verified Output | | --- | --- | --- | | Inlet Hardness (grains/gal gpg) | Hardness_ppm_CaCO3 / 17.1 | 15.00 gpg | | Total Bed Exchange Capacity (kgr) | Resin_Volume_ft3 * Capacity_kgr_ft3 | 120.00 kgr (150.00 @ Max Brine) | | Service Gallon Run per Regen (gal) | (Total_Capacity_kgr * 1000) / gpg | 8,000.00 gal (10,000.00 @ Max) | | Brine Salt Efficiency (grains/lb) | (Capacity_kgr_ft3 * 1000) / Salt_lb_ft3 | 3,000.00 gr/lb (2,000.00 @ 15 lb) | - **Formula (Ion-Exchange Softener Gallon Run & Salt-Efficiency Formula)**: `=LET(hd_p, B2, rs_v, B3, cp_k, B4, sl_d, B5, IF(OR(hd_p <= 0, rs_v <= 0, cp_k <= 5, cp_k > 36, sl_d < 4, sl_d > 25), "Invalid Softener Input", LET(gp_g, hd_p / 17.1, tot_g, rs_v * cp_k * 1000, ROUND(tot_g / gp_g, 2))))` - **Formula (Heavy-Brining Chloride-Waste Check (30 kgr/ft³ @ 15 lb NaCl/ft³))**: `=IF(ISTEXT(E4), E4, ROUND((B4 * 1000) / B5, 2))` ### IPC-2221 PCB Copper Trace Width & Voltage Drop Formula - **URL**: https://sheets.arte-soft.com/en/learn/ipc-2221-pcb-copper-trace-current-capacity-width-and-temp-rise-formula/ - **Summary**: Calculate IPC-2221 Required Copper Cross-Section (sq mils), Minimum PCB Trace Width (mm), Trace Series DC Resistance (mOhm), and End-to-End IR Voltage Drop (mV). *Table — Burying a 6-amp power trace on an internal FR-4 layer requires 2.6x WIDER copper than on an outer air-cooled layer!:* | IPC-2221 PCB Rail KPI (6.0 A, dT=20 °C, 1.0 oz Cu, L=120 mm) | Formula | Verified Output | | --- | --- | --- | | Required Area (sq mils) | (Current_A / (k * dT_C^0.44)) ^ (1 / 0.725) | 126.68 sq mils (329.54 internal!) | | Minimum Trace Width (mm) | (Area_sq_mils / (Cu_oz * 1.378)) * 0.0254 | 2.33 mm (6.07 mm internal!) | | DC Trace Resistance (mOhm) | (0.01724 * (Len_mm / 1000) / Area_mm2) * 1000 | 25.31 mOhm (9.73 mOhm @ 6.07 mm) | | DC Rail IR Drop (mV) | Current_A * Resistance_mOhm | 151.88 mV (58.38 mV @ 6.07 mm) | - **Formula (IPC-2221 Outer vs Inner Layer Trace Width & DC IR Drop Formula)**: `=LET(cr_a, B2, dt_c, B3, oz_w, B4, ex_f, B5, ln_m, B6, IF(OR(cr_a <= 0, dt_c < 2, dt_c > 100, oz_w < 0.25, oz_w > 6, AND(ex_f <> 0, ex_f <> 1), ln_m <= 0), "Invalid PCB Trace Input", LET(kf_c, IF(ex_f = 1, 0.048, 0.024), as_q, (cr_a / (kf_c * (dt_c ^ 0.44))) ^ (1 / 0.725), am_m, as_q * (0.0254 ^ 2), ro_h, 0.01724 * (ln_m / 1000) / am_m, ROUND(cr_a * ro_h * 1000, 2))))` - **Formula (Buried Internal FR-4 Layer 2.6x Width Multiplier Check (Set External_Layer_Flag = 0))**: `=IF(ISTEXT(E5), E5, LET(kf_c, IF(B5 = 1, 0.048, 0.024), as_q, (B2 / (kf_c * (B3 ^ 0.44))) ^ (1 / 0.725), ROUND((as_q / (B4 * 1.378)) * 0.0254, 2)))` ### IPMT function: calculate the interest portion of any loan payment period - **URL**: https://sheets.arte-soft.com/en/learn/ipmt-function-interest-payment/ - **Summary**: Isolate exact monthly interest charges at the beginning, middle, or end of an amortizing loan using IPMT. *Table — Why early payments carry much more interest than later ones:* | Parameter (A) | Value (B) | | --- | --- | | Loan Amount (PV) | 24000 | | Annual Rate | 0.06 | | Total Months (NPER) | 48 | | Target Period (PER) | 1 | - **Formula (Match periodic units and verify IPMT + PPMT = PMT)**: `=ROUND(IPMT(B2/12, B4, B3, B1), 2)` - **Formula (Guard period numbers outside 1..NPER)**: `=IF(OR(B4<1, B4>B3), "Invalid period", ROUND(IPMT(B2/12, B4, B3, B1), 2))` ### IPO Underpricing, Gross Spread & Greenshoe Formula - **URL**: https://sheets.arte-soft.com/en/learn/ipo-underpricing-gross-spread-and-greenshoe-overallotment-formula/ - **Summary**: Calculate IPO First-Day Underpricing Pop, Jay Ritter’s Money Left on the Table, Net Issuer Proceeds after Underwriter Gross Spread, and 15% Greenshoe Over-Allotment exercise vs stabilization. *Table — Understand how the 15% Greenshoe short position stabilizes broken IPOs risk-free!:* | IPO Syndicate Metric (10M Base @ $20, Close $26, 7% Spread, 15% Shoe) | Formula | Verified Output | | --- | --- | --- | | First-Day IPO Return (Pop / Drop) | (P_close - P_offer) / P_offer | +0.3000 (+30.00%) | | Money Left on the Table ($M) | MAX(0, P_close - P_offer) * Total_Issued_Shares | $69.00M (on 11.50M sh) | | Net Issuer Cash Proceeds ($M) | Total_Issued_Shares * P_offer * (1 - u_fee) | $213.90M ($186.00M if P_close < $20) | | Syndicate Greenshoe Action | P_close >= P_offer ? Exercise : Open-Mkt Cover | Greenshoe Exercised (+15% Shares) | - **Formula (State-Contingent Net Issuer IPO Proceeds Formula)**: `=LET(sh_bs, B2, px_of, B3, px_cl, B4, fe_uw, B5, gs_mx, B6, IF(OR(sh_bs <= 0, px_of <= 0, px_cl <= 0, fe_uw < 0, fe_uw >= 1, gs_mx < 0, gs_mx > 0.15), "Invalid IPO Syndicate Input", LET(sh_tt, sh_bs * (1 + IF(px_cl >= px_of, gs_mx, 0)), ROUND(sh_tt * px_of * (1 - fe_uw), 2))))` - **Formula (Ritter Money Left on the Table & Stabilization Regime Formula)**: `=IF(ISTEXT(E4), E4, ROUND(MAX(0, B4 - B3) * B2 * (1 + IF(B4 >= B3, B6, 0)), 2))` ### IPSS (International Prostate Symptom Score / AUA-SI) LUTS Calculator - **URL**: https://sheets.arte-soft.com/en/learn/ipss-international-prostate-symptom-score-auasi-bph-severity/ - **Summary**: Sum the 7-item AUA/IPSS Lower Urinary Tract Symptom questionnaire (0–35 points: voiding vs. storage subscores) to classify BPH severity into Mild (0–7), Moderate (8–19), or Severe (20–35). *Table — Separating obstructive voiding symptoms from irritative bladder storage symptoms in BPH!:* | IPSS Total Score (0–35 Points) | BPH / LUTS Severity Band | Typical AUA / EAU Clinical Strategy | | --- | --- | --- | | 0 – 7 points | Mild Symptoms | Reassurance, Fluid/Evening Caffeine Modification, Watchful Waiting | | 8 – 19 points | Moderate Symptoms | Alpha-1 Blocker ± 5-ARI (if Prostate > 30–40 mL) or Antimuscarinic/B3 | | 20 – 35 points | Severe Symptoms | Uroflowmetry / PVR + Combination Therapy or Surgical Intervention | - **Formula (Total 7-Item IPSS / AUA-SI Score (0 to 35 Points))**: `=IF(OR(COUNT(B2:B8) < 7, MIN(B2:B8) < 0, MAX(B2:B8) > 5), "Invalid IPSS Item (0-5)", SUM(B2:B8))` - **Formula (IPSS BPH Severity Band & Storage-to-Voiding Subscore Check)**: `=IF(OR(COUNT(B2:B8) < 7, MIN(B2:B8) < 0, MAX(B2:B8) > 5), "Invalid IPSS Item (0-5)", IF(SUM(B2:B8) <= 7, "Mild LUTS (0-7 — Watchful Waiting)", IF(SUM(B2:B8) <= 19, "Moderate LUTS (8-19 — Medical Therapy)", "Severe LUTS (20-35 — Specialist / Surgical Eval)")))` ### IPv4 CIDR Subnet Usable Host Count & 8-Bit Binary Octet Conversion Formula - **URL**: https://sheets.arte-soft.com/en/learn/ipv4-cidr-subnet-mask-host-count-and-binary-octet-formula/ - **Summary**: Calculate total and usable IPv4 addresses for any /8–/32 CIDR prefix (2^(32 - prefix) - 2, honoring RFC 3021 /31 and /32 rules) and convert 0–255 octets to exact 8-bit binary strings. *Table — Size VPC subnets and decode 8-bit IPv4 octets directly in your IPAM sheet!:* | CIDR Prefix | Total IPv4 IPs | Usable Host IPs | Final Mask Octet (Dec -> 8-Bit Bin) | | --- | --- | --- | --- | | /24 (255.255.255.0) | 256 | 254 | 0 -> 00000000 | | /26 (255.255.255.192) | 64 | 62 | 192 -> 11000000 | | /31 (Point-to-Point) | 2 | 2 (RFC 3021) | 254 -> 11111110 | - **Formula (Usable IPv4 Host Count from CIDR Prefix Length (/8 to /32))**: `=IF(OR(B2 < 8, B2 > 32), "Invalid CIDR Prefix", IF(B2 = 32, 1, IF(B2 = 31, 2, (2 ^ (32 - B2)) - 2)))` - **Formula (8-Bit Binary String from Decimal IPv4 Octet (0..255))**: `=IF(OR(B3 < 0, B3 > 255), "Invalid Octet", MOD(INT(B3 / 128), 2) & MOD(INT(B3 / 64), 2) & MOD(INT(B3 / 32), 2) & MOD(INT(B3 / 16), 2) & MOD(INT(B3 / 8), 2) & MOD(INT(B3 / 4), 2) & MOD(INT(B3 / 2), 2) & MOD(B3, 2))` ### IRC Section 1031 Like-Kind Exchange Boot & Basis Formula - **URL**: https://sheets.arte-soft.com/en/learn/irc-section-1031-like-kind-exchange-mortgage-boot-and-recognized-gain/ - **Summary**: Calculate IRC Section 1031 Real Estate Exchange Realized Gain ($M), Cash Plus Net Mortgage-Relief Boot under Treas. Reg. §1.1031(d)-2 ($M), Taxable Gain Recognized ($M), and Substituted Replacement-Property Tax Basis ($M). *Table — Beware phantom "mortgage boot"—trading down debt triggers Section 1031 tax even with $0 cash taken!:* | IRC §1031 Exchange Metric ($5.0M Sale, $2.2M Basis, $3.0M Old Debt -> $4.5M New Debt) | Formula | Verified Output | | --- | --- | --- | | Realized Gain ($M) | MAX(0, Net_Sale_Price - Relinquished_Basis) | $2.80M | | Total Cash + Mortgage Boot ($M) | Cash_Taken + MAX(0, Old_Debt - New_Debt_Cash) | $0.00M ($1.10M @ Trade-Down) | | Taxable Gain Recognized ($M) | MIN(Realized_Gain, Total_Boot) | $0.00M ($1.10M @ Trade-Down) | | Substituted Replacement Basis ($M) | Replacement_Price - (Realized - Recognized) | $3.70M ($2.20M @ Trade-Down) | - **Formula (Section 1031 Boot-Netting & Taxable Gain Recognized Formula)**: `=LET(sl_p, B2, bs_0, B3, db_0, B4, cs_b, B5, db_1, B6, IF(OR(sl_p <= 0, bs_0 < 0, db_0 < 0, db_0 >= sl_p, cs_b < 0, cs_b > sl_p - db_0, db_1 < 0), "Invalid Sec 1031 Exchange Input", LET(rl_g, MAX(0, sl_p - bs_0), bt_t, cs_b + MAX(0, db_0 - db_1), ROUND(MIN(rl_g, bt_t), 2))))` - **Formula (Trade-Down Phantom Mortgage-Boot Check ($0.30M Cash Out & $2.20M Smaller New Loan))**: `=IF(ISTEXT(E4), E4, LET(rp_p, (B2 - B4 - B5) + B6, df_g, E2 - E4, ROUND(rp_p - df_g, 2)))` ### IRC Section 1202 QSBS Gain Exclusion Cap (10x Basis) Formula - **URL**: https://sheets.arte-soft.com/en/learn/irc-section-1202-qsbs-qualified-small-business-stock-exclusion-cap/ - **Summary**: Calculate IRC Section 1202 Qualified Small Business Stock Per-Issuer Exclusion Cap ($M), Excluded Federal Gain ($M), Residual Taxable Gain ($M), and Federal Cash Tax Saved ($M). *Table — Do not hardcode a flat $10M QSBS cap—IRC §1202(b)(1) grants the GREATER of $10M or 10x cost basis!:* | IRC §1202 QSBS Exit Metric ($32.0M Exit, $2.5M Seed Basis, 6 Yrs, 23.8% Rate) | Formula | Verified Output | | --- | --- | --- | | Section 1202 Exclusion Cap ($M) | IF(Years < 5, 0, MAX(10, 10 * Basis_M)) | $25.00M ($10.00M Founder Par) | | Excluded Tax-Free Gain ($M) | MIN(MAX(0, Exit_M - Basis_M), Cap_M) | $25.00M ($0.00M if < 5 Yrs) | | Residual Taxable Gain ($M) | MAX(0, (Exit_M - Basis_M) - Excluded_M) | $4.50M ($4.95M Founder @ $15M) | | Federal Tax Saved ($M) | Excluded_Gain_M * Fed_LTCG_NIIT_Rate | $5.95M ($2.38M Founder) | - **Formula (Section 1202 Greater-of-$10M-or-10x-Basis Exclusion Formula)**: `=LET(ex_p, B2, bs_m, B3, yr_h, B4, tx_r, B5, IF(OR(ex_p <= 0, bs_m < 0, yr_h <= 0, tx_r <= 0, tx_r > 0.45), "Invalid QSBS Input", LET(gn_r, MAX(0, ex_p - bs_m), cp_m, IF(yr_h < 5, 0, MAX(10, 10 * bs_m)), ROUND(MIN(gn_r, cp_m), 2))))` - **Formula (Founder Par-Basis Floor & Early <5-Year Disqualification Checks)**: `=IF(ISTEXT(E3), E3, ROUND(E3 * B5, 2))` ### IRC Section 338(h)(10) Basis Step-Up & Tax Shield PV Formula - **URL**: https://sheets.arte-soft.com/en/learn/irc-section-338-h-10-asset-step-up-section-197-tax-shield-formula/ - **Summary**: Calculate Joint IRC Section 338(h)(10) / 336(e) Deemed-Asset-Sale 15-Year Section 197 Annual Amortization, Annual Buyer Cash Tax Shield, Present Value of the 15-Year Tax Shield Annuity, and Net Value Created After Seller Tax Gross-Up. *Table — Unlock 15-year Section 197 goodwill tax shields while preserving legal stock-purchase contracts!:* | Sec 338(h)(10) Tax Metric ($150M Step-Up, 25% Tax, 10% WACC, $11.5M Seller Gross-Up) | Formula | Verified Output | | --- | --- | --- | | Annual Sec 197 Amortization ($M) | Total_Basis_StepUp / 15 | $10.00M/yr | | Annual Buyer Tax Shield ($M) | Annual_Sec197_Amort * Buyer_Tax_Rate | $2.50M/yr | | 15-Year Tax Shield PV ($M) | Annual_Shield * ((1 - (1 + r)^-15) / r) | $19.02M | | Net Election Value Created ($M) | Tax_Shield_PV - Seller_Tax_GrossUp | +$7.52M (-$2.98M @ $22M C-Corp) | - **Formula (15-Year Section 197 Tax-Shield Present Value & Net Value Created Formula)**: `=LET(su_m, B2, tx_r, B3, ds_r, B4, gr_s, B5, IF(OR(su_m <= 0, tx_r <= 0, tx_r >= 0.55, ds_r <= 0, gr_s < 0), "Invalid Sec 338 Election Input", LET(sh_a, (su_m / 15) * tx_r, pv_s, sh_a * ((1 - ((1 + ds_r) ^ -15)) / ds_r), ROUND(pv_s - gr_s, 2))))` - **Formula (Standalone C-Corp Double-Tax Destruction Check (Set Seller Tax Cost = $22.00M))**: `=IF(ISTEXT(E5), E5, ROUND(E3 * ((1 - ((1 + B4) ^ -15)) / B4), 2))` ### IRC Section 382 NOL Annual Limitation & Built-In Gain Formula - **URL**: https://sheets.arte-soft.com/en/learn/irc-section-382-nol-carryforward-annual-limitation-and-built-in-gain/ - **Summary**: Calculate US IRC Section 382 Post-Acquisition Base Annual NOL Limitation (Pre-Change Equity * Long-Term Tax-Exempt Rate), Recognized Built-In Gain (RBIG) Augmented Cap, TCJA 80%-Taxable-Income-Bound Deduction, and 21% Cash Tax Shield. *Table — Avoid overvaluing acquired Net Operating Losses after a >50-percentage-point ownership change!:* | IRC Section 382 Tax Metric ($250M Equity, 3.5% Rate, $4M RBIG, $60M NOL, $20M TI) | Formula | Verified Output | | --- | --- | --- | | Base Annual Section 382 Limit ($M) | PreChange_Equity * LT_TaxExempt_Rate | $8.75M/yr | | RBIG-Augmented 382 Ceiling ($M) | Base_382_Limit + Recognized_BIG | $12.75M | | Usable Year-1 Post-TCJA NOL ($M) | MIN(NOL_Pool, Aug_382_Cap, 0.80*TI) | $12.75M ($8.00M @ $10M TI) | | Year-1 Federal Tax Shield @ 21% | Usable_Year1_NOL * 0.21 | $2.6775M ($1.6800M @ $10M TI) | - **Formula (Section 382 & Post-TCJA 80% Taxable-Income NOL Utilization Formula)**: `=LET(eq_v, B2, lt_r, B3, rb_g, B4, nl_p, B5, tx_i, B6, IF(OR(eq_v <= 0, lt_r <= 0, lt_r >= 0.2, rb_g < 0, nl_p < 0, tx_i < 0), "Invalid Section 382 Input", LET(bs_l, eq_v * lt_r, ag_l, bs_l + rb_g, ROUND(MIN(nl_p, ag_l, 0.8 * tx_i), 2))))` - **Formula (TCJA 80%-Taxable-Income Binding Cap Check (Set Year-1 Taxable Income = $10.00M))**: `=IF(ISTEXT(E4), E4, ROUND(E4 * 0.21, 4))` ### IRC Section 83(b) Election Restricted-Stock Tax Formula - **URL**: https://sheets.arte-soft.com/en/learn/irc-section-83b-early-exercise-founder-restricted-stock-tax-formula/ - **Summary**: Calculate IRC Section 83(b) Day-1 Upfront Ordinary Tax ($k), Total Lifetime Tax With 83(b) ($k), Total Lifetime Tax Without 83(b) ($k), and Net Founder Tax Savings ($k). *Table — Missing the 30-day IRC §83(b) window triggers illiquid ordinary W-2 taxes at every vesting cliff!:* | IRC §83(b) Election KPI (1.0M Sh, $0.02 Paid, $0.10 Grant, $5.02 Vest, $12.02 Exit) | Formula | Verified Output | | --- | --- | --- | | Day-1 Upfront §83(b) Tax ($k) | 1000 * Sh_M * (Grant_FMV - Paid) * Ord_Rate | $28.00k ($0.00k @ Par Grant) | | Total Tax WITH §83(b) ($k) | Day1_Tax + 1000 * Sh_M * (Exit - Grant) * 0.20 | $2,412.00k ($2,400.00k @ Par) | | Total Tax WITHOUT §83(b) ($k) | 1000 * Sh_M * ((Vest - Paid)*Ord + (Exit - Vest)*0.20) | $3,150.00k | | Net §83(b) Tax Savings ($k) | Without_83b_Tax_k - With_83b_Tax_k | $738.00k ($750.00k @ Par) | - **Formula (Section 83(b) vs Section 83(a) Lifetime Tax Differential Formula)**: `=LET(sh_m, B2, pd_p, B3, gr_f, B4, vs_f, B5, ex_p, B6, or_t, B7, IF(OR(sh_m <= 0, pd_p < 0, gr_f < pd_p, vs_f < gr_f, ex_p < vs_f, or_t <= 0.2, or_t > 0.55), "Invalid Sec 83b Input", LET(tx_b, 1000 * sh_m * ((gr_f - pd_p) * or_t + (ex_p - gr_f) * 0.2), tx_a, 1000 * sh_m * ((vs_f - pd_p) * or_t + (ex_p - vs_f) * 0.2), ROUND(tx_a - tx_b, 2))))` - **Formula (Day-1 Incorporation Par-Value Grant Check (Set Grant FMV = $0.02/sh))**: `=IF(ISTEXT(E5), E5, ROUND(1000 * B2 * (B4 - B3) * B7, 2))` ### Ireton-Jones Energy Expenditure Calculator: Revised 1997 Ventilator & Spontaneous ICU Equations - **URL**: https://sheets.arte-soft.com/en/learn/ireton-jones-1992-and-1997-ventilator-and-spontaneous-eee-formula/ - **Summary**: Estimate ICU & burn daily caloric needs without a metabolic cart using Corinne S. Ireton-Jones’s revised (1997) Ventilator-Dependent EEE(v) = 1784 - 11*Age + 5*W + 244*Male + 239*Trauma + 804*Burn and Spontaneously Breathing EEE(s) equations. *Table — Account explicitly for mechanical ventilation, trauma, major burns, and obesity in ICU nutrition!:* | Clinical Patient Profile | Applicable Revised 1997 Equation | Estimated Daily Energy (kcal/day) | | --- | --- | --- | | 50-yr-old 80 kg Ventilated Male Trauma (No Burn) | 1784 - 550 + 400 + 244 + 239 + 0 | 2,117 kcal/day | | 50-yr-old 80 kg Ventilated Male Major Burn + Trauma | 1784 - 550 + 400 + 244 + 239 + 804 | 2,921 kcal/day | | 50-yr-old 95 kg Spontaneous Obese Patient (BMI > 27) | 629 - 550 + 2375 - 609 | 1,845 kcal/day | - **Formula (Revised 1997 Ireton-Jones Ventilator-Dependent Energy Expenditure EEE(v))**: `=IF(OR(B2 < 18, B2 > 110, B3 < 25, B3 > 350, AND(B4 <> 0, B4 <> 1), AND(B5 <> 0, B5 <> 1), AND(B6 <> 0, B6 <> 1)), "Invalid Adult Ireton-Jones Inputs", ROUND(1784 - 11 * B2 + 5 * B3 + 244 * B4 + 239 * B5 + 804 * B6, 0))` - **Formula (Revised 1997 Ireton-Jones Spontaneously Breathing Energy Expenditure EEE(s))**: `=IF(OR(B2 < 18, B2 > 110, B3 < 25, B3 > 350, AND(B7 <> 0, B7 <> 1)), "Invalid Spontaneous Ireton-Jones Inputs", ROUND(629 - 11 * B2 + 25 * B3 - 609 * B7, 0))` ### Iribarren Surf Similarity Parameter & Wave Runup Formula - **URL**: https://sheets.arte-soft.com/en/learn/iribarren-surf-similarity-parameter-wave-breaking-type-and-runup-formula/ - **Summary**: Calculate Deep-Water Wavelength L_0 (m), Iribarren Surf-Similarity Number xi_0, Smooth-Dike 2% Exceedance Wave Runup Height R_u2% (m), and Wave Breaker Regime. *Table — Long-period swell surges higher up sea dikes than steep wind chop of the SAME wave height—governed by Iribarren xi_0!:* | Iribarren Dike Runup KPI (tan_beta = 0.10, H0 = 2.5 m, Period T = 9.0 s) | Formula | Verified Output | | --- | --- | --- | | Deep-Water Wavelength L0 (m) | (9.81 * (Period_T^2)) / (2 * PI()) | 126.47 m | | Iribarren Number xi_0 | Slope_tan_beta / SQRT(H0 / L0) | 0.711 (1.778 @ 1V:4 slope 0.25) | | Smooth 2% Wave Runup Ru2% (m) | MIN(3.2 * H0, 1.6 * H0 * xi_0) | 2.84 m (7.11 m @ 1V:4 slope!) | | Surf-Zone Breaker Regime | <0.5 Spilling; <3.3 Plunging; >=3.3 Surging | PLUNGING | - **Formula (EurOtop / Hunt Iribarren 2% Exceedance Wave Runup Formula)**: `=LET(tb_s, B2, h0_m, B3, tp_s, B4, IF(OR(tb_s <= 0.005, tb_s > 1, h0_m <= 0, tp_s <= 1), "Invalid Wave Input", LET(l0_m, (9.81 * (tp_s ^ 2)) / (2 * PI()), IF((h0_m / l0_m) > 0.142, "WAVE EXCEEDS MICHE LIMIT", LET(xi_0, tb_s / SQRT(h0_m / l0_m), ROUND(MIN(3.2 * h0_m, 1.6 * h0_m * xi_0), 2))))))` - **Formula (Steeper 1V:4 Dike Crest Overtopping Surge Check (Set Slope tan_beta = 0.25))**: `=IF(ISTEXT(E4), E4, LET(l0_m, (9.81 * (B4 ^ 2)) / (2 * PI()), xi_0, B2 / SQRT(B3 / l0_m), IF(xi_0 < 0.5, "SPILLING", IF(xi_0 < 3.3, "PLUNGING", "COLLAPSING-SURGING"))))` ### IRR function: calculate Internal Rate of Return across uneven cash flows - **URL**: https://sheets.arte-soft.com/en/learn/irr-function-uneven-cash-flows/ - **Summary**: Find the periodic discount rate that sets project Net Present Value to zero with IRR, and understand why cash flows need at least one sign change. *Table — What IRR solves across regular periods:* | Period (A) | Project A Cash Flow (B) | Project B Cash Flow (C) | | --- | --- | --- | | Year 0 | -1000 | -1000 | | Year 1 | 550 | 400 | | Year 2 | 605 | 500 | | Year 3 | 0 | 300 | - **Formula (Verify IRR by hand and compare against a hurdle rate)**: `=ROUND(IRR(B2:B4), 4)` - **Formula (Why same-sign cash flows return #NUM!)**: `=IRR(C2:C5)` ### Irwin Mode I Stress Intensity Factor K_I and Critical Crack Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/irwin-stress-intensity-factor-mode-i-and-critical-crack-length-fracture/ - **Summary**: Compute Mode I opening stress intensity K_I = Y * sigma * SQRT(PI() * a), fracture safety factor K_IC / K_I, and critical crack length a_crit while guarding millimeter unit traps. *Table — Catch the SQRT(1000) millimeter-to-meter unit trap in fracture spreadsheets:* | Fracture Mechanics Metric | SI-Consistent Formula | Sample Output | | --- | --- | --- | | Mode I Stress Intensity K_I | Y * sig_MPa * SQRT(PI() * (a_mm / 1000)) | 38.4422 MPa*sqrt(m) | | Fracture Toughness Margin SF_K | K_IC / K_I | 1.4307 | | Critical Crack Depth a_crit (mm) | 1000 * (K_IC / (Y * sig_MPa))^2 / PI() | 12.2817 mm | | Crack-Size Safety Ratio a_crit / a | (K_IC / K_I)^2 = SF_K^2 | 2.0470x | - **Formula (Mode I Stress Intensity Factor K_I Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Fracture Input", ROUND(B3 * B4 * SQRT(PI() * (B5 / 1000)), 4))` - **Formula (Critical Crack Size a_crit (mm) & Stress Doubling Check)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Fracture Input", ROUND(1000 * ((B2 / (B3 * B4))^2) / PI(), 4))` ### ISBLANK function: why formula "" cells return FALSE and how to test both - **URL**: https://sheets.arte-soft.com/en/learn/isblank-function-empty-cell-check/ - **Summary**: Distinguish genuinely untouched cells (ISBLANK = TRUE) from zero-length formula strings "" and spaces. *Table — ISBLANK tests for zero cell contents—not visual emptiness:* | Cell | Stored Content | ISBLANK | COUNTBLANK(cell)=1 | | --- | --- | --- | --- | | B2 (empty) | (truly empty) | TRUE | TRUE | | B3 | ="" (formula empty string) | FALSE | TRUE | | B4 | 0 (numeric zero) | FALSE | FALSE | - **Formula (Compare ISBLANK on true empty B2 vs formula "" in B3)**: `=ISBLANK(B2)` - **Formula (Type-safe blank-or-empty-string guard with COUNTBLANK)**: `=IF(COUNTBLANK(B4:B4)=1, "Missing", B4)` ### Isentropic Choked Nozzle Critical Pressure Ratio & Sonic Mass Flow Rate - **URL**: https://sheets.arte-soft.com/en/learn/isentropic-choked-nozzle-critical-pressure-ratio-and-mass-flux-formula/ - **Summary**: Determine whether gas discharge through a relief valve or converging nozzle is subsonic or choked at Mach 1 using critical ratio (2/(gamma+1))^(gamma/(gamma-1)) and unified Saint-Venant mass flow. *Table — Why lowering downstream pressure below 0.5283 * P_0 cannot increase air mass flow:* | Back-Pressure Regime (P0=600 kPa, T0=300 K, At=1 cm2) | Ratio P_b / P_0 vs 0.5283 | Mass Flow m_dot (kg/s) | | --- | --- | --- | | Atmospheric Vent (P_b = 100 kPa) | 0.1667 <= 0.5283 (CHOKED_SONIC_M1) | 0.1400 kg/s | | Deep Partial Vacuum (P_b = 50 kPa) | 0.0833 <= 0.5283 (CHOKED_SONIC_M1) | 0.1400 kg/s (Unchanged!) | | High Back-Pressure (P_b = 480 kPa) | 0.8000 > 0.5283 (SUBSONIC_FLOW) | 0.1146 kg/s | - **Formula (Isentropic Critical Pressure Ratio r_crit Formula)**: `=ROUND((2 / (B5 + 1)) ^ (B5 / (B5 - 1)), 4)` - **Formula (Unified Choked + Subsonic Compressible Gas Mass Flow Formula (kg/s))**: `=IF(B3 >= B2, 0, LET(gam, B5, r_cr, (2 / (gam + 1)) ^ (gam / (gam - 1)), p_eff, MAX(B3 / B2, r_cr), term_sv, ((2 * gam) / (B6 * B4 * (gam - 1))) * ((p_eff ^ (2 / gam)) - (p_eff ^ ((gam + 1) / gam))), ROUND(B7 * B2 * SQRT(MAX(0, term_sv)), 4)))` ### ISERR function: detect broken math errors (#DIV/0!, #VALUE!) while ignoring #N/A - **URL**: https://sheets.arte-soft.com/en/learn/iserr-function-non-na-errors/ - **Summary**: Separate broken calculation errors from expected #N/A missing-lookup markers using ISERR vs ISERROR. *Table — How ISERR differs from ISERROR and ISNA:* | Cell | Formula / Value | ISERR | ISNA | ISERROR | | --- | --- | --- | --- | --- | | B2 | =100 / 0 (#DIV/0!) | TRUE | FALSE | TRUE | | B3 | =NA() (#N/A) | FALSE | TRUE | TRUE | | B4 | 250 (valid number) | FALSE | FALSE | FALSE | - **Formula (Flag broken arithmetic while letting #N/A pass)**: `=ISERR(B2)` - **Formula (Verify complementary identity ISERR + ISNA = ISERROR)**: `=OR(ISERR(B3), ISNA(B3)) = ISERROR(B3)` ### ISERROR function: flag and count any formula error without masking values - **URL**: https://sheets.arte-soft.com/en/learn/iserror-function-audit-formula-errors/ - **Summary**: Return TRUE for #DIV/0!, #VALUE!, #N/A, #REF!, and #NUM! using ISERROR so audit columns and pre-send checks spot broken rows immediately. *Table — When you want TRUE/FALSE instead of IFERROR replacement:* | Row | Revenue (A) | Units (B) | Unit Revenue =A/B (C) | ISERROR(C) | | --- | --- | --- | --- | --- | | 2 | 480 | 12 | 40 | FALSE | | 3 | 300 | 0 | #DIV/0! | TRUE | | 4 | 250 | Pending | #VALUE! | TRUE | | 5 | 0 | 5 | 0 | FALSE (zero is valid, not an error) | - **Formula (Flag individual rows and gate report status)**: `=ISERROR(A3 / B3)` - **Formula (Catch lookup #N/A errors alongside math errors)**: `=IF(ISERROR(A3 / B3), "Fix input", A3 / B3)` ### ISEVEN and ISODD: test number parity for alternating-row banding and routing - **URL**: https://sheets.arte-soft.com/en/learn/iseven-and-isodd-functions/ - **Summary**: Route odd/even street numbers, badge IDs, or worksheet rows with ISEVEN and ISODD—including decimal truncation rules. *Table — Route records by even/odd ID or highlight zebra rows:* | Input (A) | Truncated Integer | ISEVEN | ISODD | | --- | --- | --- | --- | | 104 | 104 | TRUE | FALSE | | 105 | 105 | FALSE | TRUE | | 2.9 | 2 (truncates decimals) | TRUE | FALSE | - **Formula (Decimals truncate before testing parity)**: `=IF(ISEVEN(A2), "Lane A", "Lane B")` - **Formula (Guard non-numeric text entries explicitly)**: `=IF(ISNUMBER(A5), ISEVEN(A5), "Invalid ID")` ### ISFORMULA function: catch hardcoded manual overrides in calculated columns - **URL**: https://sheets.arte-soft.com/en/learn/isformula-function-audit-formulas/ - **Summary**: Audit financial models with ISFORMULA to spot cells where someone typed a static number over a live formula. *Table — Why hardcoded overrides are silent model killers:* | Qty (A) | Price (B) | LineTotal (C) | ISFORMULA(C) | | --- | --- | --- | --- | | 10 | 25 | =A2*B2 (250) | TRUE | | 12 | 25 | 300 (hardcoded number!) | FALSE | | 8 | 25 | =A4*B4 (200) | TRUE | - **Formula (Flag manual overrides in an audit check column)**: `=IF(ISFORMULA(C3), "Formula OK", "Manual Override")` - **Formula (Verify formula cells return TRUE even if they output text or errors)**: `=ISFORMULA(C2)` ### ISLOGICAL function: verify real TRUE/FALSE values vs text "TRUE" or 1/0 - **URL**: https://sheets.arte-soft.com/en/learn/islogical-function-boolean-check/ - **Summary**: Check whether imported flag columns hold genuine logical booleans (TRUE/FALSE) rather than strings or numbers using ISLOGICAL. *Table — Why text "TRUE" and numeric 1 are NOT logical values:* | RowType (A) | FlagValue (B) | ISLOGICAL(B) | | --- | --- | --- | | Real Boolean | TRUE | TRUE | | False Boolean | FALSE | TRUE | | Quoted Text | ="TRUE" | FALSE | | Numeric One | 1 | FALSE | - **Formula (Audit mixed boolean imports)**: `=ISLOGICAL(B2)` - **Formula (Normalize booleans and text TRUE/FALSE)**: `=ISLOGICAL(IF(ISLOGICAL(B4), B4, UPPER(TRIM(B4))="TRUE"))` ### ISNA function: test specifically for #N/A missing-lookup results - **URL**: https://sheets.arte-soft.com/en/learn/isna-function-test-na-lookup-errors/ - **Summary**: Return TRUE only when a lookup produces #N/A—while returning FALSE on #DIV/0! or valid matches—to reconcile unmatched IDs cleanly. *Table — Why reconciliation audits use ISNA instead of ISERROR:* | Expression | Evaluated Value | ISNA Result | ISERROR Result | | --- | --- | --- | --- | | XMATCH("SKU-10", A2:A4) | 1 (found) | FALSE | FALSE | | XMATCH("SKU-99", A2:A4) | #N/A (missing) | TRUE | TRUE | | 100 / 0 | #DIV/0! (math bug) | FALSE | TRUE | - **Formula (Flag missing keys without hiding broken math)**: `=IF(ISNA(XMATCH(D2, A2:A4)), "Unlisted SKU", "Matched")` - **Formula (Verify onboarding once the missing SKU is added)**: `=ISNA(XMATCH(D2, A2:A4))` ### Audit Non-Text Cells and Extract Text-Only Values (ISNONTEXT & T Function Patterns) - **URL**: https://sheets.arte-soft.com/en/learn/isnontext-and-t-function-audit-non-text-cells-and-extract-text-only/ - **Summary**: Distinguish numbers, booleans, and true blanks from text strings—including zero-length formula strings ""—using NOT(ISTEXT(...)) and IF(ISTEXT(...), cell, ""). *Table — Why true blanks and "" empty strings behave differently under non-text checks:* | Cell Content | ISTEXT(cell) | Non-Text Check: NOT(ISTEXT(cell)) | Text-Only Pass-Through: IF(ISTEXT(cell), cell, "") | | --- | --- | --- | --- | | "Priority Rush" (text) | TRUE | FALSE | "Priority Rush" | | 480 (number) | FALSE | TRUE | "" | | TRUE (boolean) | FALSE | TRUE | "" | | ="" (formula empty string) | TRUE | FALSE | "" | | Truly blank cell | FALSE | TRUE | "" | - **Formula (Non-Text Cell Check (ISNONTEXT Equivalent))**: `=NOT(ISTEXT(A2))` - **Formula (Safe Text-Only Pass-Through (T Function Equivalent))**: `=IF(ISTEXT(A2), A2, "")` ### ISNUMBER and ISTEXT: spot numbers stored as text that SUM ignores - **URL**: https://sheets.arte-soft.com/en/learn/isnumber-istext-numbers-stored-as-text/ - **Summary**: Diagnose why SUM under-reports imported amounts by checking each cell’s stored data type with ISNUMBER and ISTEXT before converting. *Table — Why SUM(A2:A4) misses a cell that looks like 42:* | Cell | Stored content | ISNUMBER | ISTEXT | | --- | --- | --- | --- | | A2 | 42 (number) | true | false | | A3 | ="42" (text string) | false | true | | A4 | "42 kg" (text with unit) | false | true | - **Formula (Audit stored types with ISNUMBER and ISTEXT)**: `=ISNUMBER(A3)` - **Formula (Convert clean numeric text with VALUE)**: `=ISNUMBER(VALUE(A3))` ### ISO 14644-1 Cleanroom Particle Limit & Recovery Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/iso-14644-cleanroom-particle-limit-and-air-change-recovery-formula/ - **Summary**: Calculate ISO 14644-1 Maximum Airborne Particle Concentration Cn (particles/m³) at Size D (µm), HEPA Air Changes Per Hour (ACH), Ideal Well-Mixed 100:1 Cleanliness Recovery Time (Minutes), and EU GMP / ISO 14644-3 15-Minute Recovery Gate. *Table — Pair ISO 14644-1 power-law particle limits with 100:1 HEPA air-change recovery!:* | ISO 14644 Cleanroom Metric (ISO Class 5, D = 0.5 µm, 12,000 m³/h, 200 m³) | Formula | Verified Output | | --- | --- | --- | | Max Particle Limit Cn (/m³) | ROUND((10^N) * ((0.1 / D)^2.08), 0) | 3,517 /m³ (100,000 @ 0.1 µm) | | HEPA Air Changes / Hr (ACH) | HEPA_Supply_m3_h / Room_Volume_m3 | 60 ACH (12 ACH @ 2,400 m³/h) | | Ideal 100:1 Recovery (min) | (LN(100) / ACH) * 60 | 4.61 min (23.03 min @ 12 ACH) | | 15-Min Recovery Guidance Gate | IF(t_100 <= 15, "Compliant...", "Slow...") | Compliant Cleanroom Recovery (<=15 min) | - **Formula (ISO 14644-1 Concentration & 100:1 Recovery Time Formula)**: `=LET(cl_n, B2, dp_u, B3, q_mh, B4, vl_m, B5, IF(OR(cl_n < 1, cl_n > 9, dp_u < 0.1, dp_u > 5, q_mh <= 0, vl_m <= 0), "Invalid Cleanroom Spec", LET(ac_h, q_mh / vl_m, ROUND((LN(100) / ac_h) * 60, 2))))` - **Formula (Turbulent Night-Setback Turndown Check (Set HEPA Airflow = 2,400 m³/h -> 12 ACH))**: `=IF(ISTEXT(E4), E4, IF(E4 <= 15, "Compliant Cleanroom Recovery (<=15 min)", "Slow Recovery: Increase HEPA ACH (>15 min)"))` ### ISO 281 Rolling-Bearing L10 Fatigue Life & Hours Formula - **URL**: https://sheets.arte-soft.com/en/learn/iso-281-rolling-element-bearing-l10-fatigue-life-revolutions-and-hours/ - **Summary**: Calculate ISO 281 Bearing Load Ratio (C/P), Basic 90%-Reliability Rating Life L10 (million revolutions), Operating Service Life L10h (hours), and Continuous Operating Days. *Table — Doubling radial bearing load slashes ball-bearing life by 8x—and use p = 10/3 for line-contact rollers!:* | ISO 281 Bearing Fatigue KPI (C = 90 kN, P = 15 kN, 1,500 RPM) | Formula | Verified Output | | --- | --- | --- | | Dynamic Load Safety Ratio (C / P) | Dynamic_Rating_C_kN / Equiv_Load_P_kN | 6.00 (3.00 @ 30 kN Load) | | Basic Rating Life L10 (10^6 rev) | (C / P) ^ IF(Is_Roller=1, 10/3, 3) | 216.00 Mrev (392.50 Roller) | | Operating Service Life L10h (hrs) | (L10_Mrev * 10^6) / (60 * RPM) | 2,400.00 hrs (300.00 @ 30 kN) | | Continuous 24/7 Service (days) | L10h_Hours / 24 | 100.00 days (12.50 @ 30 kN) | - **Formula (ISO 281 Point- vs Line-Contact Bearing Life Formula)**: `=LET(c_kn, B2, p_kn, B3, rl_f, B4, rp_m, B5, IF(OR(c_kn <= 0, p_kn <= 0, AND(rl_f <> 0, rl_f <> 1), rp_m <= 0), "Invalid Bearing Input", LET(ex_p, IF(rl_f = 1, 10 / 3, 3), l_10, (c_kn / p_kn) ^ ex_p, ROUND((l_10 * 1000000) / (60 * rp_m), 2))))` - **Formula (2x Belt Over-Tension Cubic Life Collapse & Roller Upgrade Checks)**: `=IF(ISTEXT(E4), E4, ROUND(E4 / 24, 2))` ### ISO Stock Option Bargain Element & AMT Crossover Formula - **URL**: https://sheets.arte-soft.com/en/learn/iso-incentive-stock-option-bargain-element-amt-crossover-formula/ - **Summary**: Calculate Incentive Stock Option (ISO) Form 6251 Bargain Element ($k), Tentative Minimum Tax TMT ($k), Incremental Cash AMT Payable ($k), and Maximum AMT-Free Exercise Shares (k). *Table — Exercising and holding ISOs avoids regular W-2 withholding—but triggers Form 6251 cash AMT!:* | Form 6251 ISO Exercise KPI ($250k Inc, $56k Reg Tax, 10k ISOs @ $4->$24, $85k Exemp) | Formula | Verified Output | | --- | --- | --- | | ISO Bargain Element ($k) | ISO_Shares_k * (Exercise_FMV - Strike) | $200.00k ($35.00k @ 1.75k Sh) | | Tentative Minimum Tax TMT ($k) | MAX(0, (Reg_Inc + Bargain - Exemp) * 0.28) | $102.20k ($56.00k @ 1.75k Sh) | | Extra Cash AMT Payable ($k) | MAX(0, TMT_k - Regular_Tax_k) | $46.20k ($0.00k @ 1.75k Sh) | | Max AMT-Free ISO Shares (k) | MAX(0, ((Reg_Tax/0.28 + Exemp) - Reg_Inc) / Spread) | 1.75k (1,750 Shares) | - **Formula (Form 6251 Incremental AMT & Zero-AMT Crossover Share Formula)**: `=LET(rg_i, B2, rg_t, B3, sh_k, B4, st_p, B5, fm_v, B6, ex_m, B7, IF(OR(rg_i < 0, rg_t < 0, sh_k < 0, st_p <= 0, fm_v <= st_p, ex_m < 0), "Invalid ISO Exercise Input", LET(bg_k, sh_k * (fm_v - st_p), tm_t, MAX(0, (rg_i + bg_k - ex_m) * 0.28), ROUND(MAX(0, tm_t - rg_t), 2))))` - **Formula (Exact AMT-Free Crossover Verification Check (Set ISO Shares Exercised = 1.75k))**: `=IF(ISTEXT(E4), E4, ROUND(MAX(0, ((B3 / 0.28 + B7) - B2) / (B6 - B5)), 2))` ### ISO week number and YYYY-Www label formula (year-boundary safe) - **URL**: https://sheets.arte-soft.com/en/learn/iso-week-number-and-week-of-month-formula/ - **Summary**: Calculate exact ISO-8601 week numbers (1–53) and ISO week-years ("2026-W53") using Thursday-anchor date math that works in every spreadsheet. *Table — Why YEAR(d) & "-W" & ISOWEEKNUM(d) breaks on Jan 1–3!:* | Calendar Date (A) | Same-Week Thursday (th) | ISO Week # | True ISO YYYY-Www | | --- | --- | --- | --- | | 2026-01-01 (Thu) | 2026-01-01 | 1 | 2026-W01 | | 2026-07-04 (Sat) | 2026-07-02 | 27 | 2026-W27 | | 2027-01-01 (Fri) | 2026-12-31 | 53 | 2026-W53 (NOT 2027!) | - **Formula (Exact ISO-8601 YYYY-Www string and integer week formulas)**: `=LET(th, INT(A2) - WEEKDAY(INT(A2), 2) + 4, wk, INT((th - DATE(YEAR(th), 1, 1)) / 7) + 1, YEAR(th) & "-W" & RIGHT("0" & wk, 2))` - **Formula (Numeric ISO week number (1–53) only)**: `=LET(th, INT(A2) - WEEKDAY(INT(A2), 2) + 4, INT((th - DATE(YEAR(th), 1, 1)) / 7) + 1)` ### Isolated Flyback Converter Duty Cycle & Vds Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/isolated-flyback-converter-reflected-voltage-duty-cycle-and-drain-stress/ - **Summary**: Calculate Coupled-Inductor Flyback Reflected Primary Voltage V_ref = (V_out + V_f)*(N_p/N_s), CCM Duty Cycle D = V_ref / (V_in + V_ref), Peak Primary MOSFET Drain-Source Stress V_ds_pk, and 80%-Derated Breakdown Headroom. *Table — Add reflected secondary voltage AND leakage snubber clamp overshoot to Vin on Flyback MOSFETs!:* | Isolated Flyback Metric (Vin=100V, Vout=12V, Vf=0.5V, Nps=8, Clamp=50V, 650V FET) | Formula | Verified Output | | --- | --- | --- | | Reflected Primary Voltage V_ref | (V_out + V_f) * (N_p / N_s) | 100.00 V | | CCM Steady-State Duty Cycle D | V_ref / (V_in + V_ref) | 0.5000 (0.2500 @ Vin=300V) | | Peak MOSFET Drain Stress V_ds_pk | V_in + V_ref + V_clamp | 250.00 V (450.00 V @ Vin=300V) | | IPC 80% BV_DSS Derating Margin | 0.80 * BV_DSS - V_ds_pk | +270.00 V (+70.00 V @ Vin=300V) | - **Formula (Flyback Peak MOSFET Drain Voltage & 80% Derating Headroom Formula)**: `=LET(v_in, B2, v_ot, B3, v_fd, B4, n_ps, B5, v_cl, B6, bv_d, B7, IF(OR(v_in <= 0, v_ot <= 0, v_fd < 0, n_ps <= 0, v_cl < 0, bv_d <= 0), "Invalid Flyback Specification", LET(v_rf, (v_ot + v_fd) * n_ps, v_pk, v_in + v_rf + v_cl, ROUND(0.8 * bv_d - v_pk, 2))))` - **Formula (High-Line 265 VAC Rectified Stress Check (Set V_in = 375 V vs 300 V))**: `=IF(ISTEXT(E2), E2, ROUND(E2 / (B2 + E2), 4))` ### Even-Principal Loan Interest Schedule (ISPMT Formula vs Level-Payment IPMT) - **URL**: https://sheets.arte-soft.com/en/learn/ispmt-even-principal-loan-interest-schedule-formula/ - **Summary**: Calculate periodic interest and lifetime interest on straight-line (even-principal) commercial loans and municipal bonds where an equal slice of principal PV / Nper is retired each period. *Table — Why corporate credit lines use even-principal amortization instead of PMT/IPMT:* | Payment # (1-Based) | ISPMT Index (per) | Opening Balance | Interest (-PV*r*(1-per/n)) | Total Payment (Principal + Int) | | --- | --- | --- | --- | --- | | Payment 1 | per = 0 | $120,000.00 | -$600.00 | $5,600.00 ($5,000 + $600) | | Payment 13 | per = 12 | $60,000.00 | -$300.00 | $5,300.00 ($5,000 + $300) | | Payment 24 | per = 23 | $5,000.00 | -$25.00 | $5,025.00 ($5,000 + $25) | | All 24 Months | Sum (0..23) | — | -$7,500.00 | $127,500.00 Total Paid | - **Formula (Periodic Even-Principal Interest (Excel 0-Based ISPMT Convention))**: `=IF(OR(B2 <= 0, B4 <= 0, B5 < 0, B5 >= B4), "Invalid Period", ROUND(-B2 * (B3 / 12) * (1 - B5 / B4), 2))` - **Formula (Closed-Form Total Lifetime Interest on an Even-Principal Loan)**: `=ROUND(B2 * (B3 / 12) * (B4 + 1) / 2, 2)` ### ISTH Overt DIC Diagnostic Score Calculator (0–8 Points) - **URL**: https://sheets.arte-soft.com/en/learn/isth-overt-dic-disseminated-intravascular-coagulation-score/ - **Summary**: Calculate the International Society on Thrombosis and Haemostasis (ISTH) overt DIC score (0–8 points) from platelet count, D-dimer tier, PT prolongation, and fibrinogen. *Table — How the 4-lab ISTH algorithm standardizes overt consumptive coagulopathy diagnosis in sepsis and trauma!:* | ISTH Coagulation Parameter | 0 Points | +1 / +2 Points | Maximum Points | | --- | --- | --- | --- | | Platelet Count (× 10^9/L) | >= 100 | 50 – 99 (+1 pt) | < 50 (+2 pts) | | D-Dimer / Fibrin Split Tier (0, 2, or 3) | Normal (0) | Moderate Increase (+2 pts) | Strong Increase (+3 pts) | | PT Prolongation (s) & Fibrinogen (g/L) | PT < 3 s; Fib >= 1.0 | PT 3–5.9 s (+1); Fib < 1.0 (+1) | PT >= 6.0 s (+2 pts) | - **Formula (ISTH Overt DIC Score (0 to 8 Points))**: `=IF(OR(B2 < 0, B3 < 0, B3 > 2, B4 < 0, B5 < 0), "Invalid Coagulation Labs", IF(B2 < 50, 2, IF(B2 < 100, 1, 0)) + IF(B3 = 2, 3, IF(B3 = 1, 2, 0)) + IF(B4 >= 6, 2, IF(B4 >= 3, 1, 0)) + IF(B5 < 1, 1, 0))` - **Formula (ISTH Overt DIC Diagnostic Classification (>= 5 Cutoff))**: `=IF(OR(B2 < 0, B3 < 0, B3 > 2, B4 < 0, B5 < 0), "Invalid Coagulation Labs", IF(IF(B2 < 50, 2, IF(B2 < 100, 1, 0)) + IF(B3 = 2, 3, IF(B3 = 1, 2, 0)) + IF(B4 >= 6, 2, IF(B4 >= 3, 1, 0)) + IF(B5 < 1, 1, 0) >= 5, "Compatible with Overt DIC (>=5)", "Not Overt DIC (<5 — Repeat Daily)"))` ### IV rate unit-conversion exercises: drops/minute and mL/hour - **URL**: https://sheets.arte-soft.com/en/learn/iv-drip-rate-gtt-per-min-and-infusion-ml-hr-clinical/ - **Summary**: Practice spreadsheet dimensional analysis with fictional infusion inputs. These exercises are not a validated dosing or pump-setting tool. *Table — Keep volume, time, mass and concentration units explicit:* | Classroom unit-conversion calculation | Formula | Worked Example | | --- | --- | --- | | Electronic Pump Rate (mL/hr) | 1,000 mL / 8 hrs | 125.0 mL/hr | | Gravity Macrodrip (15 gtt/mL) | ROUND((1,000 * 15) / (8 * 60), 0) | 31 gtt/min (31.25 rounded) | | Gravity Microdrip (60 gtt/mL) | ROUND((1,000 * 60) / (8 * 60), 0) | 125 gtt/min (= mL/hr!) | | Weight-Based (5 mcg/kg/min, 80 kg, 1600 mcg/mL) | (5 * 80 * 60) / 1600 | 15.0 mL/hr | - **Formula (Gravity IV drip rate in whole drops per minute (gtt/min))**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<=0,C2<=0),"Invalid inputs",ROUND((A2 * C2) / (B2 * 60), 0))` - **Formula (Weight-based unit conversion exercise)**: `=IF(OR(COUNT(D2:F2)<>3,D2<0,E2<=0,F2<=0),"Invalid inputs",ROUND((D2 * E2 * 60) / F2, 1))` ### Jaccard Similarity Index & Hamming Distance formulas (SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/jaccard-similarity-and-hamming-distance-formulas/ - **Summary**: Compare binary feature sets and equal-length codes via Jaccard Similarity |A n B| / |A u B| (ignoring shared 0-0 absences) and Hamming Distance mismatch count. *Table — Why Jaccard ignores shared 0-0 absences while Hamming counts all mismatches!:* | Feature / Bit (Row) | Vector A (A) | Vector B (B) | Set & Bitwise Role | | --- | --- | --- | --- | | Feature 1 | 1 | 1 | Intersection (1 & 1) -> Match | | Feature 2 | 1 | 0 | Union only -> Hamming mismatch #1 | | Feature 3 | 0 | 0 | Joint absence (Ignored by Jaccard!) | | Feature 4 | 1 | 1 | Intersection (1 & 1) -> Match | | Feature 5 | 0 | 1 | Union=4, Intersect=2 -> Jaccard=0.50, Hamming=2 | - **Formula (Jaccard Similarity Index |A intersect B| / |A union B|)**: `=IF(OR(COUNT(A2:B6)<>10,COUNTIF(A2:B6,0)+COUNTIF(A2:B6,1)<>10),"Invalid inputs",LET(inter, SUMPRODUCT(A2:A6, B2:B6), uni, SUM(A2:A6) + SUM(B2:B6) - inter, IF(uni = 0, 1, ROUND(inter / uni, 4))))` - **Formula (Binary Hamming Distance (mismatched bit positions))**: `=IF(OR(COUNT(A2:B6)<>10,COUNTIF(A2:B6,0)+COUNTIF(A2:B6,1)<>10),"Invalid inputs",SUM(A2:A6) + SUM(B2:B6) - 2 * SUMPRODUCT(A2:A6, B2:B6))` ### Jackson Queueing Network Rework Traffic Equations and Lead Time - **URL**: https://sheets.arte-soft.com/en/learn/jackson-open-queueing-network-routing-traffic-equations-and-total-wip/ - **Summary**: Solve Jackson’s (1957) rework traffic balance lam_eff = lam_ext / (1 - p_rework), station utilizations, total WIP, and Little’s Law customer cycle time without throughput errors. *Table — Avoid the two classic rework-loop traps: arrival dilution and Little’s Law throughput:* | Jackson Network Metric | Exact Formula | Sample Output | | --- | --- | --- | | Effective Internal Arrival lam_eff | lam_0 / (1 - p_rew) = 18 / 0.90 | 20.0000 jobs/hr | | Station WIPs L_1 and L_2 | rho_1 / (1 - rho_1) + rho_2 / (1 - rho_2) | 2.00 + 4.00 = 6.00 jobs | | End-to-End Lead Time (Minutes) | 60 * (L_1 + L_2) / lam_0 | 20.00 minutes (vs 18.00 trap!) | | Saturated Rework Threshold | p_rew = 1 - lam_0 / MIN(mu_1, mu_2) | 0.2800 (28% rework blows up mu_2) | - **Formula (Total Jackson Network WIP (L_1 + L_2) Formula)**: `=LET(l_ext, B2, mu_a, B3, mu_b, B4, p_rw, B5, IF(OR(l_ext <= 0, p_rw < 0, p_rw >= 1), "Invalid Routing Input", LET(l_eff, l_ext / (1 - p_rw), IF(OR(l_eff >= mu_a, l_eff >= mu_b), "Bottleneck Saturated (rho >= 1)", LET(rh_1, l_eff / mu_a, rh_2, l_eff / mu_b, ROUND(rh_1 / (1 - rh_1) + rh_2 / (1 - rh_2), 4))))))` - **Formula (End-to-End Customer Lead Time (Minutes) Formula & Rework Surge Test)**: `=IF(ISNUMBER(E4), ROUND(60 * E4 / B2, 2), E4)` ### Jackson Open Queueing Network: Total WIP & End-to-End Sojourn Time - **URL**: https://sheets.arte-soft.com/en/learn/jackson-open-queueing-network-throughput-and-sojourn-time/ - **Summary**: Analyze multi-station M/M/1 manufacturing, hospital, or microservice networks with rework loops using Jackson's Theorem: L = SUM(lambda_i / (mu_i - lambda_i)) and Little's Law W = L / gamma_ext. *Table — Account for internal rework and routing loops across multi-stage queues!:* | Network Station | Effective Arrival lambda_i | Service Rate mu_i | Station WIP Li = lam/(mu - lam) | | --- | --- | --- | --- | | Node 1: Triage / API Gateway | 12 jobs/hr (incl. retries) | 20 jobs/hr (rho = 0.60) | 12 / (20 - 12) = 1.50 jobs | | Node 2: Core Processing | 9 jobs/hr | 15 jobs/hr (rho = 0.60) | 9 / (15 - 9) = 1.50 jobs | | Node 3: QA / Inspection | 8 jobs/hr | 16 jobs/hr (rho = 0.50) | 8 / (16 - 8) = 1.00 job (Total L = 4.0) | - **Formula (Station Queue + In-Service WIP Li = lambda_i / (mu_i - lambda_i) (With Stability Guard))**: `=IF(OR(B2 < 0, C2 <= B2), "Unstable Queue (lambda >= mu)", ROUND(B2 / (C2 - B2), 3))` - **Formula (Network End-to-End Sojourn Time W = SUM(D2:D4) / External_Arrival_Rate)**: `=IF(B5 <= 0, "Invalid External Rate", ROUND(SUM(D2:D4) / B5, 3))` ### Jackson-Pollock 3-Site Skinfold Calculator: Body Density & Siri Body Fat % (Men & Women) - **URL**: https://sheets.arte-soft.com/en/learn/jackson-pollock-3-site-skinfold-body-density-and-fat-formula/ - **Summary**: Calculate caliper skinfold sum S_3 (mm), quadratic Whole-Body Density D_b (g/cm^3), and Siri Percent Body Fat using Jackson & Pollock (1978, Men: Chest + Abdomen + Thigh) and Jackson, Pollock & Ward (1980, Women: Triceps + Suprailiac + Thigh). *Table — Why Jackson & Pollock introduced quadratic skinfold sum S_3^2 to eliminate curvilinearity across lean and obese adults!:* | Sex & 3-Site Caliper Protocol | Example Skinfolds (mm) & Age | Predicted Body Density D_b | Siri Body Fat (%) | | --- | --- | --- | --- | | Male (Chest 10, Abdomen 18, Thigh 14; Age 30) | S_3 = 42 mm | 1.06975 g/cm^3 | 12.72% BF | | Female (Triceps 16, Suprailiac 15, Thigh 23; Age 30) | S_3 = 54 mm | 1.04841 g/cm^3 | 22.14% BF | - **Formula (Jackson-Pollock 3-Site Predicted Whole-Body Density D_b (g/cm^3))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 18, B3 > 75, MIN(B4:B6) <= 1, SUM(B4:B6) > 220), "Invalid Sex (M/F), Adult Age (18–75), or Skinfolds (mm)", ROUND(IF(B2 = "M", 1.10938 - 0.0008267 * SUM(B4:B6) + 0.0000016 * (SUM(B4:B6) ^ 2) - 0.0002574 * B3, 1.0994921 - 0.0009929 * SUM(B4:B6) + 0.0000023 * (SUM(B4:B6) ^ 2) - 0.0001392 * B3), 5))` - **Formula (Jackson-Pollock + Siri Percent Body Fat (%BF = 495 / D_b - 450))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 18, B3 > 75, MIN(B4:B6) <= 1, SUM(B4:B6) > 220), "Invalid Sex (M/F), Adult Age (18–75), or Skinfolds (mm)", ROUND((495 / IF(B2 = "M", 1.10938 - 0.0008267 * SUM(B4:B6) + 0.0000016 * (SUM(B4:B6) ^ 2) - 0.0002574 * B3, 1.0994921 - 0.0009929 * SUM(B4:B6) + 0.0000023 * (SUM(B4:B6) ^ 2) - 0.0001392 * B3)) - 450, 2))` ### Janbu Simplified Noncircular Slope Stability Formula: Correction Factor f_0 & FS_J - **URL**: https://sheets.arte-soft.com/en/learn/janbu-simplified-noncircular-slip-surface-correction-factor-f0/ - **Summary**: Analyze shallow translational and composite noncircular slip surfaces using Nilmar Janbu’s Simplified Method: compute empirical interslice shear correction f_0 = 1 + b_1 * ((d / L) - 1.4 * (d / L)^2) and corrected FS_J = f_0 * FS_0. *Table — Why noncircular weak-seam slides require Janbu’s horizontal force equilibrium + f_0 correction!:* | Soil Strength Class | Janbu Constant b_1 | f_0 at d / L = 0.15 (d = 4.5 m, L = 30 m) | Corrected FS_J when FS_0 = 1.240 | | --- | --- | --- | --- | | Frictional Only (phi > 0, c = 0) | b_1 = 0.31 | 1.0367 | 1.286 | | Cohesive-Frictional (c > 0, phi > 0) | b_1 = 0.69 | 1.0818 | 1.341 | | Undrained Cohesive (phi = 0, c > 0) | b_1 = 1.00 | 1.1185 | 1.387 | - **Formula (Janbu Empirical Interslice Shear Correction Factor f_0)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B3 / B4 > 0.35, AND(UPPER(TRIM(B5 & "")) <> "PHI", UPPER(TRIM(B5 & "")) <> "C-PHI", UPPER(TRIM(B5 & "")) <> "C")), "Invalid Janbu Geometry or Soil Class", ROUND(1 + IF(UPPER(TRIM(B5 & "")) = "C", 1, IF(UPPER(TRIM(B5 & "")) = "C-PHI", 0.69, 0.31)) * ((B3 / B4) - 1.4 * (B3 / B4) ^ 2), 4))` - **Formula (Corrected Janbu Simplified Factor of Safety FS_J = f_0 * FS_0)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B3 / B4 > 0.35, AND(UPPER(TRIM(B5 & "")) <> "PHI", UPPER(TRIM(B5 & "")) <> "C-PHI", UPPER(TRIM(B5 & "")) <> "C")), "Invalid Janbu Geometry or Soil Class", ROUND(B2 * (1 + IF(UPPER(TRIM(B5 & "")) = "C", 1, IF(UPPER(TRIM(B5 & "")) = "C-PHI", 0.69, 0.31)) * ((B3 / B4) - 1.4 * (B3 / B4) ^ 2)), 3))` ### Janoschek Growth Curve Formula: Bounded Sigmoidal Size & Inflection Age - **URL**: https://sheets.arte-soft.com/en/learn/janoschek-asymmetric-sigmoidal-growth-curve-inflection-formula/ - **Summary**: Model nonzero-birth biological and forestry growth L(t) = L_∞ - (L_∞ - L_0) * EXP(-k * t^p) and compute exact analytical inflection age t_inf = ((p - 1) / (k * p))^(1 / p). *Table — Why Janoschek’s Weibull-type growth law beats logistic curves when birth size L_0 is fixed!:* | Age t (L0 = 8, L∞ = 120, k = 0.045, p = 2.2) | Predicted Size L(t) | Inflection Point t_inf | Growth Phase | | --- | --- | --- | --- | | t = 3.108 yr (Peak Velocity Age) | 55.97 cm | 3.108 yr | Maximum dL/dt Acceleration Peak | | t = 4.000 yr (Juvenile Surge) | 76.69 cm | 3.108 yr | Post-Inflection Deceleration | | t = 8.000 yr (Near Asymptote) | 118.58 cm | 3.108 yr | 98.8% of Mature Ceiling L∞ | - **Formula (Janoschek Bounded Sigmoidal Size L(t))**: `=IF(OR(B3 <= B2, B4 <= 0, B5 <= 0, B6 < 0), "Invalid Janoschek Inputs", ROUND(B3 - (B3 - B2) * EXP(-B4 * (B6 ^ B5)), 2))` - **Formula (Analytical Inflection Age t_inf = ((p - 1) / (k * p))^(1 / p))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Janoschek Inputs", IF(B5 <= 1, "No Inflection (p <= 1)", ROUND(((B5 - 1) / (B4 * B5)) ^ (1 / B5), 3)))` ### Janssen Silo Wall Friction & Pressure Saturation Formula - **URL**: https://sheets.arte-soft.com/en/learn/janssen-silo-wall-friction-lateral-and-vertical-pressure-saturation-formula/ - **Summary**: Calculate Janssen Characteristic Screening Depth z0 (m), Saturated Vertical Floor Pressure Pv(z) (kPa), Lateral Silo Wall Hoop Pressure Ph(z) (kPa), and Naive Hydrostatic Fluid Overprediction (kPa). *Table — Why an hourglass ticks at constant rate—and why grain silo floor pressure saturates instead of growing likerho*g*z!:* | Eurocode EN 1991-4 Silo KPI (D=6.0 m, z=20 m, rho=780 kg/m³, mu_w=0.40, K=0.48) | Formula | Verified Output | | --- | --- | --- | | Characteristic Screening Depth z0 | (D_m / 4) / (Wall_Friction_mu * K) | 7.81 m (12.50 m @ smooth steel 0.25) | | Vertical Silo Pressure Pv(z) (kPa) | (rho*g*z0/1000) * (1 - EXP(-z / z0)) | 55.14 kPa (76.31 kPa @ smooth 0.25!) | | Lateral Wall Hoop Pressure Ph (kPa) | K_Ratio * Pv_z_kPa | 26.47 kPa (36.63 kPa @ smooth 0.25!) | | Naive Hydrostatic Fluid rho*g*z | (rho_kg_m3 * 9.80665 * z_m) / 1000 | 152.98 kPa (2.77x overprediction!) | - **Formula (Janssen Differential-Slice Exponential Silo Pressure Formula)**: `=LET(dm_s, B2, dp_z, B3, rb_k, B4, mw_f, B5, kr_j, B6, IF(OR(dm_s <= 0, dp_z <= 0, rb_k <= 0, mw_f <= 0.05, mw_f > 1, kr_j <= 0.15, kr_j > 1), "Invalid Silo Input", ROUND((rb_k * 9.80665 * dp_z) / 1000, 2)))` - **Formula (Polished Smooth Stainless Wall Lower-Friction Burst Check (Set Wall Friction mu_w = 0.25))**: `=IF(ISTEXT(E5), E5, LET(zc_m, (B2 / 4) / (B5 * B6), pv_k, ((B4 * 9.80665 * zc_m) / 1000) * (1 - EXP(-B3 / zc_m)), ROUND(B6 * pv_k, 2)))` ### Jarque-Bera Normality Test: Skewness & Excess Kurtosis Chi-Square P-Value - **URL**: https://sheets.arte-soft.com/en/learn/jarque-bera-normality-test-skewness-kurtosis-chi-square/ - **Summary**: Test whether regression residuals or asset returns follow a normal distribution using the Jarque-Bera statistic JB = (n / 6) * (S^2 + (K_excess^2 / 4)) and exact df = 2 exponential p-value EXP(-JB / 2). *Table — Jointly test fat tails and asymmetry against the normal bell curve!:* | Sample Profile (n = 120, alpha = 0.05) | Skewness S & Excess Kurtosis Ke | Jarque-Bera Statistic JB | Exact P-Value & Decision | | --- | --- | --- | --- | | Fat-Tailed Equity Returns | S = 0.65, Ke = 1.20 | JB = 15.65 (> 5.991) | p = 0.0004 -> Reject Normality | | Well-Behaved Sensor Noise | S = 0.15, Ke = -0.20 | JB = 0.65 (<= 5.991) | p = 0.7225 -> Fail to Reject (Normal) | | Critical Cutoff (df = 2) | -2 * LN(0.05) | JB_crit = 5.991 | alpha = 5% Significance Boundary | - **Formula (Jarque-Bera Test Statistic JB = (n / 6) * (S^2 + K_excess^2 / 4))**: `=IF(B2 < 8, "Sample Too Small (n >= 8)", ROUND((B2 / 6) * ((B3 ^ 2) + ((B4 ^ 2) / 4)), 3))` - **Formula (Exact Asymptotic Chi-Square(df = 2) Right-Tail P-Value = EXP(-JB / 2))**: `=IF(B2 < 8, "Sample Too Small (n >= 8)", ROUND(EXP(-((B2 / 6) * ((B3 ^ 2) + ((B4 ^ 2) / 4))) / 2), 4))` ### Jeans Length & Jeans Mass Formula (Star-Formation Cloud Collapse) - **URL**: https://sheets.arte-soft.com/en/learn/jeans-gravitational-instability-length-and-jeans-mass-formula/ - **Summary**: Calculate the isothermal Jeans wavelength and the mass in a sphere of half that wavelength. Keep the linear-perturbation convention consistent and explore temperature and density scaling in a live worksheet. - **Formula (Enter cloud properties and constants)**: `=IF(B6<>"OK",B6,SQRT(E2*B2/(B3*E4)))` - **Formula (Calculate wavelength in metres and parsecs)**: `=IF(B6<>"OK",B6,B9/E5)` - **Formula (Calculate mass from half the wavelength)**: `=IF(B6<>"OK",B6,PI()/6*B4*B9^3/E6)` - **Formula (Distinguish particle density from molecular-hydrogen density)**: `=IF(B6<>"OK",B6,B4/(B3*E4)/1E6)` ### Jeffreys Beta(0.5, 0.5) Binomial Posterior Mean & Standard Deviation Formula - **URL**: https://sheets.arte-soft.com/en/learn/jeffreys-bayesian-binomial-posterior-mean-and-sd-formula/ - **Summary**: Estimate rare-event and zero-numerator binomial proportions without collapsing to 0% using Harold Jeffreys’ invariant Beta(1/2, 1/2) posterior mean (x + 0.5)/(n + 1) and exact posterior standard deviation. *Table — Why Jeffreys’ invariant Beta(1/2, 1/2) prior avoids both 0% Wald collapse and Laplace’s heavy +1/+2 pull!:* | Observed Binomial Trial (x, n) | Naive MLE x / n | Jeffreys Posterior Mean (x+0.5)/(n+1) | Jeffreys Posterior SD | | --- | --- | --- | --- | | x = 0 events in n = 18 trials | 0.0000 (0% collapse!) | 0.0263 (2.63% non-zero Bayes estimate) | 0.0358 | | x = 4 events in n = 18 trials | 0.2222 (22.22%) | 0.2368 (mild 1/2-pseudo-count shrinkage) | 0.0951 | | Invalid x = 22 > n = 18 | Impossible Count | "Invalid Binomial Counts" | 0 <= x <= n Guard | - **Formula (Jeffreys Beta(x + 0.5, n - x + 0.5) Posterior Mean = (x + 0.5) / (n + 1))**: `=IF(OR(B2 < 0, B3 <= 0, B2 > B3), "Invalid Binomial Counts", ROUND((B2 + 0.5) / (B3 + 1), 4))` - **Formula (Jeffreys Exact Beta Posterior Standard Deviation Formula)**: `=IF(OR(B2 < 0, B3 <= 0, B2 > B3), "Invalid Binomial Counts", ROUND(SQRT(((B2 + 0.5) * (B3 - B2 + 0.5)) / (((B3 + 1) ^ 2) * (B3 + 2))), 4))` ### Jensen Free Cash Flow Agency & Debt Discipline Formula - **URL**: https://sheets.arte-soft.com/en/learn/jensen-free-cash-flow-agency-overinvestment-and-debt-discipline/ - **Summary**: Model Michael Jensen’s (1986) Free Cash Flow overinvestment agency loss and quantify how mandatory debt service curbs negative-NPV empire building before triggering underinvestment. *Table — Balance Jensen (1986) empire-building discipline against Myers debt overhang!:* | Capital Structure Regime (CF=500, I_good=200, ROIC_g=18%, ROIC_p=4%, WACC=10%) | Debt Service D | Net Value Added ($M) | | --- | --- | --- | | Unlevered Cash Cow (Full Agency Waste) | D = 0 | +52.00 (Core +160 - Pet 108) | | Leveraged Recap (Partial Discipline) | D = 250 | +142.00 (Core +160 - Pet 18) | | Optimal FCF Sweep (D* = CF - I_good) | D = 300 | +160.00 (Zero Waste, Full Core) | | Over-Leveraged Squeeze (Crowds Core) | D = 350 | +120.00 (Core Cut to 150) | - **Formula (Jensen (1986) Net Firm Value Added Under Debt Service Formula)**: `=LET(cf_in, B2, ig_mx, B3, rg_rt, B4, wc_rt, B5, ph_dv, B6, rp_rt, B7, db_sv, B8, IF(OR(cf_in < 0, ig_mx < 0, wc_rt <= 0, rg_rt <= wc_rt, rp_rt >= wc_rt, ph_dv < 0, ph_dv > 1, db_sv < 0), "Invalid FCF Agency Input", LET(ig_fd, MIN(ig_mx, MAX(0, cf_in - db_sv)), fc_ex, MAX(0, cf_in - db_sv - ig_fd), ip_fd, ph_dv * fc_ex, ROUND(ig_fd * (rg_rt - wc_rt) / wc_rt + ip_fd * (rp_rt - wc_rt) / wc_rt, 2))))` - **Formula (Agency Pet-Project Destruction & Leverage Regime Formula)**: `=LET(cf_in, B2, ig_mx, B3, wc_rt, B5, ph_dv, B6, rp_rt, B7, db_sv, B8, IF(ISTEXT(E3), E3, LET(ig_fd, MIN(ig_mx, MAX(0, cf_in - db_sv)), fc_ex, MAX(0, cf_in - db_sv - ig_fd), ROUND(ph_dv * fc_ex * (rp_rt - wc_rt) / wc_rt, 2))))` ### Jensen-Meckling Outside-Equity Agency Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/jensen-meckling-outside-equity-agency-cost-and-perk-consumption/ - **Summary**: Calculate managerial perk extraction F* = (1 - alpha)/k_u, realized equity value, and exact residual agency deadweight loss (1 - alpha)^2 / (2*k_u) under diluted inside ownership. *Table — Prove Jensen & Meckling’s (1976) theorem: rational outside investors make the founder bear 100% of agency DWL!:* | Jensen-Meckling Metric (V_0=1,000, alpha=0.60, k_u=0.01) | Formula | Verified Output | | --- | --- | --- | | Equilibrium Perk Extraction (F*) | (1 - alpha) / k_u | 40.00 | | Realized Firm Market Value (V_firm) | V_0 - F* | 960.00 | | Manager Private Utility of Perks U(F*) | F* - 0.5 * k_u * (F*^2) | 32.00 | | Residual Agency Cost (Deadweight Loss) | (1 - alpha)^2 / (2 * k_u) | 8.00 (Founder Net = 992.00) | - **Formula (Diluted-Ownership Managerial Perk Extraction F* & Firm Value Formula)**: `=LET(v_0, B2, al_in, B3, ku_p, B4, IF(OR(v_0 <= 0, al_in <= 0, al_in > 1, ku_p <= 0), "Invalid Agency Input", LET(f_pk, (1 - al_in) / ku_p, IF(f_pk > v_0, "Perks Exceed Base Firm Value", ROUND(v_0 - f_pk, 4)))))` - **Formula (Exact Jensen-Meckling Residual Agency Deadweight Loss Formula)**: `=LET(v_0, B2, al_in, B3, ku_p, B4, IF(OR(v_0 <= 0, al_in <= 0, al_in > 1, ku_p <= 0), "Invalid Agency Input", LET(f_pk, (1 - al_in) / ku_p, IF(f_pk > v_0, "Perks Exceed Base Firm Value", ROUND(((1 - al_in)^2) / (2 * ku_p), 4)))))` ### Jensen’s Alpha (CAPM Abnormal Return) & Systematic Beta Return Attribution - **URL**: https://sheets.arte-soft.com/en/learn/jensens-alpha-capm-abnormal-return-and-systematic-beta-attribution/ - **Summary**: Decompose realized portfolio return into risk-free carry, systematic market-beta exposure, and manager selection skill (Jensen’s Alpha = R_p - [R_f + beta * (R_m - R_f)]). *Table — Why raw excess return over the index misstates high-beta manager skill:* | Attribution Layer | Formula | Example Value | Share of 14.8% Return | | --- | --- | --- | --- | | Risk-Free Carry (R_f) | B3 | 0.0420 (4.20%) | 28.38% | | Systematic Beta Return | B5 * (B4 - B3) | 0.0840 (8.40%) | 56.76% | | CAPM Required Benchmark | B3 + B5 * (B4 - B3) | 0.1260 (12.60%) | 85.14% | | Jensen’s Alpha (Skill) | B2 - (B3 + B5 * (B4 - B3)) | 0.0220 (+220 bps) | 14.86% | - **Formula (CAPM Required Return & Jensen’s Alpha Formula)**: `=ROUND(B2 - (B3 + B5 * (B4 - B3)), 4)` - **Formula (Sample Beta & Alpha from Periodic Return Columns)**: `=ROUND((B2 - (B3 + B5 * (B4 - B3))) * 10000, 1)` ### Turbofan TSFC, Propulsive Efficiency & Overall Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/jet-engine-tsfc-propulsive-efficiency-and-overall-brayton-efficiency/ - **Summary**: Calculate High-Bypass Turbofan Froude Propulsive Efficiency 2 / (1 + Vj / V0), Hourly Fuel Burn from Thrust-Specific Fuel Consumption (TSFC), Propulsive Thrust Power F*V0, and Overall Aircraft Thermodynamic Efficiency. *Table — See why high-bypass turbofans move massive air slowly to maximize Froude efficiency!:* | Turbofan Cruise Metric (V0=250 m/s, Vj=350 m/s, F=60 kN, TSFC=16 g/kNs) | Formula | Verified Output | | --- | --- | --- | | Froude Propulsive Efficiency | 2 / (1 + V_jet / V_cruise) | 0.8333 (0.5000 @ Vj=750 m/s) | | Hourly Fuel Mass Flow (kg/hr) | Thrust_kN * TSFC_g_kNs * 3.6 | 3,456.00 kg/hr (0.96 kg/s) | | Propulsive Thrust Power (MW) | (Thrust_kN * V_cruise_ms) / 1000 | 15.00 MW | | Overall Propulsion Efficiency | Thrust_Power_MW / (m_dot_f * LHV) | 0.3617 (36.17% Cruise Efficiency) | - **Formula (Turbofan Overall Thermodynamic Efficiency Formula)**: `=LET(v_cr, B2, v_jt, B3, f_kn, B4, ts_f, B5, q_hv, B6, IF(OR(v_cr <= 0, v_jt < v_cr, f_kn <= 0, ts_f <= 0, q_hv <= 0), "Invalid Turbofan Parameter", LET(md_f, (f_kn * ts_f) / 1000, p_th, (f_kn * v_cr) / 1000, ROUND(p_th / (md_f * q_hv), 4))))` - **Formula (Low-Bypass Turbojet Exhaust Comparison (Set Jet Exhaust Vj = 750 m/s))**: `=IF(OR(B2 <= 0, B3 < B2, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Turbofan Parameter", ROUND(2 / (1 + B3 / B2), 4))` ### Joback Group-Contribution Method: Boiling Point (T_b) & Critical Temp (T_c) - **URL**: https://sheets.arte-soft.com/en/learn/joback-group-contribution-normal-boiling-and-critical-temperature/ - **Summary**: Estimate pure-component normal boiling point T_b = 198.2 + SUMPRODUCT(n, ΔT_b) and Lydersen-Joback critical temperature T_c = T_b / (0.584 + 0.965*ΣΔT_c - (ΣΔT_c)^2) directly from functional group counts. *Table — Estimating T_b and T_c for novel pharma intermediates before a drop is synthesized!:* | Molecule Functional Group Vector | Σ(n_i * ΔT_b,i) | Joback Boiling T_b (K) | Joback Critical T_c (K) | | --- | --- | --- | --- | | Acetone: 2 (-CH3) + 0 (-CH2-) + 1 (>C=O) + 0 (-OH) | 123.91 K | 322.11 K | 500.56 K (Exp: 508.1 K) | | Ethanol: 1 (-CH3) + 1 (-CH2-) + 0 (>C=O) + 1 (-OH) | 139.34 K | 337.54 K | 499.41 K (Exp: 513.9 K) | | Empty Group Vector (SUM(n_i) = 0) | 0 | "Enter At Least One Group" | Input Guard | - **Formula (Joback Group-Contribution Normal Boiling Point T_b (K))**: `=IF(SUM(B2:B5) <= 0, "Enter At Least One Group", ROUND(198.2 + SUMPRODUCT(B2:B5, C2:C5), 2))` - **Formula (Joback-Reid Critical Temperature T_c (K))**: `=IF(SUM(B2:B5) <= 0, "Enter At Least One Group", ROUND((198.2 + SUMPRODUCT(B2:B5, C2:C5)) / (0.584 + 0.965 * SUMPRODUCT(B2:B5, D2:D5) - (SUMPRODUCT(B2:B5, D2:D5) ^ 2)), 2))` ### Johnson–Euler Column Curve: Critical Stress and Transition - **URL**: https://sheets.arte-soft.com/en/learn/johnson-parabolic-inelastic-intermediate-column-buckling-formula/ - **Summary**: Calculate a piecewise Johnson–Euler critical-stress estimate, use the unrounded transition slenderness and convert stress to load with consistent units. - **Formula (Calculate the unrounded transition and select the branch)**: `=IF(E2="OK",IF(B4"OK",E2,IF(OR(COUNT(B5)<>1,N(B5)<=0),"Invalid area",E5*B5/1000))` ### Johnson’s Rule Two-Machine Flow-Shop Makespan (Cmax) & Utilization - **URL**: https://sheets.arte-soft.com/en/learn/johnsons-rule-two-machine-flow-shop-makespan-and-utilization/ - **Summary**: Classify jobs into Johnson’s Rule Group 1 (M1 <= M2, sort ascending M1) vs. Group 2 (M1 > M2, sort descending M2) and compute exact 4-job flow-shop makespan Cmax and Machine 2 utilization. *Table — Minimize two-stage shop-floor makespan without idle bottlenecks!:* | Sequenced Job | Machine 1 Cut (min) | Machine 2 Weld (min) | Johnson Partition Rule | | --- | --- | --- | --- | | J-Alpha (Pos 1) | 3 min | 8 min | Group 1: M1 <= M2 (Early, Asc M1) | | J-Beta (Pos 2) | 5 min | 9 min | Group 1: M1 <= M2 (Early, Asc M1) | | J-Gamma (Pos 3) | 7 min | 6 min | Group 2: M1 > M2 (Late, Desc M2) | | J-Delta (Pos 4) | 6 min | 4 min | Group 2: M1 > M2 (Late, Desc M2) -> Cmax = 30 min | - **Formula (Exact 4-Job Two-Machine Flow-Shop Critical-Path Makespan Cmax (min))**: `=MAX(B2 + SUM(C2:C5), SUM(B2:B3) + SUM(C3:C5), SUM(B2:B4) + SUM(C4:C5), SUM(B2:B5) + C5)` - **Formula (Downstream Machine 2 Utilization (%) & Johnson Group Classification)**: `=ROUND(100 * SUM(C2:C5) / MAX(B2 + SUM(C2:C5), SUM(B2:B3) + SUM(C3:C5), SUM(B2:B4) + SUM(C4:C5), SUM(B2:B5) + C5), 2)` ### Join Two Tables with INDEX & MATCH (Relational SKU Enrichment & Team Review) - **URL**: https://sheets.arte-soft.com/en/learn/join-and-enrich-two-tables-index-match-collaboration/ - **Summary**: Perform SQL-style left joins between an order transaction log and a SKU master catalog—pulling Category and Unit Price regardless of column order while flagging unmapped SKUs. *Table — Relational left-join mechanics: why INDEX + MATCH survives master-table column insertions:* | SQL Join Concept | Spreadsheet Equivalent | Unmatched Key Behavior | | --- | --- | --- | | LEFT JOIN ON Orders.SKU = Catalog.SKU | MATCH($B2, $G$2:$G$5, 0) | #N/A caught by IFERROR | | SELECT Catalog.Category, Catalog.Unit_Price | INDEX($G$2:$I$5, row_idx, MATCH(D$1, $G$1:$I$1, 0)) | Header-driven attribute projection | | WHERE Catalog.SKU IS NULL | COUNTIF(D2:D5, "UNMAPPED_SKU") | Counts orphan order lines | - **Formula (Header-Driven Two-Table Join Formula)**: `=IFERROR(INDEX($G$2:$I$5, MATCH($B2, $G$2:$G$5, 0), MATCH(D$1, $G$1:$I$1, 0)), "UNMAPPED_SKU")` - **Formula (Master-Catalog Governance & Owner-Controlled Sharing in Arte Sheets)**: `=SUM(F2:F5)` ### Join Date and Text Without Raw Serial Numbers (TEXT "yyyy-mm-dd" Formula) - **URL**: https://sheets.arte-soft.com/en/learn/join-formatted-date-and-number-inside-text-sentence/ - **Summary**: Embed formatted ISO dates and rounded invoice amounts cleanly inside dynamic text sentences using TEXT(date_cell, "yyyy-mm-dd") so concatenation never prints raw serial numbers like "Due on 46157". *Table — Fix the classic "Invoice due on 46157" concatenation surprise!:* | Formula Pattern | Underlying B3 = DATE(2026,5,15) | Rendered Output String | Verdict | | --- | --- | --- | --- | | ="Due on " & B3 (Broken!) | Serial 46157 | "Due on 46157" | Exposes raw 1900 serial integer! | | ="Due on " & TEXT(B3, "yyyy-mm-dd") | Serial 46157 | "Due on 2026-05-15" | Clean ISO-8601 date everywhere! | | Full Invoice Notice | INV-804, 2026-05-15, 1250.5 | "Invoice INV-804 ($1250.5) due 2026-05-15" | Ready for mail-merge / export | - **Formula (Dynamic Invoice Payment Notice Joining ID, Amount & ISO Date)**: `=IF(OR(B2 = "", B3 <= 0, B4 < 0), "Missing Notice Fields", "Invoice " & B2 & " ($" & ROUND(B4, 2) & ") due " & TEXT(B3, "yyyy-mm-dd"))` - **Formula (Dynamic Report Period Subtitle ("Period: YYYY-MM-DD to YYYY-MM-DD"))**: `=IF(B3 <= 0, "Missing Date", "Period: " & TEXT(B3, "yyyy-mm-dd") & " to " & TEXT(EOMONTH(B3, 0), "yyyy-mm-dd"))` ### Joint Replenishment Shared Major/Minor Setup Formula - **URL**: https://sheets.arte-soft.com/en/learn/joint-replenishment-problem-shared-major-minor-setup-cycle-formula/ - **Summary**: Coordinate multi-SKU supplier shipments via the Joint Replenishment Problem (JRP) optimal cycle time T* = SQRT(2*(S_0 + SUM(s_i)) / SUM(D_i*H_i)) and quantify savings vs independent EOQ. *Table — Stop paying full truckload / customs major setup S_0 separately on every single SKU!:* | JRP Multi-Item Metric (S_0 = 100, SUM(s) = 80, SUM(D*H) = 4,000) | Formula | Verified Output | | --- | --- | --- | | Optimal Joint Order Cycle (T*) | SQRT(2 * (100 + 80) / 4,000) | 0.3000 years (3.33 orders/yr) | | Joint Replenishment Total Cost (TC_JRP*) | SQRT(2 * 180 * 4,000) | 1,200.00 / yr | | Uncoordinated Independent EOQ Sum | SUM(SQRT(2 * (S_0 + s_i) * D_i * H_i)) | 1,716.05 / yr | | Annual Consolidation Savings ($) | TC_Indep - TC_JRP* | 516.05 / yr (30.07% Saved!) | - **Formula (Optimal Common-Cycle Joint Replenishment Interval T* Formula)**: `=LET(s_mj, H2, s_mn, SUM(B2:B4), dh_sm, SUMPRODUCT(C2:C4, D2:D4), IF(OR(s_mj < 0, MIN(B2:B4) < 0, s_mj + s_mn <= 0, MIN(C2:C4) <= 0, MIN(D2:D4) <= 0), "Invalid JRP Input", ROUND(SQRT((2 * (s_mj + s_mn)) / dh_sm), 4)))` - **Formula (Joint Replenishment Annual Cost Savings vs Independent EOQ Formula)**: `=LET(s_mj, H2, s_mn, SUM(B2:B4), dh_sm, SUMPRODUCT(C2:C4, D2:D4), IF(OR(s_mj < 0, MIN(B2:B4) < 0, s_mj + s_mn <= 0, MIN(C2:C4) <= 0, MIN(D2:D4) <= 0), "Invalid JRP Input", ROUND(SUM(E2:E4) - SQRT(2 * (s_mj + s_mn) * dh_sm), 2)))` ### Jonckheere-Terpstra Ordered-Group Trend Statistic Formula - **URL**: https://sheets.arte-soft.com/en/learn/jonckheere-terpstra-ordered-group-trend-mann-whitney-sum-statistic/ - **Summary**: Test monotonic trend across independent ordered dose groups using the Jonckheere-Terpstra pairwise Mann-Whitney sum J = U_12 + U_13 + U_23 and exact null moments. *Table — Count ordered pairwise dominance U_ab across independent dose cohorts:* | Jonckheere-Terpstra Term | Exact Formula | Sample Output (n = 4, 4, 4) | | --- | --- | --- | | Pairwise Dominance U_12, U_13, U_23 | Pairs where lower-dose < higher-dose | 13 + 16 + 13 -> J = 42 | | Null Expectation mu_J | (N^2 - SUM(n_g^2)) / 4 | 24.0000 (Half of 48 pairs) | | Null Variance var_J | (N^2*(2*N + 3) - SUM(n_g^2*(2*n_g + 3))) / 72 | 46.6667 (140 / 3) | | Directional Z_JT | (J - mu_J) / SQRT(var_J) | +2.6349 (p = 0.0042 one-sided) | - **Formula (Exact Null Variance var_J Formula for Arbitrary Cohort Sizes)**: `=LET(cnt_1, COUNT(B2:B5), cnt_2, COUNT(C2:C5), cnt_3, COUNT(D2:D5), n_tot, cnt_1 + cnt_2 + cnt_3, IF(OR(cnt_1 < 1, cnt_2 < 1, cnt_3 < 1), "Empty Cohort", ROUND((n_tot^2 * (2 * n_tot + 3) - (cnt_1^2 * (2 * cnt_1 + 3) + cnt_2^2 * (2 * cnt_2 + 3) + cnt_3^2 * (2 * cnt_3 + 3))) / 72, 4)))` - **Formula (Standardized Jonckheere-Terpstra Z_JT Formula)**: `=LET(cnt_1, COUNT(B2:B5), cnt_2, COUNT(C2:C5), cnt_3, COUNT(D2:D5), n_tot, cnt_1 + cnt_2 + cnt_3, IF(OR(cnt_1 < 1, cnt_2 < 1, cnt_3 < 1), "Empty Cohort", LET(j_tot, SUM(E2:E5), mu_j, (n_tot^2 - (cnt_1^2 + cnt_2^2 + cnt_3^2)) / 4, var_j, (n_tot^2 * (2 * n_tot + 3) - (cnt_1^2 * (2 * cnt_1 + 3) + cnt_2^2 * (2 * cnt_2 + 3) + cnt_3^2 * (2 * cnt_3 + 3))) / 72, ROUND((j_tot - mu_j) / SQRT(var_j), 4))))` ### Jones Semi-Endogenous R&D Growth & Spillover Formula - **URL**: https://sheets.arte-soft.com/en/learn/jones-semi-endogenous-rd-growth-and-romer-knowledge-spillover/ - **Summary**: Calculate steady-state idea growth g_A* = (lambda * n) / (1 - phi), transitional R&D surge, and permanent TFP level gain (s_R1 / s_R0)^(lambda / (1 - phi)). *Table — Resolve the R&D scale-effect puzzle: why doubling scientists raises TFP LEVEL, not permanent g_A*!:* | Jones R&D Growth Metric (n=1.5%, lam=0.8, phi=0.4) | Formula | Verified Output | | --- | --- | --- | | Balanced-Growth TFP Rate (g_A*) | (lambda * n) / (1 - phi) | 0.0200 (2.00%/yr) | | Impact R&D Surge Growth Rate | g_A* * (s_R1 / s_R0)^lambda | 0.0348 (3.48%/yr Initially) | | Long-Run TFP Level Multiplier | (s_R1 / s_R0)^(lambda / (1 - phi)) | 2.5198x (+151.98% Level) | - **Formula (Jones Balanced-Growth Idea Growth Rate g_A* = (lambda * n) / (1 - phi) Formula)**: `=LET(n_gr, B2, lam_r, B3, phi_s, B4, IF(OR(n_gr < 0, lam_r <= 0, lam_r > 1, phi_s >= 1), "Require 0 < lambda <= 1 and phi < 1", ROUND((lam_r * n_gr) / (1 - phi_s), 4)))` - **Formula (Long-Run Steady-State TFP Level Multiplier from R&D Policy Shift Formula)**: `=LET(lam_r, B3, phi_s, B4, sr_0, B5, sr_1, B6, IF(OR(lam_r <= 0, lam_r > 1, phi_s >= 1, sr_0 <= 0, sr_0 >= 1, sr_1 <= 0, sr_1 >= 1), "Invalid R&D Share Input", ROUND(POWER(sr_1 / sr_0, lam_r / (1 - phi_s)), 4)))` ### Jordan-Shirley Drilling d-Exponent & dc Overpressure - **URL**: https://sheets.arte-soft.com/en/learn/jordan-shirley-drilling-d-exponent-and-dc-corrected-overpressure-detection-formula/ - **Summary**: Calculate Bit Penetration per Revolution (ft/rev), Jordan-Shirley Raw d-Exponent, Rehm-McClendon Mud-Weight Corrected dc-Exponent, and Normal Compaction Trend Ratio (%). *Table — Cheering a sudden drilling break from 48 to 135 ft/h in deep shale misses a 0.902 dc-exponent reversal—warning you just drilled into an under-compacted overpressured gas zone!:* | Jordan-Shirley / Rehm-McClendon KPI (120 RPM, 28 klbf on 8.5 in bit, MW_norm=8.65 ppg) | Formula | Verified Output | | --- | --- | --- | | Penetration per Revolution (ft/rev) | ROP_ft_hr / (60 * Rotary_RPM) | 0.00667 ft/rev (0.01875 drilling break!) | | Raw Jordan-Shirley d-Exponent | LOG10(R / (60 * N)) / LOG10((12 * W_klbf) / (1000 * D_in)) | 1.551 (1.231 raw drop) | | Corrected dc-Exponent | Raw_d_Exp * (Normal_Grad_ppg / Active_Mud_ppg) | 1.458 NORMAL (0.902 OVERPRESSURE!) | | Normal Trend Ratio (% of 1.45) | (Corrected_dc / 1.45) * 100 | 100.6% on-trend (62.2% FLOW-CHECK NOW!) | - **Formula (Jordan-Shirley (1966) d-Exponent & Rehm-McClendon (1971) dc Pore-Pressure Formula)**: `=LET(rp_f, B2, nr_p, B3, wb_k, B4, db_i, B5, gn_p, B6, mw_p, B7, pr_v, rp_f / (60 * nr_p), wn_d, (12 * wb_k) / (1000 * db_i), dc_x, (LOG10(pr_v) / LOG10(wn_d)) * (gn_p / mw_p), IF(OR(rp_f < 1, rp_f > 600, nr_p < 20, nr_p > 400, pr_v >= 0.5, wb_k < 2, wb_k > 95, db_i < 3.5, db_i > 26, wn_d >= 0.8, gn_p < 8, gn_p > 9.5, mw_p < 8, mw_p > 22), "Invalid d-Exp Input", ROUND((dc_x / 1.45) * 100, 1)))` - **Formula (Transition-Zone Drilling Break (`ROP = 135` ft/h at `11.8` ppg Mud) Kick-Warning Check)**: `=IF(ISTEXT(E5), E5, LET(dx_r, LOG10(B2 / (60 * B3)) / LOG10((12 * B4) / (1000 * B5)), ROUND(dx_r * (B6 / B7), 3)))` ### Josephson Junction AC Frequency (KJ) & Ambegaokar-Baratoff Critical Current (Ic) - **URL**: https://sheets.arte-soft.com/en/learn/josephson-junction-ac-frequency-and-critical-ic-rn-product/ - **Summary**: Calculate the AC Josephson oscillation frequency f_J = 0.4835979 * V_uV in GHz using the 2019 SI Josephson constant KJ = 2e/h, plus T=0 Ambegaokar-Baratoff critical current Ic = ((PI()/2) * Delta_meV) / Rn. *Table — Anchor quantum voltage standards and size transmon qubit Josephson junctions!:* | Josephson Tunnel Junction Parameter | Input Condition | Calculated Quantum Output | Device Application | | --- | --- | --- | --- | | AC Josephson Oscillation (V = 200 uV) | KJ = 0.4835979 GHz/uV | 96.720 GHz | NIST Quantum Voltage Array | | Nb Junction (Delta = 1.40 meV, Rn = 10 Ohm) | Ic = (PI()/2)*1400 / 10 | 219.91 uA | SQUID / RSFQ Logic Gate | | Al Qubit Junction (Delta = 0.18 meV, Rn = 9,000 Ohm) | Ic = (PI()/2)*180 / 9000 | 0.0314 uA (31.4 nA) | 5 GHz Transmon Qubit | - **Formula (AC Josephson Oscillation Frequency f_J = KJ * V_uV (GHz))**: `=ROUND(0.4835979 * ABS(B2), 3)` - **Formula (Ambegaokar-Baratoff Zero-Temperature Critical Current Ic (Microamperes, uA))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Junction Inputs", ROUND(((PI() / 2) * B3 * 1000) / B4, 2))` ### Joukowsky Water Hammer Pressure Surge & Piezometric Head Rise - **URL**: https://sheets.arte-soft.com/en/learn/joukowsky-water-hammer-pressure-surge-and-wave-celerity/ - **Summary**: Estimate the ideal initial pressure rise from a sudden velocity reduction, its equivalent fluid head and the pipe round-trip wave time. Compare an entered closure time without treating the result as a pipe-safety certification. - **Formula (Calculate pressure rise in MPa)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B7<0),"Invalid physical input",B2*B3*B4/1000000))` - **Formula (Calculate equivalent head rise)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B7<0),"Invalid physical input",B3*B4/B5))` - **Formula (Calculate round-trip wave time)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B7<0),"Invalid physical input",2*B6/B3))` - **Formula (Compare the entered closure time)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0,B7<0),"Invalid physical input",IF(B7<=2*B6/B3,"At or below round-trip time","Above round-trip time: transient analysis needed")))` ### Jovanović (1969) Monolayer & Multilayer Adsorption Isotherm Formula: Mechanical Contact Model - **URL**: https://sheets.arte-soft.com/en/learn/jovanovic-monolayer-mechanical-contact-adsorption-isotherm/ - **Summary**: Calculate equilibrium adsorption with mechanical bulk-molecule collision knock-off corrections using Dušan S. Jovanović’s (1969) monolayer isotherm q_e = q_max * (1 - EXP(-K_J * C_e)) and multilayer extension. *Table — How Jovanović’s (1969) collision-desorption probability corrects Langmuir’s instantaneous-evaporation assumption!:* | Isotherm Model (q_max = 95 mg/g, K_J = 0.06 L/mg, C_e = 30 mg/L) | Equation | Equilibrium Uptake q_e (mg/g) | | --- | --- | --- | | Jovanović Monolayer (K_L = 0) | q_max * (1 - EXP(-K_J * C_e)) | 79.2966 mg/g (83.47% Fractional Coverage) | | Same-K Langmuir Comparison | q_max * K_J * C_e / (1 + K_J * C_e) | 61.0714 mg/g (Slower Approach to Plateau) | | Jovanović Multilayer (K_L = 0.004 L/mg) | q_max * (1 - EXP(-K_J * C_e)) * EXP(K_L * C_e) | 89.4067 mg/g | - **Formula (Jovanović (1969) Monolayer Equilibrium Uptake q_e = q_max * (1 - EXP(-K_J * C_e)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Jovanovic Isotherm Parameters", ROUND(B2 * (1 - EXP(-B3 * B4)), 4))` - **Formula (Jovanović Multilayer Isotherm Uptake q_multi = q_max * (1 - EXP(-K_J * C_e)) * EXP(K_L * C_e))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 < 0, B5 >= B3), "Invalid Multilayer Parameters (Requires 0 <= KL < KJ)", ROUND(B2 * (1 - EXP(-B3 * B4)) * EXP(B5 * B4), 4))` ### Lipid Accumulation Product (LAP) Calculator: Kahn Sex-Specific Waist-Triglyceride Formula - **URL**: https://sheets.arte-soft.com/en/learn/kahn-lipid-accumulation-product-lap-waist-triglyceride-index/ - **Summary**: Quantify ectopic lipid overaccumulation and MASLD / hepatic steatosis risk using Henry S. Kahn’s (2005) sex-specific Lipid Accumulation Product: LAP = (WC_cm - 65) * TG_mmol_L in men and (WC_cm - 58) * TG_mmol_L in women. *Table — Capture simultaneous anatomical waist expansion and hypertriglyceridemic spillover!:* | Adult Subject (WC in cm, Fasting TG in mmol/L) | Excess Waist Above Minimum | Kahn LAP (cm·mmol/L) | Ectopic Lipid Interpretation | | --- | --- | --- | --- | | Lean Male (WC = 79 cm, TG = 0.90 mmol/L) | 14 cm above 65 cm | 12.60 | Low ectopic lipid burden | | Central-Gain Male (WC = 101 cm, TG = 2.20 mmol/L) | 36 cm above 65 cm | 79.20 | High ectopic / hepatic lipid spillover | | Central-Gain Female (WC = 90 cm, TG = 1.85 mmol/L) | 32 cm above 58 cm | 59.20 | Elevated MASLD & metabolic syndrome risk | - **Formula (Kahn (2005) Sex-Specific Lipid Accumulation Product (LAP, cm·mmol/L))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 <= IF(B2 = "M", 65, 58), B3 > 200, B4 <= 0, B4 > 35), "Requires Sex M/F, Waist > Sex Minimum (65 M / 58 F cm), and TG > 0 mmol/L", ROUND((B3 - IF(B2 = "M", 65, 58)) * B4, 2))` - **Formula (LAP Ectopic Lipid Overaccumulation Screening Tier (>= 40 cm·mmol/L))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 <= IF(B2 = "M", 65, 58), B3 > 200, B4 <= 0, B4 > 35), "Requires Sex M/F, Waist > Sex Minimum (65 M / 58 F cm), and TG > 0 mmol/L", IF((B3 - IF(B2 = "M", 65, 58)) * B4 >= 40, "LAP >= 40: Elevated Ectopic Lipid & MASLD Risk", "LAP < 40: Below High-Risk Lipid Spillover Cutoff"))` ### Prospect Theory Value & Prelec Weighting Formula - **URL**: https://sheets.arte-soft.com/en/learn/kahneman-tversky-prospect-theory-value-and-prelec-probability-weight/ - **Summary**: Evaluate reference-dependent gains and losses via Kahneman and Tversky’s (1992) asymmetric value function v(x) and Drazen Prelec’s (1998) inverse-S probability weight w(p) = EXP(-((-LN(p))^gamma)). *Table — Explain simultaneously why consumers buy BOTH lottery tickets AND overpriced extended warranties!:* | Behavioral Decision Metric (alpha=0.88, lambda=2.25, gamma=0.65) | Formula | Verified Output | | --- | --- | --- | | Subjective Value of -$100 Loss | -lambda * ((-x)^beta) | -129.47 utils | | Subjective Value of +$100 Gain | x^alpha = 100^0.88 | +57.54 utils (Loss/Gain = 2.25x) | | Prelec Decision Weight at p = 0.10 | EXP(-((-LN(0.10))^0.65)) | 0.1791 (vs 0.1000 Objective!) | | Prelec Invariant Fixed Point (p = 1/e) | EXP(-((-LN(1/e))^gamma)) | 0.3679 (Exact 1/e for All gamma) | - **Formula (Kahneman-Tversky (1992) Reference-Dependent Value v(x) Formula)**: `=LET(x_ch, B2, al_g, B3, bt_l, B4, lm_la, B5, IF(OR(al_g <= 0, al_g > 1, bt_l <= 0, bt_l > 1, lm_la < 1), "Invalid Prospect Input", ROUND(IF(x_ch >= 0, IF(x_ch = 0, 0, x_ch ^ al_g), -lm_la * ((-x_ch) ^ bt_l)), 2)))` - **Formula (Prelec (1998) Compound-Invariance Probability Weight w(p) Formula)**: `=LET(p_ob, B6, gm_cv, B7, IF(OR(p_ob < 0, p_ob > 1, gm_cv <= 0, gm_cv > 1), "Invalid Probability Input", IF(p_ob = 0, 0, IF(p_ob = 1, 1, ROUND(EXP(-((-LN(p_ob)) ^ gm_cv)), 4)))))` ### Kakwani Tax Progressivity & Reynolds-Smolensky Redistribution Index Formula - **URL**: https://sheets.arte-soft.com/en/learn/kakwani-tax-progressivity-and-reynolds-smolensky-redistribution/ - **Summary**: Decompose how much a tax system reduces income inequality using Nanak Kakwani’s Progressivity Index K = C_T - G_X and the Reynolds-Smolensky Net Redistribution identity RS = G_X - G_Y = (t / (1 - t)) * K - D_rerank. *Table — A highly progressive tax with a tiny average tax rate reduces Gini inequality LESS than a moderately progressive broad tax!:* | Fiscal Incidence Regime (Pre-Tax Gini G_X = 0.4200) | Kakwani Progressivity K = C_T - G_X | Post-Tax Gini Drop RS = (t/(1-t))*K - D | | --- | --- | --- | | Broad Progressive Income Tax (C_T=0.60, t=25%, D=0.002) | +0.1800 (Progressive) | +0.0580 Gini drop (G_Y = 0.3620) | | Narrow Luxury Surtax (C_T=0.82, t=2%, D=0) | +0.4000 (Steeply Progressive) | +0.0082 Gini drop (Tiny tax base!) | | Regressive Excise Tax (C_T=0.30, t=12%, D=0) | -0.1200 (Regressive!) | -0.0164 (Raises Gini to 0.4364!) | - **Formula (Kakwani Tax Progressivity Index K = C_T - G_X)**: `=IF(OR(B2 < 0, B2 > 1, B3 < -1, B3 > 1), "Invalid Gini or Concentration Index", ROUND(B3 - B2, 4))` - **Formula (Reynolds-Smolensky Net Gini Reduction RS = (t / (1 - t)) * (C_T - G_X) - D_rerank)**: `=IF(OR(B2 < 0, B2 > 1, B3 < -1, B3 > 1, B4 <= 0, B4 >= 1, B5 < 0), "Invalid Fiscal Incidence Parameters", ROUND((B4 / (1 - B4)) * (B3 - B2) - B5, 4))` ### Kalai-Smorodinsky vs Nash Bargaining Split Formula - **URL**: https://sheets.arte-soft.com/en/learn/kalai-smorodinsky-monotonic-bargaining-vs-asymmetric-nash-split/ - **Summary**: Allocate joint-venture surplus via Ehud Kalai and Meir Smorodinsky’s (1975) proportional ideal-point rule (u_1 - d_1)/(b_1 - d_1) = (u_2 - d_2)/(b_2 - d_2) when individual payoff caps bind. *Table — Why Nash Bargaining ignores unilateral payoff caps — and how Kalai-Smorodinsky restores monotonicity!:* | Bargaining Metric (M = 100, d = [0, 0], Caps = [60, 100]) | Formula | Verified Output | | --- | --- | --- | | Partner 1 Utopia Aspiration (b_1) | MIN(M - d_2, C_1) | 60.00 (vs b_2 = 100.00) | | Symmetric Nash Payoff (u_1_Nash) | MIN(b_1, d_1 + 0.5*(M - d_1 - d_2)) | 50.00 (Ignores Cap Asymmetry) | | Kalai-Smorodinsky Payoff (u_1_KS) | d_1 + (g_1 / (g_1 + g_2)) * Surplus | 37.50 (u_2_KS = 62.50) | | Equalized Utopia Achievement Ratio | (u_1_KS - d_1) / (b_1 - d_1) | 0.6250 (62.50% for Both!) | - **Formula (Kalai-Smorodinsky Proportional Ideal-Point Payoff u_1_KS Formula)**: `=LET(m_pi, B2, d_1, B3, d_2, B4, c_1, B5, c_2, B6, IF(OR(m_pi <= d_1 + d_2, c_1 <= d_1, c_2 <= d_2, c_1 + c_2 < m_pi), "Invalid Bargaining Set", LET(g_1, MIN(m_pi - d_2, c_1) - d_1, g_2, MIN(m_pi - d_1, c_2) - d_2, ROUND(d_1 + (g_1 / (g_1 + g_2)) * (m_pi - d_1 - d_2), 2))))` - **Formula (Constrained Nash Bargaining Benchmark Payoff u_1_Nash Formula)**: `=LET(m_pi, B2, d_1, B3, d_2, B4, c_1, B5, c_2, B6, IF(OR(m_pi <= d_1 + d_2, c_1 <= d_1, c_2 <= d_2, c_1 + c_2 < m_pi), "Invalid Bargaining Set", ROUND(MAX(m_pi - c_2, MIN(c_1, d_1 + 0.5 * (m_pi - d_1 - d_2))), 2)))` ### Kanban Bin / Card Count & On-Time In-Full (OTIF) supply chain formulas - **URL**: https://sheets.arte-soft.com/en/learn/kanban-card-count-and-fill-rate-otif-formulas/ - **Summary**: Calculate a simplified replenishment-container estimate and measure the share of five complete shipment records that are both on time and in full. *Table — Size shop-floor Kanban loops—and avoid the "On-Time * In-Full" OTIF fallacy!:* | Kanban / OTIF Metric | Inputs / Log | Formula | Exact Output | | --- | --- | --- | --- | | Daily Demand & Lead Time | B2 = 400/day, B3 = 2.5 days | Pipeline = 1,000 units | Base loop volume | | Safety Factor & Bin Size | B4 = 20%, B5 = 150/bin | ROUNDUP(1200 / 150, 0) | 8 Kanban bins | | On-Time (80%) & In-Full (80%) | 5 shipments (E2:F6) | 4/5 each individually | Naive 0.8*0.8 = 64% (Wrong!) | | True Joint OTIF Rate | Both "Yes" on same row | COUNTIFS / COUNTA | 3 / 5 = 0.60 (60.0%)! | - **Formula (Simplified container count)**: `=IF(OR(COUNT(B2:B5)<>4,B2<0,B3<0,B4<0,B5<=0),"Invalid inputs",ROUNDUP((B2 * B3 * (1 + B4)) / B5, 0))` - **Formula (Joint On-Time In-Full (OTIF) percentage formula)**: `=IF(OR(COUNTBLANK(D2:D6)>0,COUNTIF(E2:E6,"Yes")+COUNTIF(E2:E6,"No")<>5,COUNTIF(F2:F6,"Yes")+COUNTIF(F2:F6,"No")<>5),"Incomplete shipment log",ROUND(COUNTIFS(E2:E6, "Yes", F2:F6, "Yes") / COUNTA(D2:D6), 4))` ### Kandlikar Flow Boiling Correlation Formula: Convective Number Co & Two-Phase Heat Transfer - **URL**: https://sheets.arte-soft.com/en/learn/kandlikar-flow-boiling-convective-and-nucleate-number-formula/ - **Summary**: Calculate in-tube evaporator and cold-plate flow-boiling heat transfer using Satish G. Kandlikar’s 1990 Convection Number Co = ((1 - x)/x)^0.8 * (rho_g / rho_l)^0.5 and convective-dominant boiling branch h_TP = h_LO * (1.136 * Co^(-0.9) + 667.2 * Bo^0.7 * F_fl). *Table — Unifying nucleate boiling (Bo) and annular-film evaporation (Co) inside refrigerant and water tubes!:* | Vapor Quality x (rho_g/rho_l = 0.042, Bo = 5.5e-4) | Kandlikar Convection Number Co | Convective Flow-Boiling h_TP (W/m²·K) | | --- | --- | --- | | x = 0.25 (25% Vapor Mass Quality) | 0.4935 (< 0.65 Convective) | 8,166.8 W/(m²·K) | | x = 0.50 (Thin Annular Liquid Film) | 0.2049 | 11,916.2 W/(m²·K) (+45.9% enhancement) | | Dryout / Single-Phase x <= 0 or x >= 1 | Outside Two-Phase Window | "Requires Vapor Quality 0 < x < 1" | - **Formula (Kandlikar Dimensionless Convection Number Co = ((1 - x) / x)^0.8 * (rho_g / rho_l)^0.5)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B3 >= 1, B4 <= 0, B5 <= 0), "Requires Vapor Quality 0 < x < 1", ROUND((((1 - B2) / B2) ^ 0.8) * (B3 ^ 0.5), 4))` - **Formula (Kandlikar Convective-Boiling-Dominant Heat Transfer Coefficient h_TP,CBD (W/m²·K, Water F_fl = 1))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B3 >= 1, B4 <= 0, B5 <= 0), "Requires Vapor Quality 0 < x < 1", ROUND(B5 * (1.136 * (((((1 - B2) / B2) ^ 0.8) * (B3 ^ 0.5)) ^ (-0.9)) + 667.2 * (B4 ^ 0.7)), 1))` ### Kaplan-Knowles Kappa-3 Ratio & Third-Order Lower Partial Moment (LPM3) - **URL**: https://sheets.arte-soft.com/en/learn/kaplan-knowles-kappa-3-ratio-and-lower-partial-moment-lpm3/ - **Summary**: Penalize severe left-tail crashes more strictly than Sortino’s quadratic LPM2 by dividing excess return over MAR by the cube root of third-order Lower Partial Moment LPM_3. *Table — How Kappa_n unifies Omega (n=1), Sortino (n=2), and crash-sensitive Kappa-3 (n=3):* | Kappa Order n | Downside Denominator (LPM_n)^(1/n) | Ratio Value (Excess = 0.02) | | --- | --- | --- | | n = 2 (Sortino / Kappa-2) | SQRT(0.08^2 / 8) = 0.0283 | 0.7071 | | n = 3 (Kaplan-Knowles Kappa-3) | (0.08^3 / 8)^(1/3) = 0.0400 | 0.5000 (Stricter tail penalty) | | Zero Below-MAR Quarters | 0.0000 | "NO_DOWNSIDE_TAIL" | - **Formula (Per-Period Cubed Shortfall Helper Formula)**: `=MAX(0, $F$2 - B2) ^ 3` - **Formula (Kaplan-Knowles Kappa-3 Formula with Zero-Shortfall Guard)**: `=IF(AVERAGE(C2:C9) = 0, "NO_DOWNSIDE_TAIL", ROUND((AVERAGE(B2:B9) - F2) / (AVERAGE(C2:C9) ^ (1 / 3)), 4))` ### Kaplan-Meier Survival Estimator & Exponential Median Survival formulas - **URL**: https://sheets.arte-soft.com/en/learn/kaplan-meier-survival-probability-and-median-survival-hazard/ - **Summary**: Calculate validated Kaplan–Meier steps with a small censored follow-up table, and distinguish them from a separate constant-hazard exponential median. *Table — Separate the empirical survival steps from a parametric model:* | Survival Analysis Metric | Formula | S_prev = 0.85, n_i = 40, d_i = 4 (lambda = 0.15/yr) | Censored-Only Interval (d_i = 0) | | --- | --- | --- | --- | | Interval Survival Prob p_i | (B3 - B4) / B3 | 36 / 40 = 90.00% (0.9000) | 40 / 40 = 100.00% (1.0000) | | Updated Kaplan-Meier S(t_i) | B2 * ((B3 - B4) / B3) | 0.85 * 0.90 = 76.50% (0.7650) | 0.8500 (Curve stays flat!) | | Exponential Median Survival | LN(2) / B5 | 0.6931 / 0.15 = 4.62 years | 4.62 years | - **Formula (Kaplan-Meier Product-Limit Survival Update S(t_i) = S_prev * ((n_i - d_i) / n_i))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B2>1,B3<0,B4<0,B3<>INT(B3),B4<>INT(B4),B4>B3),"Invalid inputs",IF(B3=0,"Not estimable",B2*((B3-B4)/B3))))` - **Formula (Exponential Constant-Hazard Median Survival Time = LN(2) / lambda)**: `=IF(NOT(ISNUMBER(B5)),"Invalid inputs",IF(B5<=0,"Invalid inputs",ROUND(LN(2)/B5,2)))` - **Formula (Conditional survival for one step)**: `=IF(COUNT(B3:B4)<>2,"Invalid inputs",IF(OR(B3<0,B4<0,B3<>INT(B3),B4<>INT(B4),B4>B3),"Invalid inputs",IF(B3=0,"Not estimable",(B3-B4)/B3)))` - **Formula (A three-step example with censoring)**: `=IF(NOT(ISNUMBER(J3)),"Invalid prior step",IF(COUNT(G4:I4)<>3,"Invalid inputs",IF(OR(G4<0,H4<0,I4<0,G4<>INT(G4),H4<>INT(H4),I4<>INT(I4),H4+I4>G4),"Invalid inputs",IF(G4=0,"Not estimable",J3*(G4-H4)/G4))))` ### Kapustinskii & Born-Landé Ionic Crystal Lattice Energy Formula (kJ/mol) - **URL**: https://sheets.arte-soft.com/en/learn/kapustinskii-and-born-lande-ionic-crystal-lattice-energy/ - **Summary**: Estimate ionic crystal lattice enthalpy U_L = ((-120,200 * nu * |z+ * z-|) / (r+ + r-)) * (1 - 34.5 / (r+ + r-)) in kJ/mol from Shannon/thermochemical ionic radii (pm) without needing crystal structure! *Table — Explain why MgO melts at 2,852 °C while NaCl melts at 801 °C!:* | Ionic Crystal Formula Unit | Ions nu & Charges \|z+*z-\| | Radii Sum r+ + r- (pm) | Kapustinskii Lattice Energy U_L | | --- | --- | --- | --- | | Sodium Chloride (NaCl) | nu = 2, \|+1 * -1\| = 1 | 102 + 181 = 283 pm | -745.9 kJ/mol (Exp ~ -787) | | Magnesium Oxide (MgO) | nu = 2, \|+2 * -2\| = 4 | 72 + 140 = 212 pm | -3,797.7 kJ/mol (Refractory!) | | Calcium Fluoride (CaF2) | nu = 3, \|+2 * -1\| = 2 | 100 + 133 = 233 pm | -2,637.6 kJ/mol | - **Formula (Kapustinskii Ionic Lattice Energy U_L (kJ/mol, Exothermic Formation Convention))**: `=IF(OR(B2 < 2, B3 = 0, B4 = 0, (B5 + B6) <= 34.5), "Invalid Ionic Crystal Inputs", ROUND(((-120200 * B2 * ABS(B3 * B4)) / (B5 + B6)) * (1 - (34.5 / (B5 + B6))), 1))` - **Formula (Interionic Center-to-Center Equilibrium Distance r0 = r+ + r- (Angstroms))**: `=IF(OR(B5 <= 0, B6 <= 0), "Invalid Ionic Radii", ROUND((B5 + B6) / 100, 3))` ### Karnofsky Performance Status (KPS 0–100) to ECOG / Zubrod Crosswalk - **URL**: https://sheets.arte-soft.com/en/learn/karnofsky-performance-status-kps-to-ecog-grade-formula/ - **Summary**: Convert oncology Karnofsky Performance Status deciles (0–100 in steps of 10) into validated EORTC / Buccheri ECOG-Zubrod Performance Grades (0–5) and Phase II/III clinical-trial eligibility. *Table — Crosswalk 11-step Karnofsky deciles cleanly to 0–5 ECOG oncology grades!:* | Karnofsky Performance Status (KPS) | Equivalent ECOG / WHO Grade | Oncology Functional & Trial Status | | --- | --- | --- | | 90% to 100% | ECOG 0 | Fully Active — Eligible for Full-Dose Systemic Therapy | | 70% to 80% | ECOG 1 | Ambulatory / Light Work — Eligible for ECOG 0–1 Trials | | 50% to 60% | ECOG 2 | Self-Care Only (> 50% Up) — Borderline / Reduced-Intensity Regimens | | 30–40% / 10–20% / 0% | ECOG 3 / 4 / 5 | Bedbound > 50% (3), Completely Disabled (4), Deceased (5) | - **Formula (Validated KPS (0–100 Decile) to ECOG Grade (0–5) Crosswalk Formula)**: `=IF(OR(B2 < 0, B2 > 100, MOD(B2, 10) <> 0), "Invalid KPS Decile", IF(B2 >= 90, 0, IF(B2 >= 70, 1, IF(B2 >= 50, 2, IF(B2 >= 30, 3, IF(B2 >= 10, 4, 5))))))` - **Formula (Oncology Systemic Therapy & ECOG 0–1 Trial Eligibility Classification)**: `=IF(OR(B2 < 0, B2 > 100, MOD(B2, 10) <> 0), "Invalid KPS Decile", IF(B2 >= 70, "ECOG 0-1: Standard Trial & Systemic Therapy Eligible", IF(B2 >= 50, "ECOG 2: Borderline / Dose-Attenuated Regimens", "ECOG 3-5: Supportive / Palliative Focus")))` ### Katch-McArdle BMR (370 + 21.6 * LBM) & Boer (1984) Lean Body Mass Calculator - **URL**: https://sheets.arte-soft.com/en/learn/katch-mcardle-and-boer-lean-body-mass-resting-daily-energy-formula/ - **Summary**: Calculate sex-neutral Basal Metabolic Rate RDEE = 370 + 21.6 * LBM_kg via Frank I. Katch and William D. McArdle’s equation, paired with P. Boer’s (1984) isotope-validated Lean Body Mass formulas when DXA/skinfolds are unavailable. *Table — Why Katch-McArdle needs NO sex term once Fat-Free Lean Body Mass is isolated!:* | Subject Profile | Boer (1984) Lean Body Mass (kg) | Katch-McArdle BMR = 370 + 21.6 * LBM | Moderate Activity TDEE (x 1.55) | | --- | --- | --- | --- | | Adult Male (180 cm, 82 kg) | 62.23 kg LBM | 1,714 kcal/day | 2,657 kcal/day | | Adult Female (166 cm, 64 kg) | 46.35 kg LBM | 1,371 kcal/day | 2,125 kcal/day | - **Formula (Boer (1984) Sex-Specific Lean Body Mass LBM (kg))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 120, B3 > 230, B4 < 30, B4 > 300), "Invalid Sex (M/F), Height (cm), or Weight (kg)", ROUND(IF(B2 = "M", 0.407 * B4 + 0.267 * B3 - 19.2, 0.252 * B4 + 0.473 * B3 - 48.3), 2))` - **Formula (Katch-McArdle Basal Metabolic Rate (370 + 21.6 * Boer_LBM, kcal/day))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 120, B3 > 230, B4 < 30, B4 > 300), "Invalid Sex (M/F), Height (cm), or Weight (kg)", ROUND(370 + 21.6 * IF(B2 = "M", 0.407 * B4 + 0.267 * B3 - 19.2, 0.252 * B4 + 0.473 * B3 - 48.3), 0))` ### Katz Index of Independence in Activities of Daily Living (ADL 0–6) - **URL**: https://sheets.arte-soft.com/en/learn/katz-index-of-independence-in-activities-of-daily-living-adl/ - **Summary**: Score Sidney Katz’s foundational 6-domain geriatric Basic ADL scale (0–6 across Bathing, Dressing, Toileting, Transferring, Continence, and Feeding) for home-care, rehab, and nursing-facility placement. *Table — Track the natural hierarchical order of geriatric basic self-care loss and recovery!:* | Katz Basic ADL Total (0–6 Points) | Functional Independence Tier | Post-Acute / Geriatric Care Level | | --- | --- | --- | | Katz = 6 / 6 | Full Basic Self-Care Independence | Independent Living (Check Lawton IADLs Next) | | Katz = 3–5 / 6 (e.g., 4 / 6) | Moderate Basic ADL Impairment | Home Health Aide / OT Bathing-Dressing Assist | | Katz = 0–2 / 6 | Severe Functional Dependence | 24-Hour Personal Care / Skilled Nursing Placement | - **Formula (Total 6-Domain Katz Basic ADL Independence Score (0–6))**: `=IF(OR(COUNT(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 1), "Invalid Katz ADL Flag (0/1)", SUM(B2:B7))` - **Formula (Geriatric Functional Care-Level Classification)**: `=IF(OR(COUNT(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 1), "Invalid Katz ADL Flag (0/1)", IF(SUM(B2:B7) = 6, "Full Basic ADL Independence (Katz 6/6)", IF(SUM(B2:B7) >= 3, "Moderate Functional Impairment (Katz 3-5/6) — Home Personal Care / OT Support", "Severe Functional Dependence (Katz 0-2/6) — 24-Hour Caregiver / Skilled Nursing")))` ### Katz-Shapiro Network Compatibility Equilibrium Formula - **URL**: https://sheets.arte-soft.com/en/learn/katz-shapiro-network-compatibility-and-fulfilled-expectations-formula/ - **Summary**: Solve Michael Katz and Carl Shapiro’s (1985) Fulfilled-Expectations Cournot Equilibrium under open standard compatibility q* = (A - c)/(N + 1 - N*v) versus proprietary incompatibility q* = (A - c)/(N + 1 - v). *Table — Quantify exactly how much an open adapter standard expands industry demand and per-firm profit!:* | Katz-Shapiro Network Metric (N=2, A=120, c=20, v=0.50) | Formula | Verified Output | | --- | --- | --- | | Siloed Incompatible Firm Output | (A - c) / (N + 1 - v) = 100 / 2.5 | 40.00 units (Industry = 80) | | Compatible Open-Standard Firm Output | (A - c) / (N + 1 - N * v) = 100 / 2.0 | 50.00 units (Industry = 100) | | Incompatible Per-Firm Profit | q_incompat^2 | 1,600.00 | | Compatibility Profit Gain per Firm | q_compat^2 - q_incompat^2 | +900.00 (2,500 vs 1,600!) | - **Formula (Fulfilled-Expectations Open-Standard Per-Firm Profit Formula)**: `=LET(n_fm, B2, a_in, B3, c_un, B4, v_nw, B5, IF(OR(n_fm < 1, INT(n_fm) <> n_fm, c_un < 0, a_in <= c_un, v_nw < 0, n_fm * v_nw >= n_fm + 1), "Invalid Katz-Shapiro Input", ROUND(((a_in - c_un) / (n_fm + 1 - n_fm * v_nw)) ^ 2, 2)))` - **Formula (Per-Firm Compatibility Adapter Profit Gain Formula)**: `=LET(n_fm, B2, a_in, B3, c_un, B4, v_nw, B5, IF(OR(n_fm < 1, INT(n_fm) <> n_fm, c_un < 0, a_in <= c_un, v_nw < 0, n_fm * v_nw >= n_fm + 1), "Invalid Katz-Shapiro Input", LET(q_cm, (a_in - c_un) / (n_fm + 1 - n_fm * v_nw), q_in, (a_in - c_un) / (n_fm + 1 - v_nw), ROUND((q_cm ^ 2) - (q_in ^ 2), 2))))` ### Kawakita Powder Volume Reduction & Cohesiveness Formula - **URL**: https://sheets.arte-soft.com/en/learn/kawakita-powder-bed-volume-reduction-tap-compressibility-and-cohesiveness-formula/ - **Summary**: Calculate Kawakita Engineering Volume Strain C (%), Compressed Bed Volume V (mL), Reciprocal Yield/Cohesion Pressure 1/b (MPa), and Asymptotic Packing Realization (%). *Table — Where Heckel shines at high punch pressures (>50 MPa), Kawakita’s hyperbolic law captures low-pressure fluffy powder rearrangement and soft granule crushing!:* | Kawakita Powder Compaction KPI (V0=120 mL, a=0.38, P=25 MPa: Soft b=0.22 vs Hard b=0.06) | Formula | Verified Output | | --- | --- | --- | | Volume Reduction Degree C (%) | ((a * b * P) / (1 + b * P)) * 100 | 32.15% (22.80% @ stiff granule b=0.06) | | Compressed Powder Volume V (mL) | Loose_V0_mL * (1 - C_fraction) | 81.42 mL (92.64 mL @ b=0.06) | | Half-Reduction Pressure Pk = 1/b (MPa) | 1 / Kawakita_b_inv_MPa | 4.55 MPa (16.67 MPa hard ceramic agglomerate!) | | Realized Fraction of Max a (%) | ((b * P) / (1 + b * P)) * 100 | 84.62% (60.00% @ b=0.06) | - **Formula (Kawakita-Lüdde Hyperbolic Powder Volume Strain & Pk = 1/b Formula)**: `=LET(vz_m, B2, am_x, B3, bk_i, B4, pa_m, B5, IF(OR(vz_m <= 1, am_x <= 0.05, am_x >= 0.85, bk_i <= 0.005, pa_m <= 0), "Invalid Kawakita Input", ROUND(((bk_i * pa_m) / (1 + bk_i * pa_m)) * 100, 2)))` - **Formula (Hard Calcined Ceramic Granules (b = 0.06 MPa⁻¹ -> Pk = 16.67 MPa) Springback Check (Set b B4 = 0.06))**: `=IF(ISTEXT(E5), E5, LET(cf_r, (B3 * B4 * B5) / (1 + B4 * B5), ROUND(B2 * (1 - cf_r), 2)))` ### Kaya Identity Emissions & Decarbonization Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/kaya-identity-carbon-emissions-intensity-decomposition-formula/ - **Summary**: Compute total CO2 via Yoichi Kaya’s (1990) 4-factor identity Pop * (GDP/Pop) * (E/GDP) * (CO2/E) and solve the required carbon-intensity decline rate to meet net-zero pathways. *Table — Decompose corporate or national emissions into Population, Affluence, Energy Intensity, and Carbon Intensity!:* | Kaya Decomposition Metric | Formula | Verified Output | | --- | --- | --- | | Baseline Annual CO2 Emissions (GtCO2) | P * y * e * c | 36.00 GtCO2 | | Current Trajectory Emissions Growth (g_F) | g_P + g_Y + g_E + g_C | +0.0050 (+0.50% / yr Rising!) | | Required Grid Decarbonization Rate (g_C_req) | g_F_target - (g_P + g_Y + g_E) | -0.0550 (-5.50% / yr Needed) | | Annual Decarbonization Acceleration Gap | g_C_req - g_C | -0.0450 (-4.50% / yr Faster) | - **Formula (Kaya Four-Factor Baseline Emissions Product Formula)**: `=LET(p_op, B2, y_pc, B3, e_in, B4, c_in, B5, IF(OR(p_op <= 0, y_pc <= 0, e_in <= 0, c_in < 0), "Invalid Kaya Input", ROUND(p_op * y_pc * e_in * c_in, 4)))` - **Formula (Required Annual Carbon-Intensity Rate g_C_req Formula)**: `=IF(ISTEXT(E2), E2, ROUND(B10 - (B6 + B7 + B8), 4))` ### Keldysh Parameter (γ_K): Multiphoton vs. Tunneling Ionization Formula - **URL**: https://sheets.arte-soft.com/en/learn/keldysh-adiabaticity-parameter-multiphoton-vs-tunneling-ionization/ - **Summary**: Calculate Leonid Keldysh’s strong-field adiabaticity parameter γ_K = 5.1232 * E_ph * SQRT(m_eff * I_p) / F to classify ultrafast laser excitation into multiphoton (γ_K > 1) or optical tunneling (γ_K < 1) regimes. *Table — One dimensionless number unifies multiphoton absorption and Zener optical tunneling!:* | 800 nm Ti:Sapph Field F (Eph=1.55 eV, Ip=13.6 eV) | Keldysh Parameter γ_K | Strong-Field Ionization Regime | Physical Mechanism | | --- | --- | --- | --- | | F = 15.0 V/nm (~3 × 10^13 W/cm^2) | 1.952 | Multiphoton Ionization | Simultaneous 9-Photon Absorption | | F = 25.0 V/nm (Crossover Intensity) | 1.171 | Non-Adiabatic Crossover | Mixed Multiphoton + Barrier Suppression | | F = 45.0 V/nm (~2.7 × 10^14 W/cm^2) | 0.651 | Optical Tunneling | Quasi-Static Barrier Tunneling / HHG | - **Formula (Keldysh Strong-Field Adiabaticity Parameter γ_K)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Laser Parameters", ROUND(5.1232 * B2 * SQRT(B3 * B4) / B5, 3))` - **Formula (Ionization Regime Classifier (Tunneling vs. Crossover vs. Multiphoton))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Laser Parameters", IF(5.1232 * B2 * SQRT(B3 * B4) / B5 < 0.8, "Optical Tunneling", IF(5.1232 * B2 * SQRT(B3 * B4) / B5 <= 1.5, "Non-Adiabatic Crossover", "Multiphoton Ionization")))` ### Kelly Criterion position-sizing formula: Full Kelly, Half-Kelly & edge guard - **URL**: https://sheets.arte-soft.com/en/learn/kelly-criterion-optimal-bet-and-position-sizing/ - **Summary**: Explore the mathematical Kelly fraction for a repeated binary payoff model and compare a fractional allocation. *Table — A binary payoff model with known probabilities:* | Win Prob p (A2) | Reward/Risk Ratio b (B2) | Full Kelly f* (Floored at 0) | Half-Kelly (0.5 × f*) | | --- | --- | --- | --- | | 55% (0.55) | 2.0 : 1 | 32.50% (0.3250) | 16.25% (0.1625) | | 60% (0.60) | 1.0 : 1 (Even money) | 20.00% (2p - 1) | 10.00% | | 30% (0.30) | 2.0 : 1 (Negative EV!) | 0.00% (Raw = -5.0%, blocked!) | 0.00% | - **Formula (Zero-floored Full Kelly and Fractional Half-Kelly position-sizing formulas)**: `=IF(OR(COUNT(A2:B2)<>2,A2<0,A2>1,B2<=0),"Invalid inputs",ROUND(MAX(0,A2-(1-A2)/B2),4))` - **Formula (Fractional Kelly (e.g. C2 = 0.5 for Half-Kelly drawdown control))**: `=IF(OR(OR(COUNT(A2:B2)<>2,A2<0,A2>1,B2<=0),NOT(ISNUMBER(C2)),C2<0,C2>1),"Invalid inputs",ROUND(C2*MAX(0,A2-(1-A2)/B2),4))` ### Keltner Channel & Volatility Squeeze Formula: True Range, ATR Envelope & Squeeze Flag - **URL**: https://sheets.arte-soft.com/en/learn/keltner-channel-and-atr-volatility-breakout-squeeze-formula/ - **Summary**: Build Linda Raschke’s ATR-based Keltner Channel (EMA +- m * ATR), compute Wilder’s gap-aware True Range, and detect Bollinger-inside-Keltner Volatility Squeezes. *Table — Capture overnight price gaps with True Range and detect Bollinger-Keltner squeezes!:* | Channel Component | Formula / Inputs | Evaluated Output | | --- | --- | --- | | Wilder True Range (H=106, L=101, PrevC=99) | MAX(106-101, \|106-99\|, \|101-99\|) | 7.00 (captures +2 gap above 99) | | Upper Keltner Band (EMA=100, ATR=3.5, m=1.5) | 100 + 1.5 * 3.5 | 105.25 (Half-width = 5.25) | | Volatility Squeeze Check (BB Half-Width = 4.80) | 4.80 < 5.25 | Squeeze ON (Bollinger Inside Keltner) | - **Formula (Gap-Aware Wilder True Range (TR) & Upper Keltner Channel)**: `=IF(OR(B2 < B3, B6 <= 0, B7 <= 0), "Invalid Bar or ATR Inputs", ROUND(B5 + B7 * B6, 2))` - **Formula (Wilder True Range & Bollinger-Inside-Keltner Squeeze Regime)**: `=MAX(B2 - B3, ABS(B2 - B4), ABS(B3 - B4))` ### Kelvin Equation: Nanodroplet Vapor Pressure & Capillary Condensation RH - **URL**: https://sheets.arte-soft.com/en/learn/kelvin-equation-curved-meniscus-vapor-pressure-and-condensation/ - **Summary**: Calculate convex aerosol nanodroplet supersaturation ratio P / P_sat = EXP(+2 * γ * V_m / (r * R * T)) and concave silica-mesopore capillary condensation relative humidity RH_cond (%) = 100 * EXP(-2 * γ * V_m / (r * R * T)). *Table — Why 2 nm cloud droplets evaporate instantly at 100% RH—while 2 nm silica pores flood at 59% RH!:* | Meniscus Curvature Radius r (Water at 298.15 K) | Convex Droplet P / P_sat | Concave Pore Condensation RH (%) | Physical Consequence | | --- | --- | --- | --- | | Ultrafine r = 2.0 nm Meniscus | 1.6901 (169.0% RH) | 59.17% RH | Strong Silica Gel Desiccant Pickup! | | Mesoporous r = 10.0 nm Meniscus | 1.1107 (111.1% RH) | 90.04% RH | Moderate Curvature Shift | | Flat Bulk Surface (r -> ∞) | 1.0000 (100.0% RH) | 100.00% RH | Standard Saturation Equilibrium | - **Formula (Convex Nanodroplet Equilibrium Supersaturation Ratio P / P_sat)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Kelvin Inputs", ROUND(EXP((2 * B2 * (B3 * 0.000001)) / ((B4 * 1E-9) * 8.3144626 * B5)), 4))` - **Formula (Concave Hydrophilic Mesopore Capillary Condensation RH (%))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Kelvin Inputs", ROUND(100 * EXP(-(2 * B2 * (B3 * 0.000001)) / ((B4 * 1E-9) * 8.3144626 * B5)), 2))` ### Kendall's Tau (tau-a & tau-b) & Somers' D Rank Concordance formulas - **URL**: https://sheets.arte-soft.com/en/learn/kendalls-tau-rank-concordance-and-somers-d-formula/ - **Summary**: Measure ordinal rating and credit-scorecard rank agreement from Concordant (C), Discordant (D), and Tied pairs via Tau-a, tie-adjusted Tau-b, and Somers' D. *Table — Define mutually exclusive pair counts before calculating association:* | Ordinal Concordance Metric | Formula | Untied (N=10, C=36, D=9) | With Ties (C=30, D=6, Tx=5, Ty=4) | | --- | --- | --- | --- | | Total Pairs N*(N-1)/2 | (B2 * (B2 - 1)) / 2 | 45 pairs | 45 pairs | | Kendall's Tau-a | (B3 - B4) / TotalPairs | (36 - 9) / 45 = 0.6000 | (30 - 6) / 45 = 0.5333 | | Kendall's Tie-Adjusted Tau-b | (C-D) / SQRT((C+D+Tx)*(C+D+Ty)) | 0.6000 | 24 / SQRT(41 * 40) = 0.5926 | | Asymmetric Somers' D_{Y\|X} | (C - D) / (C + D + T_y) | 27 / 45 = 0.6000 | 24 / 40 = 0.6000 | - **Formula (Tie-adjusted Kendall's Tau-b = (C - D) / SQRT((C + D + Tx) * (C + D + Ty)))**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),MIN(B3:B7)<0,SUM(B3:B7)<>B2*(B2-1)/2),"Invalid inputs",IF((B3+B4+B5)*(B3+B4+B6)=0,"Undefined association",ROUND((B3 - B4) / SQRT((B3 + B4 + B5) * (B3 + B4 + B6)), 4))))` - **Formula (Somers D(Y|X): normalize by pairs not tied on X)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),MIN(B3:B7)<0,SUM(B3:B7)<>B2*(B2-1)/2),"Invalid inputs",IF(B3+B4+B6=0,"Undefined association",ROUND((B3 - B4) / (B3 + B4 + B6), 4))))` - **Formula (Tau-a including tied pairs in the total)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),MIN(B3:B7)<0,SUM(B3:B7)<>B2*(B2-1)/2),"Invalid inputs",ROUND((B3-B4)/(B2*(B2-1)/2),4)))` ### Kern Shell-Side Nusselt & Square-Pitch Equivalent Diameter Formula - **URL**: https://sheets.arte-soft.com/en/learn/kern-shell-and-tube-equivalent-diameter-and-shell-nusselt/ - **Summary**: Perform preliminary shell-and-tube exchanger sizing using Donald Q. Kern’s square-pitch hydraulic diameter De = 4*(Pt² - pi*do²/4)/(pi*do) and turbulent shell correlation Nu_s = 0.36 * Re_s^0.55 * Pr^(1/3) * (mu/mu_w)^0.14. *Table — Fast preliminary shell-and-tube sizing via Kern’s 1950 Process Heat Transfer correlation!:* | Shell-Side Operating Case (1" OD on 1.25" Sq Pitch) | Square-Pitch De (mm) | Kern Shell Nusselt Nu_s | Flow Regime Check | | --- | --- | --- | --- | | Re_s = 18,500, Pr = 5.2, mu_b/mu_w = 1.22 | 25.13 mm | 142.56 | Standard Kern Turbulent Window | | Higher Velocity Re_s = 32,000 | 25.13 mm | 192.71 | Re_s^0.55 Scaling (+35.2%) | | Pitch Pt = 0.024 m <= Tube OD 0.0254 m | Touching/Overlapping Tubes! | "Invalid Tube Pitch or Kern Inputs" | Pt > do Geometric Guard | - **Formula (Kern Shell-Side Nusselt Correlation Nu_s = 0.36 * Re_s^0.55 * Pr^(1/3) * (mu_b/mu_w)^0.14)**: `=IF(OR(B2 <= B3, B3 <= 0, B4 < 2000, B5 <= 0, B6 <= 0), "Invalid Tube Pitch or Kern Inputs", ROUND(0.36 * (B4 ^ 0.55) * (B5 ^ (1 / 3)) * (B6 ^ 0.14), 2))` - **Formula (90° Square-Pitch Shell Equivalent Diameter De (mm) = 4*(Pt² - pi*do²/4)/(pi*do) * 1000)**: `=IF(OR(B2 <= B3, B3 <= 0, B4 < 2000, B5 <= 0, B6 <= 0), "Invalid Tube Pitch or Kern Inputs", ROUND((4 * ((B2 ^ 2) - PI() * (B3 ^ 2) / 4)) / (PI() * B3) * 1000, 2))` ### Kimball Prudence & Precautionary Saving Wedge Formula - **URL**: https://sheets.arte-soft.com/en/learn/kimball-prudence-and-precautionary-buffer-stock-saving-wedge/ - **Summary**: Calculate Miles Kimball’s (1990) Coefficient of Relative Prudence P = gamma + 1, precautionary equivalent income haircut psi = 0.5*(gamma + 1)*sigma^2, and log-Euler consumption growth. *Table — Distinguish risk aversion (-c*u''/u') from Kimball prudence (-c*u'''/u'')!:* | Kimball (1990) Precautionary Metric (gamma=3, sigma=20%, r=4%, rho=2.5%) | Formula | Verified Output | | --- | --- | --- | | Coefficient of Relative Prudence (P) | gamma + 1 | 4.0000 | | Arrow-Pratt Proportional Risk Premium (pi_risk) | 0.5 * gamma * sigma^2 | 0.0600 (6.00%) | | Kimball Precautionary Equivalent (psi_prec) | 0.5 * (gamma + 1) * sigma^2 | 0.0800 (8.00% Buffer Wedge) | | Log-Euler Consumption Growth (E[Delta ln C]) | (r - rho) / gamma + 0.5 * gamma * sigma^2 | 0.0650 (+6.50% / period) | - **Formula (Kimball Precautionary Equivalent Premium psi_prec Formula)**: `=LET(gm_ra, B2, sg_sh, B3, IF(OR(gm_ra <= 0, sg_sh < 0), "Invalid Prudence Input", ROUND(0.5 * (gm_ra + 1) * (sg_sh ^ 2), 4)))` - **Formula (Second-Order Log-Euler Consumption Growth Formula)**: `=LET(gm_ra, B2, sg_sh, B3, r_rf, B4, rh_dc, B5, IF(OR(gm_ra <= 0, sg_sh < 0), "Invalid Prudence Input", ROUND((r_rf - rh_dc) / gm_ra + 0.5 * gm_ra * (sg_sh ^ 2), 4)))` ### Kingman's VUT Equation: G/G/1 queueing wait time from variability & utilization - **URL**: https://sheets.arte-soft.com/en/learn/kingmans-vut-queueing-wait-time-variability-formula/ - **Summary**: Estimate real-world factory and service queue wait times Wq = ((Ca^2 + Cs^2)/2) * (u / (1 - u)) * ts when arrivals and processing times are NOT exponential. *Table — Estimate mean waiting at one service station:* | VUT Lever | Cell | Workstation Input | Factor Contribution | | --- | --- | --- | --- | | Arrival & Service CV (Ca, Cs) | B2 = 1.0, B3 = 1.2 | Burst arrivals + variable setup | V = (1 + 1.44) / 2 = 1.22 | | Server Utilization (u) | B4 = 0.80 (80%) | u / (1 - u) = 0.80 / 0.20 | U = 4.00x nonlinear amplification! | | Mean Service Time (ts) | B5 = 5.0 min | 5 minutes active work | Wq = 1.22 * 4 * 5 = 24.40 min | | Total Cycle Time (Wq + ts) | 24.40 + 5.00 | 29.40 min total lead time | 83% of time spent waiting! | - **Formula (Kingman VUT expected wait time in queue Wq)**: `=IF(OR(COUNT(B2:B5)<>4,B2<0,B3<0,B4<0,B5<=0),"Invalid inputs",IF(B4>=1,"Outside stable-load domain",ROUND(((B2 ^ 2 + B3 ^ 2) / 2) * (B4 / (1 - B4)) * B5, 2)))` - **Formula (Total flow / lead time in system W = Wq + ts)**: `=IF(OR(COUNT(B2:B5)<>4,B2<0,B3<0,B4<0,B5<=0),"Invalid inputs",IF(B4>=1,"Outside stable-load domain",ROUND(((B2 ^ 2 + B3 ^ 2) / 2) * (B4 / (1 - B4)) * B5 + B5, 2)))` ### Current Divider Rule & Thevenin Maximum Power Transfer Theorem formulas - **URL**: https://sheets.arte-soft.com/en/learn/kirchhoff-current-divider-and-thevenin-maximum-power-transfer/ - **Summary**: Split parallel branch currents using opposite resistance I_1 = I_total * (R_2 / (R_1 + R_2)) and verify Thevenin load power P_L = V_th^2 * R_L / (R_th + R_L)^2 peaking at R_L = R_th. *Table — Two separate resistive DC examples:* | Circuit Theorem Metric | Formula | Circuit Values (I=6A, R1=10, R2=20; Vth=24V, Rth=8) | Key Insight | | --- | --- | --- | --- | | Branch 1 Current I_1 | B2 * (B4 / (B3 + B4)) | 6 * (20 / 30) = 4.00 A | Smaller R1 carries 2x current! | | Matched Load Power (RL=8) | (V_th^2 * R_L) / (R_th + R_L)^2 | 4,608 / 256 = 18.00 W (Peak!) | Equals V_th^2 / (4 * R_th) | | High-Efficiency Load (RL=24) | Same formula at R_L = 24 ohms | 13,824 / 1,024 = 13.50 W | 75% efficient, but lower watts! | - **Formula (Two-Branch Parallel Current Divider I_1 = I_total * (R_2 / (R_1 + R_2)))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B3<0,B4<0,B3+B4<=0),"Invalid inputs",ROUND(B2 * (B4 / (B3 + B4)), 2)))` - **Formula (Thevenin Power Delivered to Load P_L (Watts))**: `=IF(COUNT(B5:B7)<>3,"Invalid inputs",IF(OR(B6<=0,B7<0),"Invalid inputs",ROUND(((B5 ^ 2) * B7) / ((B6 + B7) ^ 2), 2)))` - **Formula (Current in branch 2)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B3<0,B4<0,B3+B4<=0),"Invalid inputs",ROUND(B2*(B3/(B3+B4)),2)))` - **Formula (Maximum power for the fixed Thevenin source)**: `=IF(COUNT(B5:B6)<>2,"Invalid inputs",IF(B6<=0,"Invalid inputs",ROUND(B5^2/(4*B6),2)))` ### Kirchhoff-Love Circular Plate Flexural Rigidity and Diaphragm Deflection - **URL**: https://sheets.arte-soft.com/en/learn/kirchhoff-love-thin-circular-plate-flexural-rigidity-and-center-deflection/ - **Summary**: Calculate thin-plate flexural rigidity D = E*h^3 / (12*(1 - nu^2)) and compare clamped vs simply supported circular diaphragm center deflection under uniform pressure. *Table — Spot the (1 - nu^2) biaxial stiffening and 4x edge-support jump:* | Plate Metric (h = 4 mm, R = 100 mm) | Kirchhoff-Love Formula | Sample Output | | --- | --- | --- | | Flexural Rigidity D (N*m) | (E_GPa * 10^9) * h^3 / (12 * (1 - nu^2)) | 410.2564 N*m | | Clamped Center Sag w_clamp | 1000 * (q_kPa * 1000) * R^4 / (64 * D) | 0.1904 mm | | Simply Supported Sag w_simp | w_clamp * (5 + nu) / (1 + nu) | 0.7762 mm | | Edge-Release Multiplier | (5 + nu) / (1 + nu) | 4.0769x | - **Formula (Plate Flexural Rigidity D (N*m) Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 0.5, B5 <= 0), "Invalid Plate Input", IF(B3 / (2 * B5) > 0.1, "Thick Plate Regime", ROUND((B2 * 10^9) * (B3^3) / (12 * (1 - B4^2)), 4)))` - **Formula (Clamped Circular Diaphragm Deflection (mm) & Thickness Cube-Law Check)**: `=LET(e_pa, B2 * 10^9, h_m, B3, nu_v, B4, r_m, B5, q_pa, B6 * 1000, IF(OR(e_pa <= 0, h_m <= 0, nu_v < 0, nu_v >= 0.5, r_m <= 0), "Invalid Plate Input", LET(d_rig, e_pa * (h_m^3) / (12 * (1 - nu_v^2)), ROUND(1000 * q_pa * (r_m^4) / (64 * d_rig), 4))))` ### Kirk Spread Option Approximation for Nonzero-Strike Crack and Spark Spreads - **URL**: https://sheets.arte-soft.com/en/learn/kirk-spread-option-approximation-energy-crack-and-spark-spread/ - **Summary**: Price two-asset commodity spread calls MAX(F1 - F2 - K, 0) in Excel and Arte Sheets using Kirk’s discounted-strike denominator weight and composite spread volatility. *Table — Spot why Margrabe volatility fails when the spread strike K is nonzero:* | Component | Kirk (1995) Expression | Sample Output | | --- | --- | --- | | Adjusted Second Leg F2_adj | F2 + K * EXP(-r * T) | 84.8020 | | Second-Leg Weight w2 | F2 / F2_adj | 0.8844 | | Kirk Composite Volatility | SQRT(sig1^2 - 2*rho*sig1*sig2*w2 + (sig2*w2)^2) | 0.1810 | | Kirk Spread Call Value | EXP(-r*T) * (F1 * N(d1) - F2_adj * N(d2)) | 8.8137 | - **Formula (Composite Kirk Volatility Formula)**: `=LET(f2_val, B3, k_str, B4, r_rf, B5, t_yr, B6, s_1, B7, s_2, B8, rho_c, B9, f2_adj, f2_val + k_str * EXP(-r_rf * t_yr), w_2, f2_val / f2_adj, var_k, s_1^2 - 2 * rho_c * s_1 * s_2 * w_2 + (s_2 * w_2)^2, IF(OR(t_yr <= 0, var_k <= 0), "Invalid Spread Vol", ROUND(SQRT(var_k), 4)))` - **Formula (Kirk Spread Call Price Formula & Collaborative Review Check)**: `=LET(f1_val, B2, f2_val, B3, k_str, B4, r_rf, B5, t_yr, B6, s_1, B7, s_2, B8, rho_c, B9, f2_adj, f2_val + k_str * EXP(-r_rf * t_yr), w_2, f2_val / f2_adj, var_k, s_1^2 - 2 * rho_c * s_1 * s_2 * w_2 + (s_2 * w_2)^2, IF(OR(t_yr <= 0, var_k <= 0), "Invalid Spread Vol", LET(sig_k, SQRT(var_k), sig_t, sig_k * SQRT(t_yr), d_1, (LN(f1_val / f2_adj) + 0.5 * var_k * t_yr) / sig_t, d_2, d_1 - sig_t, t_1, 1 / (1 + 0.2316419 * ABS(d_1)), p_1, 0.3989422804014327 * EXP(-0.5 * d_1^2) * t_1 * (0.31938153 + t_1 * (-0.356563782 + t_1 * (1.781477937 + t_1 * (-1.821255978 + 1.330274429 * t_1)))), nd_1, IF(d_1 >= 0, 1 - p_1, p_1), t_2, 1 / (1 + 0.2316419 * ABS(d_2)), p_2, 0.3989422804014327 * EXP(-0.5 * d_2^2) * t_2 * (0.31938153 + t_2 * (-0.356563782 + t_2 * (1.781477937 + t_2 * (-1.821255978 + 1.330274429 * t_2)))), nd_2, IF(d_2 >= 0, 1 - p_2, p_2), ROUND(EXP(-r_rf * t_yr) * (f1_val * nd_1 - f2_adj * nd_2), 4))))` ### Kirkbride Equation: Optimal Distillation Feed-Tray Location (NR / NS) - **URL**: https://sheets.arte-soft.com/en/learn/kirkbride-distillation-feed-tray-location-ratio-formula/ - **Summary**: Locate the optimal feed stage in multicomponent Fenske-Underwood-Gilliland distillation design via C. G. Kirkbride’s rectifying-to-stripping stage ratio N_R / N_S = ((B / D) * (x_HK_F / x_LK_F) * (x_LK_B / x_HK_D)^2)^0.206. *Table — Complete the Fenske-Underwood-Gilliland shortcut sequence with Kirkbride feed-stage placement!:* | Column Split Scenario (N_total = 28 Stages) | Kirkbride Ratio N_R / N_S | Rectifying Stages N_R | Stripping Stages N_S | | --- | --- | --- | --- | | Heavy-Rich Feed + Tighter Bottoms Spec | 1.0064 | 14.0 Stages | 14.0 Stages | | Symmetric Equimolar Split (50/50, Equal Specs) | 1.0000 | 14.0 Stages | 14.0 Stages | | Zero Flow or Impurity (<= 0 Input) | Singularity Guard | "Invalid Column Specs" | Requires Positive Flows & Specs | - **Formula (Kirkbride Rectifying-to-Stripping Stage Ratio (N_R / N_S))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Column Specs", ROUND(((B2 / B3) * (B4 / B5) * ((B6 / B7) ^ 2)) ^ 0.206, 4))` - **Formula (Number of Rectifying Stages Above Feed Nozzle N_R)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Column Specs", ROUND(B8 * ((((B2 / B3) * (B4 / B5) * ((B6 / B7) ^ 2)) ^ 0.206) / (1 + (((B2 / B3) * (B4 / B5) * ((B6 / B7) ^ 2)) ^ 0.206))), 1))` ### Kirpich Watershed Time of Concentration (tc) & NRCS Basin Lag Time - **URL**: https://sheets.arte-soft.com/en/learn/kirpich-watershed-time-of-concentration-and-lag-time/ - **Summary**: Calculate stormwater watershed Time of Concentration t_c = 0.01947 * L^0.77 * S^(-0.385) (minutes, SI flow length L in meters and slope S in m/m) and NRCS Unit Hydrograph Lag Time t_lag = 0.60 * t_c. *Table — Select the right design storm duration for Rational Method and hydrograph routing!:* | Catchment Geometry (Flow Path L = 1,200 m) | Channel Slope S (m/m) | Kirpich Time t_c (Minutes) | NRCS Lag Time t_lag = 0.6 * t_c | | --- | --- | --- | --- | | Moderate Agricultural Swale | 0.025 (2.5% grade) | 18.93 min | 11.36 min | | Steep Foothill Ravine | 0.080 (8.0% grade) | 12.10 min (Faster peak!) | 7.26 min | | Concrete-Lined Channel (x0.4) | 0.025 (2.5% grade) | 7.57 min | 4.54 min | - **Formula (SI Kirpich Watershed Time of Concentration t_c (Minutes))**: `=IF(OR(B2 <= 0, B3 <= 0), "Length and Slope Must Be > 0", ROUND(0.01947 * (B2 ^ 0.77) * (B3 ^ -0.385), 2))` - **Formula (NRCS Unit Hydrograph Basin Lag Time t_lag = 0.60 * t_c (Minutes))**: `=ROUND(0.6 * (0.01947 * (B2 ^ 0.77) * (B3 ^ -0.385)), 2)` ### Kish Design Effect (DEFF), Cluster ICC & Effective Sample Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/kish-design-effect-deff-cluster-intracluster-rho-and-effective-sample-size/ - **Summary**: Deflate nominal survey and cluster-randomized sample size N using Leslie Kish’s (1965) cluster DEFF_c = 1 + (m - 1)*rho and unequal-weighting DEFF_w = 1 + CV(w)^2. *Table — Why 1,000 clustered, weighted respondents can carry the statistical precision of only 400:* | Survey Design Diagnostic | Kish Formula | Sample (N=1,000, m=26, rho=0.04, CVw=0.50) | | --- | --- | --- | | Cluster Design Effect DEFF_c | 1 + (m - 1) * rho | 2.0000 | | Weighting Design Effect DEFF_w | 1 + CV_w ^ 2 | 1.2500 | | Combined DEFF & Root DEFT | DEFF_c * DEFF_w \| SQRT(DEFF) | 2.5000 \| 1.5811x SE multiplier | | Effective Sample Size N_eff | N_nominal / DEFF_total | 400.00 independent equivalents | - **Formula (Combined Cluster & Weighting Design Effect (DEFF) Formula)**: `=ROUND((1 + MAX(0, B3 - 1) * B4) * (1 + (B5 ^ 2)), 4)` - **Formula (Effective Sample Size N_eff & Standard-Error Multiplier DEFT)**: `=ROUND(B2 / ((1 + MAX(0, B3 - 1) * B4) * (1 + (B5 ^ 2))), 2)` ### Kish Unequal-Weight Effective Sample Size (n_eff) Formula - **URL**: https://sheets.arte-soft.com/en/learn/kish-unequal-survey-weight-effective-sample-size-and-loss/ - **Summary**: Calculate Kish’s unequal-weighting effective sample size n_eff = (SUM w)^2 / SUM(w^2), weighting design effect DEFF_w = 1 + CV_w^2, and efficiency n_eff / N in Excel and Arte Sheets. *Table — Why raking or propensity weights shrink precision from nominal N to Kish n_eff:* | Kish Weighting Diagnostic | Spreadsheet Formula | Sample Output | | --- | --- | --- | | Effective Sample Size (n_eff) | (SUM(w))^2 / SUMPRODUCT(w, w) | 3.2727 (vs Nominal N = 6) | | Weighting Design Effect (DEFF_w) | N / n_eff = 1 + VAR_P(w) / AVERAGE(w)^2 | 1.8333 | | Weighting Efficiency (Eff_w) | n_eff / N | 0.5455 (54.55% Retained) | - **Formula (Kish Unequal-Weight Effective Sample Size n_eff = (SUM w)^2 / SUM(w^2) Formula)**: `=LET(w_col, B2:B7, sum_w, SUM(w_col), IF(OR(MIN(w_col) < 0, sum_w <= 0), "Invalid Survey Weights", ROUND((sum_w^2) / SUMPRODUCT(w_col, w_col), 4)))` - **Formula (Unequal-Weighting Design Effect DEFF_w = (N * SUM(w^2)) / (SUM w)^2 Formula)**: `=LET(w_col, B2:B7, n_nom, ROWS(w_col), sum_w, SUM(w_col), IF(OR(MIN(w_col) < 0, sum_w <= 0), "Invalid Survey Weights", ROUND((n_nom * SUMPRODUCT(w_col, w_col)) / (sum_w^2), 4)))` ### Compton Scattered Photon Energy, Compton Edge & Electron Recoil - **URL**: https://sheets.arte-soft.com/en/learn/klein-nishina-compton-scattered-photon-energy-and-recoil/ - **Summary**: Calculate scattered gamma-ray photon energy E' = E_0 / (1 + (E_0 / 511) * (1 - COS(RADIANS(theta)))), recoil kinetic energy T_e = E_0 - E', and the 180-degree Compton Edge in keV. *Table — Interpret gamma-ray scintillation spectra and radiation shielding backscatter!:* | Scattering Angle theta (Cs-137 E_0 = 661.7 keV) | 1 - COS(theta) | Scattered Photon E' (keV) | Electron Recoil T_e (keV) | | --- | --- | --- | --- | | Forward Grazing (0 deg) | 0.000 | 661.70 keV (Unchanged) | 0.00 keV | | Right-Angle Scatter (90 deg) | 1.000 | 288.33 keV | 373.37 keV | | Head-On Backscatter (180 deg) | 2.000 | 184.33 keV (Backscatter Peak) | 477.37 keV (Compton Edge!) | - **Formula (Scattered Gamma Photon Energy E' (keV) at Angle theta (Degrees))**: `=IF(B2 <= 0, "Incident Energy Must Be > 0", ROUND(B2 / (1 + (B2 / 511) * (1 - COS(RADIANS(B3)))), 2))` - **Formula (Recoil Electron Kinetic Energy & 180-Degree Compton Edge (keV))**: `=ROUND(B2 - (B2 / (1 + (B2 / 511) * (1 - COS(RADIANS(B3))))), 2)` ### Kleinrock Square-Root Channel Capacity Delay Formula - **URL**: https://sheets.arte-soft.com/en/learn/kleinrock-square-root-channel-capacity-allocation-delay-formula/ - **Summary**: Calculate Leonard Kleinrock’s optimal M/M/1 packet-network link capacities C_i* = lambda_i/mu + (C_tot - F_sum)*(SQRT(lambda_i)/(SQRT(lambda_1)+SQRT(lambda_2))) and minimum average network delay. *Table — Allocate surplus bandwidth by the square root of traffic—never proportionally!:* | Packet Network Metric (900 & 100 pkt/s, mu=100 pkt/Mb, C_tot=20 Mbps) | Formula | Verified Output | | --- | --- | --- | | Optimal Link 1 Capacity C_1* (Mbps) | F_1 + (C_tot - F_sum)*SQRT(l1)/(SQRT(l1)+SQRT(l2)) | 16.50 Mbps (75% of Surplus) | | Optimal Link 2 Capacity C_2* (Mbps) | F_2 + (C_tot - F_sum)*SQRT(l2)/(SQRT(l1)+SQRT(l2)) | 3.50 Mbps (25% of Surplus) | | Kleinrock Minimum Delay T_min (ms) | 1000*(SQRT(l1)+SQRT(l2))^2 / ((l1+l2)*mu*(C_tot-F_sum)) | 1.6000 ms | | Naive Equal-Excess Delay T_eq (ms) | Delay at C_1 = F_1 + Ex/2, C_2 = F_2 + Ex/2 | 2.0000 ms (+25% Slower) | - **Formula (Kleinrock Square-Root Link Capacity & Minimum Delay Formula)**: `=LET(lm_1, B2, lm_2, B3, mu_p, B4, c_tt, B5, IF(OR(lm_1 <= 0, lm_2 <= 0, mu_p <= 0, c_tt <= 0), "Invalid Network Input", LET(f_sm, (lm_1 + lm_2) / mu_p, IF(c_tt <= f_sm, "Unstable Queue (C_tot <= Load)", ROUND(1000 * (SQRT(lm_1) + SQRT(lm_2)) ^ 2 / ((lm_1 + lm_2) * mu_p * (c_tt - f_sm)), 4)))))` - **Formula (Equal-Excess Benchmark Delay Formula)**: `=LET(lm_1, B2, lm_2, B3, mu_p, B4, c_tt, B5, ex_c, c_tt - (lm_1 + lm_2) / mu_p, IF(ISTEXT(E4), E4, ROUND(1000 * (2 / (mu_p * ex_c)), 4)))` ### Klemperer Switching-Cost Bargain-Then-Ripoff Formula - **URL**: https://sheets.arte-soft.com/en/learn/klemperer-switching-cost-bargain-then-ripoff-two-period-pricing/ - **Summary**: Calculate Paul Klemperer’s (1987, 1995) below-cost Period-1 customer acquisition price P_1* = c_1 + t - delta*s, Period-2 lock-in harvest price P_2* = c_2 + s, and lifecycle customer profit. *Table — Why inkjet printers, espresso machines, and cloud migrations sell below cost in Period 1!:* | Switching-Cost Pricing Metric (c_1=100, t=25, c_2=10, s=40, delta=0.90) | Formula | Verified Output | | --- | --- | --- | | Period-1 Bargain Acquisition Price (P_1*) | c_1 + t - delta * s | 89.00 (-$11 Below Cost!) | | Period-1 Upfront Margin (P_1* - c_1) | t - delta * s | -11.00 (CAC Loss Leader) | | Period-2 Locked-In Harvest Price (P_2*) | c_2 + s | 50.00 (+$40 Lock-In Margin) | | Discounted Lifecycle Profit per Buyer | (P_1* - c_1) + delta*(P_2* - c_2) | 25.00 (Rent Competed Away!) | - **Formula (Klemperer Period-1 Bargain Acquisition Price P_1* Formula)**: `=LET(c_1, B2, t_df, B3, s_sw, B5, dl_f, B6, IF(OR(c_1 < 0, t_df <= 0, s_sw < 0, dl_f < 0, dl_f > 1), "Invalid Switching-Cost Input", ROUND(c_1 + t_df - dl_f * s_sw, 2)))` - **Formula (Discounted Two-Period Lifecycle Profit per Customer Formula)**: `=LET(c_1, B2, t_df, B3, c_2, B4, s_sw, B5, dl_f, B6, IF(OR(c_1 < 0, t_df <= 0, c_2 < 0, s_sw < 0, dl_f < 0, dl_f > 1), "Invalid Switching-Cost Input", LET(p_1, c_1 + t_df - dl_f * s_sw, p_2, c_2 + s_sw, ROUND((p_1 - c_1) + dl_f * (p_2 - c_2), 2))))` ### Kleven-Saez Kink Bunching Mass and Behavioral Elasticity Formula - **URL**: https://sheets.arte-soft.com/en/learn/kleven-saez-kink-excess-bunching-mass-and-elasticity-formula/ - **Summary**: Calculate normalized excess bunching mass b = B / h_0, marginal buncher shift Delta_z = b * w_bin, and exact log-retention elasticity e = (Delta_z / z_star) / LN((1 - m_1) / (1 - m_2)). *Table — Convert excess bunchers at a convex schedule kink into structural behavioral elasticity:* | Bunching Quantity | Spreadsheet Formula | Sample Result | | --- | --- | --- | | Normalized Excess Mass (b) | B_excess / h_0 | 3.0000 bins | | Marginal Buncher Response (Delta_z) | (B_excess / h_0) * w_bin | 1,500.00 (3.00% of z_star) | | Exact Log-Retention Elasticity (e_log) | (Delta_z / z_star) / LN((1 - m_1)/(1 - m_2)) | 0.1344 | | Small-Kink Linear Approx (e_lin) | (Delta_z / z_star) / ((m_2 - m_1)/(1 - m_1)) | 0.1500 (+11.6% Upward Bias) | - **Formula (Exact Log-Retention Kleven-Saez Kink Elasticity Formula)**: `=LET(z_st, B2, w_bn, B3, b_ex, B4, h_cf, B5, m_lo, B6, m_hi, B7, IF(OR(z_st <= 0, w_bn <= 0, b_ex < 0, h_cf <= 0, m_lo < 0, m_hi <= m_lo, m_hi >= 1), "Invalid Kink Parameters", LET(dz_sh, (b_ex / h_cf) * w_bn, d_ln, LN((1 - m_lo) / (1 - m_hi)), ROUND((dz_sh / z_st) / d_ln, 4))))` - **Formula (Marginal Buncher Counterfactual Earnings Shift Delta_z = (B_excess / h_0) * w_bin Formula)**: `=LET(w_bn, B3, b_ex, B4, h_cf, B5, IF(OR(w_bn <= 0, b_ex < 0, h_cf <= 0), "Invalid Kink Parameters", ROUND((b_ex / h_cf) * w_bn, 2)))` ### Klinkenberg Gas-Slippage Core Permeability Formula - **URL**: https://sheets.arte-soft.com/en/learn/klinkenberg-gas-slippage-core-permeability-and-knudsen-correction/ - **Summary**: Calculate True Liquid-Equivalent Klinkenberg Permeability k_inf (mD), Low-Pressure Lab Overestimation (%), In-Situ High-Pressure Reservoir Gas Permeability (mD), and Slippage Multiplier. *Table — Correct low-pressure core-plug gas permeability for Klinkenberg wall slippage—or overstate tight gas by 80%!:* | Klinkenberg Core Analysis KPI (k_g = 1.44 mD @ 2.0 atm, b = 1.60 atm, P_res = 160 atm) | Formula | Verified Output | | --- | --- | --- | | True Klinkenberg Perm k_inf (mD) | Lab_kg_mD / (1 + b_atm / Lab_Pmean_atm) | 0.8000 mD | | Lab Slippage Overestimation (%) | ((Lab_kg - k_inf) / k_inf) * 100 | 80.00% (20.00% @ 8 atm Back-Press) | | In-Situ Reservoir Gas Perm (mD) | k_inf * (1 + b_atm / Reservoir_P_atm) | 0.8080 mD | | Lab Slippage Factor (1 + b/Pm) | 1 + b_atm / Lab_Pmean_atm | 1.80x (1.20x @ 8 atm) | - **Formula (Klinkenberg Infinite-Pressure Core Permeability Formula)**: `=LET(kg_l, B2, b_sl, B3, pm_l, B4, pr_r, B5, IF(OR(kg_l <= 0, b_sl < 0, pm_l <= 0, pr_r < pm_l), "Invalid Core Perm Input", ROUND(kg_l / (1 + b_sl / pm_l), 4)))` - **Formula (Back-Pressured Core-Holder Verification Check (0.96 mD @ 8.0 atm Mean Pressure))**: `=IF(ISTEXT(E2), E2, ROUND(E2 * (1 + B3 / B5), 4))` ### Kloss Induction Motor Torque-Slip & Breakdown Formula - **URL**: https://sheets.arte-soft.com/en/learn/kloss-three-phase-induction-motor-breakdown-slip-pullout-torque-and-starting-ratio/ - **Summary**: Calculate Synchronous Rotating-Field Speed Ns (RPM), Rotor Slip s (%), Kloss Electromagnetic Shaft Torque T(s) (N·m), and Direct-On-Line (s = 1) Locked-Rotor Starting Torque (N·m). *Table — Push a squirrel-cage induction motor past its 14% breakdown slip knee and rising slip REDUCES torque—snapping the shaft straight to locked-rotor stall!:* | Kloss Induction Motor KPI (60 Hz, 4-Pole -> Ns=1,800 RPM, sm=0.14, Tmax=310 N·m) | Formula | Verified Output | | --- | --- | --- | | Synchronous Field Speed Ns (RPM) | (120 * Grid_Freq_Hz) / Stator_Poles_P | 1,800 RPM | | Operating Rotor Slip s (%) | ((Ns_RPM - Shaft_N_RPM) / Ns_RPM) * 100 | 2.50% rated (17.00% > 14% UNSTABLE!) | | Kloss Shaft Torque T(s) (N·m) | (2 * Tmax_Nm) / ((s / sm) + (sm / s)) | 107.3 N·m (304.2 N·m collapsing past knee!) | | Locked-Rotor Torque @ s = 1 (N·m) | (2 * Tmax_Nm) / ((1 / sm) + sm) | 85.1 N·m (classical constant-R2 floor) | - **Formula (Max Kloss (1916) Dimensionless Symmetrical Slip-Ratio Torque Formula)**: `=LET(fg_h, B2, pc_n, B3, nr_p, B4, sm_b, B5, tm_n, B6, ns_r, (120 * fg_h) / pc_n, IF(OR(fg_h < 10, fg_h > 400, pc_n < 2, pc_n > 24, MOD(pc_n, 2) <> 0, nr_p < 0, nr_p >= ns_r, sm_b < 0.03, sm_b > 0.8, tm_n <= 1), "Invalid Kloss Input", ROUND((2 * tm_n) / ((1 / sm_b) + sm_b), 1)))` - **Formula (Mechanical Jam / Voltage Sag Past Breakdown Knee (`N = 1,494` RPM -> `s = 17% > 14%`) Stall Check)**: `=IF(ISTEXT(E5), E5, LET(ns_r, (120 * B2) / B3, sl_f, (ns_r - B4) / ns_r, ROUND((2 * B6) / ((sl_f / B5) + (B5 / sl_f)), 1)))` ### Knudsen Molecular-Flow Tube Conductance & Aperture Formula - **URL**: https://sheets.arte-soft.com/en/learn/knudsen-molecular-flow-cylindrical-vacuum-tube-conductance-and-knudsen-number/ - **Summary**: Calculate Gas Mean-Free-Path Knudsen Number Kn, Long-Tube Knudsen Conductance (L/s, scaling with D^3!), Entrance Orifice Conductance (L/s), and Short-Tube Series Conductance (L/s). *Table — In molecular vacuum flow (Kn > 1), halving pipe diameter slashes conductance EIGHT-FOLD (D^3)—and short tubes MUST include entrance orifice impedance!:* | Knudsen Molecular Pipe KPI (D = 10 cm, L = 50 cm, P = 0.01 Pa @ 20°C Air) | Formula | Verified Output | | --- | --- | --- | | Knudsen Number Kn (lambda / D) | (0.66 / Pressure_Pa) / Diameter_cm | 6.60 (13.20 @ D = 5.0 cm) | | Long-Tube Knudsen C_long (L/s) | (12.1 * (Diameter_cm^3)) / Length_cm | 242.00 L/s (30.25 @ D = 5.0 cm!) | | Entrance Orifice C_ap (L/s) | 11.6 * (PI() * (Diameter_cm^2) / 4) | 911.06 L/s (227.77 @ D = 5.0 cm) | | Dushman Short-Tube C_tot (L/s) | 1 / ((1 / C_ap) + (1 / C_long)) | 191.21 L/s (26.70 @ D = 5.0 cm!) | - **Formula (Dushman Short-Tube Molecular-Flow Conductance Formula)**: `=LET(dm_c, B2, ln_c, B3, pr_p, B4, IF(OR(dm_c <= 0, ln_c <= 0, pr_p <= 0), "Invalid Tube Input", LET(kn_n, (0.66 / pr_p) / dm_c, IF(kn_n < 0.5, "VISCOUS CONTINUUM REGIME", LET(cl_g, (12.1 * (dm_c ^ 3)) / ln_c, ca_p, 11.6 * (PI() * (dm_c ^ 2) / 4), ROUND(1 / ((1 / ca_p) + (1 / cl_g)), 2))))))` - **Formula (Cubic D^3 Diameter Bottleneck Check (Halve Pipe Diameter from 10.0 cm to 5.0 cm))**: `=IF(ISTEXT(E5), E5, ROUND((12.1 * (B2 ^ 3)) / B3, 2))` ### Gas Mean Free Path & Knudsen Number (Kn) Vacuum Flow Regimes - **URL**: https://sheets.arte-soft.com/en/learn/knudsen-number-mean-free-path-and-vacuum-flow-regime/ - **Summary**: Estimate an ideal hard-sphere gas mean free path, calculate Kn=lambda/L, and compare it with explicitly defined rarefaction ranges using absolute pressure and consistent length units. - **Formula (Unrounded mean free path in millimetres, D2)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric gas inputs",IF(MIN(B2:B4)<=0,"Require T, diameter and absolute pressure >0",13806.49*B2/(SQRT(2)*PI()*B3^2*B4)))` - **Formula (Unrounded dimensionless Knudsen number, D3)**: `=IF(NOT(ISNUMBER(D2)),D2,IF(COUNT(B5)<>1,"Enter numeric characteristic length",IF(B5<=0,"Characteristic length must be positive",D2/B5)))` - **Formula (Range label in D4)**: `=IF(NOT(ISNUMBER(D3)),D3,IFS(D3<0.01,"Continuum range",D3<0.1,"Slip range",D3<10,"Transition range",TRUE,"Free-molecular range"))` ### Kohlrausch's Square-Root Law of Molar Conductivity & Weak-Acid Dissociation (alpha) - **URL**: https://sheets.arte-soft.com/en/learn/kohlrausch-molar-conductivity-strong-electrolyte-law/ - **Summary**: Calculate strong-electrolyte molar conductivity Lambda_m = Lambda_m^0 - K * SQRT(c) and weak-electrolyte degree of dissociation alpha = Lambda_m / Lambda_m^0 in electrochemistry. *Table — Model ionic drag in strong electrolytes vs partial ionization in weak acids!:* | Electrolyte Calculation | Inputs (25 °C) | Formula | Result | | --- | --- | --- | --- | | KCl at c = 0.01 M (Strong) | L0 = 149.86, K = 95.0 | L0 - K * SQRT(0.01) | 140.36 S*cm^2/mol | | KCl at c = 0.04 M (Strong) | L0 = 149.86, K = 95.0 | L0 - K * SQRT(0.04) | 130.86 S*cm^2/mol | | Acetic Acid 0.01 M (Weak alpha) | Lm = 16.3, L0 = 390.7 | Lm / L0 | alpha = 0.0417 (4.17%) | - **Formula (Strong Electrolyte Molar Conductivity Lambda_m = Lambda_m^0 - K * SQRT(c))**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0), "Invalid Conductivity Inputs", ROUND(B2 - (B3 * SQRT(B4)), 2))` - **Formula (Weak Electrolyte Degree of Dissociation alpha = Lambda_m / Lambda_m^0)**: `=IF(OR(B5 < 0, B6 <= 0, B5 > B6), "Invalid Conductivity Inputs", ROUND(B5 / B6, 4))` ### Kolbach Index, Lintner Diastatic & Mash Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/kolbach-index-malt-modification-and-brewhouse-mash-efficiency-formula/ - **Summary**: Read a Malt Certificate of Analysis (COA) by calculating Kolbach Index % SNR = 100*(Soluble_N / Total_N), converting European Windisch-Kolbach (°WK) to Degrees Lintner (°L) = (WK + 16)/3.5, and auditing Brewhouse Mash Extract Efficiency. *Table — Decode malt lot Certificates of Analysis (COAs) before choosing your mash schedule!:* | Malt COA & Mash Metric (SolN=0.684%, TotN=1.80%, 264 °WK, 500kg @ 80%, 340kg Kettle) | Formula | Verified Output | | --- | --- | --- | | Kolbach Index (% SNR) | 100 * (Soluble_N_% / Total_N_%) | 38.00% (48.00% @ SolN=0.864%) | | Diastatic Power (°Lintner) | (Windisch_Kolbach + 16) / 3.5 | 80.00 °Lintner | | Brewhouse Extract Efficiency | Kettle_Extract_kg / (Grain_kg * COA_Yield) | 0.8500 (85.00% Brewhouse Yield) | | Endosperm Modification Gate | <35 Under \| 35–45 Ideal \| >45 Over | Well-Modified: Single Infusion Ready | - **Formula (Kolbach Index & Brewhouse Extract Efficiency Formula)**: `=LET(sn_p, B2, tn_p, B3, wk_d, B4, gr_k, B5, yd_c, B6, kt_k, B7, IF(OR(sn_p <= 0, tn_p <= sn_p, wk_d <= 0, gr_k <= 0, yd_c <= 0, yd_c > 1, kt_k <= 0, kt_k > gr_k * yd_c), "Invalid Malt COA Input", ROUND(kt_k / (gr_k * yd_c), 4)))` - **Formula (Over-Modified Malt Foam-Risk Check (Set Soluble_N = 0.864%))**: `=IF(ISTEXT(E4), E4, IF(E2 < 35, "Under-Modified: Protein Rest Required", IF(E2 <= 45, "Well-Modified: Single Infusion Ready", "Over-Modified: Low Foam Stability Risk")))` ### Kolm-Pollak Absolute Inequality Index K(kappa) & Translation-Invariant EDE Income - **URL**: https://sheets.arte-soft.com/en/learn/kolm-pollak-absolute-inequality-index-ede-translation-invariance/ - **Summary**: Measure absolute dollar income dispersion using Serge-Christophe Kolm’s (1976) Leftist Inequality Index K(kappa) = (1 / kappa) * LN((1 / N) * SUM(EXP(kappa * (mu - y_i)))) and Equally Distributed Equivalent income mu - K(kappa). *Table — Why Gini shrinks when every household gets +$10,000 — while Kolm’s Absolute Index stays constant!:* | Income Vector ($k) | Mean Income mu ($k) | Kolm Index K(kappa = 0.05) | Social EDE Income mu - K ($k) | | --- | --- | --- | --- | | Baseline [20, 40, 60, 80] | $50.0000k | $11.0779k | $38.9221k | | Uniform +$100k Transfer [120, 140, 160, 180] | $150.0000k | $11.0779k (Exact Translation Invariance!) | $138.9221k | | Complete Equality [50, 50, 50, 50] | $50.0000k | $0.0000k | $50.0000k | - **Formula (Kolm-Pollak Absolute Inequality Index K(kappa) (in Currency Units))**: `=IF(D2 <= 0, "Requires Positive Aversion Parameter kappa > 0", ROUND((1 / D2) * LN((EXP(D2 * (AVERAGE(B2:B5) - B2)) + EXP(D2 * (AVERAGE(B2:B5) - B3)) + EXP(D2 * (AVERAGE(B2:B5) - B4)) + EXP(D2 * (AVERAGE(B2:B5) - B5))) / 4), 4))` - **Formula (Kolm Equally Distributed Equivalent Income y_EDE = mu - K(kappa))**: `=IF(D2 <= 0, "Requires Positive Aversion Parameter kappa > 0", ROUND(AVERAGE(B2:B5) - (1 / D2) * LN((EXP(D2 * (AVERAGE(B2:B5) - B2)) + EXP(D2 * (AVERAGE(B2:B5) - B3)) + EXP(D2 * (AVERAGE(B2:B5) - B4)) + EXP(D2 * (AVERAGE(B2:B5) - B5))) / 4), 4))` ### Koomey Compute TOPS/W & Landauer Limit Formula - **URL**: https://sheets.arte-soft.com/en/learn/koomey-energy-efficiency-compute-ops-per-joule-and-landauer-limit-formula/ - **Summary**: Calculate AI Accelerator Compute Efficiency (TOPS/W), Energy per Operation (pJ/op), Rolf Landauer’s Minimum Irreversible Bit-Erasure Energy k_B * T * LN(2) in zeptojoules, and Headroom Factor Above Landauer. *Table — Benchmark AI accelerator TOPS/W and picojoules/MAC against Landauer’s k_B*T*ln(2) floor!:* | Physics of Compute Metric (500W, 2,000 TOPS, T = 300 K, 1,000 Bits/Op) | Formula | Verified Output | | --- | --- | --- | | Compute Efficiency (TOPS / W) | Throughput_TOPS / Power_W | 4.00 TOPS/W (20.00 @ 10k TOPS) | | Energy per Operation (pJ / op) | Power_W / Throughput_TOPS | 0.2500 pJ/op (2.5e8 zJ/op) | | Landauer Minimum per Bit (zJ) | 0.01380649 * T_Kelvin * LN(2) | 2.8710 zJ (0.7369 zJ @ 77 K LN2) | | Multiple Above Landauer Bound | (E_op_pJ * 10^9) / (Bits_Op * E_Land_zJ) | 87,078x Irreversible Headroom | - **Formula (Landauer Irreversible Bit-Erasure Energy Formula (in Zeptojoules))**: `=LET(pw_w, B2, tp_s, B3, tm_k, B4, bt_o, B5, IF(OR(pw_w <= 0, tp_s <= 0, tm_k <= 0, bt_o < 1), "Invalid Thermodynamic Input", ROUND(0.01380649 * tm_k * LN(2), 4)))` - **Formula (Cryogenic 77 K Liquid-Nitrogen & Next-Gen 10,000 TOPS Check)**: `=IF(ISTEXT(E4), E4, ROUND((E3 * 1000000000) / (B5 * E4), 0))` ### Koros-Nowak & Madon-Boudart Test Formula: Catalytic Turnover Frequency & Transport Disguise - **URL**: https://sheets.arte-soft.com/en/learn/koros-nowak-and-madon-boudart-catalytic-transport-disguise-test/ - **Summary**: Perform the definitive experimental test for heat- and mass-transfer artifacts in heterogeneous catalysis (Koros & Nowak, 1967; Madon & Boudart, 1982) by computing log-log slope d(LN R_vol) / d(LN Site_Density) across diluted active-metal loadings (Slope = 1.0 intrinsic vs. 0.5 pore-diffused vs. 0.0 film-limited!). *Table — Why Madon & Boudart’s log-log slope test works even when you don’t know pore diffusivity D_eff or thermal conductivity!:* | Madon-Boudart Log-Log Slope d(LN R_v) / d(LN L_v) | Turnover Frequency TOF Behavior | Catalytic Regime Diagnosis | | --- | --- | --- | | Slope ≈ 1.00 (0.95 to 1.05) | Constant TOF Across Loadings! | True Intrinsic Kinetics Confirmed (Artifact-Free) | | Slope ≈ 0.50 (0.45 to 0.65) | TOF Drops as L_v^-0.5 | Strong Internal Pore-Diffusion Disguise (Crush Pellets!) | | Slope ≈ 0.00 (< 0.15) | TOF Drops as L_v^-1.0 | External Film Mass-Transfer Control (Raise Flow/RPM!) | | Slope > 1.10 | TOF Rises with Loading! | Exothermic Intraparticle Hot-Spot Falsification! | - **Formula (Madon-Boudart Log-Log Diagnostic Slope = SLOPE(LN(R_v), LN(Site_Density)))**: `=IF(OR(MIN(A2:A4) <= 0, MIN(B2:B4) <= 0, VARP(A2:A4) = 0), "Requires Distinct Positive Site Loadings & Rates", ROUND(SLOPE(D2:D4, C2:C4), 4))` - **Formula (Koros-Nowak / Madon-Boudart Transport-Disguise Regime Classifier)**: `=IF(OR(MIN(A2:A4) <= 0, MIN(B2:B4) <= 0, VARP(A2:A4) = 0), "Invalid Inputs", IF(AND(SLOPE(D2:D4, C2:C4) >= 0.95, SLOPE(D2:D4, C2:C4) <= 1.05), "Intrinsic Kinetics Confirmed (Slope ≈ 1.00, Invariant TOF)", IF(SLOPE(D2:D4, C2:C4) > 1.05, "Thermal Hot-Spot Artifact (Slope > 1.05)", IF(SLOPE(D2:D4, C2:C4) >= 0.35, "Internal Pore-Diffusion Disguise (Slope ≈ 0.5)", "Severe External Film Mass-Transfer Limit (Slope -> 0)"))))` ### Kostiakov-Lewis (Modified Kostiakov) Irrigation Infiltration Formula: Z(t) & Intake Rate - **URL**: https://sheets.arte-soft.com/en/learn/kostiakov-lewis-empirical-furrow-irrigation-infiltration-formula/ - **Summary**: Design furrow, border, and basin surface irrigation opportunity times using A. N. Kostiakov (1932) and M. R. Lewis / Mezencev’s Modified Kostiakov-Lewis Cumulative Intake Z(t) = k * (t^a) + f_0 * t and Instantaneous Rate I(t). *Table — Fix Kostiakov’s long-time zero-rate flaw by adding steady basic intake rate f_0!:* | Opportunity Time t (k = 8.5 mm/min^a, a = 0.50, f_0 = 0.25 mm/min) | Transient Term k * t^a | Steady Term f_0 * t | Cumulative Z(t) (mm) | Instantaneous Rate I(t) | | --- | --- | --- | --- | --- | | t = 16 min | 34.00 mm | 4.00 mm | 38.00 mm | 1.3125 mm/min | | t = 64 min | 68.00 mm | 16.00 mm | 84.00 mm | 0.7813 mm/min | | t = 100 min | 85.00 mm | 25.00 mm | 110.00 mm | 0.6750 mm/min | - **Formula (Modified Kostiakov-Lewis Cumulative Infiltration Depth Z(t) (mm))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B4 < 0, B5 <= 0), "Requires k > 0, 0 < a < 1, f_0 >= 0, and Time t > 0", ROUND(B2 * (B5 ^ B3) + B4 * B5, 2))` - **Formula (Modified Kostiakov-Lewis Instantaneous Intake Rate I(t) = dZ/dt (mm/min))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B4 < 0, B5 <= 0), "Requires k > 0, 0 < a < 1, f_0 >= 0, and Time t > 0", ROUND(B3 * B2 * (B5 ^ (B3 - 1)) + B4, 4))` ### Koutecký-Levich Equation Formula: Electrocatalyst Kinetic vs. Diffusion RDE Current - **URL**: https://sheets.arte-soft.com/en/learn/koutecky-levich-mixed-kinetic-diffusion-electrode-current-formula/ - **Summary**: Deconvolve intrinsic electrocatalyst kinetic current density j_k from convective mass-transport limiting current j_L on a rotating disk electrode (RDE) via 1/j = 1/j_k + 1/j_L. *Table — Separating true ORR/HER catalyst activity j_k from mass-transport bottlenecks on Rotating Disk Electrodes!:* | RDE Hydrodynamic Condition (j_k = 4.80 mA/cm²) | Levich Diffusion Limit j_L | Measured Disk Current j (mA/cm²) | Recovered Kinetic j_k from (j, j_L) | | --- | --- | --- | --- | | Moderate Rotation (e.g., 900 rpm) | 3.20 mA/cm² | 1.9200 mA/cm² | 4.8000 mA/cm² | | 9× Higher Rotation Speed (3× omega^1/2) | 9.60 mA/cm² | 3.2000 mA/cm² | 4.8000 mA/cm² | | Invalid Non-Positive j_k <= 0 or j_L <= 0 | Non-Physical Current | "Invalid RDE Current Densities" | Positive Guard | - **Formula (Koutecký-Levich Mixed-Control Disk Current Density j = 1 / (1/j_k + 1/j_L))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid RDE Current Densities", ROUND(1 / (1 / B2 + 1 / B3), 4))` - **Formula (Transport-Corrected Kinetic Current Fraction j / j_L (Mass-Transport Utilization))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid RDE Current Densities", ROUND(B2 / (B2 + B3), 4))` ### Kozai-Lidov Mechanism Formula: Maximum Eccentricity & Critical Inclination - **URL**: https://sheets.arte-soft.com/en/learn/kozai-lidov-secular-eccentricity-inclination-oscillation-formula/ - **Summary**: Calculate secular Kozai-Lidov conserved vertical angular momentum L_z and peak quadrupole eccentricity e_max = SQRT(1 - (5/3)*cos^2(i_0)) in hierarchical triple systems. *Table — Above i_c = 39.23 degrees, an outer companion pumps circular orbits to extreme eccentricity!:* | Initial Mutual Inclination i_0 (e_0 = 0.05) | Conserved L_z = SQRT(1-e_0²)cos(i_0) | Quadrupole Peak Eccentricity e_max | Dynamical Regime | | --- | --- | --- | --- | | i_0 = 65.0° (High-Obliquity Exoplanet) | 0.4221 | 0.8380 | Strong tidal circularization / Hot Jupiter | | i_0 = 50.0° (Moderate Triple) | 0.6420 | 0.5580 | Moderate secular e–i cycles | | i_0 = 30.0° (< 39.23° Critical Angle) | 0.8649 | 0 (No Kozai Pumping) | Apsidal precession without instability | - **Formula (Quadrupole Kozai-Lidov Maximum Eccentricity e_max (Circular Limit))**: `=IF(OR(B2 < 0, B2 >= 1, B3 < 0, B3 > 90), "Invalid Orbital Elements", ROUND(SQRT(MAX(0, 1 - (5 / 3) * (COS(B3 * PI() / 180) ^ 2))), 4))` - **Formula (Conserved Kozai-Lidov Vertical Angular Momentum Integral L_z)**: `=IF(OR(B2 < 0, B2 >= 1, B3 < 0, B3 > 90), "Invalid Orbital Elements", ROUND(SQRT(1 - B2 ^ 2) * COS(B3 * PI() / 180), 4))` ### Kozeny-Carman Porous Media Permeability Formula (Darcies & m^2) - **URL**: https://sheets.arte-soft.com/en/learn/kozeny-carman-packed-bed-permeability-and-specific-surface/ - **Summary**: Calculate intrinsic porous-bed permeability k = ((phi^3) * (dp^2)) / (180 * ((1 - phi)^2)) in Darcies and square micrometers from porosity phi and effective grain diameter dp_mm. *Table — Predict sandstone reservoir, HPLC column, and sand-filter permeability from porosity!:* | Packed Sand / Catalyst Bed (dp = 0.50 mm) | Porosity phi & Sphericity Psi | Permeability k (Darcies) | Porosity Scaling phi^3 / (1-phi)^2 | | --- | --- | --- | --- | | Compacted Quartz Sand | phi = 0.38, Psi = 1.00 | 200.89 Darcies | 0.05487 / 0.3844 = 0.1427 | | Loose Uncompacted Sand | phi = 0.45, Psi = 1.00 | 423.93 Darcies (2.11x jump!) | 0.09113 / 0.3025 = 0.3012 | | Angular Crushed Grains | phi = 0.38, Psi = 0.80 | 128.57 Darcies | Scales with Psi^2 = 0.64 | - **Formula (Kozeny-Carman Intrinsic Permeability k in Darcies (1 Darcy = 9.869233e-13 m^2))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B4 > 1), "Invalid Porous Bed Inputs", ROUND((((B2 ^ 3) * ((B4 * B3 * 0.001) ^ 2)) / (180 * ((1 - B2) ^ 2))) / 9.869233e-13, 2))` - **Formula (Specific Wetted Grain Surface Area per Unit Bed Volume a_v = 6 * (1 - phi) / (Psi * dp) (mm^-1))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B4 > 1), "Invalid Porous Bed Inputs", ROUND((6 * (1 - B2)) / (B4 * B3), 3))` ### Kraft White Liquor Active/Effective Alkali & Sulfidity Formula - **URL**: https://sheets.arte-soft.com/en/learn/kraft-pulping-white-liquor-active-alkali-effective-alkali-and-sulfidity-formula/ - **Summary**: Calculate North American Na2O-Basis Active Alkali AA (g/L), Effective Alkali EA (g/L), White-Liquor Sulfidity (%), and Digester Effective Alkali Charge (% on Oven-Dry Wood). *Table — Na2S hydrolyzes into ONE OH- and ONE HS- ion—so Effective Alkali counts only HALF of Na2S!:* | Kraft White Liquor KPI (NaOH=95, Na2S=35 g/L as Na2O, 1.60 m³ WL/t Wood) | Formula | Verified Output | | --- | --- | --- | | Active Alkali AA (g/L as Na2O) | NaOH_g_L + Na2S_g_L | 130.00 g/L | | Effective Alkali EA (g/L as Na2O) | NaOH_g_L + 0.5 * Na2S_g_L | 112.50 g/L (107.50 @ 85/45 split) | | White-Liquor Sulfidity (%) | (Na2S_g_L / Active_Alkali_AA) * 100 | 26.92% (34.62% @ 85/45 split) | | EA Charge on OD Wood (% Na2O) | (Effective_Alkali_EA * WL_m3_t) / 10 | 18.00% (17.20% @ 85/45 split) | - **Formula (TAPPI Na2O-Basis Kraft Sulfidity & Effective Alkali Formula)**: `=LET(oh_g, B2, s2_g, B3, wl_v, B4, IF(OR(oh_g <= 0, s2_g < 0, wl_v <= 0.5, wl_v > 5), "Invalid Liquor Titration", LET(aa_g, oh_g + s2_g, ROUND((s2_g / aa_g) * 100, 2))))` - **Formula (High-Sulfidity Recovery-Boiler Reduction Shift Check (Set NaOH = 85, Na2S = 45 g/L))**: `=IF(ISTEXT(E4), E4, ROUND(((B2 + 0.5 * B3) * B4) / 10, 2))` ### A Body Shape Index (ABSI) Calculator: Krakauer Allometric Waist-BMI-Height Formula - **URL**: https://sheets.arte-soft.com/en/learn/krakauer-a-body-shape-index-absi-and-z-score-mortality-formula/ - **Summary**: Calculate Nir Y. Krakauer and Jesse C. Krakauer’s (2012) BMI-independent allometric A Body Shape Index ABSI = WC_m / ((BMI^(2/3)) * (Height_m^(1/2))) and standardized ABSI z-score for premature mortality risk. *Table — Orthogonalize Waist Circumference from BMI and Height via allometric scaling!:* | ABSI Standardized Z-Score Band | Relative Mortality Risk Tier (Krakauer 2012) | Body Habitus Interpretation | | --- | --- | --- | | ABSI_z < -0.868 | Very Low Risk (~0.80x Hazard) | Slender waist relative to BMI & Height | | -0.272 <= ABSI_z < +0.229 | Average Population Risk (1.00x) | Age/sex-typical abdominal contour | | ABSI_z >= +0.798 | High Risk (~1.35x+ Hazard) | Disproportionate central visceral adiposity / sarcopenic obesity | - **Formula (Scaled ABSI * 1000 (1000 * WC_m / (BMI^(2/3) * Height_m^(1/2))))**: `=IF(OR(B2 < 120, B2 > 230, B3 < 30, B3 > 300, B4 < 45, B4 > 200), "Invalid Height, Weight, or Waist Inputs", ROUND(1000 * (B4 / 100) / ((((B3 / ((B2 / 100) ^ 2)) ^ (2 / 3)) * SQRT(B2 / 100))), 4))` - **Formula (Standardized ABSI Z-Score (ABSI - ABSI_mean) / ABSI_SD)**: `=IF(OR(B2 < 120, B2 > 230, B3 < 30, B3 > 300, B4 < 45, B4 > 200, B5 <= 0, B6 <= 0), "Invalid Anthropometric or Reference Mean/SD Inputs", ROUND((((B4 / 100) / ((((B3 / ((B2 / 100) ^ 2)) ^ (2 / 3)) * SQRT(B2 / 100)))) - B5) / B6, 2))` ### Kremer O-Ring Production & Assortative Wage Formula - **URL**: https://sheets.arte-soft.com/en/learn/kremer-o-ring-production-function-bottleneck-quality-and-assortative-wage/ - **Summary**: Calculate Michael Kremer’s (1993) multiplicative O-Ring output, supermodular positive assortative matching surplus Y_max*(q_H - q_L)^2, and convex n-task equilibrium wage ratio (q_H / q_L)^n. *Table — Understand why high-skill workers match together and earn exponentially higher wages!:* | Kremer (1993) O-Ring Metric (q_H=0.90, q_L=0.50, Y_max=1,000, n=4) | Formula | Verified Output | | --- | --- | --- | | Assortative Matching Output (HH + LL) | Y_max * (q_H^2 + q_L^2) | 1,060.00 (810 + 250) | | Mixed Cross-Matching Output (HL + HL) | 2 * Y_max * q_H * q_L | 900.00 (450 + 450) | | Positive Assortative Sorting Surplus | Y_max * ((q_H - q_L) ^ 2) | +160.00 | | n-Task Equilibrium Wage Ratio (w_H / w_L) | (q_H / q_L) ^ n | 10.4976x (for 1.80x Skill) | - **Formula (Supermodular Assortative Matching Gain Formula)**: `=LET(qh_s, B2, ql_s, B3, ym_x, B4, n_tk, B5, IF(OR(ql_s <= 0, qh_s < ql_s, qh_s > 1, ym_x <= 0, n_tk < 2, INT(n_tk) <> n_tk), "Invalid O-Ring Input", ROUND(ym_x * ((qh_s - ql_s) ^ 2), 2)))` - **Formula (n-Task O-Ring Equilibrium Wage Inequality Ratio Formula)**: `=IF(ISTEXT(E4), E4, ROUND((B2 / B3) ^ B5, 4))` ### Kremser Gas Absorption Factor (A) & Theoretical Scrubber Stages - **URL**: https://sheets.arte-soft.com/en/learn/kremser-gas-absorption-stripping-factor-and-stages-formula/ - **Summary**: Calculate the absorption factor and ideal equilibrium-stage estimate for a dilute countercurrent absorber, with input validation, a pinch check and stable evaluation near A = 1. - **Formula (Validate the six inputs)**: `=IF(COUNT(B2:B7)<>6,"Enter six numeric inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<0,B5>=1,B6<0,B6>=1,B7<0,B7>=1),"Check flows and mole fractions",IF(OR(B5"OK",B8,IF(B11<=-1,"No finite stage solution",(B10-1)/B9*IF(ABS(B11)<0.0001,1-(B11)/2+(B11)^2/3-(B11)^3/4+(B11)^4/5,LN(1+(B11))/(B11))/IF(ABS((B9-1))<0.0001,1-((B9-1))/2+((B9-1))^2/3-((B9-1))^3/4+((B9-1))^4/5,LN(1+((B9-1)))/((B9-1)))))` - **Formula (Whole ideal contacts, if needed)**: `=IF(ISNUMBER(B12),ROUNDUP(B12,0),B12)` ### Kretschmann Surface Plasmon Resonance (SPR) Biosensor Angle Formula - **URL**: https://sheets.arte-soft.com/en/learn/kretschmann-surface-plasmon-resonance-spr-angle-biosensor-formula/ - **Summary**: Calculate the prism-coupled Surface Plasmon Resonance dip angle θ_SPR = DEGREES(ASIN((1 / n_p) * SQRT((|ε_m| * n_d^2) / (|ε_m| - n_d^2)))) for label-free antibody-antigen optical biosensors. *Table — Why free-space lasers CANNOT excite surface plasmons without a Kretschmann prism!:* | Analyte Channel State (np = 1.5151, Gold \|εm\| = 11.8) | Effective SPP Index k_SPP/k0 | Resonance Angle θ_SPR (deg) | Biosensor Shift Δθ | | --- | --- | --- | --- | | Baseline Running Buffer (nd = 1.3330) | 1.4463 (< np) | 72.672° | 0.000° (Reference Dip) | | Bound Protein Monolayer (nd = 1.3380) | 1.4527 (< np) | 73.503° | +0.831° (+0.005 RIU) | | Under-Indexed Prism (np <= k_SPP/k0) | sin(θ) >= 1 | "No SPR Coupling (Increase Prism np)" | Requires Sapphire / SF10 Prism | - **Formula (Kretschmann Prism-Coupled SPR Resonance Angle θ_SPR (degrees))**: `=IF(OR(B2 <= 1, B3 <= 0, B4 <= 0, B3 <= B4 ^ 2), "Invalid Optical Constants", IF(SQRT((B3 * (B4 ^ 2)) / (B3 - (B4 ^ 2))) >= B2, "No SPR Coupling (Increase Prism np)", ROUND(DEGREES(ASIN(SQRT((B3 * (B4 ^ 2)) / (B3 - (B4 ^ 2))) / B2)), 3)))` - **Formula (Surface Plasmon Effective Propagation Index n_eff,SPP = k_SPP / k_0)**: `=IF(OR(B3 <= 0, B4 <= 0, B3 <= B4 ^ 2), "Invalid Optical Constants", ROUND(SQRT((B3 * (B4 ^ 2)) / (B3 - (B4 ^ 2))), 4))` ### Krippendorff’s Alpha (α) Formula: Coincidence Matrix & Finite-Sample Reliability - **URL**: https://sheets.arte-soft.com/en/learn/krippendorff-alpha-nominal-binary-coding-reliability-formula/ - **Summary**: Calculate Klaus Krippendorff’s content-analysis reliability coefficient α = 1 - D_o / D_e = 1 - (n - 1)*n_01 / (n_0*n_1) from a symmetric 2×2 coincidence matrix. *Table — Why content-analysis and NLP annotation studies require Krippendorff’s α >= 0.800 (and tentative >= 0.667)!:* | Symmetric Coincidence Counts (n = 100 Values) | Observed Disagreement D_o | Krippendorff’s Alpha α | Krippendorff Decision Standard | | --- | --- | --- | --- | | n_00 = 36, n_01 = 6, n_11 = 52 | 0.1200 (12% mismatch) | 0.7562 | Tentative Conclusions (0.667 <= α < 0.800) | | n_00 = 40, n_01 = 2, n_11 = 56 | 0.0400 (4% mismatch) | 0.9187 | Reliable Annotation (α >= 0.800) | | Zero Variance (n_0 = 0 or n_1 = 0) | Undefined D_e = 0 | "Degenerate Single-Category Coding" | Zero-Denominator Guard | - **Formula (Krippendorff’s Nominal Binary Alpha α = 1 - (n - 1)*n_01 / (n_0 * n_1))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B2 + B3 = 0, B4 + B3 = 0, B2 + 2 * B3 + B4 < 2), "Degenerate Single-Category Coding", ROUND(1 - ((B2 + 2 * B3 + B4 - 1) * B3) / ((B2 + B3) * (B4 + B3)), 4))` - **Formula (Observed Coincidence Disagreement Proportion D_o = 2 * n_01 / n)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B2 + 2 * B3 + B4 < 2), "Degenerate Single-Category Coding", ROUND((2 * B3) / (B2 + 2 * B3 + B4), 4))` ### Kronecker Delta Numeric Equality Indicator Formula (Exact & Tolerance-Safe) - **URL**: https://sheets.arte-soft.com/en/learn/kronecker-delta-exact-numeric-equality-flag-formula/ - **Summary**: Implement the Kronecker Delta indicator (returning 1 when x = y and 0 otherwise, with strict ISNUMBER type safety and optional floating-point tolerance) plus vector exact-match counting. *Table — Test numeric equality safely without IEEE-754 rounding traps or type coercion!:* | Value X | Value Y | Tolerance eps | Kronecker Delta Output | | --- | --- | --- | --- | | 250.00 | 250.00 | 0 | 1 (Exact Match) | | 250.00 | 250.004 | 0 | 0 (Strict Mismatch) | | 250.00 | 250.004 | 0.01 | 1 (Within Penny Tolerance) | | "250" (Text) | 250 | 0 | Numeric Inputs Required | - **Formula (Type-Safe Kronecker Delta Indicator with Configurable Tolerance)**: `=IF(OR(NOT(ISNUMBER(B2)), NOT(ISNUMBER(B3)), B4 < 0), "Numeric Inputs Required", IF(ABS(B2 - B3) <= B4, 1, 0))` - **Formula (Vector Pairwise Kronecker Delta Match Count (C2:C5 vs D2:D5))**: `=SUMPRODUCT(--(C2:C5 = D2:D5))` ### Krugman Currency Crisis & Shadow Exchange Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/krugman-first-generation-currency-crisis-shadow-exchange-rate-formula/ - **Summary**: Calculate Paul Krugman’s (1979) and Flood-Garber’s (1984) shadow floating exchange rate s_tilde(0), speculative attack timing T* = (R_0 - R_min) / mu - alpha, and discrete reserve wipeout alpha * mu. *Table — Why currency pegs collapse BEFORE central-bank foreign reserves run dry!:* | Krugman-Flood-Garber Crisis Metric (s_bar=4.0, R_0=0.50, R_min=0.10, mu=0.08, alpha=1.5) | Formula | Verified Output | | --- | --- | --- | | Today’s Shadow Floating Rate s_tilde(0) | s_bar - (R_0 - R_min) + alpha * mu | 3.7200 (< 4.00 Peg Survives Today) | | Naive Linear Exhaustion Horizon | (R_0 - R_min) / mu = 0.40 / 0.08 | 5.00 years | | Speculative Attack Reserve Wipeout | alpha * mu = 1.50 * 0.08 | 0.1200 Instant Reserve Drop | | Rational Speculative Attack Timing (T*) | MAX(0, (R_0 - R_min)/mu - alpha) | 3.50 years (Attacks at R = 0.22!) | - **Formula (Flood-Garber Shadow Floating Exchange Rate s_tilde(0) Formula)**: `=LET(s_pg, B2, r_0, B3, r_mn, B4, mu_cr, B5, al_md, B6, IF(OR(r_mn < 0, r_0 < r_mn, mu_cr <= 0, al_md < 0), "Invalid Crisis Input", ROUND(s_pg - (r_0 - r_mn) + al_md * mu_cr, 4)))` - **Formula (Exact Speculative Attack Timing T* Formula)**: `=LET(r_0, B3, r_mn, B4, mu_cr, B5, al_md, B6, IF(OR(r_mn < 0, r_0 < r_mn, mu_cr <= 0, al_md < 0), "Invalid Crisis Input", ROUND(MAX(0, ((r_0 - r_mn) / mu_cr) - al_md), 4)))` ### Krugman Love-of-Variety Gain & Home-Market Effect Formula - **URL**: https://sheets.arte-soft.com/en/learn/krugman-monopolistic-competition-variety-and-home-market-effect/ - **Summary**: Compute Dixit-Stiglitz-Krugman autarky varieties L / (sigma * F), frictionless trade welfare gain ((L_H + L_F)/L_H)^(1/(sigma - 1)), and iceberg Home-Market Effect firm share. *Table — Explain intra-industry trade between identical economies and agglomeration in larger markets:* | Krugman New-Trade Metric (sigma=5, L_H=600, L_F=400, F=2) | Formula | Verified Output | | --- | --- | --- | | Home Autarky Variety Count (N_H) | L_H / (sigma * F) | 60.00 varieties | | Frictionless Welfare Multiplier | ((L_H + L_F) / L_H)^(1 / (sigma - 1)) | 1.1362 (+13.62% Gain) | | Trade Freeness Index (phi) | tau^(1 - sigma) (at tau = 1.25) | 0.4096 | | Home-Market Firm Share (s_N) | CLAMP(((1 + phi)*s_E - phi)/(1 - phi)) | 0.7388 (vs s_E = 0.6000) | - **Formula (Krugman Home-Market Effect Manufacturing Share s_N Formula)**: `=LET(sig_e, B2, l_hm, B3, l_fr, B4, f_fx, B5, tau_c, B6, IF(OR(sig_e <= 1, l_hm <= 0, l_fr <= 0, f_fx <= 0, tau_c <= 1), "Require sigma > 1 and tau > 1", LET(s_ex, l_hm / (l_hm + l_fr), phi_f, POWER(tau_c, 1 - sig_e), s_raw, ((1 + phi_f) * s_ex - phi_f) / (1 - phi_f), ROUND(MIN(1, MAX(0, s_raw)), 4))))` - **Formula (Frictionless Love-of-Variety Real-Wage Multiplier Formula)**: `=LET(sig_e, B2, l_hm, B3, l_fr, B4, IF(OR(sig_e <= 1, l_hm <= 0, l_fr < 0), "Invalid Krugman Input", ROUND(POWER((l_hm + l_fr) / l_hm, 1 / (sig_e - 1)), 4)))` ### Kubelka-Munk Diffuse Reflectance Function F(R) = K/S & Inverse Reflectance - **URL**: https://sheets.arte-soft.com/en/learn/kubelka-munk-diffuse-reflectance-remission-k-s-formula/ - **Summary**: Linearize diffuse reflectance R_inf of opaque paints, textiles, papers, and catalyst powders into absorption-to-scattering ratio F(R_inf) = (1 - R_inf)^2 / (2 * R_inf) = K / S and invert K/S back to R_inf. *Table — Apply Beer-Lambert-like linear concentration math to opaque powders and coatings!:* | Diffuse Reflectance R_inf (0 to 1) | Kubelka-Munk F(R_inf) = K / S | Inverse Check from K / S | Colorimetry Meaning | | --- | --- | --- | --- | | R_inf = 0.25 (Deep Tint) | F(0.25) = 0.5625 / 0.50 = 1.1250 | R_inf(1.125) = 0.2500 | Absorption exceeds scattering (K > S) | | R_inf = 0.50 (Medium Pastel) | F(0.50) = 0.25 / 1.00 = 0.2500 | R_inf(0.25) = 0.5000 | 4.5x lower pigment concentration! | | R_inf <= 0 or R_inf > 1 | Guarded Physical Bound | Out of [0, 1] Range | "Invalid Reflectance (0 < R <= 1)" | - **Formula (Kubelka-Munk Remission Function F(R_inf) = (1 - R_inf)^2 / (2 * R_inf))**: `=IF(OR(B2 <= 0, B2 > 1), "Invalid Reflectance (0 < R <= 1)", ROUND(((1 - B2) ^ 2) / (2 * B2), 4))` - **Formula (Inverse Kubelka-Munk Predicted Reflectance R_inf from x = K / S)**: `=IF(B3 < 0, "Invalid K/S Ratio", ROUND(1 + B3 - SQRT((B3 ^ 2) + (2 * B3)), 4))` ### Kuder-Richardson Formula 20 (KR-20) Dichotomous Test Reliability - **URL**: https://sheets.arte-soft.com/en/learn/kuder-richardson-kr-20-dichotomous-test-reliability-formula/ - **Summary**: Calculate internal-consistency reliability KR-20 = (K / (K - 1)) * (1 - SUM(p_i * q_i) / σ_X^2) for binary right/wrong certification exams and diagnostic checklists. *Table — Exact internal consistency for binary 0/1 multiple-choice exams without item-by-examinee covariance matrices!:* | Total Test Variance s_total² (K = 5, Σpq = 1.10) | Variance Ratio Σpq / s_total² | KR-20 Reliability | Psychometric Benchmark | | --- | --- | --- | --- | | s_total² = 2.75 (Baseline Cohort) | 0.4000 | 0.7500 | Acceptable Research / Classroom Scale (>= 0.70) | | s_total² = 3.50 (Higher True-Score Spread) | 0.3143 | 0.8571 | High-Stakes Certification Grade (>= 0.80) | | Invalid s_total² <= 0 or K < 2 | Undefined | "Invalid Test Variance" | Variance Guard | - **Formula (Kuder-Richardson KR-20 Reliability Coefficient)**: `=IF(OR(COUNT(B2:B6) < 2, E2 <= 0), "Invalid Test Variance", ROUND((COUNT(B2:B6) / (COUNT(B2:B6) - 1)) * (1 - (SUM(C2:C6) / E2)), 4))` - **Formula (Sum of Bernoulli Dichotomous Item Variances Σ p_i (1 - p_i))**: `=ROUND(SUM(C2:C6), 4)` ### Kullback-Leibler (KL) Divergence & Population Stability Index (PSI) drift formulas - **URL**: https://sheets.arte-soft.com/en/learn/kullback-leibler-kl-divergence-and-jensen-shannon-distance/ - **Summary**: Measure probability distribution shift D_KL(P || Q) = SUM(P * LN(P / Q)) and symmetric credit-model Population Stability Index (PSI) in spreadsheets. *Table — Monitor ML feature drift and credit-score shift with KL Divergence & PSI!:* | Score Bucket | Training Baseline Q (B) | Live Traffic P (A) | KL Term P*LN(P/Q) & PSI Term | | --- | --- | --- | --- | | Prime | 0.25 | 0.50 | KL = +0.3466 \| PSI = +0.1733 | | Near-Prime | 0.25 | 0.30 | KL = +0.0547 \| PSI = +0.0091 | | Subprime | 0.50 | 0.20 | KL = -0.1833 \| PSI = +0.2749 | | Totals | 1.00 | 1.00 | D_KL(P\|\|Q) = 0.2180 \| PSI = 0.4573 (Drift!) | - **Formula (Forward KL Divergence D_KL(P || Q) in nats)**: `=IF(OR(COUNT(A2:B4)<>6,MIN(A2:B4)<0,ABS(SUM(A2:A4)-1)>1E-9,ABS(SUM(B2:B4)-1)>1E-9),"Invalid inputs",IF(COUNTIF(C2:C4,"Infinite divergence")>0,"Infinite divergence",ROUND(SUM(C2:C4), 4)))` - **Formula (Symmetric Population Stability Index PSI = SUM((P - Q) * LN(P / Q)))**: `=IF(OR(COUNT(A2:B4)<>6,MIN(A2:B4)<0,ABS(SUM(A2:A4)-1)>1E-9,ABS(SUM(B2:B4)-1)>1E-9),"Invalid inputs",IF(COUNTIF(D2:D4,"Infinite divergence")>0,"Infinite divergence",ROUND(SUM(D2:D4), 4)))` ### Sample & Population Excess Kurtosis (KURT Fourth-Moment Tail Risk Formula) - **URL**: https://sheets.arte-soft.com/en/learn/kurt-excess-kurtosis-fisher-fourth-moment-tail-risk-formula/ - **Summary**: Compute unbiased Fisher sample excess kurtosis (KURT) and population excess kurtosis from standardized fourth moments to detect fat-tailed (leptokurtic) vs thin-tailed (platykurtic) series. *Table — Why fourth-moment excess kurtosis subtracts 3 and requires small-sample bias correction:* | Series Regime | Excess Kurtosis | Tail Interpretation | Example Return Profile | | --- | --- | --- | --- | | Platykurtic (< 0) | -1.2000 | Lighter tails than normal | Evenly spaced 5-point ladder [10, 12, 14, 16, 18] | | Mesokurtic (= 0) | 0.0000 | Normal Gaussian tail benchmark | Standard bell-curve baseline | | Leptokurtic (> 0) | +4.3536 | Fat tails / outlier shock present | Shocked series [10, 12, 14, 16, 40] | - **Formula (Portable Unbiased Sample Excess Kurtosis (KURT) Formula)**: `=LET(cnt, COUNT(B2:B6), mu, AVERAGE(B2:B6), sd, STDEV(B2:B6), IF(cnt < 4, "N_LT_4", IF(sd = 0, 0, ROUND((cnt * (cnt + 1) / ((cnt - 1) * (cnt - 2) * (cnt - 3))) * SUMPRODUCT(((B2:B6 - mu) / sd) ^ 4) - (3 * (cnt - 1) ^ 2) / ((cnt - 2) * (cnt - 3)), 4))))` - **Formula (Population Excess Kurtosis Formula)**: `=LET(cnt, COUNT(B2:B6), mu, AVERAGE(B2:B6), sdp, STDEVP(B2:B6), IF(sdp = 0, 0, ROUND(SUMPRODUCT(((B2:B6 - mu) / sdp) ^ 4) / cnt - 3, 4)))` ### Kutateladze Number (Ku) Formula: Countercurrent Gas-Liquid Flooding & Droplet Entrainment - **URL**: https://sheets.arte-soft.com/en/learn/kutateladze-gas-liquid-flooding-and-pool-boiling-number-formula/ - **Summary**: Predict diameter-independent countercurrent gas-liquid flooding and droplet carry-over in large-diameter pipes, nuclear downcomers, and packed columns using Samson S. Kutateladze’s dimensionless gas flux number Ku_g = j_g * SQRT(rho_g) / (g * sigma * (rho_l - rho_g))^0.25. *Table — When pipe diameter exceeds ~30 Capillary Lengths, Wallis fails and Kutateladze Ku_crit ≈ 3.2 governs flooding!:* | Superficial Gas Velocity j_g (Air-Water) | Kutateladze Gas Number Ku_g | Countercurrent Two-Phase Regime (vs Ku_flood = 3.2) | | --- | --- | --- | | j_g = 0.85 m/s | 0.1846 | Smooth Countercurrent Falling Film (< 3.2) | | j_g = 2.40 m/s | 0.5212 | Interfacial Wave Growth / Incipient Droplet Carry-Over | | j_g = 16.0 m/s (Ku_g = 3.475) | 3.475 (> 3.2) | Complete Countercurrent Flooding Limit Exceeded! | - **Formula (Dimensionless Kutateladze Gas Flux Number Ku_g = j_g * SQRT(rho_g) / (9.81 * sigma * (rho_l - rho_g))^0.25)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= B3, B5 <= 0), "Invalid Two-Phase Properties", ROUND(B2 * SQRT(B3) / ((9.81 * B5 * (B4 - B3)) ^ 0.25), 4))` - **Formula (Pushkina-Sorokin Large-Diameter Countercurrent Flooding Check (Ku_g >= 3.2))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= B3, B5 <= 0), "Invalid Two-Phase Properties", IF(B2 * SQRT(B3) / ((9.81 * B5 * (B4 - B3)) ^ 0.25) >= 3.2, "Countercurrent Flooding (Ku >= 3.2 — Zero Liquid Penetration)", "Below Complete Flooding Limit (Ku < 3.2)"))` ### Kutzbach-Gruebler Planar Mechanism Mobility (DOF) Formula - **URL**: https://sheets.arte-soft.com/en/learn/kutzbach-gruebler-planar-mechanism-mobility-dof-and-paradox/ - **Summary**: Calculate planar linkage degrees of freedom M = 3*(L - 1) - 2*J_1 - J_2 + r_red in Excel and Arte Sheets to distinguish 1-DOF mechanisms, trusses, hyperstatic frames, and parallel-crank paradoxes. *Table — Count rigid links, lower pairs, and higher pairs without forgetting the ground link:* | Kinematic Assembly | Counts (L, J_1, J_2, r_red) | Mobility M_eff & Classification | | --- | --- | --- | | Four-Bar or Slider-Crank Linkage | L=4, J_1=4, J_2=0, r_red=0 | M = 1 (Single-Actuator Mechanism) | | Disk Cam & Pivoted Follower | L=3, J_1=2, J_2=1, r_red=0 | M = 1 (Single-Actuator Mechanism) | | Pin-Jointed Triangular Truss | L=3, J_1=3, J_2=0, r_red=0 | M = 0 (Statically Determinate) | | Locomotive Parallel Coupling Rod | L=5, J_1=6, J_2=0, r_red=1 | M_nom = 0 -> M_eff = 1 (Redundant Tie) | - **Formula (Nominal Gruebler Mobility vs Redundancy-Corrected Kutzbach DOF Formula)**: `=LET(l_cnt, B2, j_low, B3, j_high, B4, r_red, B5, IF(OR(l_cnt < 2, j_low < 0, j_high < 0, r_red < 0), "Invalid Linkage Count", 3 * (l_cnt - 1) - 2 * j_low - j_high + r_red))` - **Formula (Kinematic Regime Classification Formula)**: `=LET(m_dof, E3, IF(ISTEXT(m_dof), m_dof, IF(m_dof < 0, "Hyperstatic / Preloaded Frame", IF(m_dof = 0, "0-DOF Determinate Structure", IF(m_dof = 1, "1-DOF Constrained Mechanism", "Multi-DOF Robotic Chain")))))` ### Kyle Lambda Order-Flow Price Impact & Reciprocal Market Depth Formula (SLOPE) - **URL**: https://sheets.arte-soft.com/en/learn/kyle-lambda-order-flow-price-impact-and-market-depth/ - **Summary**: Estimate Kyle’s (1985) price-impact coefficient lambda = SLOPE(Price_Change, Signed_Order_Flow) and implied book depth 1 / lambda from signed trade-imbalance intervals. *Table — Quantify how much net order imbalance moves the mid-quote!:* | Interval | Signed Net Flow Q_t (k sh) | Mid-Price Change dP_t ($) | Implied Model Fit | | --- | --- | --- | --- | | Window 1 | -40 | -0.10 | Net selling pushes mid down | | Window 2 | -10 | -0.02 | Mild sell imbalance | | Window 3 | +20 | +0.05 | Moderate buy imbalance | | Window 4 | +50 | +0.13 | lambda = $0.002533 / k sh (Depth = 394.74k sh/$) | - **Formula (Kyle’s Lambda Price-Impact Slope ($ per 1k Shares))**: `=IF(VAR.P(B2:B5) = 0, "Zero Flow Variance", ROUND(SLOPE(C2:C5, B2:B5), 6))` - **Formula (Reciprocal Market Depth (1 / lambda, in 1k Shares per $1 Move))**: `=IF(VAR.P(B2:B5) = 0, "Zero Flow Variance", IF(SLOPE(C2:C5, B2:B5) <= 0, "Non-Positive Impact", ROUND(1 / SLOPE(C2:C5, B2:B5), 4)))` ### Kynch & Talmage-Fitch Thickener Sizing Formula: Unit Area (UA) & Clarifier Diameter - **URL**: https://sheets.arte-soft.com/en/learn/kynch-batch-hindered-sedimentation-thickener-unit-area-formula/ - **Summary**: Scale 1-liter graduated-cylinder hindered settling tests up to continuous industrial gravity thickeners using G. J. Kynch & Talmage-Fitch Unit Area UA = t_u / (C_0 * H_0) and tank diameter D = SQRT(4 * F * UA / pi). *Table — From a single batch settling cylinder curve to a continuous 18-meter gravity thickener!:* | Continuous Thickener Duty (UA = 1.6667 m²·d/t) | Required Thickener Area A = F*UA | Circular Tank Diameter D (m) | | --- | --- | --- | | Solids Throughput F = 150 tonnes/day | 250.0 m² | 17.84 m | | Doubled Plant Capacity F = 300 tonnes/day | 500.0 m² | 25.23 m (SQRT(2) scaling) | | Zero Slurry Concentration C_0 = 0 | Division by Zero | "Invalid Thickener Settling Test" | - **Formula (Talmage-Fitch / Kynch Specific Thickener Unit Area UA = t_u / (C_0 * H_0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Thickener Settling Test", ROUND(B4 / (B2 * B3), 4))` - **Formula (Circular Gravity Thickener Diameter D (m) = SQRT((4 * F * UA) / PI()))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Thickener Settling Test", ROUND(SQRT((4 * B5 * (B4 / (B2 * B3))) / PI()), 2))` ### LACE Index Calculator: 30-Day Unplanned Readmission & Death Risk (0–19) - **URL**: https://sheets.arte-soft.com/en/learn/lace-index-30-day-unplanned-hospital-readmission-and-mortality/ - **Summary**: Compute Carl van Walraven’s LACE Index (0–19 points: Length of stay, Acuity of admission, Charlson comorbidity score, and 6-month ED visits) to target transitional care before hospital discharge. *Table — Four discharge EHR fields identify which patients need 48-hour post-discharge transitional care!:* | LACE Component | Input Value | Assigned LACE Points | Maximum Weight | | --- | --- | --- | --- | | L — Length of Stay (days) | 0, 1, 2, 3, 4–6, 7–13, >=14 | 0, 1, 2, 3, 4, 5, or 7 pts | 7 points | | A — Emergent Admission (0/1) | 1 = Emergent, 0 = Elective | +3 points if Emergent | 3 points | | C (Charlson) & E (6-mo ED Visits) | C >= 4 -> +5; E >= 4 -> +4 | 0–5 pts + 0–4 pts | 9 points (Total 19) | - **Formula (Total LACE Readmission Risk Index (0 to 19 Points))**: `=IF(OR(B2 < 0, B3 < 0, B3 > 1, B4 < 0, B5 < 0), "Invalid LACE Inputs", IF(B2 >= 14, 7, IF(B2 >= 7, 5, IF(B2 >= 4, 4, B2))) + (3 * B3) + IF(B4 >= 4, 5, B4) + MIN(B5, 4))` - **Formula (LACE Discharge Transitional-Care Risk Tier (Low 0–4 / Moderate 5–9 / High >= 10))**: `=IF(OR(B2 < 0, B3 < 0, B3 > 1, B4 < 0, B5 < 0), "Invalid LACE Inputs", IF(IF(B2 >= 14, 7, IF(B2 >= 7, 5, IF(B2 >= 4, 4, B2))) + (3 * B3) + IF(B4 >= 4, 5, B4) + MIN(B5, 4) >= 10, "High Readmission Risk (>=10 — Transitional Care Bundle)", IF(IF(B2 >= 14, 7, IF(B2 >= 7, 5, IF(B2 >= 4, 4, B2))) + (3 * B3) + IF(B4 >= 4, 5, B4) + MIN(B5, 4) >= 5, "Moderate Risk (5-9 — Follow-Up Call)", "Low Readmission Risk (0-4)")))` ### Laffont-Tirole Procurement Incentive Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/laffont-tirole-procurement-cost-reimbursement-incentive-contract/ - **Summary**: Calculate Jean-Jacques Laffont & Jean Tirole’s (1986) optimal cost-sharing contract slope b* = 1 - (lambda_f/(1 + lambda_f))*gamma_e*(beta - beta_L) between Fixed-Price and Cost-Plus. *Table — Balance cost-cutting incentives against contractor information rents via Laffont & Tirole (1986)!:* | Laffont-Tirole Contract Metric (lambda_f=0.25, gamma_e=0.20, beta_L=50) | Formula | Verified Output | | --- | --- | --- | | Top-Efficiency Type (beta = 50) | b* = 1.0000 (Pure Fixed-Price) | Effort e* = 5.0000 (= e_FB) | | High-Cost Type (beta = 60) | 1 - (lambda_f/(1+lambda_f))*gamma*(60 - 50) | b* = 0.6000 (40% Reimbursed) | | Induced Cost-Saving Effort e*(60) | b*(60) / gamma_e | 3.0000 (Realized Cost = 57.00) | | Zero Public Funds Distortion (lambda_f = 0) | b* = 1.0000 for ALL types | Effort e* = 5.0000 | - **Formula (Laffont-Tirole Optimal Contract Incentive Power b*(beta) Formula)**: `=LET(lm_f, B2, gm_e, B3, bt_l, B4, bt_c, B5, IF(OR(lm_f < 0, gm_e <= 0, bt_l <= 0, bt_c < bt_l), "Invalid Procurement Input", LET(b_raw, 1 - (lm_f / (1 + lm_f)) * gm_e * (bt_c - bt_l), ROUND(MAX(0, b_raw), 4))))` - **Formula (Second-Best Cost-Reduction Effort e*(beta) = b*(beta) / gamma_e Formula)**: `=IF(ISTEXT(E2), E2, ROUND(E2 / B3, 4))` ### Laibson Quasi-Hyperbolic (beta, delta) Discount Formula - **URL**: https://sheets.arte-soft.com/en/learn/laibson-quasi-hyperbolic-beta-delta-present-bias-discount-formula/ - **Summary**: Model time-inconsistent preference reversals using Phelps-Pollak and David Laibson’s (1997) quasi-hyperbolic discount sequence {1, beta*delta, beta*delta^2, ...}. *Table — Show how a single present-bias parameter beta < 1 causes tomorrow’s plans to reverse today!:* | Quasi-Hyperbolic Metric (C=100, B=150, k=1, delta=0.90, beta=0.70) | Formula | Verified Output | | --- | --- | --- | | Quasi-Hyperbolic Factor D(k) | IF(k = 0, 1, beta * delta^k) | 0.6300 (vs Exponential 0.9000) | | Advance-Commitment Net Surplus | (delta^k) * B - C | +35.00 (Plans to Invest!) | | Today’s Present-Biased NPV | beta * (delta^k) * B - C | -5.50 (Balks Today!) | | Behavioral Time-Consistency Audit | IF(AND(Advance > 0, Today < 0), ...) | Preference Reversal (Procrastinate) | - **Formula (Laibson Quasi-Hyperbolic Present-Biased NPV Formula)**: `=LET(c_up, B2, b_rw, B3, k_dl, B4, dl_lr, B5, bt_pb, B6, IF(OR(c_up < 0, b_rw < 0, k_dl < 1, INT(k_dl) <> k_dl, dl_lr <= 0, dl_lr > 1, bt_pb <= 0, bt_pb > 1), "Invalid Discount Input", ROUND(bt_pb * (dl_lr ^ k_dl) * b_rw - c_up, 2)))` - **Formula (Dynamic Preference-Reversal & Commitment-Device Classifier Formula)**: `=LET(c_up, B2, b_rw, B3, k_dl, B4, dl_lr, B5, bt_pb, B6, IF(OR(c_up < 0, b_rw < 0, k_dl < 1, INT(k_dl) <> k_dl, dl_lr <= 0, dl_lr > 1, bt_pb <= 0, bt_pb > 1), "Invalid Discount Input", LET(npv_ex, (dl_lr ^ k_dl) * b_rw - c_up, npv_pb, bt_pb * (dl_lr ^ k_dl) * b_rw - c_up, IFS(npv_pb >= 0, "Time-Consistent: Acts Immediately", npv_ex > 0, "Preference Reversal (Procrastinate)", TRUE, "Time-Consistent: Rejects Always"))))` ### Lame Shrink-Fit Contact Pressure and Slip-Free Torque Formula - **URL**: https://sheets.arte-soft.com/en/learn/lame-press-and-shrink-fit-interface-contact-pressure-and-torque/ - **Summary**: Calculate interference press/shrink-fit interface pressure p_if = (E * delta_r / (2 * R_if)) * (1 - (R_if / R_out)^2) and slip-free torque capacity T_max in Excel and Arte Sheets. *Table — Convert radial interference delta_r into clamping pressure and shaft torque capacity:* | Shrink-Fit Quantity (R_if=25, R_out=50, delta_r=0.025) | Formula | Sample Output | | --- | --- | --- | | Wall-Ratio Factor 1 - (R_if / R_out)^2 | 1 - (25 / 50)^2 | 0.7500 | | Interface Contact Pressure (p_if) | (E * delta_r / (2 * R_if)) * (1 - (R_if/R_out)^2) | 75.0000 MPa | | Inner Hub Bore Hoop Stress (sigma_t) | p_if * (R_out^2 + R_if^2) / (R_out^2 - R_if^2) | 125.0000 MPa | | Max Slip-Free Torque (T_max) | 2 * PI() * R_if^2 * L_hub * mu * p_if / 1000 | 2,650.7188 N*m | - **Formula (Same-Material Solid-Shaft Lame Interface Pressure p_if (MPa) Formula)**: `=LET(r_if, B2, r_out, B3, del_r, B4, e_mod, B5, IF(OR(r_if <= 0, r_out <= r_if, del_r < 0, e_mod <= 0), "Invalid Shrink-Fit Geometry", ROUND(((e_mod * del_r) / (2 * r_if)) * (1 - (r_if / r_out)^2), 4)))` - **Formula (Maximum Slip-Free Shrink-Fit Torque Capacity T_max (N*m) Formula)**: `=LET(r_if, B2, r_out, B3, del_r, B4, e_mod, B5, mu_f, B6, l_hb, B7, IF(OR(r_if <= 0, r_out <= r_if, del_r < 0, e_mod <= 0, mu_f < 0, l_hb <= 0), "Invalid Shrink-Fit Geometry", LET(p_int, ((e_mod * del_r) / (2 * r_if)) * (1 - (r_if / r_out)^2), ROUND((2 * PI() * (r_if^2) * l_hb * mu_f * p_int) / 1000, 4))))` ### Lame Thick-Walled Cylinder Hoop & Radial Stress (Pressure Vessels) - **URL**: https://sheets.arte-soft.com/en/learn/lame-thick-walled-pressure-vessel-hoop-and-radial-stress/ - **Summary**: Calculate inner-bore peak tensile hoop stress sigma_theta = P_i * (r_o^2 + r_i^2) / (r_o^2 - r_i^2) and outer-surface hoop stress in hydraulic cylinders, gun barrels, and autoclaves where t / r_i > 0.10. *Table — Why thin-wall P*r/t underpredicts thick hydraulic-cylinder bore stress by 67%!:* | Stress Location (P_i = 80 MPa, r_i = 50 mm, r_o = 100 mm) | Formula | Stress Value (MPa) | Comparison vs Thin-Wall | | --- | --- | --- | --- | | Inner Bore Max Hoop Stress | Pi * (ro^2 + ri^2) / (ro^2 - ri^2) | 133.33 MPa (Peak Tensile!) | +66.7% above thin-wall! | | Outer Surface Hoop Stress | 2 * Pi * ri^2 / (ro^2 - ri^2) | 53.33 MPa | 2.5x lower than inner bore | | Naive Thin-Wall P*ri / (ro-ri) | 80 * 50 / 50 | 80.00 MPa (Unsafe!) | Only valid when t/ri <= 0.10 | - **Formula (Lamé Peak Inner-Bore Hoop Stress sigma_theta,max (MPa))**: `=IF(OR(B3 <= 0, B4 <= B3), "Outer Radius ro Must Exceed ri", ROUND(B2 * (((B4 ^ 2) + (B3 ^ 2)) / ((B4 ^ 2) - (B3 ^ 2))), 2))` - **Formula (Lamé Outer-Wall Hoop Stress (Strain-Gauge Measurable Surface Stress))**: `=ROUND((2 * B2 * (B3 ^ 2)) / ((B4 ^ 2) - (B3 ^ 2)), 2)` ### Lancaster Characteristics Shadow Price & Frontier Formula - **URL**: https://sheets.arte-soft.com/en/learn/lancaster-characteristics-product-attribute-shadow-price-efficiency-frontier/ - **Summary**: Solve Kelvin Lancaster’s (1966) 2x2 Hedonic Attribute Shadow Prices (pi_1, pi_2) from two frontier goods and test whether a third competing SKU expands or falls inside the Characteristics Efficiency Frontier. *Table — Price product attributes—not SKU labels—along Kelvin Lancaster’s Efficiency Frontier!:* | Lancaster Characteristics Metric (A:$12->(6,2), B:$15->(3,6), C:(4.5,4) @ $15) | Formula | Verified Output | | --- | --- | --- | | Characteristic 1 Shadow Price pi_1 | (P_A * z_2B - P_B * z_2A) / (z_1A*z_2B - z_2A*z_1B) | $1.40 / unit | | Characteristic 2 Shadow Price pi_2 | (z_1A * P_B - z_1B * P_A) / (z_1A*z_2B - z_2A*z_1B) | $1.80 / unit | | SKU C Frontier Parity Price P_C* | pi_1 * z_1C + pi_2 * z_2C | $13.50 (50/50 Blend of A & B) | | Competitive Frontier Verdict (@ $15) | P_C vs P_C* | Dominated Inside Frontier (Overpriced) | - **Formula (Cramer’s-Rule Attribute Shadow Price & Parity Price Formula)**: `=LET(p_a, B2, z_1a, B3, z_2a, B4, p_b, B5, z_1b, B6, z_2b, B7, z_1c, B8, z_2c, B9, dt_z, z_1a * z_2b - z_2a * z_1b, IF(OR(p_a <= 0, p_b <= 0, B10 <= 0, dt_z = 0), "Collinear or Invalid Goods", LET(pi_1, (p_a * z_2b - p_b * z_2a) / dt_z, pi_2, (z_1a * p_b - z_1b * p_a) / dt_z, IF(OR(pi_1 <= 0, pi_2 <= 0), "Baseline Good Dominated", ROUND(pi_1 * z_1c + pi_2 * z_2c, 2)))))` - **Formula (Lancaster Efficiency-Frontier Dominance Verdict Formula)**: `=IF(ISTEXT(E4), E4, IF(ABS(B10 - E4) < 0.001, "On Frontier (Exact Blend Parity)", IF(B10 < E4, "Expands Frontier Outward (Competitive)", "Dominated Inside Frontier (Overpriced)")))` ### Lanchester’s Square & Linear Laws Formula: Concentration Advantage & Remaining Force - **URL**: https://sheets.arte-soft.com/en/learn/lanchester-linear-and-square-law-attrition-parity-formula/ - **Summary**: Model competitive market-share and operations-research engagements using Frederick Lanchester’s Square Law (alpha * A_0^2 vs beta * B_0^2), parity threshold, and surviving resource capacity. *Table — Why 2x market concentration delivers 4x competitive power under Lanchester’s Square Law!:* | Competitor B Scale (A_0=100, alpha=0.09, beta=0.16) | Square-Law Power Ratio | Outcome & Surviving A Capacity | | --- | --- | --- | | B_0 = 60 (Power = 576 vs 900) | 1.5625 (> 1.00) | A Wins with 60.00 surviving units | | B_0 = 75 (Exact Parity: 0.16*5625 = 900) | 1.0000 | Mutual exhaustion (0.00 remaining) | | B_0 = 85 (Power = 1,156 vs 900) | 0.7785 (< 1.00) | Insufficient Force A — Below Square-Law Parity | - **Formula (Surviving Force A Capacity Under Lanchester’s Square Law)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Inputs Must Be Positive", IF(B3 * (B2 ^ 2) < B5 * (B4 ^ 2), "Below Square-Law Parity — Adversary Prevails", ROUND(SQRT((B2 ^ 2) - (B5 / B3) * (B4 ^ 2)), 2)))` - **Formula (Lanchester Square-Law Competitive Power Ratio (alpha * A_0^2) / (beta * B_0^2))**: `=IF(OR(B4 <= 0, B5 <= 0), 0, ROUND((B3 * (B2 ^ 2)) / (B5 * (B4 ^ 2)), 4))` ### Rent’s Rule IC Pin Count & Chiplet I/O Formula - **URL**: https://sheets.arte-soft.com/en/learn/landman-russo-rents-rule-ic-pin-count-and-fanout-wiring-formula/ - **Summary**: Calculate Landman-Russo Rent’s Rule Signal Terminal Count T = k * N_gates^p, External I/O Pins per Gate Locality Ratio, Package Micro-Bump Surplus/Deficit, and Pin-Limited vs Core-Limited Die Status. *Table — Size BGA package balls and 2.5D chiplet micro-bumps with Landman-Russo Rent’s Rule!:* | Rent’s Rule Packaging Metric (N=1,000,000 Gates, k=4, p=0.50, Limit=3,000 Pins) | Formula | Verified Output | | --- | --- | --- | | Predicted Signal Pins T | ROUND(k_Rent * (N_gates ^ p_Rent), 0) | 4,000 pins (2,000 @ N=250k) | | External Pins per Gate Ratio | T / N_gates | 0.0040 (k * N^(p - 1)) | | Pin Excess Over Package Cap | T - Package_Signal_Limit | +1,000 pins (-1,000 @ N=250k) | | Die I/O Bottleneck Status | T > Package_Limit Check | Pin-Limited (Requires SerDes or 2.5D Interposer) | - **Formula (Landman-Russo Rent’s Rule Terminal Count Formula)**: `=LET(n_gt, B2, k_rn, B3, p_rn, B4, pk_l, B5, IF(OR(n_gt < 1, k_rn < 1, p_rn <= 0, p_rn >= 1, pk_l < 1), "Invalid Rent Parameter", ROUND(k_rn * (n_gt ^ p_rn), 0)))` - **Formula (Random-Logic ASIC Exponent Sensitivity (p = 0.60))**: `=IF(ISTEXT(E2), E2, IF(E2 > B5, "Pin-Limited (Requires SerDes or 2.5D Interposer)", "Core-Limited (Fits Package I/O Budget)"))` ### Langelier Saturation (LSI) & Ryznar Stability (RSI) Formula - **URL**: https://sheets.arte-soft.com/en/learn/langelier-saturation-index-lsi-and-ryznar-stability-calcium-scaling-formula/ - **Summary**: Calculate AWWA / ASTM D3739 Calcium Carbonate Saturation pHs, Langelier Saturation Index LSI (pH - pHs), Ryznar Stability Index RSI (2*pHs - pH), and Scale vs Corrosion Regime. *Table — Calcium carbonate has retrograde solubility—heating cooling water drops pHs and precipitates scale!:* | ASTM D3739 Water-Stability KPI (pH 8.20, 400 TDS, 35°C, 200 Ca, 160 Alk) | Formula | Verified Output | | --- | --- | --- | | CaCO3 Saturation pHs | (9.3 + A + B) - (C + D) | 7.26 (8.68 Soft Water) | | Langelier Index LSI | Measured_pH - Unrounded_pHs | +0.94 (-1.88 Corrosive) | | Ryznar Stability Index RSI | 2 * Unrounded_pHs - Measured_pH | 6.31 (10.56 Aggressive) | | Water-Chemistry Diagnostic | LSI > 0.5 Scale / LSI < -0.5 Corrosive | SCALE FORMING: LSI > 0.5 | - **Formula (ASTM D3739 Langelier LSI & Ryznar RSI Formula)**: `=LET(ph_m, B2, td_s, B3, tm_c, B4, ca_h, B5, al_k, B6, IF(OR(ph_m < 4, ph_m > 11, td_s < 10, td_s > 10000, tm_c < 0, tm_c > 95, ca_h < 1, al_k < 1), "Invalid Water Chemistry Input", LET(f_a, (LOG10(td_s) - 1) / 10, f_b, -13.12 * LOG10(tm_c + 273) + 34.55, f_c, LOG10(ca_h) - 0.4, f_d, LOG10(al_k), ph_s, (9.3 + f_a + f_b) - (f_c + f_d), ROUND(ph_m - ph_s, 2))))` - **Formula (Soft Low-Alkalinity Corrosive Distribution Water Check (pH 6.80, Ca = 40, Alk = 30))**: `=IF(ISTEXT(E3), E3, IF(E3 > 0.5, "SCALE FORMING: LSI > 0.5", IF(E3 < -0.5, "CORROSIVE: LSI < -0.5", "BALANCED: -0.5..0.5")))` ### Langevin Function L(x) = coth(x) - 1/x for Superparamagnetic Nanoparticles - **URL**: https://sheets.arte-soft.com/en/learn/langevin-classical-paramagnetism-and-superparamagnetic-nanoparticle/ - **Summary**: Evaluate Paul Langevin’s magnetization curve M / M_sat = coth(x) - 1/x as a function of magnetic-to-thermal energy ratio x = (mu * B) / (k_B * T) for MRI iron-oxide ferrofluids and dielectric dipole alignment. *Table — Model hysteresis-free MRI ferrofluid & nanoparticle saturation from weak field to full alignment!:* | Zeeman-to-Thermal Ratio x = mu*B / (kB*T) | Langevin Alignment Fraction L(x) | Magnetite M (kA/m, Msat = 446) | Physical Alignment Regime | | --- | --- | --- | --- | | x = 0.50 (Weak Field Linear) | 0.1640 (~x / 3 = 0.1667) | 73.13 kA/m | Linear Curie Susceptibility | | x = 2.00 (Intermediate Field) | 0.5373 | 239.64 kA/m | Nonlinear Knee Region | | x = 6.00 (High Field Saturation) | 0.8333 (~1 - 1/x) | 371.65 kA/m | Near-Saturation Ferrofluid | - **Formula (Exact Langevin Alignment Function L(x) = coth(x) - 1/x)**: `=IF(B2 < 0, "Invalid Langevin Ratio", IF(B2 = 0, 0, ROUND(((EXP(B2) + EXP(-B2)) / (EXP(B2) - EXP(-B2))) - (1 / B2), 4)))` - **Formula (Superparamagnetic Magnetization M = M_sat * L(x) (kA/m))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Langevin Ratio", IF(B2 = 0, 0, ROUND(B3 * (((EXP(B2) + EXP(-B2)) / (EXP(B2) - EXP(-B2))) - (1 / B2)), 2)))` ### Langmuir & Freundlich Adsorption Isotherm Capacity formulas - **URL**: https://sheets.arte-soft.com/en/learn/langmuir-and-freundlich-adsorption-isotherm-capacity-formulas/ - **Summary**: Compare equilibrium Langmuir and Freundlich uptake for a hypothetical solute/adsorbent system with explicit concentration and loading units. *Table — Equilibrium uptake is not a filter sizing calculation:* | Adsorption Isotherm Model | Formula | C_e = 12 mg/L (q_max=120, KL=0.25, KF=35, n=2.5) | High C_e = 4,000 mg/L | | --- | --- | --- | --- | | Langmuir Monolayer q_e | (B2 * B3 * B4) / (1 + B3 * B4) | 360 / 4 = 90.00 mg/g (75% sites) | 119.88 mg/g (-> q_max 120) | | Surface Coverage Fraction theta | (B3 * B4) / (1 + B3 * B4) | 3 / 4 = 0.7500 | 0.9990 | | Freundlich Heterogeneous q_e | B5 * (B4 ^ (1 / B6)) | 35 * (12 ^ 0.4) = 94.57 mg/g | Unsaturated power law | - **Formula (Langmuir Monolayer Equilibrium Uptake q_e (mg / g))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0),"Invalid inputs",ROUND((B2 * B3 * B4) / (1 + B3 * B4), 2)))` - **Formula (Freundlich Power-Law Uptake q_e = K_F * C_e^(1 / n))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0),"Invalid inputs",ROUND(B5 * (B4 ^ (1 / B6)), 2)))` - **Formula (Langmuir fractional coverage)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<=0,B6<=0),"Invalid inputs",ROUND(B3*B4/(1+B3*B4),4)))` ### Langmuir-Hinshelwood Bimolecular Surface Kinetics Formula & Self-Inhibition Peak - **URL**: https://sheets.arte-soft.com/en/learn/langmuir-hinshelwood-bimolecular-surface-reaction-rate-inhibition/ - **Summary**: Calculate competitive bimolecular Langmuir-Hinshelwood catalytic reaction rate r = k_s * K_A * P_A * K_B * P_B / (1 + K_A * P_A + K_B * P_B)^2 and optimal reactant partial pressure P_A,opt = (1 + K_B * P_B) / K_A. *Table — Why feeding MORE CO to a Pt catalyst can crash oxidation rate — Langmuir-Hinshelwood self-inhibition!:* | P_A Regime (k_s = 2.50, K_A = 4.0 bar^-1, K_B = 1.5 bar^-1, P_B = 0.80 bar) | Coverage theta_A | Coverage theta_B | Catalytic Rate r_LH | | --- | --- | --- | --- | | Lean P_A = 0.10 bar | 0.1538 | 0.4615 | 0.1775 mol/(g·s) | | Near-Optimal P_A = 0.50 bar | 0.4762 | 0.2857 | 0.3401 mol/(g·s) | | Exact Volcano Peak P_A,opt = 0.55 bar | 0.5000 | 0.2727 | 0.3409 mol/(g·s) | | Self-Poisoned P_A = 3.00 bar (-1st Order Tail) | 0.8451 | 0.0845 | 0.1785 mol/(g·s) | - **Formula (Competitive Bimolecular Langmuir-Hinshelwood Rate r_LH)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 < 0), "Requires Positive Rate/Adsorption Constants & P >= 0", ROUND((B2 * B3 * B4 * B5 * B6) / ((1 + B3 * B4 + B5 * B6) ^ 2), 4))` - **Formula (Optimal Reactant Partial Pressure P_A,opt = (1 + K_B * P_B) / K_A Maximizing Rate)**: `=IF(OR(B3 <= 0, B5 <= 0, B6 < 0), "Requires Positive Adsorption Constants & P_B >= 0", ROUND((1 + B5 * B6) / B3, 4))` ### Langmuir Probe Plasma Diagnostics: Bohm Speed & Ion Saturation Current Formula - **URL**: https://sheets.arte-soft.com/en/learn/langmuir-probe-electron-temperature-and-bohm-ion-current/ - **Summary**: Calculate the Bohm acoustic ion sheath entry speed u_B = SQRT(e * T_e_eV / m_i) in m/s and Langmuir probe ion saturation current I_sat = 0.61 * e * n_e * A_p * u_B in mA for RF etch and thruster plasmas. *Table — Measure plasma density ne and electron temperature Te inside RF etch chambers!:* | Plasma Species (ne = 10^17 m^-3, Ap = 0.25 cm^2) | Electron Temp Te (eV) | Bohm Sheath Speed u_B (m/s) | Ion Saturation Current I_sat (mA) | | --- | --- | --- | --- | | Argon ICP Etch (40.00 amu) | Te = 4.0 eV | 3,106.2 m/s | 0.759 mA | | Hotter Argon Electron Tail | Te = 16.0 eV (4x Te) | 6,212.4 m/s (2.0x u_B) | 1.518 mA (2.0x I_sat) | | Xenon Hall Thruster (131.29 amu) | Te = 4.0 eV | 1,714.5 m/s | 0.419 mA | - **Formula (Bohm Sheath Ion-Acoustic Entry Velocity u_B (m/s))**: `=IF(OR(B3 <= 0, B5 <= 0), "Invalid Plasma Inputs", ROUND(SQRT((1.6021766e-19 * B3) / (B5 * 1.660539e-27)), 1))` - **Formula (Langmuir Probe Bohm Ion Saturation Current I_sat (Milliamperes, mA))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Plasma Inputs", ROUND(0.61 * 1.6021766e-19 * B2 * (B4 * 0.0001) * SQRT((1.6021766e-19 * B3) / (B5 * 1.660539e-27)) * 1000, 3))` ### Law of Laplace Cardiac & Aneurysm Wall Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/laplace-ventricular-and-aneurysm-wall-stress-sphere-vs-cylinder-formula/ - **Summary**: Calculate Spherical Left-Ventricular Myocardial Afterload Wall Stress (P*r)/(2*h), Cylindrical Aortic Aneurysm Circumferential Hoop Stress (P*r)/h in mmHg and kPa, and Geometric Stress Amplifier r/(2*h). *Table — Distinguish spherical ventricular afterload (P*r / 2h) from cylindrical aneurysm hoop stress (P*r / h)!:* | Laplace Biomechanical Metric (P=150 mmHg, r=3.0 cm, h=1.0 cm) | Formula | Verified Output | | --- | --- | --- | | Spherical LV Wall Stress (mmHg) | (Pressure * Radius) / (2 * Thickness) | 225.00 mmHg (675.00 @ r=4.5, h=0.5) | | Cylindrical Hoop Stress (mmHg) | (Pressure * Radius) / Thickness | 450.00 mmHg (1,350.00 @ Dilated) | | Cylindrical Hoop Stress (kPa) | Cylindrical_mmHg * 0.13332 | 59.99 kPa | | Spherical Geometric Ratio r/(2h) | Inner_Radius / (2 * Wall_Thickness) | 1.5000 | - **Formula (Cylindrical Hoop Stress (kPa) & Spherical Wall Stress Formula)**: `=LET(pr_m, B2, rd_c, B3, th_c, B4, IF(OR(pr_m <= 0, rd_c <= 0, th_c <= 0), "Invalid Hemodynamic Geometry", ROUND(((pr_m * rd_c) / th_c) * 0.13332, 2)))` - **Formula (Dilated Cardiomyopathy / Thin-Wall Aneurysm Remodeling Check (r = 4.5 cm, h = 0.5 cm))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Hemodynamic Geometry", ROUND((B2 * B3) / (2 * B4), 2))` ### Lapple Cyclone Cut-Diameter (d50) & Grade Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/lapple-cyclone-dust-collector-cut-diameter-d50-and-collection-efficiency/ - **Summary**: Calculate Lapple Reverse-Flow Cyclone 50% Cut-Size Diameter d_p50 (µm), Fractional Grade Collection Efficiency (%), Dust Penetration (%), and 8-Velocity-Head Pressure Drop (Pa). *Table — Turning down boiler gas flow hurts cyclone dust capture—lower inlet velocity coarsens d_p50!:* | Lapple Cyclone Metric (Bc = 0.25 m, Ne = 5, Vi = 16 m/s, rho_p = 2,500 kg/m³) | Formula | Verified Output | | --- | --- | --- | | 50% Cut-Size Diameter d_p50 (µm) | 10^6 * SQRT(9*mu*Bc / (2*PI()*Ne*Vi*rho_p)) | 5.68 µm (8.03 µm @ 8 m/s) | | 15 µm Grade Efficiency (%) | (1 / (1 + (d_p50 / d_p)^2)) * 100 | 87.47% (77.73% @ 8 m/s) | | 15 µm Particulate Penetration (%) | 100 - Grade_Efficiency_Pct | 12.53% (22.27% @ 8 m/s) | | 8-Head Pressure Drop (Pa) | 0.5 * 1.2 * Vi^2 * 8 | 1,228.80 Pa (307.20 Pa @ 8 m/s) | - **Formula (Lapple Cut-Diameter & Fractional Grade Efficiency Formula)**: `=LET(mu_g, B2, bc_w, B3, ne_t, B4, vi_s, B5, rh_p, B6, dp_u, B7, IF(OR(mu_g <= 0, bc_w <= 0, ne_t < 1, vi_s <= 0, rh_p < 100, dp_u <= 0), "Invalid Cyclone Input", LET(d_50, 1000000 * SQRT((9 * mu_g * bc_w) / (2 * PI() * ne_t * vi_s * rh_p)), ROUND((1 / (1 + (d_50 / dp_u) ^ 2)) * 100, 2))))` - **Formula (50% Turndown Velocity Loss Check (Set Inlet Velocity V_i = 8.0 m/s))**: `=IF(ISTEXT(E3), E3, ROUND(0.5 * 1.2 * (B5 ^ 2) * 8, 2))` ### LARGE and SMALL with criteria: Nth highest or lowest value by group - **URL**: https://sheets.arte-soft.com/en/learn/large-and-small-with-criteria-filter/ - **Summary**: Combine LARGE or SMALL with FILTER to retrieve the 2nd largest deal or 2nd fastest time inside a category—beyond MAXIFS and MINIFS. *Table — Go beyond 1st place (MAXIFS / MINIFS) to 2nd and 3rd place:* | Tier (A) | DealValue (B) | Enterprise Rank | | --- | --- | --- | | Enterprise | 50000 | 3rd largest (1st smallest) | | SMB | 90000 | (excluded) | | Enterprise | 120000 | 1st largest | | Enterprise | 85000 | 2nd largest | - **Formula (Conditional LARGE and SMALL formulas)**: `=IF(OR(D2<1, D2<>INT(D2)), "Invalid rank", IF(SUMPRODUCT(--(A2:A5=C2)) < D2, "Not enough rows", LARGE(FILTER(B2:B5, A2:A5=C2), D2)))` - **Formula (Conditional SMALL formula)**: `=SMALL(FILTER(B2:B5, A2:A5=C2), 1)` ### LARGE, SMALL, and RANK.EQ: extract Nth values and handle ties - **URL**: https://sheets.arte-soft.com/en/learn/large-small-rank-top-bottom-values/ - **Summary**: Pull the 1st, 2nd, or 3rd highest and lowest numbers without sorting the table, see how tied scores repeat in LARGE and skip ranks in RANK.EQ, and catch #NUM! bounds. *Table — Four audit scores including a tie for first place:* | Branch (A) | Score (B) | RANK.EQ(B, $B$2:$B$5) | | --- | --- | --- | | Branch A | 92 | 1 | | Branch B | 85 | 3 | | Branch C | 92 | 1 | | Branch D | 74 | 4 | - **Formula (How LARGE and SMALL treat duplicate values)**: `=LARGE(B2:B5,E2)` - **Formula (Competition ranking in RANK.EQ and out-of-range k)**: `=RANK.EQ(B3,$B$2:$B$5)` ### Larson-Miller Creep-Rupture Life & Monkman-Grant Formula - **URL**: https://sheets.arte-soft.com/en/learn/larson-miller-creep-rupture-parameter-and-monkman-grant-life-formula/ - **Summary**: Calculate Superalloy Log10 Creep-Rupture Hours from the Larson-Miller Parameter LMP = (T_K / 1000)*(C_LM + LOG10(t_r)), Predicted Rupture Life t_r (hours), Monkman-Grant Steady-State Creep Rate, and Overhaul Life Margin. *Table — See why a 100 K hot-streak slashes jet-turbine superalloy creep life 100-fold!:* | Larson-Miller Creep Metric (LMP=26.4, C=20, T=1,100 K, CMG=0.05, TBO=2,500 hr) | Formula | Verified Output | | --- | --- | --- | | Log10 Creep-Rupture Hours | (1000 * LMP) / Temp_K - C_LM | 4.0000 (2.0000 @ 1,200 K) | | Predicted Rupture Life tr (hr) | 10 ^ ((1000 * LMP) / Temp_K - C_LM) | 10,000.00 hr (100.00 hr @ 1,200 K) | | Monkman-Grant Creep (ustr/hr) | (C_MG / Rupture_Life_hr) * 10^6 | 5.00 ustrain/hr (500 @ 1,200 K) | | Overhaul Life Ratio (x) | Predicted_Rupture_hr / Overhaul_hr | 4.00x (0.04x @ 1,200 K Overheat) | - **Formula (Larson-Miller Creep-Rupture Life Inversion Formula)**: `=LET(lm_p, B2, c_lm, B3, tp_k, B4, c_mg, B5, ov_h, B6, ex_p, (1000 * lm_p) / tp_k - c_lm, IF(OR(lm_p <= 0, c_lm < 10, c_lm > 35, tp_k < 300, ex_p > 9, ex_p < -2, c_mg <= 0, ov_h <= 0), "Invalid Creep-Rupture Regime", ROUND(10 ^ ex_p, 2)))` - **Formula (1,200 K Combustor Hot-Streak Overheat Check (+100 K Temperature Spike))**: `=IF(ISTEXT(E3), E3, ROUND((B5 / E3) * 1000000, 2))` ### Laser Cladding Dilution Ratio & Powder Catchment Formula - **URL**: https://sheets.arte-soft.com/en/learn/laser-cladding-directed-energy-deposition-clad-dilution-ratio-and-powder-catchment/ - **Summary**: Calculate Metallographic Clad Dilution Ratio (%), Deposited Alloy Mass Rate (g/min), Coaxial Powder Catchment Efficiency (%), and Specific Laser Energy (J/mm²). *Table — Turn up laser power to "fuse better" during Inconel 625 cladding and 35% iron dilution ruins offshore subsea corrosion resistance!:* | ISO 15614-7 Laser Cladding KPI (Inconel 8.44 g/cm³, 24 g/min, D=3.2 mm) | Formula | Verified Output | | --- | --- | --- | | Metallographic Dilution D (%) | (Melt_Area_mm2 / (Clad_mm2 + Melt_mm2)) * 100 | 9.52% (35.38% IRON CONTAMINATION @ 2.6 kW!) | | Deposited Clad Rate (g/min) | ((Clad_Area_mm2 * v_mm_s * 60) / 1000) * rho | 20.21 g/min (8.51 g/min @ slow 8 mm/s) | | Powder Catchment Eff (%) | (Deposited_g_min / Powder_Feed_g_min) * 100 | 84.2% (35.4% ricochet waste @ 2.6 kW) | | Specific Laser Energy (J/mm²) | Laser_Power_W / (Spot_Diam_mm * v_mm_s) | 40.18 J/mm² (101.56 J/mm² over-melted!) | - **Formula (DED Metallographic Dilution, Mass Deposition & Specific Laser Fluence Formula)**: `=LET(ac_m, B2, am_m, B3, vs_m, B4, mf_g, B5, rc_g, B6, pl_w, B7, ds_m, B8, md_g, ((ac_m * vs_m * 60) / 1000) * rc_g, IF(OR(ac_m <= 0.05, am_m < 0, vs_m <= 0.5, mf_g <= 0.5, rc_g < 2, rc_g > 20, pl_w <= 50, ds_m <= 0.2, md_g > mf_g), "Invalid Cladding Input", ROUND(pl_w / (ds_m * vs_m), 2)))` - **Formula (Over-Powered 2,600 W / 8 mm/s Iron-Dilution Reject Check)**: `=IF(ISTEXT(E5), E5, ROUND((B3 / (B2 + B3)) * 100, 2))` ### Fiber-Laser Cutting Pierce Time, Kerf & Cycle Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/laser-cutting-kerf-width-assist-gas-pierce-time-and-nested-part-cycle-time/ - **Summary**: Calculate Total Pierce Dwell Time (s), Contour Cutting Time (s), Total Part Cycle Time Including Rapid Moves (s), Gross Parts Per Hour, and CNC Toolpath Kerf Offset (mm). *Table — On perforated plates, oxygen/nitrogen pierce dwell time often rivals actual laser cutting time!:* | Fiber-Laser Quoting KPI (1,840 mm Cut, 12 Pierces @ 0.45 s, 4.8 m/min, Kerf=0.22) | Formula | Verified Output | | --- | --- | --- | | Total Pierce Dwell Time (sec) | Pierce_Count * Pierce_Dwell_sec | 5.40 s (21.60 s @ 1.80 s thick plate!) | | Contour Cutting Time (sec) | (Cut_Perim_mm / (Cut_Feed_m_min*1000))*60 | 23.00 s (69.00 s @ 1.60 m/min plate) | | Total Part Cycle Time (sec) | Pierce_s + Cut_s + Rapid_Move_s | 29.00 s (91.20 s @ thick plate) | | CNC Half-Kerf Beam Offset (mm) | Laser_Kerf_Width_mm / 2 | 0.110 mm (0.180 mm @ 0.36 mm kerf) | - **Formula (CNC Fiber-Laser Cycle Time & Half-Kerf G41/G42 Offset Formula)**: `=LET(lc_m, B2, np_c, B3, tp_s, B4, vc_m, B5, lr_m, B6, vr_m, B7, kw_m, B8, IF(OR(lc_m <= 0, np_c < 1, tp_s < 0, vc_m <= 0, lr_m < 0, vr_m <= vc_m, kw_m <= 0, kw_m > 2), "Invalid Laser Input", ROUND(kw_m / 2, 3)))` - **Formula (Thick Oxygen-Cut Carbon-Steel Plate Pulse-Pierce Check (Set t_pierce = 1.80 s, V_cut = 1.60 m/min, Kerf = 0.36 mm))**: `=IF(ISTEXT(E5), E5, ROUND(B3 * B4 + (B2 / (B5 * 1000)) * 60 + (B6 / (B7 * 1000)) * 60, 2))` ### LPBF Metal 3D Printing Volumetric Energy Density Formula - **URL**: https://sheets.arte-soft.com/en/learn/laser-powder-bed-fusion-lpbf-volumetric-energy-density-and-build-rate-formula/ - **Summary**: Calculate Linear Energy Density P/v (J/mm), Volumetric Energy Density VED = P/(v*h*t) (J/mm³), Theoretical Laser Melt Build Rate (cm³/hr), and Lack-of-Fusion vs Keyhole Porosity Window. *Table — Too little J/mm³ leaves unmelted Lack-of-Fusion voids—while too much J/mm³ drills vapor Keyhole bubbles!:* | LPBF Melt-Pool KPI (P=285 W, v=960 mm/s, Hatch h=0.11 mm, Layer t=0.04 mm) | Formula | Verified Output | | --- | --- | --- | | Linear Energy Density LED (J/mm) | Laser_Power_W / Scan_Speed_mm_s | 0.297 J/mm (0.570 @ v = 500 mm/s) | | Volumetric Energy Density (J/mm³) | P_W / (v_mm_s * Hatch_mm * Layer_mm) | 67.47 J/mm³ (129.55 @ v = 500 mm/s!) | | Theoretical Build Rate (cm³/hr) | (v_mm_s * Hatch_mm * Layer_mm * 3600)/1000 | 15.21 cm³/hr (7.92 @ v = 500 mm/s) | | Porosity Defect Window (45–105) | <45 Lack-of-Fusion; >105 Keyhole | DENSE PROCESS WINDOW (KEYHOLE @ 500!) | - **Formula (LPBF Volumetric Energy Density (VED) & Defect Regime Classification Formula)**: `=LET(pw_w, B2, vs_m, B3, ht_m, B4, lt_m, B5, IF(OR(pw_w < 20, pw_w > 2000, vs_m <= 10, ht_m <= 0.01, ht_m > 1, lt_m <= 0.005, lt_m > 0.3), "Invalid LPBF Input", LET(vd_j, pw_w / (vs_m * ht_m * lt_m), IF(vd_j < 45, "LACK-OF-FUSION RISK", IF(vd_j <= 105, "DENSE PROCESS WINDOW", "KEYHOLE POROSITY RISK")))))` - **Formula (Over-Slowed Corner Scan Keyhole Vapor-Pore Check (Set Scan Speed v = 500.0 mm/s))**: `=IF(ISTEXT(E3), E3, ROUND((B3 * B4 * B5 * 3600) / 1000, 2))` ### Find the Last Populated Row Number in Numeric, Text, and Mixed Ranges - **URL**: https://sheets.arte-soft.com/en/learn/last-populated-row-number-in-numeric-text-and-mixed-ranges/ - **Summary**: Calculate the exact worksheet row number, relative table index, and bottom-most populated value across contiguous no-blank tables vs gapped mixed text/number logs. *Table — Why ROW(first) + COUNTA(range) - 1 only works when no internal blanks exist:* | Data Structure | Formula Pattern | Internal Blank Safe? | | --- | --- | --- | | Contiguous Mixed (No Blanks) | ROW(B2) + COUNTA(B2:B8) - 1 | No (shifts up per gap) | | Gapped Mixed (Text + Numbers) | MAX of IF(ISBLANK(B2), 0, ROW(B2)) | Yes — exact worksheet row | | Last Numeric Row Only | MAX of IF(ISNUMBER(B2), ROW(B2), 0) | Yes — ignores trailing text notes | | Last Text Row Only | MAX of IF(ISTEXT(B2), ROW(B2), 0) | Yes — ignores trailing numeric totals | - **Formula (Gap-Safe Last Worksheet Row & Relative Offset Formula)**: `=INDEX(B2:B8, MAX(C2:C8) - ROW(B2) + 1)` - **Formula (Contiguous No-Blank Fast Formula)**: `=ROW(B2) + COUNTA(B2:B8) - 1` ### Lathe Turning Surface Roughness Ra & Rz Nose-Radius Formula - **URL**: https://sheets.arte-soft.com/en/learn/lathe-single-point-turning-theoretical-surface-roughness-ra-and-rz-formula/ - **Summary**: Calculate Schmaltz Kinematic Peak-to-Valley Roughness R_z (um), Exact Parabolic Arithmetic Average Roughness R_a (um), Finish Cut Cycle Time (s), and ISO N-Grade Finish Check. *Table — Roughness scales with Feed SQUARED divided by Nose Radius—so doubling feed quadruples Ra, while a 1.2 mm nose cuts Ra by a third!:* | CNC Turning Finish KPI (fn=0.20 mm/rev, Re=0.80 mm, L=150 mm, 1,200 RPM) | Formula | Verified Output | | --- | --- | --- | | Peak-to-Valley Roughness Rz (um) | ((fn_mm_rev ^ 2) / (8 * Re_mm)) * 1000 | 6.25 um (4.17 um @ Re = 1.20 mm) | | Arithmetic Avg Roughness Ra (um) | ((fn ^ 2) / (18 * SQRT(3) * Re)) * 1000 | 1.60 um (1.07 um @ Re = 1.20 mm!) | | Finish Pass Cutting Time (sec) | (Length_mm / (fn * Spindle_RPM)) * 60 | 37.50 s (unchanged @ Re = 1.20 mm!) | | Bearing Journal Ra <= 1.65 Check | Ra_um <= 1.65 um | MEETS Ra <= 1.65 um SPEC | - **Formula (Exact Parabolic Cusp Ra & Peak-to-Valley Rz Turning Roughness Formula)**: `=LET(fn_r, B2, re_m, B3, ln_c, B4, rp_s, B5, IF(OR(fn_r <= 0, re_m <= 0, fn_r > 0.8 * re_m, ln_c <= 0, rp_s <= 0), "Invalid Turning Input", LET(ra_u, ((fn_r ^ 2) / (18 * SQRT(3) * re_m)) * 1000, IF(ra_u <= 1.65, "MEETS Ra <= 1.65 um SPEC", "TOO ROUGH FOR BEARING SEAT"))))` - **Formula (Zero-Cycle-Penalty 1.20 mm Insert Nose Upgrade Check (Set Nose Radius R_e = 1.20 mm))**: `=IF(ISTEXT(E2), E2, ROUND(((B2 ^ 2) / (18 * SQRT(3) * B3)) * 1000, 2))` ### Lawton-Brody Instrumental Activities of Daily Living (IADL 0–8) - **URL**: https://sheets.arte-soft.com/en/learn/lawton-brody-instrumental-activities-of-daily-living-iadl-score/ - **Summary**: Assess executive community-living independence (0–8 points across Telephone, Shopping, Food Preparation, Housekeeping, Laundry, Transportation, Medication Responsibility, and Finances) to detect early dementia and care needs. *Table — Catch early cognitive decline years before basic bathing or feeding ADL scores drop!:* | Lawton-Brody IADL Total (0–8) | Executive Community Function | Geriatric & Memory-Clinic Action | | --- | --- | --- | | IADL = 8 / 8 | Full Autonomous Community Living | Annual Preventive Cognitive & Fall Check | | IADL = 4–7 / 8 (e.g., 5 / 8) | Partial IADL Assistance Needed | Audit Medication Adherence, Driving & Bill-Pay Safety | | IADL = 0–3 / 8 | High Executive / IADL Dependence | Supervised Assisted Living or Daily Family Caregiver | - **Formula (Total 8-Domain Lawton-Brody IADL Score (0–8 Points))**: `=IF(OR(COUNT(B2:B9) < 8, MIN(B2:B9) < 0, MAX(B2:B9) > 1), "Invalid Lawton IADL Flag (0/1)", SUM(B2:B9))` - **Formula (Community-Living Support & Medication/Finance Safety Flag)**: `=IF(OR(COUNT(B2:B9) < 8, MIN(B2:B9) < 0, MAX(B2:B9) > 1), "Invalid Lawton IADL Flag (0/1)", IF(SUM(B2:B9) = 8, "Full Community Independence (Lawton IADL 8/8)", IF(SUM(B2:B9) >= 4, "Partial Community Support Needed (Lawton IADL 4-7/8) — Arrange Targeted IADL Assistance", "High Executive Dependence (Lawton IADL 0-3/8) — Supervised Living / Daily Caregiver Required")))` ### Lazear Deferred Seniority Wage & Performance Bond Formula - **URL**: https://sheets.arte-soft.com/en/learn/lazear-deferred-compensation-mandatory-retirement-and-clawback-bond/ - **Summary**: Calculate Edward Lazear’s (1979) incentive-compatible senior wage w_2* = w_alt + s_shirk, junior underpayment performance bond VMP_1 - w_1*, and mandatory buyout/retirement surplus gap. *Table — Explain steep seniority pay profiles and mandatory retirement without falling productivity!:* | Lazear (1979) Career Contract Metric (r=10%, VMP_1=80, VMP_2=88, s=22, w_alt=77) | Formula | Verified Output | | --- | --- | --- | | No-Shirking Senior Wage (w_2*) | MAX(VMP_2, w_alt,2 + s_shirk) | $99.00k (+11k Over VMP_2) | | Competitive Zero-Profit Junior Wage (w_1*) | VMP_1 - (w_2* - VMP_2) / (1 + r) | $70.00k (-10k Under VMP_1) | | Implicit Junior Performance Bond Posted | VMP_1 - w_1* | $10.00k (Returned w/ 10% Interest) | | Career-End Mandatory-Retirement Wedge | w_2* - VMP_2 | +$11.00k Excess Senior Wage | - **Formula (Lazear Incentive-Compatible Senior & Junior Wage Profile Formula)**: `=LET(r_ds, B2, vm_1, B3, vm_2, B4, s_sk, B5, wa_2, B6, IF(OR(r_ds <= -1, vm_1 <= 0, vm_2 <= 0, s_sk < 0, wa_2 < 0, vm_2 < wa_2), "Invalid Career Contract", LET(w2_st, MAX(vm_2, wa_2 + s_sk), ROUND(vm_1 - (w2_st - vm_2) / (1 + r_ds), 2))))` - **Formula (Implicit Junior Bond & Senior Overpayment Wedge Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B3 - E3, 2))` ### Lazear-Rosen Tournament Prize Spread & Effort Formula - **URL**: https://sheets.arte-soft.com/en/learn/lazear-rosen-rank-order-tournament-prize-spread-and-effort-formula/ - **Summary**: Design rank-order promotion tournaments via Edward Lazear and Sherwin Rosen’s (1981) optimal prize spread W_1 - W_2 = p / g(0), equilibrium effort, and participation-constrained pay levels. *Table — Why CEO pay jumps 2x over VP runner-up pay even when the promotion margin is razor-thin!:* | Tournament Design Metric (p=20, g_0=0.25, k=4, U_bar=70) | Formula | Verified Output | | --- | --- | --- | | First-Best Efficient Effort (e*) | p / k = 20 / 4 | 5.00 effort units | | Optimal Promotion Prize Spread (W_1* - W_2*) | p / g_0 = 20 / 0.25 | 80.00 ($k Spread) | | Winner Promotion Compensation (W_1*) | U_bar + 0.5*k*(e*)^2 + 0.5*Spread | 160.00 ($k) | | Runner-Up Base Compensation (W_2*) | U_bar + 0.5*k*(e*)^2 - 0.5*Spread | 80.00 ($k) | - **Formula (Lazear-Rosen Optimal Tournament Prize Spread Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Tournament Input", ROUND(B2 / B3, 2))` - **Formula (Optimal Winner Prize W_1* & Runner-Up Wage W_2* Formula)**: `=LET(p_mp, B2, g_zr, B3, k_cs, B4, u_rs, B5, IF(OR(p_mp <= 0, g_zr <= 0, k_cs <= 0), "Invalid Tournament Input", LET(e_fb, p_mp / k_cs, w_mn, u_rs + 0.5 * k_cs * (e_fb ^ 2), sp_w, p_mp / g_zr, ROUND(w_mn + 0.5 * sp_w, 2))))` ### LBO Value-Creation Bridge, MoIC & Gross IRR Formula - **URL**: https://sheets.arte-soft.com/en/learn/lbo-sources-and-uses-multiple-expansion-debt-paydown-irr-bridge/ - **Summary**: Calculate Private Equity LBO Sponsor Entry/Exit Equity, Multiple on Invested Capital (MoIC), Gross IRR = MoIC^(1/T) - 1, and exact EBITDA-Growth / Multiple-Expansion / Debt-Paydown value attribution. *Table — Decompose private-equity LBO gains across operational growth, exit multiple, and deleveraging!:* | LBO Attribution Driver ($50M@10x w/$300M Debt -> $80M@11x w/$120M Debt) | Formula | Verified Output | | --- | --- | --- | | Sponsor Entry & Exit Equity ($M) | E_0*M_0 - D_0; E_T*M_T - D_T | $200.00M -> $760.00M (+$560M) | | Sponsor Gross MoIC & 5-Yr IRR | Eq_T / Eq_0; (Eq_T / Eq_0)^(1/T) - 1 | 3.8000x MoIC; 30.60% IRR | | Operational EBITDA Growth Share | ((E_T - E_0) * M_0) / (Eq_T - Eq_0) | 0.5357 (+$300M / +$560M) | | Multiple Expansion + Debt Paydown | (M_T - M_0)*E_T + (D_0 - D_T) | +$80M Mult + $180M Debt = +$260M | - **Formula (Sponsor Gross MoIC & Compound Annual Gross IRR Formula)**: `=LET(eb_0, B2, ml_0, B3, db_0, B4, yr_h, B5, eb_t, B6, ml_t, B7, db_t, B8, eq_0, eb_0 * ml_0 - db_0, eq_t, eb_t * ml_t - db_t, IF(OR(eb_0 <= 0, ml_0 <= 0, eq_0 <= 0, yr_h <= 0, eb_t <= 0, ml_t <= 0, eq_t <= 0), "Invalid or Wipeout LBO", ROUND((eq_t / eq_0) ^ (1 / yr_h) - 1, 4)))` - **Formula (Operational EBITDA-Growth Attribution Share Formula)**: `=LET(eq_0, B2 * B3 - B4, eq_t, B6 * B7 - B8, IF(OR(ISTEXT(E4), eq_t = eq_0), "Invalid or Wipeout LBO", ROUND(((B6 - B2) * B3) / (eq_t - eq_0), 4)))` ### LCM function: find shared maintenance intervals and common denominators - **URL**: https://sheets.arte-soft.com/en/learn/lcm-function-least-common-multiple/ - **Summary**: Calculate the smallest positive cycle where two or more repeating schedules align simultaneously using LCM. *Table — Find when independent service intervals coincide:* | PumpCycle (A) | ValveCycle (B) | FilterCycle (C) | Combined LCM | | --- | --- | --- | --- | | 12 | 18 | 15 | 180 days | - **Formula (Compute two-task and three-task alignment intervals)**: `=LCM(A2, B2)` - **Formula (Zero cycle returns 0; guard negative inputs)**: `=LCM(0, B2)` ### Le Chatelier Flammable Gas Mixture LEL & NFPA 69 Formula - **URL**: https://sheets.arte-soft.com/en/learn/le-chatelier-flammable-gas-mixture-lower-explosive-limit-lel-formula/ - **Summary**: Calculate Mixed Combustible-Gas Concentration in Air (vol%), Le Chatelier Mixture Lower Explosive Limit LEL_mix (vol%), Stream %LEL Fraction, and NFPA 69 25% LEL Interlock Status. *Table — Never take an arithmetic average of gas LELs—Le Chatelier’s harmonic rule governs ignition!:* | Le Chatelier Vent Safety KPI (0.60% CH4, 0.30% C3H8, 0.30% H2 in Air) | Formula | Verified Output | | --- | --- | --- | | Total Combustible Gas (vol%) | y_CH4 + y_C3H8 + y_H2 | 1.20% (0.505% Diluted) | | Le Chatelier Mixture LEL (vol%) | y_tot / (y_CH4/5.0 + y_C3H8/2.1 + y_H2/4.0) | 3.55% (3.74% Diluted) | | Stream Composite %LEL (%) | (y_CH4/5.0 + y_C3H8/2.1 + y_H2/4.0) * 100 | 33.79% LEL (13.50% Diluted) | | NFPA 69 25% LEL Interlock Gate | IF(Pct_LEL >= Limit, "TRIP: >=25% LEL", "SAFE: <25% LEL") | TRIP: >=25% LEL | - **Formula (Le Chatelier Harmonic Mixture LEL Formula)**: `=LET(y_c1, B2, y_c3, B3, y_h2, B4, lm_p, B5, y_tt, y_c1 + y_c3 + y_h2, IF(OR(y_c1 < 0, y_c3 < 0, y_h2 < 0, y_tt <= 0, y_tt >= 100, lm_p <= 5, lm_p > 50), "Invalid Gas Mixture Input", ROUND(y_tt / (y_c1 / 5 + y_c3 / 2.1 + y_h2 / 4), 2)))` - **Formula (Sweep-Air Dilution Interlock Clearance Check (0.30% CH4, 0.105% C3H8, 0.10% H2))**: `=IF(ISTEXT(E3), E3, IF(E4 >= B5, "TRIP: >=25% LEL", "SAFE: <25% LEL"))` ### Learn a formula with AI hints, then test it yourself - **URL**: https://sheets.arte-soft.com/en/learn/learn-formulas-with-ai-hints-and-checks/ - **Summary**: Practise order totals by finding a missing row, predicting the result and checking a changed input. Ask AI for a hint before asking it to solve the task. ### Ledoit-Wolf Constant-Correlation Shrinkage Covariance Formula - **URL**: https://sheets.arte-soft.com/en/learn/ledoit-wolf-linear-shrinkage-covariance-and-correlation-matrix-formula/ - **Summary**: Stabilize noisy sample covariance matrices in Excel and Arte Sheets using Ledoit-Wolf convex shrinkage Sigma_LW = (1 - delta)*S + delta*F toward a constant-correlation prior. *Table — Prevent Markowitz extreme leverage caused by noisy sample correlations:* | Matrix Quantity | Ledoit-Wolf Expression | Sample Output | | --- | --- | --- | | Sample Off-Diagonal Cov s_12 | r_12 * sig_1 * sig_2 = 0.85 * 0.06 | 0.0510 | | Constant-Corr Target F_12 | rho_bar * sig_1 * sig_2 = 0.35 * 0.06 | 0.0210 | | Shrunk Covariance Sigma_LW,12 | (1 - delta) * s_12 + delta * F_12 | 0.0390 (r_LW = 0.6500) | | 2x2 Determinant Conditioning | (sig_1^2)*(sig_2^2) - Sigma_LW,12^2 | 0.002079 (vs 0.000999 raw) | - **Formula (Ledoit-Wolf Shrunk Off-Diagonal Covariance Formula)**: `=LET(sd_a, B2, sd_b, B3, r_obs, B4, r_bar, B5, del_w, B6, IF(OR(sd_a <= 0, sd_b <= 0, ABS(r_obs) >= 1, ABS(r_bar) >= 1, del_w < 0, del_w > 1), "Invalid Shrinkage Input", LET(s_ab, r_obs * sd_a * sd_b, f_ab, r_bar * sd_a * sd_b, ROUND((1 - del_w) * s_ab + del_w * f_ab, 6))))` - **Formula (2x2 Covariance Determinant Conditioning Check Formula)**: `=ROUND((B2^2) * (B3^2) - (E4^2), 6)` ### Pitzer / Lee-Kesler Second-Virial Compressibility Factor Z = Z0 + ω·Z1 - **URL**: https://sheets.arte-soft.com/en/learn/lee-kesler-generalized-compressibility-factor-z0-z1-pitzer/ - **Summary**: Calculate real-gas compressibility factor Z = 1 + (B^0 + ω * B^1) * (P_r / T_r) using Abbott’s Pitzer-virial correlations B^0 = 0.083 - 0.422 / T_r^1.6 and B^1 = 0.139 - 0.172 / T_r^4.2. *Table — Fast non-iterative compressibility Z without solving a cubic equation!:* | Ethylene Gas Pipeline State (T = 323.15 K, Tr = 1.1447) | Reduced Pressure Pr | Virial B0 & B1 | Compressibility Factor Z | | --- | --- | --- | --- | | Atmospheric Header (P = 1.0 bar) | 0.0198 | B0 = -0.2569, B1 = 0.0415 | 0.9956 (Nearly Ideal) | | Medium-Pressure Feed (P = 15.0 bar) | 0.2976 | B0 = -0.2569, B1 = 0.0415 | 0.9341 (-6.59% Volume!) | | Invalid Temperature (T <= 0 or Tc <= 0) | Domain Guard | "Invalid Virial Inputs" | Requires Positive T, Tc, Pc | - **Formula (Generalized Pitzer Second-Virial Compressibility Factor Z)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid Virial Inputs", ROUND(1 + ((0.083 - 0.422 / ((B2 / B3) ^ 1.6)) + B6 * (0.139 - 0.172 / ((B2 / B3) ^ 4.2))) * ((B4 / B5) / (B2 / B3)), 4))` - **Formula (Simple-Fluid Reduced Second Virial Coefficient B^0 = 0.083 - 0.422 / T_r^1.6)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Virial Inputs", ROUND(0.083 - 0.422 / ((B2 / B3) ^ 1.6), 4))` ### Lee Trimming Bounds Formula for Differential Sample Attrition - **URL**: https://sheets.arte-soft.com/en/learn/lee-nonparametric-trimming-bounds-differential-sample-attrition/ - **Summary**: Correct selective follow-up attrition in randomized trials using David Lee’s (2009) excess-observer trimming fraction p_trim = (s_T - s_C) / s_T and sharp quantile-trimmed bounds. *Table — Bound treatment effects when job training or therapy changes who stays observed!:* | Lee (2009) Attrition Quantity | Formula Expression | Sample Output (8 Treated Obs) | | --- | --- | --- | | Excess-Response Trimming Share p_trim | (s_T - s_C) / s_T = (0.80 - 0.60) / 0.80 | 0.2500 (Trim 2 of 8 obs) | | Naive Unadjusted Difference | AVERAGE(B2:B9) - mu_C = 21.50 - 17.00 | +4.5000 | | Lee Sharp Lower Bound (Drop Top k) | AVERAGE(TAKE(Sorted_T, N_T - k)) - mu_C | +1.6667 (> 0 robust!) | | Lee Sharp Upper Bound (Drop Bot k) | AVERAGE(DROP(Sorted_T, k)) - mu_C | +7.1667 | - **Formula (Lee Trimming Fraction p_trim = (s_T - s_C) / s_T Formula)**: `=IF(OR(E2 <= 0, E2 > 1, E3 <= 0, E3 > E2), "Require 0 < s_C <= s_T <= 1", ROUND((E2 - E3) / E2, 4))` - **Formula (Lee Sharp Lower & Upper Trimmed Bounds Formula (Dynamic SORT + TAKE / DROP))**: `=LET(s_tr, E2, s_co, E3, mu_c, E4, IF(OR(s_tr <= 0, s_co <= 0, s_co > s_tr), "Require 0 < s_C <= s_T <= 1", LET(n_obs, ROWS(B2:B9), k_tr, ROUND(((s_tr - s_co) / s_tr) * n_obs, 0), srt_t, SORT(B2:B9), ROUND(AVERAGE(TAKE(srt_t, n_obs - k_tr)) - mu_c, 4))))` ### AR(1) & Moving-Average Order-Up-To Bullwhip Formula - **URL**: https://sheets.arte-soft.com/en/learn/lee-padmanabhan-whang-ar1-order-up-to-bullwhip-bound-formula/ - **Summary**: Calculate Lee, Padmanabhan, and Whang’s (1997) exact AR(1) MMSE order-up-to variance amplification ratio and Chen et al.’s (2000) p-period moving-average bullwhip lower bound. *Table — Prove why rational order-up-to replenishment amplifies upstream variance!:* | Theoretical Bullwhip Model (rho=0.60, L=2, p=4) | Closed-Form Variance Ratio | Verified Output | | --- | --- | --- | | Lee-Padmanabhan-Whang AR(1) MMSE | 1 + 2*rho*(1 - rho^L)*(1 - rho^(L+1))/(1 - rho) | 2.5053x | | Chen-Simchi-Levi Moving-Avg Bound (rho=0) | 1 + (2*L)/p + (2*L^2)/p^2 | 2.5000x | | i.i.d. Demand Under MMSE (rho = 0) | 1 + 0 | 1.0000x (Zero Bullwhip) | | Negatively Correlated AR(1) (rho = -0.50) | Order Smoothing (< 1.00) | 0.4375x | - **Formula (Lee-Padmanabhan-Whang (1997) Exact AR(1) MMSE Bullwhip Formula)**: `=LET(rh_ar, B2, ld_tm, B3, p_ma, B4, IF(OR(ABS(rh_ar) >= 1, ld_tm < 1, p_ma < 1), "Invalid Bullwhip Input", ROUND(1 + (2 * rh_ar * (1 - (rh_ar ^ ld_tm)) * (1 - (rh_ar ^ (ld_tm + 1)))) / (1 - rh_ar), 4)))` - **Formula (Chen-Drezner-Ryan-Simchi-Levi (2000) Moving-Average Bullwhip Formula)**: `=IF(ISTEXT(E2), E2, ROUND(1 + (2 * B3) / B4 + (2 * (B3 ^ 2)) / (B4 ^ 2), 4))` ### Revised Cardiac Risk Index (Lee RCRI) Preoperative MACE Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/lee-revised-cardiac-risk-index-rcri-preoperative-mace-formula/ - **Summary**: Calculate Thomas Lee’s ACC/AHA/CCS-endorsed 0–6 Revised Cardiac Risk Index (High-Risk Surgery, Ischemic Heart Disease, Heart Failure, Cerebrovascular Disease, Pre-op Insulin, Creatinine > 2.0 mg/dL) and Duceppe 30-day perioperative MACE risk (%). *Table — Estimate 30-day perioperative myocardial infarction, cardiac arrest, or death before noncardiac surgery!:* | Lee RCRI Total Score (0 to 6) | Original 1999 CK-MB Risk | Modern Troponin-Era 30-Day MACE (CCS 2017) | Perioperative Guideline Action | | --- | --- | --- | --- | | 0 Points | 0.4% | 3.9% | Low Risk — Proceed Without Routine Stress Testing | | 1 Point | 0.9% | 6.0% | Intermediate — Proceed if >= 4 METs (Consider BNP) | | 2 Points | 6.6% | 10.1% | Elevated Risk — Assess Functional Capacity (METs) / BNP | | >= 3 Points (3 to 6) | 11.0% | 15.0% | High Perioperative Cardiac Risk — Multidisciplinary Optimization | - **Formula (Total Lee Revised Cardiac Risk Index (0 to 6 Points))**: `=IF(B7 <= 0, "Invalid Creatinine", IF(B2 = 1, 1, 0) + IF(B3 = 1, 1, 0) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 = 1, 1, 0) + IF(B7 > 2, 1, 0))` - **Formula (CCS / Duceppe (2017) Predicted 30-Day Perioperative MACE Risk (%))**: `=IF(B7 <= 0, "Invalid Creatinine", IF((SUM(B2:B6) + IF(B7 > 2, 1, 0)) >= 3, 15, IF((SUM(B2:B6) + IF(B7 > 2, 1, 0)) = 2, 10.1, IF((SUM(B2:B6) + IF(B7 > 2, 1, 0)) = 1, 6, 3.9))))` ### LEFT function: extract a fixed-width prefix from structured codes - **URL**: https://sheets.arte-soft.com/en/learn/left-extract-first-characters/ - **Summary**: Pull a three-letter depot code from the start of consistent identifiers like NTH-014, and check what happens on shorter strings, blanks, and variable-length prefixes. *Table — Consistent three-letter depot prefixes:* | Shipment ID (A) | Extracted 3-char prefix | | --- | --- | | NTH-014 | NTH | | STH-209 | STH | | HQ | HQ | | | | - **Formula (Take the first three characters with LEFT)**: `=LEFT(A2,3)` - **Formula (Short inputs, blanks, and the fixed-width assumption)**: `=IF(A5="","",LEFT(A5,3))` ### Leland Endogenous Default Barrier, Debt Value, and Credit Spread Formula - **URL**: https://sheets.arte-soft.com/en/learn/leland-endogenous-default-barrier-tax-shield-and-optimal-coupon-formula/ - **Summary**: Price perpetual risky corporate debt, equity-chosen endogenous bankruptcy threshold V_B, and levered firm value under Leland’s (1994) structural trade-off model. *Table — Calculate the exact endogenous default boundary V_B = 56.25 by hand:* | Leland (1994) Quantity | Closed-Form Expression | Exact Output | | --- | --- | --- | | Exponent x_exp & Barrier V_B | 2*r / sig^2 = 3; V_B = ((1 - s)*C/r)*(x/(x+1)) | x = 3; V_B = 56.2500 | | Arrow-Debreu Default Price p_B | (V / V_B)^(-x_exp) = (9 / 16)^3 | 0.1780 (729 / 4096) | | Market Value of Debt D(V) | (C/r)*(1 - p_B) + (1 - alpha_bc)*V_B*p_B | 88.2089 | | Levered Firm Value v(V) | V + (s*C/r)*(1 - p_B) - alpha_bc*V_B*p_B | 116.5460 | - **Formula (Endogenous Bankruptcy Asset Threshold V_B Formula)**: `=LET(c_cp, B3, r_rf, B4, sig_a, B5, sh_rt, B6, IF(OR(c_cp <= 0, r_rf <= 0, sig_a <= 0, sh_rt < 0, sh_rt >= 1), "Invalid Leland Input", LET(x_ex, (2 * r_rf) / (sig_a^2), ROUND(((1 - sh_rt) * (c_cp / r_rf)) * (x_ex / (x_ex + 1)), 4))))` - **Formula (Risky Debt Market Value D(V) and Credit Spread Formula)**: `=LET(v_ast, B2, c_cp, B3, r_rf, B4, sig_a, B5, sh_rt, B6, al_bc, B7, IF(OR(v_ast <= 0, c_cp <= 0, r_rf <= 0, sig_a <= 0), "Invalid Leland Input", LET(x_ex, (2 * r_rf) / (sig_a^2), v_bar, ((1 - sh_rt) * (c_cp / r_rf)) * (x_ex / (x_ex + 1)), IF(v_ast <= v_bar, ROUND((1 - al_bc) * v_ast, 4), LET(p_def, (v_ast / v_bar)^(-x_ex), ROUND((c_cp / r_rf) * (1 - p_def) + (1 - al_bc) * v_bar * p_def, 4))))))` ### Leland-Pyle IPO Equity Retention Signaling Formula - **URL**: https://sheets.arte-soft.com/en/learn/leland-pyle-entrepreneurial-equity-retention-signaling-formula/ - **Summary**: Value Hayne Leland & David Pyle’s (1977) separating IPO valuation schedule V(alpha) = V_min - b*sigma^2*(LN(1 - alpha) + alpha) from insider ownership retention. *Table — Why risk-averse founders retain concentrated IPO equity to credibly signal project quality!:* | Leland-Pyle Metric (b=2, sigma^2=100, alpha=0.60, V_min=50) | Formula | Verified Output | | --- | --- | --- | | Signaled Market Valuation V(alpha) | V_min - b * sigma^2 * (LN(1 - alpha) + alpha) | 113.2581 | | Signaled Quality Premium | -b * sigma^2 * (LN(1 - alpha) + alpha) | 63.2581 | | Founder Undiversified Risk Cost | 0.5 * b * sigma^2 * alpha^2 | 36.0000 | | Zero-Retention Pooling Floor (alpha = 0) | V(0) = V_min | 50.0000 (Premium = 0.0000) | - **Formula (Leland-Pyle Separating Valuation Schedule V(alpha) Formula)**: `=LET(b_ra, B2, sg_v, B3, al_r, B4, v_mn, B5, IF(OR(b_ra <= 0, sg_v <= 0, al_r < 0, al_r >= 1), "Require 0 <= alpha < 1 and Positive Risk", ROUND(v_mn - b_ra * sg_v * (LN(1 - al_r) + al_r), 4)))` - **Formula (Signaling Welfare Cost (Undiversified CARA Risk-Bearing Deadweight Cost) Formula)**: `=LET(b_ra, B2, sg_v, B3, al_r, B4, IF(OR(b_ra <= 0, sg_v <= 0, al_r < 0, al_r >= 1), "Require 0 <= alpha < 1 and Positive Risk", ROUND(0.5 * b_ra * sg_v * (al_r^2), 4)))` ### LEMON Difficult Airway Score (0–10) & Mallampati Intubation Triage - **URL**: https://sheets.arte-soft.com/en/learn/lemon-difficult-airway-assessment-score-and-mallampati-triage/ - **Summary**: Calculate Reed’s 0–10 point Emergency Department LEMON airway assessment score (Look externally, Evaluate 3-3-2, Mallampati >= III, Obstruction, Neck mobility) to anticipate Cormack-Lehane Grade III–IV difficult laryngoscopy. *Table — Why Emergency Medicine RSI checklists combine 5 anatomical predictors into the 10-point LEMON score!:* | LEMON Mnemonic Component | Point Range | High-Risk Anatomical Trigger | | --- | --- | --- | | L — Look Externally | 0 – 4 points | Facial trauma, prominent incisors, beard, macroglossia | | E — Evaluate 3-3-2 Rule | 0 – 3 points | Mouth < 3 fingers, Mentohyoid < 3, Thyrohyoid < 2 | | M / O / N — Mallampati>=3, Obstruction, Neck | 0 – 1 pt each (0–3) | Mallampati III–IV (+1), Stridor/Mass (+1), C-Collar (+1) | - **Formula (Total LEMON Difficult Airway Score (0 to 10 Points))**: `=IF(OR(B2 < 0, B2 > 4, B3 < 0, B3 > 3, B4 < 1, B4 > 4, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid LEMON Inputs", B2 + B3 + IF(B4 >= 3, 1, 0) + B5 + B6)` - **Formula (Emergency RSI Airway Preparation Tier)**: `=IF(OR(B2 < 0, B2 > 4, B3 < 0, B3 > 3, B4 < 1, B4 > 4, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid LEMON Inputs", IF(OR(B5 = 1, B2 + B3 + IF(B4 >= 3, 1, 0) + B5 + B6 >= 4), "High Difficult-Airway Risk (Double Setup / Awake Eval)", IF(B2 + B3 + IF(B4 >= 3, 1, 0) + B5 + B6 >= 2, "Moderate Risk (Video Laryngoscope + Bougie Ready)", "Low Anatomical Risk (0-1 — Standard RSI Checklist)")))` ### LEN function: count characters and expose hidden trailing spaces - **URL**: https://sheets.arte-soft.com/en/learn/len-count-characters-and-spaces/ - **Summary**: Measure exact string length—including spaces and punctuation—to diagnose why two visually identical bin codes fail to match. *Table — Two bin labels that look identical on screen:* | Cell | Stored text | Character count | | --- | --- | --- | | A2 | BAY-04 (trailing space) | 7 | | A3 | BAY-04 | 6 | | A4 | (empty) | 0 | - **Formula (Measure every character including spaces)**: `=LEN(A2)` - **Formula (Count removable spaces before cleaning)**: `=LEN(A2)-LEN(TRIM(A2))` ### Life Table R0, Cohort Generation Time and a Leslie Projection - **URL**: https://sheets.arte-soft.com/en/learn/leslie-matrix-age-structured-population-projection-and-net-r0/ - **Summary**: Calculate lifetime recruitment, a cohort-weighted generation interval and an approximate growth rate, then project three age classes using an explicit discrete census convention. - **Formula (Net reproductive rate and the cohort mean interval)**: `=IF(E2="OK",SUMPRODUCT(B2:B4,C2:C4),E2)` - **Formula (Approximate growth is not the exact Leslie eigenvalue)**: `=IF(E2<>"OK",E2,IF(E3=0,"No reproduction: undefined",LN(E3)/E4))` *Table — A working one-step Leslie projection:* | Class | Current | Next step | | --- | --- | --- | | 1 | 100 | 140 | | 2 | 80 | 80 | | 3 | 50 | 50 | ### LET function: name intermediate calculations once inside a formula - **URL**: https://sheets.arte-soft.com/en/learn/let-function-named-intermediate-values/ - **Summary**: Store repeated sub-expressions in readable local names with LET so tiered pricing and margin formulas run cleaner and faster. *Table — Stop repeating the same sub-formula three times:* | Units (A) | Unit Price (B) | sub = A*B | Tiered Rate Rule | Net Total | | --- | --- | --- | --- | --- | | 25 | 24 | 600 | >= 500 -> 12% off | 528 | | 10 | 24 | 240 | >= 200 -> 5% off | 228 | | 8 | 25 | 200 | Exact 200 boundary -> 5% off | 190 | | 5 | 25 | 125 | < 200 -> 0% off | 125 | - **Formula (Bind subtotal and discount rate with LET)**: `=LET(sub, A2*B2, rate, IF(sub>=500, 0.12, IF(sub>=200, 0.05, 0)), ROUND(sub*(1-rate), 2))` - **Formula (Variable naming rules)**: `=LET(x, A2, y, B2, x*y)` ### Battery Levelized Cost of Storage (LCOS) Formula - **URL**: https://sheets.arte-soft.com/en/learn/levelized-cost-of-energy-lcoe-and-battery-storage-lcos-formula/ - **Summary**: Calculate utility-scale battery LCOS ($/MWh discharged) using Capital Recovery Factor r/(1 - (1 + r)^(-N)), usable DoD cycles, and round-trip charging cost P_charge / eta_rt. *Table — Catch the $18/MWh round-trip efficiency mistake: DIVIDE charging power price by eta_rt!:* | Grid Battery LCOS Component (300 $/kWh, 8%, 10 yr, 270 kWh/yr) | Formula | Verified Output | | --- | --- | --- | | Capital Recovery Factor (CRF) | r / (1 - (1 + r)^(-N)) | 0.149029 / yr | | Fixed Capex + O&M Component | ((Capex * CRF + OM) / (Cycles * DoD)) * 1,000 | 187.81 $/MWh | | Efficiency-Adjusted Charging Cost | P_charge / eta_rt | 50.00 $/MWh (Buys 1.25 MWh) | | Total Discharged LCOS | Fixed_MWh + P_charge / eta_rt | 237.81 $/MWh | - **Formula (Fixed Capex + O&M Storage Cost per Discharged MWh Formula)**: `=LET(c_kw, B2, f_om, B3, r_wc, B4, n_yr, B5, cy_y, B6, dod_f, B7, IF(OR(c_kw <= 0, f_om < 0, r_wc <= 0, n_yr < 1, cy_y <= 0, dod_f <= 0, dod_f > 1), "Invalid LCOS Input", LET(crf_v, r_wc / (1 - ((1 + r_wc)^(-n_yr))), ROUND(((c_kw * crf_v + f_om) / (cy_y * dod_f)) * 1000, 2))))` - **Formula (Total Discharged Levelized Cost of Storage (LCOS) Formula)**: `=LET(c_kw, B2, f_om, B3, r_wc, B4, n_yr, B5, cy_y, B6, dod_f, B7, p_ch, B8, et_r, B9, IF(OR(c_kw <= 0, f_om < 0, r_wc <= 0, n_yr < 1, cy_y <= 0, dod_f <= 0, dod_f > 1, et_r <= 0, et_r > 1), "Invalid LCOS Input", LET(crf_v, r_wc / (1 - ((1 + r_wc)^(-n_yr))), fx_mw, ((c_kw * crf_v + f_om) / (cy_y * dod_f)) * 1000, ROUND(fx_mw + (p_ch / et_r), 2))))` ### Levenspiel CSTR vs. PFR Reactor Volume Ratio (1st & 2nd Order) - **URL**: https://sheets.arte-soft.com/en/learn/levenspiel-cstr-vs-pfr-reactor-volume-ratio-conversion-formula/ - **Summary**: Calculate the isothermal CSTR-to-Plug-Flow-Reactor volume penalty V_CSTR / V_PFR across target conversion X (0 < X < 1) for first-order ((X / (1 - X)) / (-LN(1 - X))) and second-order (1 / (1 - X)) kinetics. *Table — See why 90% conversion of a 2nd-order reaction needs a 10x larger CSTR than a tubular PFR!:* | Target Fractional Conversion X | 1st-Order Volume Ratio V_CSTR / V_PFR | 2nd-Order Volume Ratio 1 / (1 - X) | Reactor Selection Insight | | --- | --- | --- | --- | | Moderate Conversion (X = 0.50) | 1.443x Larger CSTR | 2.00x Larger CSTR | Manageable Single-Tank Penalty | | High Conversion (X = 0.90) | 3.909x Larger CSTR | 10.00x Larger CSTR | Use PFR or 3–4 CSTRs in Series! | | Boundary Singularity (X <= 0 or X >= 1) | Complete-Conversion Guard | "Invalid Conversion (0 < X < 1)" | Infinite Volume at X -> 1 | - **Formula (1st-Order Isothermal Volume Ratio V_CSTR / V_PFR = (X / (1 - X)) / (-LN(1 - X)))**: `=IF(OR(B2 <= 0, B2 >= 1), "Invalid Conversion (0 < X < 1)", ROUND((B2 / (1 - B2)) / (-LN(1 - B2)), 3))` - **Formula (2nd-Order Isothermal Volume Ratio V_CSTR / V_PFR = 1 / (1 - X))**: `=IF(OR(B2 <= 0, B2 >= 1), "Invalid Conversion (0 < X < 1)", ROUND(1 / (1 - B2), 2))` ### Binary Phase Diagram Lever Rule: Liquid & Solid Equilibrium Mass Fractions - **URL**: https://sheets.arte-soft.com/en/learn/lever-rule-binary-phase-diagram-liquid-solid-mass-fraction/ - **Summary**: Calculate equilibrium liquid mass fraction w_L = (C0 - C_S) / (C_L - C_S) and solid mass fraction w_S = (C_L - C0) / (C_L - C_S) along a horizontal isothermal tie-line in binary alloy phase diagrams. *Table — Apply the opposite-arm tie-line balance to solder and alloy mushy zones!:* | Overall Alloy C0 (Tie-Line: CS=18%, CL=62%) | Liquid Mass Fraction w_L | Solid Mass Fraction w_S | Check Sum (w_L + w_S) | | --- | --- | --- | --- | | C0 = 35 wt% Sn (Plumbing Solder) | 17 / 44 = 0.3864 (38.64%) | 27 / 44 = 0.6136 (61.36%) | 1.0000 | | C0 = 50 wt% Sn (50/50 Solder) | 32 / 44 = 0.7273 (72.73%) | 12 / 44 = 0.2727 (27.27%) | 1.0000 | | Outside Two-Phase Zone (C0 = 10% < CS) | Guarded Single-Phase Alert | 100% Solid Single Phase | "Outside Tie-Line Two-Phase Region" | - **Formula (Equilibrium Liquid Mass Fraction w_L = (C0 - C_S) / (C_L - C_S))**: `=IF(OR(B3 = B4, B2 < MIN(B3, B4), B2 > MAX(B3, B4)), "Outside Tie-Line Two-Phase Region", ROUND((B2 - B3) / (B4 - B3), 4))` - **Formula (Equilibrium Solid Mass Fraction w_S = (C_L - C0) / (C_L - C_S))**: `=IF(OR(B3 = B4, B2 < MIN(B3, B4), B2 > MAX(B3, B4)), "Outside Tie-Line Two-Phase Region", ROUND((B4 - B2) / (B4 - B3), 4))` ### Leveraged ESOP Suspense-Share Release & Repurchase Formula - **URL**: https://sheets.arte-soft.com/en/learn/leveraged-esop-internal-loan-share-release-and-repurchase-obligation/ - **Summary**: Calculate ERISA / IRC §4975 Leveraged ESOP General Principal-Plus-Interest Suspense-Share Release Fraction, Shares Allocated to Employee Accounts, IRC §404(a)(9) Principal + Interest Tax Shield ($M), and IRC §409(h) Share Repurchase Obligation ($). *Table — Track both ERISA suspense-share release and emerging IRC §409(h) cash repurchase obligations!:* | Leveraged ESOP Metric (500k Suspense Sh, $4.8M / $43.2M P&I, 25% Tax, $12 FMV, 8% Put) | Formula | Verified Output | | --- | --- | --- | | ERISA P&I Release Fraction | Current_PI / (Current_PI + Future_PI) | 0.1000 (1.0000 Final Payoff Yr) | | Employee Allocated Shares (sh) | Beginning_Suspense_Shares * Release_Frac | 50,000 sh (500,000 Final Yr) | | C-Corp Principal+Int Tax Shield ($M) | Current_Loan_PI_M * Tax_Rate | $1.20M | | Cohort Repurchase Obligation ($) | Allocated_Shares * Share_FMV * Put_Rate | $48,000 ($120,000 @ $30 FMV) | - **Formula (ERISA Suspense-Share Release & IRC §409(h) Repurchase Formula)**: `=LET(sp_s, B2, pi_c, B3, pi_f, B4, tx_r, B5, fm_v, B6, pt_r, B7, IF(OR(sp_s <= 0, pi_c <= 0, pi_f < 0, tx_r < 0, tx_r >= 0.5, fm_v <= 0, pt_r < 0, pt_r > 0.5), "Invalid Leveraged ESOP Input", LET(rf_c, pi_c / (pi_c + pi_f), al_s, sp_s * rf_c, ROUND(al_s * fm_v * pt_r, 2))))` - **Formula (Deleveraging Valuation Surge & Final Loan-Payoff Checks)**: `=IF(ISTEXT(E5), E5, ROUND(B2 * (B3 / (B3 + B4)), 0))` ### Levey-Jennings QC Chart Formula: z-Score (1_2s / 1_3s), SDI & Peer CV Ratio (CVR) - **URL**: https://sheets.arte-soft.com/en/learn/levey-jennings-qc-control-limits-sdi-and-cv-ratio-formula/ - **Summary**: Monitor daily clinical laboratory quality-control runs on a Levey-Jennings chart via QC z-score (x_QC - Mean) / SD (flagging 1_2s warning and 1_3s rejection) and inter-laboratory proficiency SDI & CVR. *Table — Catch reagent drift and calibration shifts before patient results leave the analyzer!:* | Levey-Jennings / Peer QC Metric | Formula | Clinical Lab Action Threshold | | --- | --- | --- | | Daily Run z-Score (z_QC) | (x_QC - Lab_Mean) / Lab_SD | \|z\| <= 2.0 In-Control \| > 2.0 1_2s Warn \| > 3.0 1_3s Reject | | Inter-Lab Trueness Index (SDI) | (Lab_Mean - Peer_Mean) / Peer_SD | \|SDI\| < 1.0 Ideal \| 1.5–1.99 Warn \| >= 2.0 Bias Shift | | Inter-Lab Imprecision Ratio (CVR) | Lab_CV% / Peer_CV% | CVR < 1.0 Better than Peer \| >= 1.5 Excess Noise | - **Formula (Levey-Jennings Daily QC Run z-Score & 1_2s / 1_3s Status)**: `=IF(B4 <= 0, "Requires Lab QC Standard Deviation > 0", ROUND((B2 - B3) / B4, 2))` - **Formula (Westgard Single-Run 1_2s Warning / 1_3s Rejection Decision Gate + Peer SDI)**: `=IF(B4 <= 0, "Requires Lab QC Standard Deviation > 0", IF(ABS((B2 - B3) / B4) > 3, "1_3s REJECT RUN (|z| > 3s): Hold Patient Results & Troubleshoot", IF(ABS((B2 - B3) / B4) > 2, "1_2s WARNING (2s < |z| <= 3s): Check 2_2s, R_4s & 4_1s Rules", "In-Control Run (|z| <= 2s)")))` ### Levich Equation: Rotating Disk Electrode (RDE) Limiting Current vs RPM - **URL**: https://sheets.arte-soft.com/en/learn/levich-rotating-disk-electrode-limiting-current-formula/ - **Summary**: Calculate steady-state convective-diffusion limiting current iL = 0.620 * n * F * A * D^(2/3) * omega^(1/2) * nu^(-1/6) * C0 in microamps as a function of RDE rotation speed (RPM). *Table — Replace decaying Cottrell transients with steady-state hydrodynamic RDE plateaus!:* | RDE Rotation Speed (RPM) | Angular Velocity omega (rad/s) | Limiting Current iL (uA) | Hydrodynamic Scaling | | --- | --- | --- | --- | | 1,600 RPM (Standard Fuel-Cell Test) | 167.55 rad/s | 257.95 uA | Baseline Levich plateau | | 6,400 RPM (4x RPM) | 670.21 rad/s | 515.89 uA (Exact 2.0x!) | Thinner boundary layer -> 2x flux | | Zero / Invalid RPM <= 0 | No Forced Convection | Guarded Input Error | "Invalid RDE Parameters" | - **Formula (Levich RDE Mass-Transport Limiting Current iL in Microamperes (uA))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 < 0), "Invalid RDE Parameters", ROUND(1000000 * 0.62 * B2 * 96485 * B3 * (B4 ^ (2 / 3)) * (((2 * PI() * B5) / 60) ^ 0.5) * (B6 ^ (-1 / 6)) * B7, 2))` - **Formula (Angular Velocity omega = 2 * PI() * RPM / 60 (rad/s))**: `=IF(B5 <= 0, "Invalid RDE Parameters", ROUND((2 * PI() * B5) / 60, 2))` ### Levin’s Population Attributable Fraction (PAF) & Prevented Fraction Formula - **URL**: https://sheets.arte-soft.com/en/learn/levin-population-attributable-fraction-paf-and-prevented-fraction/ - **Summary**: Quantify public-health and operational defect impact using Morton Levin’s (1953) Population Attributable Fraction p_e*(RR - 1) / (1 + p_e*(RR - 1)) and protective Prevented Fraction p_cov*(1 - RR). *Table — Distinguishing excess risk among the exposed (AF_e) from population-wide burden (PAF):* | Epidemiologic / Quality Metric | Formula | Sample Value | | --- | --- | --- | | Exposed Attributable Fraction AF_e | (RR - 1) / RR (at RR = 3.0) | 0.6667 (66.67% of exposed cases) | | Levin Population PAF | p_e * (RR - 1) / (1 + p_e * (RR - 1)) (at p_e = 25%) | 0.3333 (33.33% of total cases) | | Population Prevented Fraction PF | p_cov * (1 - RR_prot) (p_cov = 60%, RR = 0.40) | 0.3600 (36.00% prevented) | - **Formula (Levin Population Attributable Fraction (PAF) Formula)**: `=IF(B3 < 1, "USE_PREVENTED_FRACTION", ROUND((B2 * (B3 - 1)) / (1 + B2 * (B3 - 1)), 4))` - **Formula (Protective Population Prevented Fraction (PF_pop) Formula)**: `=IF(B5 > 1, "NOT_PROTECTIVE", ROUND(B4 * (1 - B5), 4))` ### Lewis Gear-Tooth Bending Stress and Barth Velocity Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/lewis-gear-tooth-bending-stress-and-barth-velocity-dynamic-factor/ - **Summary**: Size spur-gear module m and face width b in Excel and Arte Sheets using Wilfred Lewis’s (1892) cantilever tooth root bending stress sigma_b = K_v * W_t / (b * m * Y). *Table — Model a loaded spur-gear tooth as a parabolic-inscribed cantilever beam:* | Spur-Gear Sizing Metric | Metric Formula (N, mm -> MPa) | Sample Output | | --- | --- | --- | | Pitch Diameter d_p (mm) | m * N_teeth = 4 * 20 | 80.00 mm | | Static Lewis Root Stress (MPa) | W_t / (b * m * Y_Lewis) = 3200 / 32 | 100.0000 MPa | | Barth Dynamic Factor K_v | (6.1 + V_pitch_m_s) / 6.1 at V = 6.1 m/s | 2.0000 | | Dynamic Root Bending Stress (MPa) | K_v * W_t / (b * m * Y_Lewis) | 200.0000 MPa | - **Formula (Static Lewis Cantilever Tooth Root Stress (MPa) Formula)**: `=IF(OR(B2 <= 0, B4 <= 0, B5 < 0, B6 <= 0), "Invalid Gear Geometry", ROUND(B5 / (B4 * B2 * B6), 4))` - **Formula (Barth Velocity-Amplified Dynamic Tooth Bending Stress Formula)**: `=LET(mod_m, B2, b_fw, B4, wt_n, B5, y_lew, B6, v_ms, B7, IF(OR(mod_m <= 0, b_fw <= 0, wt_n < 0, y_lew <= 0, v_ms < 0), "Invalid Gear Geometry", LET(k_dyn, (6.1 + v_ms) / 6.1, ROUND((k_dyn * wt_n) / (b_fw * mod_m * y_lew), 4))))` ### LIFO Reserve to FIFO Inventory, COGS & Tax Shield Formula - **URL**: https://sheets.arte-soft.com/en/learn/lifo-reserve-fifo-inventory-conversion-cogs-and-tax-shield-formula/ - **Summary**: Convert US GAAP LIFO Financial Statements to IFRS-Comparable FIFO: FIFO Ending Inventory (LIFO + Reserve), FIFO COGS (LIFO COGS - ΔReserve), Cumulative Cash Tax Saved, and LIFO Liquidation Phantom Profit Detection. *Table — Get the ΔLIFO-Reserve sign right—and catch artificial LIFO layer liquidations!:* | LIFO-to-FIFO Conversion Metric ($180M Inv, $33M -> $45M Reserve, $620M COGS, 25% Tax) | Formula | Verified Output | | --- | --- | --- | | FIFO Ending Inventory ($M) | LIFO_Inventory + Ending_LIFO_Reserve | $225.00M ($205.00M @ $25M Res) | | FIFO Adjusted COGS ($M) | LIFO_COGS - (End_Reserve - Beg_Reserve) | $608.00M ($628.00M Liquidation!) | | Cumulative Cash Tax Saved ($M) | Ending_LIFO_Reserve * Tax_Rate | $11.25M | | FIFO Retained Earnings Lift ($M) | Ending_LIFO_Reserve * (1 - Tax_Rate) | $33.75M | - **Formula (LIFO-to-FIFO Adjusted Cost of Goods Sold (COGS) Formula)**: `=LET(iv_l, B2, rs_1, B3, rs_0, B4, cg_l, B5, tx_r, B6, IF(OR(iv_l < 0, rs_1 < 0, rs_0 < 0, cg_l <= 0, tx_r < 0, tx_r >= 0.55), "Invalid LIFO Footnote Input", ROUND(cg_l - (rs_1 - rs_0), 2)))` - **Formula (LIFO Layer Liquidation Phantom-Profit Check (Set Ending LIFO Reserve = $25.00M))**: `=IF(ISTEXT(E3), E3, ROUND(B3 * (1 - B6), 2))` ### Light's Criteria for Pleural Effusion (Exudate vs Transudate) - **URL**: https://sheets.arte-soft.com/en/learn/lights-criteria-transudate-vs-exudate-pleural-effusion-formula/ - **Summary**: Classify thoracentesis pleural fluid as Exudate or Transudate using Light's 3-rule OR logic: Pleural/Serum Protein > 0.5, Pleural/Serum LDH > 0.6, or Pleural LDH > (2/3) * Serum LDH ULN. *Table — Separate hydrostatic transudates from inflammatory or malignant exudates!:* | Light's Criterion | Exudate Cutoff | Parapneumonic Case | CHF Heart Failure Case | | --- | --- | --- | --- | | 1. Pleural / Serum Protein Ratio | > 0.50 | 3.8 / 6.8 = 0.559 (POSITIVE) | 2.1 / 6.8 = 0.309 (Negative) | | 2. Pleural / Serum LDH Ratio | > 0.60 | 260 / 320 = 0.813 (POSITIVE) | 95 / 320 = 0.297 (Negative) | | 3. Pleural LDH vs (2/3)*Serum ULN (240) | > 160 IU/L | 260 > 160 (POSITIVE -> Exudate) | 95 <= 160 (ALL 3 Neg -> Transudate) | - **Formula (Light's 3-Rule OR Classification Formula)**: `=IF(OR(B3 <= 0, B5 <= 0, B6 <= 0), "Invalid Serum Lab Reference", IF(OR((B2 / B3) > 0.5, (B4 / B5) > 0.6, B4 > ((2 / 3) * B6)), "Exudative Effusion", "Transudative Effusion"))` - **Formula (Count Positive Light's Criteria (0 to 3 Score))**: `=--((B2 / B3) > 0.5) + --((B4 / B5) > 0.6) + --(B4 > ((2 / 3) * B6))` ### LIHTC Section 42 Qualified Basis, DDA Boost & Equity Formula - **URL**: https://sheets.arte-soft.com/en/learn/lihtc-section-42-qualified-basis-dda-boost-and-tax-credit-equity-formula/ - **Summary**: Calculate IRC Section 42 Low-Income Housing Tax Credit (LIHTC) Boosted Qualified Basis ($M), Annual Tax Credit ($M), 10-Year Credit Allocation ($M), and Syndicated Investor Equity Proceeds ($M). *Table — Strip out land and ineligible soft costs BEFORE applying the 130% QCT/DDA basis boost!:* | IRC §42 LIHTC Capital-Stack Metric ($30M Cost, $5M Land, 1.30x DDA, 80% Low-Inc, 9%) | Formula | Verified Output | | --- | --- | --- | | Boosted Qualified Basis ($M) | (Total_Cost - Land_Inelig) * DDA_Boost * Fraction | $26.00M ($20.00M Non-DDA) | | Annual Section 42 Credit ($M/yr) | Boosted_Qualified_Basis * Credit_Rate | $2.34M ($1.80M Non-DDA) | | 10-Year Credit Allocation ($M) | Annual_Credit * 10 | $23.40M ($18.00M Non-DDA) | | Syndicated Equity Proceeds ($M) | 10Yr_Credit_Allocation * Price_Per_Dollar | $21.06M ($16.20M Non-DDA) | - **Formula (Section 42 Qualified Basis & Syndicated Equity Formula)**: `=LET(dv_c, B2, ln_i, B3, bst, B4, af_f, B5, cr_r, B6, sy_p, B7, IF(OR(dv_c <= 0, ln_i < 0, ln_i >= dv_c, bst < 1, bst > 1.3, af_f <= 0, af_f > 1, cr_r <= 0, cr_r > 0.12, sy_p <= 0, sy_p > 1.2), "Invalid LIHTC Basis Input", ROUND((dv_c - ln_i) * bst * af_f * cr_r * 10 * sy_p, 2)))` - **Formula (Non-DDA Tract Gap-Funding Check (Set DDA Boost Multiplier = 1.00))**: `=IF(ISTEXT(E5), E5, ROUND((B2 - B3) * B4 * B5, 2))` ### Lille Model Score (Day-7 Steroid Response in Severe Alcoholic Hepatitis) - **URL**: https://sheets.arte-soft.com/en/learn/lille-model-alcoholic-hepatitis-day-7-corticosteroid-response/ - **Summary**: Calculate Alexandre Louvet’s Day-7 Lille Score (0–1) from Age, Day-0 Albumin (g/L), Day-0 & Day-7 Bilirubin (umol/L), Renal Insufficiency, and PT (sec) to stop futile prednisolone when Lille >= 0.45. *Table — Decide at Day 7 whether to complete 28-day prednisolone or stop futile immunosuppression!:* | Day-7 Bilirubin Trajectory (Bili0 = 310 umol/L) | Day-7 Lille Score (0–1) | 6-Month Survival Tier | AASLD / EASL Prednisolone Action | | --- | --- | --- | --- | | Brisk Drop (Bili7 = 140 umol/L) | 0.0861 (<= 0.16) | Complete Steroid Responder | Complete Full 28-Day Prednisolone Course | | Partial Drop (0.17 to 0.44) | < 0.45 Responder | ~85% 6-Month Survival | Continue Prednisolone to Day 28 | | Stalled Bilirubin (Bili7 = 285 umol/L) | 0.5074 (>= 0.45) | ~25% Survival (Non-Responder) | STOP Prednisolone at Day 7 (Infection Risk!) | - **Formula (Day-7 Lille Model Probability Score (0.0000 to 1.0000))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0, B6 > 1, B7 <= 0), "Invalid Lille Lab Input", ROUND(EXP(-(3.19 - 0.101 * B2 + 0.147 * B3 + 0.0165 * (B4 - B5) - 0.206 * B6 - 0.0065 * B4 - 0.0096 * B7)) / (1 + EXP(-(3.19 - 0.101 * B2 + 0.147 * B3 + 0.0165 * (B4 - B5) - 0.206 * B6 - 0.0065 * B4 - 0.0096 * B7))), 4))` - **Formula (AASLD / EASL Day-7 Corticosteroid Stopping Rule (< 0.45 vs. >= 0.45))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0, B6 > 1, B7 <= 0), "Invalid Lille Lab Input", IF((EXP(-(3.19 - 0.101 * B2 + 0.147 * B3 + 0.0165 * (B4 - B5) - 0.206 * B6 - 0.0065 * B4 - 0.0096 * B7)) / (1 + EXP(-(3.19 - 0.101 * B2 + 0.147 * B3 + 0.0165 * (B4 - B5) - 0.206 * B6 - 0.0065 * B4 - 0.0096 * B7)))) >= 0.45, "Steroid Non-Responder (Lille >= 0.45) — STOP Prednisolone at Day 7", IF((EXP(-(3.19 - 0.101 * B2 + 0.147 * B3 + 0.0165 * (B4 - B5) - 0.206 * B6 - 0.0065 * B4 - 0.0096 * B7)) / (1 + EXP(-(3.19 - 0.101 * B2 + 0.147 * B3 + 0.0165 * (B4 - B5) - 0.206 * B6 - 0.0065 * B4 - 0.0096 * B7)))) <= 0.16, "Complete Steroid Responder (Lille <= 0.16) — Continue 28-Day Course", "Partial Steroid Responder (0.16 < Lille < 0.45) — Continue 28-Day Course")))` ### Lindemann Melting Criterion & Thermal RMS Vibration Ratio - **URL**: https://sheets.arte-soft.com/en/learn/lindemann-melting-criterion-rms-atomic-vibration-amplitude/ - **Summary**: Estimate crystalline melting temperature T_m = 0.00229054 * M * Θ_D^2 * c_L^2 * d^2 (K) from Debye temperature Θ_D, atomic mass M (g/mol), nearest-neighbor spacing d (Å), and Lindemann constant c_L (~0.10–0.12). *Table — Why crystals melt as soon as atomic vibrations reach ~11% of bond spacing!:* | FCC Metal Crystal | Debye ΘD (K) & Spacing d (Å) | Lindemann Fraction cL | Predicted Melting Temp Tm (K) | | --- | --- | --- | --- | | Copper (M = 63.546 g/mol) | ΘD = 343 K, d = 2.556 Å | 0.110 (11.0% of d) | 1,353.7 K (Actual 1,357.8 K) | | Copper at Lower cL = 0.108 | ΘD = 343 K, d = 2.556 Å | 0.108 (10.8% of d) | 1,304.9 K | | Aluminum (M = 26.982 g/mol) | ΘD = 428 K, d = 2.863 Å | 0.105 (10.5% of d) | 1,023.1 K | - **Formula (Lindemann Predicted Melting Temperature T_m (K))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B5 >= 0.5), "Invalid Crystal Inputs", ROUND(0.00229054 * B2 * (B3 ^ 2) * (B5 ^ 2) * (B4 ^ 2), 1))` - **Formula (Critical RMS Thermal Vibration Amplitude at Melting u_rms = c_L * d (Å))**: `=IF(OR(B4 <= 0, B5 <= 0, B5 >= 0.5), "Invalid Crystal Inputs", ROUND(B4 * B5, 4))` ### Linear & Quadratic Stark Effect Atomic Electric-Field Splitting Formula - **URL**: https://sheets.arte-soft.com/en/learn/linear-and-quadratic-stark-effect-electric-field-splitting/ - **Summary**: Calculate Johannes Stark’s n = 2 hydrogen first-order linear electric-field energy splitting delta_E = 3 * e * a_0 * E (meV) and ground-state polarizability second-order quadratic Stark shift. *Table — Why degenerate excited Hydrogen n = 2 splits linearly in an electric field while n = 1 shifts quadratically!:* | Electric Field Strength E (MV/m) | Hydrogen n = 2 Single-Wing Shift 3*e*a0*E (meV) | Total Outer Span 6*e*a0*E (meV) | Quantum Parity Regime | | --- | --- | --- | --- | | 10 MV/m (100 kV/cm Stark Tube) | 1.5875 meV | 3.1751 meV | Degenerate 2s-2p Linear Mixing | | 25 MV/m (250 kV/cm High-Field) | 3.9688 meV (2.5x Linear) | 7.9377 meV | Below n = 2 Tunneling Ionization | | Negative Electric Field Magnitude < 0 | Guarded Input Error | "Invalid Electric Field" | Requires E >= 0 | - **Formula (Hydrogen n = 2 First-Order Linear Stark Wing Shift delta_E (meV) = 3 * 0.0529177 * E_MVm)**: `=IF(OR(B2 < 0, B3 < 1), "Invalid Electric Field", ROUND((3 * 0.0529177 * B2) / B3, 4))` - **Formula (Full Outer Stark Doublet Span 2 * delta_E = 6 * e * a_0 * E / Z (meV))**: `=IF(OR(B2 < 0, B3 < 1), "Invalid Electric Field", ROUND((6 * 0.0529177 * B2) / B3, 4))` ### Ordinary Least Squares Slope, Intercept, R-Squared, and Standard Error (LINEST Diagnostics) - **URL**: https://sheets.arte-soft.com/en/learn/linest-ordinary-least-squares-slope-intercept-r2-and-standard-error/ - **Summary**: Build labeled, self-documenting regression diagnostics—slope, intercept, R^2, residual standard error SE_y, and slope standard error SE_b—using SLOPE, INTERCEPT, CORREL, and VAR_S. *Table — Unpacking LINEST's unlabeled 5x2 diagnostic grid:* | LINEST Statistic | Explicit Formula | Sample Result (n = 5) | | --- | --- | --- | | Slope (b1) | =SLOPE(B2:B6, A2:A6) | 1.7 | | Intercept (b0) | =INTERCEPT(B2:B6, A2:A6) | 1.3 | | Coefficient of Determination (R^2) | =ROUND(POWER(CORREL(B2:B6, A2:A6), 2), 4) | 0.9897 | | Residual Standard Error (SE_y) | =ROUND(SQRT((1 - POWER(CORREL(B2:B6, A2:A6), 2)) * VAR_S(B2:B6) * (COUNT(B2:B6) - 1) / (COUNT(B2:B6) - 2)), 4) | 0.3162 | | Standard Error of Slope (SE_b1) | =ROUND(SE_y / SQRT(VAR_S(A2:A6) * (COUNT(A2:A6) - 1)), 4) | 0.1 | - **Formula (Residual Standard Error of Regression (SE_y))**: `=ROUND(SQRT((1 - POWER(CORREL(B2:B6, A2:A6), 2)) * VAR_S(B2:B6) * (COUNT(B2:B6) - 1) / (COUNT(B2:B6) - 2)), 4)` - **Formula (Slope, Intercept, R-Squared, and SE of Slope)**: `=SLOPE(B2:B6, A2:A6)` ### Lineweaver-Burk & Hanes-Woolf Enzyme Kinetics: Vmax, Km & Inhibitor Diagnosis - **URL**: https://sheets.arte-soft.com/en/learn/lineweaver-burk-and-eadie-hofstee-linearized-enzyme-kinetics/ - **Summary**: Extract catalytic maximum velocity V_max and Michaelis constant K_m from substrate-velocity assays using double-reciprocal Lineweaver-Burk (1/v vs 1/[S]) and Hanes-Woolf ([S]/v vs [S]) OLS regression. *Table — Comparing Lineweaver-Burk double-reciprocal plots against Hanes-Woolf variance weighting:* | Linearization | Y vs X Axes | V_max Extraction | K_m Extraction | | --- | --- | --- | --- | | Lineweaver-Burk | 1/v vs 1/[S] | 1 / INTERCEPT(1/v, 1/[S]) | SLOPE(1/v, 1/[S]) / INTERCEPT(1/v, 1/[S]) | | Hanes-Woolf | [S]/v vs [S] | 1 / SLOPE([S]/v, [S]) | INTERCEPT([S]/v, [S]) / SLOPE([S]/v, [S]) | - **Formula (Lineweaver-Burk V_max & K_m Regression Formulas)**: `=ROUND(SLOPE(D2:D5, C2:C5) / INTERCEPT(D2:D5, C2:C5), 2)` - **Formula (Hanes-Woolf Cross-Check Formula ([S]/v vs [S]))**: `=ROUND(1 / SLOPE(E2:E5, A2:A5), 2)` ### Lin’s Concordance Correlation Coefficient (CCC): Precision vs. 45-Degree Accuracy - **URL**: https://sheets.arte-soft.com/en/learn/lins-concordance-correlation-coefficient-ccc-accuracy-and-precision/ - **Summary**: Evaluate method-comparison and clinical assay reproducibility along the 45-degree identity line Y = X by factoring Lin’s CCC into Pearson precision (r) and bias correction accuracy (C_b). *Table — Why Pearson CORREL = 1.00 fails to detect systematic calibration offset or scale drift:* | Validation Metric | Formula | Biased Analyzer (+5 shift) | Recalibrated Analyzer | | --- | --- | --- | --- | | Pearson Precision (r) | CORREL(B2:B6, C2:C6) | 1.0000 | 1.0000 | | Lin’s Concordance (CCC) | 2*cov_p / (var_x + var_y + (mx - my)^2) | 0.9412 | 1.0000 | | Bias Correction (C_b) | CCC / r | 0.9412 (Location shift) | 1.0000 (Zero bias) | - **Formula (Exact Lin’s CCC Formula via LET & SUMPRODUCT)**: `=LET(cnt, COUNT(B2:B6), mx, AVERAGE(B2:B6), my, AVERAGE(C2:C6), vx, VARP(B2:B6), vy, VARP(C2:C6), cov_xy, SUMPRODUCT((B2:B6 - mx) * (C2:C6 - my)) / cnt, ROUND((2 * cov_xy) / (vx + vy + (mx - my) ^ 2), 4))` - **Formula (Accuracy Factor C_b Decomposition)**: `=IF(F2 = 0, 0, ROUND(F3 / F2, 4))` ### Lin’s Concordance Correlation Coefficient (CCC, ρ_c) Formula - **URL**: https://sheets.arte-soft.com/en/learn/lins-concordance-correlation-coefficient-ccc-reproducibility/ - **Summary**: Calculate Lawrence Lin’s Concordance Correlation Coefficient ρ_c = (2 * r * s_x * s_y) / (s_x^2 + s_y^2 + (x̄ - ȳ)^2) and bias correction factor C_b = ρ_c / r to measure 45° identity-line assay agreement. *Table — Penalizing BOTH scale shift and location shift off the 45° line of identity!:* | Assay Calibration State (r=0.96, sx=12.0, sy=12.5) | Mean Shift \|x̄ - ȳ\| | Bias Factor C_b = ρ_c / r | Lin’s Concordance ρ_c | | --- | --- | --- | --- | | Uncalibrated Offset (x̄ = 100, ȳ = 104) | 4.0 units | 0.9486 | 0.9107 (Moderate CLSI Tier) | | Zero-Offset Recalibrated (x̄ = 100, ȳ = 100) | 0.0 units | 0.9992 | 0.9592 (Substantial Agreement) | | Invalid SD <= 0 or \|r\| > 1 | Error Guard | Domain Check | "Invalid CCC Summary Stats" | - **Formula (Lin’s Concordance Correlation Coefficient ρ_c (-1 to +1))**: `=IF(OR(ABS(B2) > 1, B3 <= 0, B4 <= 0), "Invalid CCC Summary Stats", ROUND((2 * B2 * B3 * B4) / ((B3 ^ 2) + (B4 ^ 2) + ((B5 - B6) ^ 2)), 4))` - **Formula (Accuracy / Bias Correction Factor C_b (0 to 1))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid CCC Summary Stats", ROUND((2 * B3 * B4) / ((B3 ^ 2) + (B4 ^ 2) + ((B5 - B6) ^ 2)), 4))` ### Lintner Dividend Smoothing Model formula: partial adjustment to target payout - **URL**: https://sheets.arte-soft.com/en/learn/lintner-dividend-smoothing-and-payout-target-formula/ - **Summary**: Explore a simplified, zero-intercept dividend partial-adjustment model with explicit parameter bounds. *Table — Model a partial adjustment, not a dividend promise:* | Dividend Policy Input | Cell | Corporate Forecast | Per-Share Result | | --- | --- | --- | --- | | Prior Year Dividend D_{t-1} | B2 | $2.00 / share | Previous-period dividend | | Current Year EPS_t | B3 | $6.00 / share | Strong earnings surge | | Target Payout Ratio tau | B4 | 50% (0.50) | Target D* = $3.00 (+$1.00 gap) | | Adjustment Speed c | B5 | 30% (0.30) | D_t = $2.00 + 0.30*($1.00) = $2.30 | - **Formula (Modeled current-period dividend per share)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<0,B4<0,B4>1,B5<0,B5>1),"Invalid inputs",ROUND(B2 + B5 * (B4 * B3 - B2), 2)))` - **Formula (Implied actual current-year payout ratio D_t / EPS_t)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<0,B4<0,B4>1,B5<0,B5>1),"Invalid inputs",IF(B3=0,"Undefined (EPS = 0)",ROUND((B2 + B5 * (B4 * B3 - B2)) / B3, 4))))` ### List All Dates in a Month Dynamically with SEQUENCE & EOMONTH - **URL**: https://sheets.arte-soft.com/en/learn/list-all-dates-in-month-dynamic-sequence-eomonth/ - **Summary**: Generate a self-resizing vertical calendar column of every date in any Year + Month (automatically adjusting for 28-, 29-, 30-, or 31-day months) using SEQUENCE(DAY(EOMONTH(DATE(Y, M, 1), 0)), 1, DATE(Y, M, 1), 1). *Table — Stop deleting #VALUE! or spillover May-1 rows at the bottom of February & April!:* | Selected Year & Month | First Day Serial Formula | DAY(EOMONTH(..., 0)) Rows | Last Spilled Date | | --- | --- | --- | --- | | 2024, Month 2 (Leap Feb) | DATE(2024, 2, 1) | 29 days (Leap Year!) | 2024-02-29 | | 2026, Month 2 (Common Feb) | DATE(2026, 2, 1) | 28 days | 2026-02-28 | | 2026, Month 4 (April) | DATE(2026, 4, 1) | 30 days | 2026-04-30 | | 2026, Month 12 (December) | DATE(2026, 12, 1) | 31 days | 2026-12-31 | - **Formula (Exact Number of Calendar Days Spilled for Target Year & Month)**: `=IF(OR(B2 < 1900, B3 < 1, B3 > 12), "Invalid Year/Month", COUNTA(SEQUENCE(DAY(EOMONTH(DATE(B2, B3, 1), 0)), 1, DATE(B2, B3, 1), 1)))` - **Formula (Verify Final Date of the Spilled Monthly Sequence (ISO YYYY-MM-DD))**: `=IF(OR(B2 < 1900, B3 < 1, B3 > 12), "Invalid Year/Month", TEXT(MAX(SEQUENCE(DAY(EOMONTH(DATE(B2, B3, 1), 0)), 1, DATE(B2, B3, 1), 1)), "yyyy-mm-dd"))` ### Find skipped or missing invoice numbers in a sequence - **URL**: https://sheets.arte-soft.com/en/learn/list-missing-numbers-in-sequence/ - **Summary**: Count total skipped integers between MIN and MAX and pinpoint exact gap ranges between sorted check or invoice rows. *Table — Audit sequential check and invoice numbering gaps:* | Row | InvoiceNo (A) | Next Row Gap Check | | --- | --- | --- | | 2 | 1001 | No gap (next is 1002) | | 3 | 1002 | 1003 (1 skipped before 1004) | | 4 | 1004 | 1005-1006 (2 skipped before 1007) | | 5 | 1007 | (end of range) | - **Formula (Total missing count and row-level gap label formulas)**: `=(MAX(A2:A5) - MIN(A2:A5) + 1) - ROWS(UNIQUE(A2:A5))` - **Formula (Pinpoint exact skipped numbers after each row)**: `=IF(A5 - A4 <= 1, "No gap", IF(A5 - A4 = 2, "" & (A4 + 1), (A4 + 1) & "-" & (A5 - 1)))` ### List team members by group in alphabetical order (TEXTJOIN, SORT & FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/list-team-members-and-items-by-group-textjoin-filter/ - **Summary**: Roll up vertical employee-to-squad assignments into sorted, comma-separated roster strings per team with graceful empty-team fallbacks. *Table — Turn a flat two-column assignment table into alphabetical squad rosters!:* | Target Squad (D) | Matching Rows in B2:B7 | Assignment rows | Alphabetical Roster Output | | --- | --- | --- | --- | | Core | Maya, Zoe, Ethan | 3 | "Ethan, Maya, Zoe" | | Growth | Liam, Aria | 2 | "Aria, Liam" | | Infra | Noah | 1 | "Noah" | | Legal | 0 matches | 0 | No members | - **Formula (Alphabetical comma-separated member list for team D2)**: `=IF(OR(COUNTBLANK(A2:B7)>0,COUNTBLANK(D2)>0),"Invalid inputs",TEXTJOIN(", ",TRUE,SORT(FILTER($A$2:$A$7,$B$2:$B$7=D2,"No members"))))` - **Formula (Matching assignment count)**: `=IF(OR(COUNTBLANK(A2:B7)>0,COUNTBLANK(D2)>0),"Invalid inputs",SUMPRODUCT(--($B$2:$B$7=D2)))` ### Filter dates expiring in the next 30 days (sorted renewal alert queue) - **URL**: https://sheets.arte-soft.com/en/learn/list-upcoming-birthdays-or-renewals-next-30-days/ - **Summary**: Extract contracts, certificates, or subscriptions expiring inside [AsOfDate, AsOfDate + 30] and sort them soonest-first with SORT + FILTER. *Table — Bound BOTH sides of the alert window so past-due and far-future rows stay separate:* | Vendor / Cert (A) | ExpiryDate (B) | annual cost (C) | Status as of 2026-06-01 (30d Window) | | --- | --- | --- | --- | | SSL Wildcard | 2026-05-20 | $400 | Excluded (Already Expired < Jun 1) | | AWS Reserved | 2026-06-18 | $24,000 | Included (#2 — 17 days out) | | Snowflake | 2026-06-05 | $18,000 | Included (#1 Urgent — 4 days out!) | | Okta SSO | 2026-08-15 | $9,000 | Excluded (> Jul 1) | - **Formula (Sorted upcoming-renewal list and expiring-annual cost sum formulas)**: `=IF(COUNTIFS(B2:B5,">="&D2,B2:B5,"<="&(D2+E2))=0,"No renewals",TEXTJOIN(", ", TRUE, CHOOSECOLS(SORT(FILTER(A2:B5, (B2:B5 >= D2) * (B2:B5 <= D2 + E2)), 2, 1), 1)))` - **Formula (Total contract annual cost up for renewal in the next N days)**: `=SUMIFS(C2:C5, B2:B5, ">=" & D2, B2:B5, "<=" & (D2 + E2))` ### List all holidays falling between two project dates (FILTER holiday schedule) - **URL**: https://sheets.arte-soft.com/en/learn/list-workdays-and-holidays-between-two-dates-filter/ - **Summary**: List and count records from a supplied holiday table within an inclusive date window. *Table — Show which calendar records fall inside the window:* | Holiday Date (A) | Holiday Name (B) | Inside Sprint [2026-11-01, 2026-11-30]? | | --- | --- | --- | | 2026-09-07 | Labor Day | No (< Nov 1) | | 2026-11-11 | Veterans Day | Yes! (Included) | | 2026-11-26 | Thanksgiving | Yes! (Included) | | 2026-11-27 | Black Friday (company closure) | Yes! (3 holidays spilled) | | 2026-12-25 | Christmas Day | No (> Nov 30) | - **Formula (List holiday names falling inside [StartDate, EndDate])**: `=IF(OR(NOT(ISNUMBER(D2)),NOT(ISNUMBER(E2)),D2>E2),"Invalid date window",TEXTJOIN(", ", TRUE, FILTER(B2:B6, (A2:A6 >= D2) * (A2:A6 <= E2), "None")))` - **Formula (Count matching holidays in the window for cross-checking)**: `=IF(OR(NOT(ISNUMBER(D2)),NOT(ISNUMBER(E2)),D2>E2),"Invalid date window",COUNTIFS(A2:A6, ">=" & D2, A2:A6, "<=" & E2))` ### Litigation Finance Non-Recourse Funding Waterfall Formula - **URL**: https://sheets.arte-soft.com/en/learn/litigation-finance-non-recourse-claim-funding-multiple-and-counsel-waterfall/ - **Summary**: Calculate Commercial Litigation Finance Non-Recourse Senior Funder Return + Multiple Payout, Remaining-Pool Capped Trial Counsel Contingency Fee, Claimant Net Settlement Proceeds, and Claimant Recovery Share. *Table — Enforce non-recourse priority caps so settlement waterfalls never go negative on low awards!:* | Litigation Waterfall Metric ($8M Funded, $50M Award, 2.0x Profit Mult, 20% Counsel) | Formula | Verified Output | | --- | --- | --- | | Funder Senior Payout ($M) | MIN(Gross_Settlement, Funded * (1 + Profit_Mult)) | $24.00M ($0.00M @ Dismissal) | | Counsel Contingency Fee ($M) | MAX(0, MIN(Gross - Funder, Gross * Counsel_Pct)) | $10.00M ($0.00M @ Dismissal) | | Claimant Net Proceeds ($M) | MAX(0, Gross - Funder_Payout - Counsel_Fee) | $16.00M ($0.00M @ Dismissal) | | Claimant Net Recovery Share | IF(Gross = 0, 0, Claimant_Net / Gross) | 0.3200 (32.00%) | - **Formula (Non-Recourse Litigation Settlement Waterfall Formula)**: `=LET(fn_m, B2, st_m, B3, ml_p, B4, cn_r, B5, IF(OR(fn_m <= 0, st_m < 0, ml_p <= 0, cn_r < 0, cn_r >= 0.6), "Invalid Claim Waterfall", LET(fd_p, MIN(st_m, fn_m * (1 + ml_p)), lw_f, MAX(0, MIN(st_m - fd_p, st_m * cn_r)), ROUND(MAX(0, st_m - fd_p - lw_f), 2))))` - **Formula (Summary-Judgment Dismissal Non-Recourse Check (Set Gross Settlement = $0))**: `=IF(ISTEXT(E4), E4, IF(B3 = 0, 0, ROUND(E4 / B3, 4)))` ### Little's Law (WIP, Throughput, Cycle Time) and Takt Time formulas - **URL**: https://sheets.arte-soft.com/en/learn/littles-law-wip-throughput-and-takt-time-formula/ - **Summary**: Size Kanban WIP caps with Little's Law (WIP = Throughput * CycleTime) and balance production lines using Takt Time and workstation efficiency. *Table — Little's Law for Kanban queues and Takt Time for customer-paced lines:* | Lean Operations Formula | Calculation | Result | | --- | --- | --- | | Little's Law WIP | 24 units/day * 3.5 days | 84 units in WIP | | Takt Time (Heartbeat Pace) | 420 net min / 140 daily demand | 3.00 min / unit | | Minimum Workstations | =ROUNDUP(10.5 task min / 3.0 Takt, 0) | 4 stations | | Line Balance Efficiency % | =10.5 / (4 * 3.0) | 87.5% (0.875) | - **Formula (Takt Time, workstation count, and Little's Law formulas)**: `=LET(takt, C2 / D2, stations, ROUNDUP(E2 / takt, 0), ROUND(E2 / (stations * takt), 4))` - **Formula (Little's Law implied Cycle Time (W = WIP / Throughput))**: `=ROUND(A2 / B2, 2)` - **Formula (Additional worked calculation)**: `=ROUND(C2 / D2, 2)` - **Formula (Additional worked calculation)**: `=ROUNDUP(E2 / (C2 / D2), 0)` ### Littlewood Rule and EMSR-b Seat Protection Booking Limit Formula - **URL**: https://sheets.arte-soft.com/en/learn/littlewood-two-class-airline-seat-protection-and-emsr-b-heuristic/ - **Summary**: Aggregate high-fare classes via Belobaba’s EMSR-b weighted fare p_pool, pooled SD SQRT(SUM sigma^2), and Littlewood’s critical ratio 1 - p_low / p_pool to set discount booking limits. *Table — Pool higher fare buckets via EMSR-b to protect cabin seats against early discount demand:* | EMSR-b Quantity (Cabin C = 150) | Formula | Sample Value (p_3 = 230) | | --- | --- | --- | | Pooled High-Fare Demand & SD | mu_1 + mu_2; SQRT(sig_1^2 + sig_2^2) | 40.00 seats, SD = 10.00 | | Weighted Pooled Fare (p_pool) | (p_1*mu_1 + p_2*mu_2) / (mu_1 + mu_2) | 460.00 | | Littlewood Critical Fractile | 1 - p_3 / p_pool | 0.5000 (z = 0.0000) | | Protected Seats & Booking Limit | MIN(C, MAX(0, mu + z*sig)) -> C - y | 40 Protected / BL_3 = 110 | - **Formula (EMSR-b Pooled Protection Level y_prot Formula (Hastings Rational Inverse Normal))**: `=LET(cap_c, B2, p_1, B3, mu_1, B4, sd_1, B5, p_2, B6, mu_2, B7, sd_2, B8, p_3, B9, mu_pl, mu_1 + mu_2, IF(OR(cap_c <= 0, mu_1 < 0, mu_2 < 0, mu_pl <= 0, sd_1 < 0, sd_2 < 0, p_3 <= 0), "Invalid EMSR Input", LET(p_pl, (p_1 * mu_1 + p_2 * mu_2) / mu_pl, IF(p_3 >= p_pl, "Invalid Fare Hierarchy (Require p3 < p_pool)", LET(sd_pl, SQRT(sd_1^2 + sd_2^2), u_pr, 1 - p_3 / p_pl, z_val, IF(ABS(u_pr - 0.5) < 1E-12, 0, LET(p_tl, MIN(u_pr, 1 - u_pr), t_v, SQRT(-2 * LN(p_tl)), z_mg, t_v - (2.515517 + 0.802853 * t_v + 0.010328 * t_v^2) / (1 + 1.432788 * t_v + 0.189269 * t_v^2 + 0.001308 * t_v^3), IF(u_pr >= 0.5, z_mg, -z_mg))), y_raw, MIN(cap_c, MAX(0, mu_pl + z_val * sd_pl)), ROUND(y_raw, 4))))))` - **Formula (Integer Discount-Class Booking Limit BL_3 = C - ROUND(y_prot, 0) Formula)**: `=IF(ISTEXT(E4), E4, MAX(0, B2 - ROUND(E4, 0)))` ### LLC Resonant Converter Tank Frequency, Ln & Q Formula - **URL**: https://sheets.arte-soft.com/en/learn/llc-resonant-converter-tank-frequency-ln-ratio-and-q-factor-formula/ - **Summary**: Calculate Half-Bridge LLC Series Resonant Frequency f_r = 1000 / (2*PI()*SQRT(L_r_uH * C_r_uF)) (kHz), Characteristic Impedance Z_0 = SQRT(L_r / C_r), Inductance Ratio L_n = L_m / L_r, and Loaded Quality Factor Q_e = Z_0 / R_ac. *Table — Balance LLC resonant ZVS soft-switching against hold-up voltage gain via L_n and Q_e!:* | LLC Resonant Tank Metric (L_r=25 uH, C_r=0.04 uF, L_m=150 uH, R_ac=50 Ohm) | Formula | Verified Output | | --- | --- | --- | | Series Resonant Freq f_r (kHz) | 1000 / (2 * PI() * SQRT(L_r_uH * C_r_uF)) | 159.15 kHz | | Characteristic Impedance Z_0 | SQRT(L_r_uH / C_r_uF) | 25.00 Ohm | | Magnetizing Ratio L_n | L_m_uH / L_r_uH | 6.00 | | Loaded Quality Factor Q_e | Z_0_Ohm / R_ac_Ohm | 0.5000 (2.0000 @ R_ac=12.5 Ohm) | - **Formula (LLC Tank Characteristic Impedance & Loaded Quality Factor Formula)**: `=LET(l_ru, B2, c_ru, B3, l_mu, B4, r_ac, B5, IF(OR(l_ru <= 0, c_ru <= 0, l_mu <= 0, r_ac <= 0), "Invalid LLC Tank Component", LET(z_0, SQRT(l_ru / c_ru), ROUND(z_0 / r_ac, 4))))` - **Formula (4x Overload Peak-Gain Compression Check (Set R_ac = 12.5 Ohm))**: `=IF(ISTEXT(E5), E5, ROUND(1000 / (2 * PI() * SQRT(B2 * B3)), 2))` ### LN function: calculate continuous growth rates and exact doubling time - **URL**: https://sheets.arte-soft.com/en/learn/ln-function-natural-logarithm-doubling-time/ - **Summary**: Use the natural logarithm LN (inverse of EXP) to solve for unknown compounding time or continuous log returns, and handle zero/negative #NUM! inputs. *Table — Solve for exponent variables with LN:* | Task | Formula | Result | | --- | --- | --- | | Log of 1 (no change) | =LN(1) | 0 | | Continuous rate: 1,000 -> 1,349.86 in 5 yrs | =ROUND(LN(B2/A2)/C2, 4) | 0.06 (6.00%) | | Doubling time at 8% annual rate | =ROUND(LN(2)/LN(1+D2), 2) | 9.01 years | | Zero or negative input | =LN(0) | #NUM! | - **Formula (Implied continuous growth rate and doubling time)**: `=ROUND(LN(2) / LN(1 + D2), 2)` - **Formula (Domain restriction: number must be > 0)**: `=LN(A2)` ### LNG Carrier Boil-Off Gas (BOG), Heel & Delivered MMBtu Formula - **URL**: https://sheets.arte-soft.com/en/learn/lng-carrier-boil-off-gas-bog-daily-bor-voyage-heel-and-delivered-mmbtu/ - **Summary**: Calculate LNG Carrier Voyage Boil-Off Gas Loss (m³ LNG), Arrival Tank Volume (m³), Net Discharged Cargo After Cryogenic Heel (m³), and Delivered Regasification Energy (MMBtu). *Table — Compound daily Boil-Off Rate (1 - BOR)^Days—and deduct the -162°C ballast cooling heel!:* | LNG Voyage Cargo KPI (170,000 m³ Loaded, 0.12%/d BOR, 15 Days, 2,500 m³ Heel) | Formula | Verified Output | | --- | --- | --- | | Voyage Boil-Off Gas Loss (m³) | Loaded_m3 * (1 - (1 - BOR) ^ Days) | 3,034.43 m³ (4,532.61 @ 0.18%) | | Arrival LNG Tank Volume (m³) | Loaded_m3 * ((1 - BOR) ^ Days) | 166,965.57 m³ | | Net Discharged Volume (m³) | Arrival_Volume_m3 - Retained_Heel_m3 | 164,465.57 m³ | | Delivered DES Cargo (MMBtu) | Net_Discharged_m3 * MMBtu_Per_m3 | 3,700,475.34 MMBtu | - **Formula (Compounding Boil-Off Gas & Net Delivered MMBtu Formula)**: `=LET(vl_0, B2, br_d, B3, dy_v, B4, hl_m, B5, ed_m, B6, IF(OR(vl_0 <= 10000, br_d <= 0, br_d > 0.01, dy_v <= 0, hl_m < 0, ed_m < 18, ed_m > 26), "Invalid LNG Cargo Input", LET(vl_a, vl_0 * ((1 - br_d) ^ dy_v), IF(hl_m >= vl_a, "Invalid LNG Cargo Input", ROUND((vl_a - hl_m) * ed_m, 2)))))` - **Formula (Legacy Steam-Turbine Tanker Boil-Off Penalty Check (Set Daily BOR = 0.0018))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * (1 - ((1 - B3) ^ B4)), 2))` ### Lo-MacKinlay Variance Ratio VR(q) Random-Walk Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/lo-mackinlay-variance-ratio-random-walk-and-heteroskedastic-z/ - **Summary**: Test the Random Walk Hypothesis in Excel and Arte Sheets using Lo and MacKinlay’s (1988) variance ratio VR(q) = var_q / (q * var_1) and asymptotic Z(q) statistic. *Table — Exploit linear variance scaling Var(r_t(q)) = q * Var(r_t) to detect momentum vs mean reversion:* | Multi-Period Variance Regime (q = 4, n = 280) | Variance Ratio VR(4) | Lo-MacKinlay Z(4) & Verdict | | --- | --- | --- | | Positive Autocorrelation (var_4 = 0.0020) | 1.2500 (> 1) | +2.2361 (Momentum / Reject RW) | | Exact Random Walk (var_4 = 0.0016) | 1.0000 (= 1) | 0.0000 (Consistent with RW) | | Mean Reversion (var_4 = 0.0012) | 0.7500 (< 1) | -2.2361 (Mean Reversion / Reject RW) | - **Formula (Lo-MacKinlay Variance Ratio VR(q) = var_q / (q * var_1) Formula)**: `=LET(q_hor, B2, n_obs, B3, v_one, B4, v_agg, B5, IF(OR(q_hor < 2, n_obs <= q_hor, v_one <= 0, v_agg < 0), "Invalid VR Input (Require q >= 2)", ROUND(v_agg / (q_hor * v_one), 4)))` - **Formula (Asymptotic Homoskedastic Z(q) = (VR(q) - 1) / SQRT(2*(2q-1)*(q-1) / (3*q*n)) Formula)**: `=LET(q_hor, B2, n_obs, B3, v_one, B4, v_agg, B5, IF(OR(q_hor < 2, n_obs <= q_hor, v_one <= 0, v_agg < 0), "Invalid VR Input (Require q >= 2)", LET(vr_q, v_agg / (q_hor * v_one), se_q, SQRT((2 * (2 * q_hor - 1) * (q_hor - 1)) / (3 * q_hor * n_obs)), ROUND((vr_q - 1) / se_q, 4))))` ### Loan amortization schedule: reconcile payment, interest, principal, and ending balance - **URL**: https://sheets.arte-soft.com/en/learn/loan-amortization-schedule-formulas/ - **Summary**: Combine PMT, IPMT, PPMT, and FV to build a self-balancing loan amortization schedule that amortizes cleanly to zero. *Table — Four linked columns that must reconcile every month:* | LoanInput (A) | Value (B) | Month 1 Output | | --- | --- | --- | | Loan Amount (PV) | 12000 | Payment: $1,032.80 | | Annual Rate | 0.06 | Interest: $60.00 \| Principal: $972.80 | | Term Months | 12 | Month 1 Ending Bal: $11,027.20 | - **Formula (Calculate Month 1 ending balance and verify final payoff)**: `=ROUND(B1 + PPMT(B2/12, 1, B3, B1), 2)` - **Formula (Check remaining balance after any period with FV)**: `=ROUND(-FV(B2/12, B3, PMT(B2/12, B3, B1), B1), 2)` ### Compare loans with different durations: monthly payment vs total interest - **URL**: https://sheets.arte-soft.com/en/learn/loan-comparison-across-terms-total-interest-cost/ - **Summary**: Evaluate 36-, 48-, 60-, and 72-month loan offers side by side by contrasting lower monthly payments against total lifetime interest paid. *Table — Compare monthly payments and total modeled interest:* | Term Months ($30k @ 6% nominal annual rate) | Monthly Payment | Total Paid | Total Interest Cost | | --- | --- | --- | --- | | 36 months (3 yrs) | $912.66 | $32,855.69 | $2,855.69 | | 48 months (4 yrs) | $704.55 | $33,818.44 | $3,818.44 | | 60 months (5 yrs) | $579.98 | $34,799.04 | $4,799.04 | | 72 months (6 yrs) | $497.19 | $35,797.44 | $5,797.44 | - **Formula (Total lifetime interest and term-comparison formulas)**: `=ROUND(-PMT($B$2 / 12, C2, $A$2) * C2 - $A$2, 2)` - **Formula (Extra interest paid by choosing 72 months over 36 months)**: `=ROUND((-PMT($B$2 / 12, D2, $A$2) * D2) - (-PMT($B$2 / 12, C2, $A$2) * C2), 2)` ### Calculate loan interest and principal paid in any given year (closed-form FV) - **URL**: https://sheets.arte-soft.com/en/learn/loan-interest-and-principal-in-specific-year-fv/ - **Summary**: Estimate interest and principal during a selected full 12-month loan year using PMT and FV. *Table — Exact Year-K interest and principal in ONE cell—without a 360-row schedule!:* | Loan Year ($300k, 6.0%, 360 mos) | Total Annual Payments | Principal Paid in Year | Modeled interest paid | | --- | --- | --- | --- | | Year 1 (Months 1–12) | $21,583.82 | $3,684.04 (17.1%) | $17,899.78 (82.9%!) | | Year 30 (Months 349–360) | $21,583.82 | $20,898.41 (96.8%!) | $685.41 (3.2%) | - **Formula (Exact Interest Paid in Year D2 (closed-form FV balance identity))**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<12,MOD(C2,1)<>0,D2<1,MOD(D2,1)<>0,D2*12>C2),"Invalid full loan year",LET(monthlyRate, B2 / 12, pmt, PMT(monthlyRate, C2, A2), startBalance, -FV(monthlyRate, (D2 - 1) * 12, pmt, A2), endBalance, -FV(monthlyRate, D2 * 12, pmt, A2), ROUND(12 * (-pmt) - (startBalance - endBalance), 2)))` - **Formula (Exact Principal Paid in Year D2 (balance reduction b0 - b1))**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<12,MOD(C2,1)<>0,D2<1,MOD(D2,1)<>0,D2*12>C2),"Invalid full loan year",LET(monthlyRate, B2 / 12, pmt, PMT(monthlyRate, C2, A2), startBalance, -FV(monthlyRate, (D2 - 1) * 12, pmt, A2), endBalance, -FV(monthlyRate, D2 * 12, pmt, A2), ROUND(startBalance - endBalance, 2)))` ### Location Quotient & Economic Base Multiplier Formula - **URL**: https://sheets.arte-soft.com/en/learn/location-quotient-and-regional-economic-base-multiplier-formula/ - **Summary**: Calculate sectoral Location Quotients LQ_i = (E_ir / E_r) / (E_in / E_n), bifurcate Basic export employment MAX(0, E_ir - E_r*(E_in/E_n)), and compute the Economic Base Multiplier. *Table — Identify export-base industries (LQ > 1) and quantify local non-basic job multipliers!:* | Economic Base Metric (E_r = 100k, E_n = 10M) | Formula | Verified Output | | --- | --- | --- | | Aerospace Cluster LQ (25k vs 1M) | (25,000 / 100,000) / (1M / 10M) | 2.5000 (2.5x National Concentration) | | Aerospace Basic Export Jobs | MAX(0, 25,000 - 100,000 * 0.10) | 15,000.00 basic jobs | | Total Metro Basic Employment | SUM(D2:D4) = 15,000 + 5,000 + 0 | 20,000.00 basic jobs | | Economic Base Multiplier (M_base) | SUM(B2:B4) / SUM(D2:D4) | 5.0000 total jobs / basic job | - **Formula (Row-Level Sectoral Location Quotient & Basic Employment Formula)**: `=IF(OR(B2 < 0, C2 <= 0, SUM($B$2:$B$4) <= 0, SUM($C$2:$C$4) <= 0), "Invalid LQ Input", ROUND((B2 / SUM($B$2:$B$4)) / (C2 / SUM($C$2:$C$4)), 4))` - **Formula (Regional Economic Base Multiplier M_base Formula)**: `=LET(e_rg, SUM(B2:B4), e_bs, SUM(E2:E4), IF(OR(MIN(B2:B4) < 0, MIN(C2:C4) <= 0, e_rg <= 0), "Invalid LQ Input", IF(e_bs <= 0, "No Specialized Export Base", ROUND(e_rg / e_bs, 4))))` ### Lockhart-Martinelli Parameter (X_tt) & Chisholm Two-Phase Multiplier (φ_L²) - **URL**: https://sheets.arte-soft.com/en/learn/lockhart-martinelli-two-phase-parameter-and-chisholm-multiplier/ - **Summary**: Calculate gas-liquid two-phase pipe frictional pressure drop multiplier φ_L^2 = 1 + C / X_tt + 1 / X_tt^2 from vapor quality x, phase densities, and viscosities. *Table — Why flashing just 15% steam by mass multiplies liquid frictional pressure drop over 160-fold!:* | Steam-Water Vapor Quality x (1 atm, C = 20) | Martinelli Parameter X_tt | Two-Phase Multiplier φ_L² | Hydraulic Consequence | | --- | --- | --- | --- | | x = 0.15 (15% Vapor Mass Quality) | 0.1628 | 161.60× liquid-only ΔP | High Annular-Mist Acceleration | | x = 0.05 (5% Early Flash) | 0.4832 | 46.63× liquid-only ΔP | Bubbly-to-Slug Flow Transition | | Invalid x <= 0 or x >= 1 | Single-Phase | "Quality x Must Be Between 0 and 1" | Domain Guard | - **Formula (Chisholm Two-Phase Frictional Pressure-Drop Multiplier φ_L²)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Quality x Must Be Between 0 and 1", ROUND(1 + (B7 / ((((1 - B2) / B2) ^ 0.9) * ((B4 / B3) ^ 0.5) * ((B5 / B6) ^ 0.1))) + (1 / (((((1 - B2) / B2) ^ 0.9) * ((B4 / B3) ^ 0.5) * ((B5 / B6) ^ 0.1)) ^ 2)), 2))` - **Formula (Turbulent-Turbulent Lockhart-Martinelli Parameter X_tt)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Quality x Must Be Between 0 and 1", ROUND((((1 - B2) / B2) ^ 0.9) * ((B4 / B3) ^ 0.5) * ((B5 / B6) ^ 0.1), 4))` ### Log-Gamma Scaling and Erlang Multi-Stage Waiting-Time Probability (GAMMALN & GAMMA.DIST) - **URL**: https://sheets.arte-soft.com/en/learn/log-gamma-stirling-and-erlang-waiting-time-cdf-gammaln-gamma-dist/ - **Summary**: Evaluate exact log-gamma LN(FACT(k - 1)), gamma density ordinates, and closed-form Erlang k-stage waiting-time cumulative probabilities using EXP, LN, and FACT. *Table — Connecting Gamma(k), GAMMALN, and Erlang multi-stage waiting times:* | Shape (k) | Scale (theta) | Elapsed Time (x) | Gamma PDF f(x) | Cumulative CDF F(x) | | --- | --- | --- | --- | --- | | k = 3 stages | 2.0 min | 4.0 min | 0.135335 | 0.323324 | | k = 1 stage (Exponential) | 2.0 min | 4.0 min | 0.067668 | 0.864665 | | k = 2 stages | 2.0 min | 4.0 min | 0.135335 | 0.593994 | | GAMMALN(6) = ln(5!) | — | — | ln(120) | 4.787492 | - **Formula (Closed-Form Erlang / GAMMA.DIST Cumulative Probability (k = 1..4))**: `=LET(k_sh, B2, th, B3, x_val, B4, u_val, x_val / th, p_sum, 1 + IF(k_sh >= 2, u_val, 0) + IF(k_sh >= 3, POWER(u_val, 2) / 2, 0) + IF(k_sh >= 4, POWER(u_val, 3) / 6, 0), ROUND(1 - EXP(-u_val) * p_sum, 6))` - **Formula (Exact Gamma PDF Ordinate & Integer GAMMALN Formula)**: `=ROUND(EXP((B2 - 1) * LN(B4) - (B4 / B3) - B2 * LN(B3) - LN(FACT(B2 - 1))), 6)` ### LOG and LOG10: calculate custom-base logarithms, binary depth, and decibels - **URL**: https://sheets.arte-soft.com/en/learn/log-and-log10-logarithms/ - **Summary**: Compute base-10 orders of magnitude and decibels with LOG10, or binary/custom-base logarithms with LOG(number, base). *Table — Choose LOG10 for powers of 10 and LOG(number, base) for any base:* | PowerRatio (A) | NodeCount (B) | Decibels 10*LOG10(A) | TreeDepth LOG(B, 2) | | --- | --- | --- | --- | | 1000 | 256 | 30 dB | 8 | - **Formula (Calculate decibel gain and base-2 bit depth)**: `=10 * LOG10(A2)` - **Formula (Zero or negative arguments return #NUM!)**: `=LOG10(0)` ### Log-Rank (Mantel-Cox) Survival Test: Chi-Square & Hazard Ratio - **URL**: https://sheets.arte-soft.com/en/learn/log-rank-mantel-cox-survival-test-chi-square-hazard-comparison/ - **Summary**: Compare two censored Kaplan-Meier survival curves across discrete event times via the Mantel-Cox Log-Rank test χ^2 = (Σ O_1j - Σ E_1j)^2 / Σ V_j with exact hypergeometric tie variance. *Table — How Oncology Phase III trials compare two censored survival curves!:* | Event Interval j | At Risk (n1, n2) | Deaths (d1, d2) | Expected E1j & Hypergeometric Vj | | --- | --- | --- | --- | | Interval 1 & 2 | (40, 40) -> (38, 35) | (2, 5) -> (1, 6) | E1 = 3.500 + 3.644; V = 1.617 + 1.594 | | Interval 3 & 4 | (37, 29) -> (35, 24) | (2, 5) -> (1, 4) | E1 = 3.924 + 2.966; V = 1.564 + 1.132 | | Totals Across All 4 Intervals | Σ O1 = 6 Deaths | Σ E1 = 14.034 | Σ V = 5.907 -> χ^2 = 10.927 (p < 0.001) | - **Formula (1-df Mantel-Cox Log-Rank Chi-Square Statistic χ^2)**: `=IF(SUM(F2:F5) <= 0, "Zero Variance", ROUND(((SUM(B2:B5) - SUM(E2:E5)) ^ 2) / SUM(F2:F5), 3))` - **Formula (Two-Sided α = 0.05 Significance Decision (Critical χ^2 = 3.8415))**: `=IF(SUM(F2:F5) <= 0, "Zero Variance", IF(((SUM(B2:B5) - SUM(E2:E5)) ^ 2) / SUM(F2:F5) >= 6.6349, "Significant Survival Difference (p < 0.01)", IF(((SUM(B2:B5) - SUM(E2:E5)) ^ 2) / SUM(F2:F5) >= 3.8415, "Significant Survival Difference (p < 0.05)", "Not Statistically Significant (p >= 0.05)")))` ### Exponential Regression Compound Growth Factor and Base Formula (LOGEST via LN & SLOPE) - **URL**: https://sheets.arte-soft.com/en/learn/logest-exponential-regression-growth-factor-and-base-formula/ - **Summary**: Fit exponential curves y = a * b^x using log-transformed linear regression EXP(SLOPE(LN(y), x)) and EXP(INTERCEPT(LN(y), x)) to forecast compounding series. *Table — How LOGEST fits y = a * b^x via natural logarithms:* | Period (x) | ARR ($k) (y) | Log-Transformed LN(y) | Fitted Parameter | | --- | --- | --- | --- | | 0 | 100.00 | 4.6052 | Base a = 100.00 | | 1 | 120.00 | 4.7875 | Growth factor b = 1.2000 (+20%/period) | | 2 | 144.00 | 4.9698 | Log-space R^2 = 1.0000 | | 3 | 172.80 | 5.1521 | Forecast at x = 5 -> 248.83 | | 4 | 207.36 | 5.3345 | Doubling Series (b = 2) at x = 5 -> 3,200.00 | - **Formula (Multiplicative Growth Factor b (LOGEST Slope Equivalent))**: `=ROUND(EXP(SLOPE(C2:C6, A2:A6)), 4)` - **Formula (Exponential Curve Forecast a * b^x (GROWTH Equivalent))**: `=ROUND(EXP(INTERCEPT(C2:C6, A2:A6)) * POWER(EXP(SLOPE(C2:C6, A2:A6)), E2), 2)` ### Lognormal Cumulative Probability, Mean-Median Skew & Quantiles (LOGNORMDIST & LOGNORM.INV) - **URL**: https://sheets.arte-soft.com/en/learn/lognormal-cumulative-probability-and-quantile-lognormdist-lognorm-inv/ - **Summary**: Model strictly positive right-skewed claim severities and response latencies by mapping log-space mean mu and volatility sigma into lognormal medians, expected means, cumulative probabilities, and VaR quantiles. *Table — Why lognormal expected value exceeds the median by EXP(sigma^2 / 2):* | Property | Closed-Form Expression | At mu = 4, sigma = 0.5 | Interpretation | | --- | --- | --- | --- | | Median (50th pct) | EXP(mu) | 54.60 | Half of claims fall below 54.60 | | Expected Mean | EXP(mu + 0.5 * sigma^2) | 61.87 | Right tail lifts mean +13.3% above median | | Log-Z at x = 148.41 | (LN(x) - mu) / sigma | ~2.00 | Upper 97.72% cumulative threshold | | 97.5% Quantile | EXP(mu + 1.96 * sigma) | 145.47 | Reserve cap for 97.5% coverage | - **Formula (Lognormal Median & Expected Mean Skew)**: `=ROUND(EXP(B2 + 0.5 * B3 ^ 2), 2)` - **Formula (Lognormal Quantile & Cumulative Probability)**: `=ROUND(EXP(B2 + B5 * B3), 2)` ### London Magnetic Penetration Depth & BCS Superconducting Energy Gap Formula - **URL**: https://sheets.arte-soft.com/en/learn/london-penetration-depth-and-bcs-superconducting-energy-gap/ - **Summary**: Calculate the two-fluid temperature-dependent London penetration depth lambda_L(T) = lambda_0 / SQRT(1 - (T / Tc)^4) in nm and weak-coupling BCS Cooper-pair energy gap 2*Delta_0 = 3.528 * kB * Tc in meV. *Table — Model Meissner magnetic screening and Cooper-pair breaking in superconducting qubits & RF cavities!:* | Niobium Operating Temp (Tc = 9.25 K, lambda_0 = 39 nm) | Reduced Temp T / Tc | London Depth lambda_L(T) | BCS Energy Gap 2*Delta_0 | | --- | --- | --- | --- | | Liquid Helium Bath (T = 4.20 K) | 0.4541 ((T/Tc)^4 = 0.0425) | 39.86 nm | 2.812 meV (~680 GHz) | | Warm Cryocooler Stage (T = 8.50 K) | 0.9189 ((T/Tc)^4 = 0.7133) | 72.80 nm | 2.812 meV (T=0 reference) | | Above Critical Temp (T = 10.0 K >= Tc) | 1.0811 (>= 1!) | "Normal Metal State (T >= Tc)" | Superconductivity Quenched! | - **Formula (Temperature-Dependent London Penetration Depth lambda_L(T) in Nanometers (nm))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Superconductor Inputs", IF(B4 >= B2, "Normal Metal State (T >= Tc)", ROUND(B3 / SQRT(1 - ((B4 / B2) ^ 4)), 2)))` - **Formula (BCS Weak-Coupling Zero-Temperature Pair-Breaking Gap 2 * Delta_0 (meV))**: `=IF(B2 <= 0, "Invalid Superconductor Inputs", ROUND(3.528 * 0.08617333 * B2, 3))` ### Longest winning or daily habit streak formula (current and best streak) - **URL**: https://sheets.arte-soft.com/en/learn/longest-winning-or-activity-streak/ - **Summary**: Track consecutive wins, incident-free days, or SLA hits with a resetting streak counter and summarize Best and Current Streak. *Table — Resetting running counter + MAX summary:* | Day (A) | Outcome (B) | Running Streak (C) | | --- | --- | --- | | 1 | W | 1 | | 2 | W | 2 | | 3 | W | 3 (Peak) | | 4 | L | 0 (Reset) | | 5 | W | 1 | | 6 | W | 2 (Current) | - **Formula (Longest streak and current active streak formulas)**: `=MAX(C2:C7)` - **Formula (Active current streak at bottom of log)**: `=INDEX(C2:C7, ROWS(C2:C7))` ### Look Up & Concatenate All Matches Into One Comma-Separated Cell (TEXTJOIN + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/look-up-multiple-matches-into-comma-separated-cell-textjoin-if/ - **Summary**: Return every invoice, serial number, or owner matching a lookup key inside a single comma-delimited summary cell using TEXTJOIN(", ", TRUE, FILTER(..., "No Matches")). *Table — Collapsing one-to-many lookup hits into a single cell without spilling over neighbor rows!:* | Lookup Client (E2) | Matching Count | Single-Cell TEXTJOIN + FILTER Output | Spill Behavior | | --- | --- | --- | --- | | "Alpha" | 3 matches | "INV-01, INV-05, INV-09" | Stays in 1 cell (safe to copy down) | | "Beta" | 1 match | "INV-02" | No trailing comma on single item | | "Delta" (Unmatched) | 0 matches | "No Matches" | Prevents #CALC! empty-filter error | - **Formula (All Matching Values Joined in a Single Comma-Separated Cell)**: `=TEXTJOIN(", ", TRUE, FILTER(B2:B5, A2:A5 = E2, "No Matches"))` - **Formula (Total Match Count for Target Key)**: `=COUNTIF(A2:A5, E2)` ### Cascading Lookup Across 2 Lookup Tables (XLOOKUP if_not_found & IFNA) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-across-two-separate-pricing-tables-ifna-xlookup/ - **Summary**: Search a Primary Domestic Catalog first and automatically fall back to a Secondary International/Archive Catalog when missing using XLOOKUP's 4th [if_not_found] argument. - **Formula (Exact-match XLOOKUP with fallback)**: `=IF(OR(NOT(ISTEXT(G2)),G2=""),"Enter a text SKU",IF(OR(COUNTBLANK(A2:A4)>0,COUNTBLANK(D2:D4)>0),"Complete the catalog keys",IF(COUNT(B2:B4,E2:E4)<>6,"Enter numeric catalog prices",IF(MIN(B2:B4,E2:E4)<0,"Prices must be nonnegative",XLOOKUP(G2,A2:A4,B2:B4,XLOOKUP(G2,D2:D4,E2:E4,"Unlisted SKU",0),0)))))` - **Formula (VLOOKUP fallback with literal wildcard characters)**: `=IF(OR(NOT(ISTEXT(G2)),G2=""),"Enter a text SKU",IF(OR(COUNTBLANK(A2:A4)>0,COUNTBLANK(D2:D4)>0),"Complete the catalog keys",IF(COUNT(B2:B4,E2:E4)<>6,"Enter numeric catalog prices",IF(MIN(B2:B4,E2:E4)<0,"Prices must be nonnegative",IFNA(VLOOKUP(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?"),A2:B4,2,FALSE),IFNA(VLOOKUP(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(G2,"~","~~"),"*","~*"),"?","~?"),D2:E4,2,FALSE),"Unlisted SKU"))))))` ### Lookup and sum an entire column or row dynamically (SUM + XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-and-sum-entire-dynamic-column-or-row/ - **Summary**: Match a quarter, month, or scenario header horizontally and SUM, AVERAGE, or MAX the entire matched column in one readable formula. *Table — How XLOOKUP returns a whole vertical slice when given a 2D return grid:* | Region (A) | Q1 (B) | Q2 (C) | Q3 (D) | | --- | --- | --- | --- | | North | 120 | 150 | 180 | | South | 90 | 110 | 140 | | West | 140 | 160 | 200 | | Column Total | 350 | 420 (Selected "Q2") | 520 | - **Formula (Dynamic column SUM and AVERAGE formulas)**: `=SUM(XLOOKUP(F2, B1:D1, B2:D4, 0))` - **Formula (Dynamic row SUM by matching vertical row label)**: `=SUM(XLOOKUP("West", A2:A4, B2:D4, 0))` - **Formula (Additional worked calculation)**: `=AVERAGE(XLOOKUP(F2, B1:D1, B2:D4, 0))` ### Lookup the date or name of a MAX or MIN value: first and last matching rows - **URL**: https://sheets.arte-soft.com/en/learn/lookup-date-of-max-or-min-value-xlookup/ - **Summary**: Return the label associated with a maximum or minimum, and choose the first or last matching row when values tie. *Table — Return a label from either side of the value column:* | Month (A) | Revenue $k (B) | Peak / Trough Lookup Result | | --- | --- | --- | | 2026-01 | $120k | — | | 2026-02 | $185k (Tied Peak) | First MAX date (default search_mode = 1) | | 2026-03 | $95k (Trough) | MIN date = "2026-03" | | 2026-04 / 2026-05 | $150k / $185k (Tied Peak) | Latest MAX date = "2026-05" (search_mode = -1!) | - **Formula (First matching peak row)**: `=XLOOKUP(MAX(B2:B6), B2:B6, A2:A6)` - **Formula (Last matching peak row)**: `=XLOOKUP(MAX(B2:B6), B2:B6, A2:A6, "", 0, -1)` ### Find the first negative projected balance with XLOOKUP - **URL**: https://sheets.arte-soft.com/en/learn/lookup-first-negative-value-cash-runway/ - **Summary**: Return the first listed period with a negative projected cash or inventory balance. Sort periods chronologically before interpreting the result. *Table — First negative period versus lowest balance:* | Forecast Month (A) | Ending Cash (B) | Below Zero? (B < 0)*1 | Lookup Role | | --- | --- | --- | --- | | 2026-07 | $45,000 | 0 | Nonnegative ending balance | | 2026-08 | $12,000 | 0 | Nonnegative ending balance | | 2026-09 | -$14,000 | 1 (FIRST 1!) | First negative ending balance | | 2026-10 | -$38,000 | 1 | Deeper trough (MIN, not 1st) | - **Formula (First-deficit period and breach-amount formulas)**: `=XLOOKUP(1, (B2:B5 < 0) * 1, A2:A5, "No negative balance in range")` - **Formula (Return the dollar value of the first negative balance)**: `=XLOOKUP(1, (B2:B5 < 0) * 1, B2:B5, 0)` ### Lookup Latest File Version, Artifact Filename & Author (XLOOKUP Reverse Search) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-latest-file-revision-and-document-version-number/ - **Summary**: Retrieve the most recently appended file revision, version integer, and uploader for any document family in a chronological release log using XLOOKUP search_mode = -1 and MAXIFS. *Table — Chronological append logs vs out-of-order version integers:* | Query Goal | Formula Pattern | Result for "Spec_API" | | --- | --- | --- | | Latest Appended Filename | XLOOKUP(F2, A2:A6, C2:C6, "UNPUBLISHED", 0, -1) | Spec_API_v3_final.xlsx | | Latest Revision Author | XLOOKUP(F2, A2:A6, D2:D6, "UNPUBLISHED", 0, -1) | Elena | | Highest Version Integer | MAXIFS(B2:B6, A2:A6, F2) | 3 | - **Formula (Bottom-Up Latest Filename Lookup Formula)**: `=XLOOKUP(F2, $A$2:$A$6, $C$2:$C$6, "UNPUBLISHED", 0, -1)` - **Formula (Highest Version Number Verification with MAXIFS)**: `=MAXIFS($B$2:$B$6, $A$2:$A$6, F2)` ### Find the last matching revision and release tag with reverse XLOOKUP - **URL**: https://sheets.arte-soft.com/en/learn/lookup-latest-file-version-and-revision-xmatch/ - **Summary**: Search an append-ordered revision log from bottom to top using a literal filename prefix and return the matching filename or release tag. *Table — Combine wildcard prefix matching with bottom-to-top search in one formula!:* | Row | Document Revision (Col A) | Release Tag (Col B) | Reverse Wildcard Match for "SOP-Auth-*" | | --- | --- | --- | --- | | 2 | SOP-Auth-v1.0 | 2026-Q1-Draft | Skipped (obsolete draft) | | 3 | CAD-Pump-v1.0 | 2026-Q1-Init | Different document stem | | 4 | SOP-Auth-v1.1 | 2026-Q1-RevA | Skipped (superseded) | | 5 | CAD-Pump-v2.0 | 2026-Q1-Prod | Latest for "CAD-Pump-" | | 6 | SOP-Auth-v2.0 | 2026-Q1-Final | First hit from bottom -> Returned! | - **Formula (Return the last matching filename)**: `=IF(OR(NOT(ISTEXT(D2)),COUNTBLANK(D2)>0),"Enter prefix",XLOOKUP(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?")&"*", A2:A6, A2:A6, "No Revision Found", 2, -1))` - **Formula (Return the associated release tag)**: `=IF(OR(NOT(ISTEXT(D2)),COUNTBLANK(D2)>0),"Enter prefix",XLOOKUP(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?")&"*", A2:A6, B2:B6, "No Revision Found", 2, -1))` ### Lookup latest price or revision by date (unsorted history safe) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-latest-price-or-version-by-date/ - **Summary**: Retrieve the most recent unit cost or contract rate for an item even when historical log rows are NOT sorted chronologically. *Table — Why reverse XLOOKUP(..., -1) fails on unsorted imports—and MAXIFS fixes it:* | SKU (A) | EffectiveDate (B) | UnitCost (C) | Chronological Note | | --- | --- | --- | --- | | SKU-A | 2026-01-15 | 42 | Oldest | | SKU-A | 2026-06-01 | 49 | LATEST date (middle row!) | | SKU-B | 2026-05-10 | 85 | Different SKU | | SKU-A | 2026-03-20 | 45 | Backdated row at bottom! | - **Formula (Order-independent latest-by-date lookup formula)**: `=LET(maxDt, MAXIFS(B2:B5, A2:A5, "SKU-A"), IF(maxDt=0, "Not Found", XLOOKUP(1, (A2:A5="SKU-A") * (B2:B5=maxDt), C2:C5)))` - **Formula (Contrast naive bottom-row lookup on unsorted rows)**: `=XLOOKUP("SKU-A", A2:A5, C2:C5, "Not Found", 0, -1)` ### Find candidate amounts within an inclusive tolerance band - **URL**: https://sheets.arte-soft.com/en/learn/lookup-number-within-plus-or-minus-n-window/ - **Summary**: Compare numeric amounts with a target and flag ambiguous matches before selecting a candidate. *Table — Use a tolerance to find candidates, not prove a match:* | Open Invoice (A) | Invoice Amount (B) | Gap from $4,838 Wire (C) | Within +/- $15? | | --- | --- | --- | --- | | INV-801 | $3,200 | $1,638 | No | | INV-802 | $4,850 | $12 (<= $15!) | Matched -> "INV-802"! | | INV-803 | $4,910 | $72 | No (> $15) | | INV-804 | $6,100 | $1,262 | No | - **Formula (Return a unique candidate within the inclusive tolerance)**: `=IF(OR(COUNT(B2:B5)<>4,COUNT(F2:F3)<>2,COUNTBLANK(A2:A5)>0),"Invalid inputs",IF(F3<0,"Invalid inputs",IF(COUNTIF(C2:C5,"<="&F3)=0,"Unmatched (> Tol)",IF(COUNTIF(C2:C5,"<="&F3)>1,"Ambiguous",INDEX(A2:A5,XMATCH(MIN(C2:C5),C2:C5,0))))))` - **Formula (Count all candidate invoices falling inside +/- F3 (ambiguity check))**: `=IF(OR(COUNT(B2:B5)<>4,COUNT(F2:F3)<>2,COUNTBLANK(A2:A5)>0),"Invalid inputs",IF(F3<0,"Invalid inputs",COUNTIF(C2:C5,"<="&F3)))` ### Lookup price with client-specific contract override and standard rate fallback - **URL**: https://sheets.arte-soft.com/en/learn/lookup-price-with-client-override-rate/ - **Summary**: Check a negotiated client contract rate table first and automatically fall back to your master catalog price when no custom override exists. *Table — Negotiated enterprise overrides without duplicating your entire price book:* | Order Client & SKU | Override Table Match? | Master List Price | Applied Unit Price | | --- | --- | --- | --- | | Acme + SKU-A | Yes ($78.00 custom) | $95.00 | $78.00 (Override applied) | | Acme + SKU-B | No (#N/A -> fallback) | $140.00 | $140.00 (List fallback) | | Globex + SKU-B | Yes ($115.00 custom) | $140.00 | $115.00 (Override applied) | - **Formula (Two-tier Override-then-Master-List XLOOKUP formula)**: `=XLOOKUP(G2 & "|" & H2, E2:E3, F2:F3, XLOOKUP(H2, A2:A4, B2:B4, "Unknown SKU"))` - **Formula (Audit whether an invoice line used a custom override or list rate)**: `=IF(ISNUMBER(XMATCH(G2&"|"&H2,E2:E3)),"Contract Override",IF(ISNUMBER(XMATCH(H2,A2:A4)),"Standard List","Unknown SKU"))` ### Lookup Product Unit Cost & Extended Gross Profit Without #N/A (XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-product-unit-cost-and-extended-margin-xlookup-vlookup/ - **Summary**: Retrieve standard unit cost from a master catalog with built-in XLOOKUP if_not_found protection and compute extended gross profit (Unit_Price - Unit_Cost) * Qty safely. *Table — Stop #N/A and #VALUE! cascades when quoting newly added SKUs!:* | Order SKU (Qty = 15, Sell Price = $84) | Catalog Unit Cost | Extended Gross Profit | Error Handling | | --- | --- | --- | --- | | SKU-20 (Matched in Catalog) | $52 | $480 (($84 - $52) × 15) | Exact XLOOKUP default match | | SKU-30 (Matched in Catalog) | $65 | $285 (($84 - $65) × 15) | Updates dynamically on SKU change | | SKU-99 (Unlisted New Item) | "Missing Cost" | "Missing Cost" | Blocks #N/A and #VALUE! | - **Formula (Extended Line Gross Profit With Missing-Cost Guard)**: `=IF(ISNUMBER(XLOOKUP(B2, F2:F4, G2:G4, "Missing Cost")), (D2 - XLOOKUP(B2, F2:F4, G2:G4, "Missing Cost")) * C2, "Missing Cost")` - **Formula (Error-Safe Unit Cost Lookup (XLOOKUP Built-In Fallback))**: `=XLOOKUP(B2, F2:F4, G2:G4, "Missing Cost")` ### Look up a table row and transpose it into a vertical summary card (HSTACK + TRANSPOSE) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-record-and-transpose-into-vertical-card/ - **Summary**: Build a clean 2-column Field | Value inspector card from a wide horizontal table by pairing XLOOKUP, TRANSPOSE, and HSTACK. *Table — Turn wide 20-column database rows into readable vertical executive cards!:* | Card Row | Col 1: TRANSPOSE(A1:D1) | Col 2: TRANSPOSE(XLOOKUP("D-204", ...)) | | --- | --- | --- | | Row 1 | DealID | D-204 | | Row 2 | Account | Northwind Bio | | Row 3 | Owner | Omar Vance | | Row 4 | ARR | 84000 | - **Formula (Spill a 2-column vertical Field | Value inspector card)**: `=HSTACK(TRANSPOSE(A1:D1),TRANSPOSE(XLOOKUP(F2,A2:A4,A2:D4)))` - **Formula (Verify vertical card dimensions (N fields × 2 columns))**: `=ROWS(HSTACK(TRANSPOSE(A1:D1), TRANSPOSE(XLOOKUP(F2, A2:A4, A2:D4))))` ### Find the lowest-value record within a group with FILTER and SORTBY - **URL**: https://sheets.arte-soft.com/en/learn/lookup-record-with-minimum-value-by-group-sort-filter/ - **Summary**: Filter records before ranking, use source order to break equal-value ties, and return a matching record with its minimum value. *Table — Why XLOOKUP(MINIFS(...), PriceCol, VendorCol) can return the WRONG vendor!:* | Supplier (A) | Ship Day (B) | Quote $ (C) | Monday Lowest Selection | | --- | --- | --- | --- | | Sup-A | Mon | $480 | Filtered in (#3 Monday) | | Sup-B | Tue | $410 | Excluded (Wrong day!) | | Sup-C | Mon | $435 | WINNER -> #1 Lowest on Mon! | | Sup-D / Sup-F | Mon | $510 / $460 | Filtered in (#4 & #2 Monday) | | Sup-E | Tue | $395 | Excluded (Cheapest overall, but Tue!) | - **Formula (Lookup record name with the minimum value inside group E2)**: `=IF(OR(COUNT(C2:C7)<>6,NOT(ISTEXT(E2)),COUNTBLANK(E2)>0),"Invalid inputs",IFERROR(INDEX(SORTBY(FILTER(A2:A7,B2:B7=E2),FILTER(C2:C7,B2:B7=E2),1,FILTER(SEQUENCE(6),B2:B7=E2),1),1),"No Group Rows"))` - **Formula (Minimum value from the same filtered rows)**: `=IF(OR(COUNT(C2:C7)<>6,NOT(ISTEXT(E2)),COUNTBLANK(E2)>0),"Invalid inputs",IFERROR(MIN(FILTER(C2:C7,B2:B7=E2)),"No Group Rows"))` ### Sales Tax Rate Lookup with Tax-Exempt Override (XLOOKUP + IF) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-tax-rate-and-conditional-xlookup-discount-tier/ - **Summary**: Calculate invoice sales tax and gross total dynamically by combining IF(Tax_Exempt = "Yes", 0, XLOOKUP(...)) with missing-jurisdiction validation. *Table — Combining a resale/B2B tax-exempt flag with jurisdiction rate lookup without #N/A invoice crashes!:* | Order Scenario (Subtotal F2 = $1,250) | Jurisdiction F3 & Exempt F4 | Matched Rate | Sales Tax & Gross Invoice Total | | --- | --- | --- | --- | | Taxable Texas Order | TX / Exempt = "No" | 8.25% (0.0825) | Tax = $103.13 / Gross = $1,353.13 | | Tax-Exempt Texas Reseller | TX / Exempt = "Yes" | 0.00% Override | Tax = $0.00 / Gross = $1,250.00 | | Unconfigured State "WA" | WA / Exempt = "No" | Missing (-1 Sentinel) | "Unconfigured Tax Jurisdiction" | - **Formula (Conditional Sales Tax Amount with Tax-Exempt Override & Jurisdiction Guard)**: `=IF(F4 = "Yes", 0, IF(XLOOKUP(F3, A2:A5, B2:B5, -1) < 0, "Unconfigured Tax Jurisdiction", ROUND(F2 * XLOOKUP(F3, A2:A5, B2:B5, -1), 2)))` - **Formula (Gross Tax-Inclusive Invoice Total ($))**: `=IF(F4 = "Yes", ROUND(F2, 2), IF(XLOOKUP(F3, A2:A5, B2:B5, -1) < 0, "Unconfigured Tax Jurisdiction", ROUND(F2 + ROUND(F2 * XLOOKUP(F3, A2:A5, B2:B5, -1), 2), 2)))` ### XLOOKUP match any column: search Primary SKU, Legacy ID, or Barcode at once - **URL**: https://sheets.arte-soft.com/en/learn/lookup-value-across-multiple-columns-any-match/ - **Summary**: Find a product or contact when the user types an identifier that could live in Column B, Column C, OR Column D using Boolean OR array math. *Table — Search across 3 identifier columns simultaneously with Boolean OR (+):* | Product (A) | NewSKU (B) | LegacyID (C) | Barcode (D) | Price (E) | | --- | --- | --- | --- | --- | | Thermal Printer | TP-400 | OLD-88 | 890011 | $249 | | Barcode Scanner | BS-210 | OLD-42 | 890025 | $139 | | Label Roll 4x6 | LR-105 | OLD-19 | 890039 | $24 | - **Formula (Multi-column OR lookup formulas)**: `=IF(G2="","Not Found",XLOOKUP(1, (((B2:B4=G2) + (C2:C4=G2) + (D2:D4=G2)) > 0) * 1, A2:A4, "Not Found"))` - **Formula (Return unit price from whichever identifier column matched)**: `=IF(G2="","Not Found",XLOOKUP(1, (((B2:B4=G2) + (C2:C4=G2) + (D2:D4=G2)) > 0) * 1, E2:E4, 0))` ### Lookup a value between two numbers (explicit Min and Max columns) - **URL**: https://sheets.arte-soft.com/en/learn/lookup-value-between-two-numbers-range/ - **Summary**: Match an input inside inclusive [Min, Max] bracket rows using FILTER—rejecting out-of-bounds values that approximate VLOOKUP accepts. *Table — Why explicit [Min, Max] brackets beat approximate VLOOKUP on capped tables:* | MinKg (A) | MaxKg (B) | Rate (C) | Test 7.5 kg / 65 kg | | --- | --- | --- | --- | | 0.1 | 5 | 12 | No / No | | 5.01 | 20 | 24 | Match ($24) / No | | 20.01 | 50 | 45 | No / Out of range | - **Formula (Two-sided bracket lookup formula)**: `=INDEX(FILTER(C2:C4, (D2 >= A2:A4) * (D2 <= B2:B4), "Out of range"), 1, 1)` - **Formula (Exact boundary check (20 kg))**: `=INDEX(FILTER(C2:C4, (20 >= A2:A4) * (20 <= B2:B4), "Out of range"), 1, 1)` ### Lorentz Factor (gamma), Relativistic Time Dilation, Length Contraction & Kinetic Energy - **URL**: https://sheets.arte-soft.com/en/learn/lorentz-factor-special-relativity-time-dilation-and-contraction/ - **Summary**: Calculate Hendrik Lorentz & Albert Einstein's relativistic factor gamma = 1 / SQRT(1 - beta^2), dilated coordinate time, contracted length, and (gamma - 1)*mc^2. *Table — Specify the frames and the measured quantities:* | Relativistic Quantity | Formula (beta = v / c in B2) | At v = 0.80c (gamma = 5/3) | At Rest v = 0c (gamma = 1) | | --- | --- | --- | --- | | Lorentz Factor gamma | 1 / SQRT(1 - B2^2) | 1 / 0.60 = 1.6667 | 1.0000 | | Dilated Coordinate Time t | B3 / SQRT(1 - B2^2) (tau0 = 6 yr) | 6 / 0.60 = 10.00 years | 6.00 years | | Contracted Length L | B4 * SQRT(1 - B2^2) (L0 = 100 m) | 100 * 0.60 = 60.00 meters | 100.00 meters | | Relativistic KE (MeV) | (gamma - 1) * B5 (e- = 0.511 MeV) | (2/3) * 0.511 = 0.3407 MeV | 0.0000 MeV | - **Formula (Guarded Lorentz Factor gamma = 1 / SQRT(1 - (v / c)^2))**: `=IF(COUNT(B2)<>1,"Invalid inputs",IF(ABS(B2)>=1,"Subluminal |v/c| < 1 Required",ROUND(1/SQRT(1-B2^2),4)))` - **Formula (Elapsed coordinate time from proper time)**: `=IF(COUNT(B2,B3)<>2,"Invalid inputs",IF(ABS(B2)>=1,"Subluminal |v/c| < 1 Required",IF(B3<0,"Invalid inputs",ROUND(B3/SQRT(1-B2^2),2))))` - **Formula (Length measured parallel to motion)**: `=IF(COUNT(B2,B4)<>2,"Invalid inputs",IF(ABS(B2)>=1,"Subluminal |v/c| < 1 Required",IF(B4<0,"Invalid inputs",ROUND(B4*SQRT(1-B2^2),2))))` - **Formula (Kinetic energy in MeV)**: `=IF(COUNT(B2,B5)<>2,"Invalid inputs",IF(ABS(B2)>=1,"Subluminal |v/c| < 1 Required",IF(B5<0,"Invalid inputs",ROUND((B2^2/(SQRT(1-B2^2)*(1+SQRT(1-B2^2))))*B5,4))))` ### Lorentz-Lorenz Molar Refractivity (RM) & Clausius-Mossotti Polarizability Formula - **URL**: https://sheets.arte-soft.com/en/learn/lorentz-lorenz-molar-refractivity-and-clausius-mossotti/ - **Summary**: Calculate phase-invariant molar refractivity R_M = ((n^2 - 1) / (n^2 + 2)) * (MW / rho) in cm^3/mol and electronic molecular polarizability alpha_0 (in Angstrom^3) from optical refractive index n and density rho. *Table — Bridge macroscopic refractive index n directly to single-molecule electron-cloud volume!:* | Pure Liquid / Dielectric | Refractive Index n, MW, Density | Molar Refractivity R_M (cm^3/mol) | Polarizability Volume alpha_0 (A^3) | | --- | --- | --- | --- | | Liquid Water (H2O, 20 °C) | n = 1.333, MW = 18.015, rho = 0.998 | 3.713 cm^3/mol | 1.472 Angstrom^3 | | Toluene (C7H8 Aromatic) | n = 1.496, MW = 92.14, rho = 0.867 | 31.045 cm^3/mol | 12.306 Angstrom^3 | | Invalid Index n <= 1 or Density <= 0 | Vacuum / Domain Guard | Guarded Input Error | "Invalid Optical/Density Inputs" | - **Formula (Lorentz-Lorenz Molar Refractivity R_M (cm^3 / mol))**: `=IF(OR(B2 <= 1, B3 <= 0, B4 <= 0), "Invalid Optical/Density Inputs", ROUND((((B2 ^ 2) - 1) / ((B2 ^ 2) + 2)) * (B3 / B4), 3))` - **Formula (Electronic Polarizability Volume alpha_0 in Cubic Angstroms (A^3))**: `=IF(OR(B2 <= 1, B3 <= 0, B4 <= 0), "Invalid Optical/Density Inputs", ROUND(((((B2 ^ 2) - 1) / ((B2 ^ 2) + 2)) * (B3 / B4)) / ((4 * PI() / 3) * 0.602214076), 3))` ### Lotka-Volterra Equilibrium and Small-Amplitude Period in Excel - **URL**: https://sheets.arte-soft.com/en/learn/lotka-volterra-predator-prey-equilibrium-and-phase-oscillation/ - **Summary**: Explore predator-prey equilibria, local rates of change and a constant per-capita removal scenario, with a clear distinction between a linearized period and a full nonlinear trajectory. - **Formula (Find coexistence and the nearby oscillation period)**: `=IF(E2="OK",2*PI()/SQRT(B2*B4),E2)` - **Formula (Explore constant per-capita removal, within its assumptions)**: `=IF(E6="OK",(B4+B6)/B5,E6)` *Table — Explore constant per-capita removal, within its assumptions:* | Quantity | Baseline | m=0.2/year | | --- | --- | --- | | Prey equilibrium | 100 | 140 | | Predator equilibrium | 40 | 30 | | Small-amplitude period | 9.934588 years | 9.695165 years | ### LP Secondary NAV Roll-Forward, Effective Discount & MOIC - **URL**: https://sheets.arte-soft.com/en/learn/lp-secondary-fund-stake-nav-discount-deferred-payment-and-moic-formula/ - **Summary**: Calculate LP Secondary Sale-and-Purchase Agreement (SPA) Closing Price ($M), Effective Closing Discount (%) After Interim Cash Flows, Day-1 Upfront Wire ($M), and Buyer Gross MOIC (x). *Table — Interim distributions between Reference Date and Closing widen a 10% headline discount to 11.11%!:* | LP Secondary SPA KPI ($100M Ref NAV @ 90%, -$15M Dist / +$5M Call, 50% Defer) | Formula | Verified Output | | --- | --- | --- | | Adjusted Closing Price ($M) | Ref_NAV * Bid_Pct - Interim_Dist + Calls | $80.00M ($90.00M Zero Interim) | | Effective Closing Discount (%) | (1 - Closing_Price / RollForward_NAV) * 100 | 11.11% (10.00% Zero Interim) | | Day-1 Upfront Wire ($M) | Adjusted_Closing_Price * (1 - Deferred_Pct) | $40.00M ($45.00M Zero Interim) | | Buyer Gross MOIC on Price (x) | Remaining_Distributions_M / Closing_Price_M | 1.65x (1.47x Zero Interim) | - **Formula (SPA Roll-Forward Closing Price & Effective Discount Formula)**: `=LET(nv_r, B2, bd_p, B3, ds_i, B4, cl_i, B5, df_p, B6, pr_d, B7, IF(OR(nv_r <= 0, bd_p <= 0.3, bd_p > 1.25, ds_i < 0, cl_i < 0, df_p < 0, df_p > 0.8, pr_d <= 0), "Invalid Secondary Bid Input", LET(cp_m, nv_r * bd_p - ds_i + cl_i, rf_n, nv_r - ds_i + cl_i, IF(OR(cp_m <= 0, rf_n <= 0), "Invalid Secondary Bid Input", ROUND((1 - cp_m / rf_n) * 100, 2)))))` - **Formula (Simultaneous Sign-and-Close Check (Set Interim Distributions = $0 & Calls = $0))**: `=IF(ISTEXT(E3), E3, ROUND(B7 / E2, 2))` ### Lucas Corresponding-States Low-Pressure Gas Viscosity Formula (µPa·s) - **URL**: https://sheets.arte-soft.com/en/learn/lucas-corresponding-states-low-pressure-gas-viscosity-formula/ - **Summary**: Predict non-polar gas dynamic viscosity η (µPa·s) solely from critical temperature T_c, critical pressure P_c (bar), and molar mass M without Lennard-Jones collision integrals! *Table — Predicting gas viscosity within 1%–3% when Lennard-Jones σ and ε/k_B aren’t tabulated!:* | Nitrogen Temperature T (Tc = 126.2 K, Pc = 33.98 bar) | Reduced Temp T_r | Lucas Viscosity η (µPa·s) | NIST Reference η | | --- | --- | --- | --- | | 300 K Ambient Gas | 2.3772 | 17.94 µPa·s | 17.89 µPa·s (+0.28%) | | 500 K Preheated Feed | 3.9620 | 26.02 µPa·s | 26.06 µPa·s (-0.15%) | | Invalid T <= 0, Tc <= 0, Pc <= 0, or M <= 0 | Undefined | "Invalid Critical Constants" | Positivity Guard | - **Formula (Lucas Low-Pressure Gas Dynamic Viscosity η (µPa·s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Critical Constants", ROUND((0.807 * ((B2 / B3) ^ 0.618) - 0.357 * EXP(-0.449 * (B2 / B3)) + 0.34 * EXP(-4.058 * (B2 / B3)) + 0.018) / (0.176 * ((B3 / ((B5 ^ 3) * (B4 ^ 4))) ^ (1 / 6))) / 10, 2))` - **Formula (Lucas Inverse Reduced Viscosity Parameter ξ (µP^-1))**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Critical Constants", ROUND(0.176 * ((B3 / ((B5 ^ 3) * (B4 ^ 4))) ^ (1 / 6)), 5))` ### Luedeking-Piret Bioprocess Kinetics: Growth vs. Non-Growth Product Rate - **URL**: https://sheets.arte-soft.com/en/learn/luedeking-piret-fermentation-growth-associated-product-rate/ - **Summary**: Calculate specific cellular product formation rate q_p = alpha * mu + beta (g product / g DCW / h) and volumetric bioreactor productivity r_p = (alpha * mu + beta) * X (g/(L*h)) across exponential and stationary fermentation phases. *Table — Model fed-batch antibodies, lactic acid, and secondary antibiotics in one kinetic law!:* | Bioreactor Phase (alpha = 0.35, beta = 0.025, X = 18 g/L) | Specific Growth Rate mu (h^-1) | Specific Rate qp (g/g/h) | Volumetric Rate rp (g/(L*h)) | | --- | --- | --- | --- | | Exponential / Fed-Batch Growth | 0.20 h^-1 | 0.0950 | 1.710 g/(L*h) | | Stationary Production Arrest | 0.00 h^-1 | 0.0250 (= beta) | 0.450 g/(L*h) | | Invalid Negative Biomass or Growth Rate | Guarded Bioprocess Error | "Invalid Fermentation Inputs" | Requires alpha >= 0, beta >= 0, mu >= 0, X > 0 | - **Formula (Specific Cellular Product Formation Rate q_p = alpha * mu + beta (g/g/h))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B5 <= 0), "Invalid Fermentation Inputs", ROUND(B2 * B4 + B3, 4))` - **Formula (Volumetric Bioreactor Productivity r_p = (alpha * mu + beta) * X (g/(L*h)))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B5 <= 0), "Invalid Fermentation Inputs", ROUND((B2 * B4 + B3) * B5, 3))` ### Luhn Algorithm (Mod 10) formula: generate and validate account check digits - **URL**: https://sheets.arte-soft.com/en/learn/luhn-algorithm-mod-10-credit-card-check-digit/ - **Summary**: Generate and check a Luhn checksum for an illustrative eight-digit payload. A passing checksum does not validate an account or identity. *Table — Alternate weights from the rightmost payload digit:* | Payload Digits [4,5,3,9,1,4,8,8] | Right-to-Left Weights | Luhn Terms IF(p>9, p-9, p) | Check Digit & Validation | | --- | --- | --- | --- | | 4, 5, 3, 9 | 1, 2, 1, 2 | 4, 1 (10-9), 3, 9 (18-9) | Subtotal = 17 | | 1, 4, 8, 8 | 1, 2, 1, 2 | 1, 8, 8, 7 (16-9) | Subtotal = 24 (Total S = 41) | | Check Digit = E2 | Weight = 1 | =MOD(10 - MOD(41,10), 10) | 9 -> Checksum passes for 453914889 (41+9=50) | - **Formula (Generate Modulo-10 Luhn check digit and validate complete ID)**: `=MOD(10 - MOD(SUM(C2:C9), 10), 10)` - **Formula (Check the supplied checksum)**: `=MOD(SUM(C2:C9) + E2, 10) = 0` ### Bioelectrical Impedance (BIA) Formula: Height^2 / R Index, Kushner TBW & Lukaski FFM - **URL**: https://sheets.arte-soft.com/en/learn/lukaski-kushner-bioelectrical-impedance-height-squared-resistance-tbw/ - **Summary**: Calculate Resistive Impedance Index H^2 / R_50 (cm^2/Ohm), Kushner-Schoeller Total Body Water (TBW, L), and Fat-Free Mass (FFM = TBW / 0.732) from 50-kHz tetrapolar Bioelectrical Impedance Analysis. *Table — Why conductor volume V = rho * L^2 / R turns Height^2 / Resistance into Total Body Water!:* | 50-kHz Tetrapolar BIA Profile (Height = 175 cm -> H^2 = 30,625 cm^2) | Measured Resistance R_50 (Ohm) | Impedance Index H^2 / R | Kushner TBW & Pace-Rathbun FFM | | --- | --- | --- | --- | | Muscular Athlete (82 kg) | 430 Ohm (Low Resistance) | 71.22 cm^2/Ohm | TBW = 47.61 L -> FFM = 65.04 kg (20.7% BF) | | Average Adult (76 kg) | 510 Ohm | 60.05 cm^2/Ohm | TBW = 40.59 L -> FFM = 55.45 kg (27.0% BF) | | Sarcopenic / Low Lean Mass (68 kg) | 625 Ohm (High Resistance) | 49.00 cm^2/Ohm | TBW = 33.52 L -> FFM = 45.79 kg (32.7% BF) | - **Formula (Kushner (1992) 50-kHz BIA Total Body Water TBW (Liters))**: `=IF(OR(B2 < 100, B2 > 230, B3 < 25, B3 > 250, B4 < 150, B4 > 1200), "Invalid Height (cm), Weight (kg), or 50-kHz Resistance R (150–1,200 Ohm)", ROUND(0.593 * ((B2 ^ 2) / B4) + 0.065 * B3 + 0.04, 2))` - **Formula (BIA Fat-Free Mass FFM (kg) = TBW / 0.732 (Pace-Rathbun Euhydrated Constant))**: `=IF(OR(B2 < 100, B2 > 230, B3 < 25, B3 > 250, B4 < 150, B4 > 1200), "Invalid BIA Inputs", ROUND((0.593 * ((B2 ^ 2) / B4) + 0.065 * B3 + 0.04) / 0.732, 2))` ### Lumber Board Feet (BF) & MBF pricing formula: (Thick" × Width" × Length') / 12 - **URL**: https://sheets.arte-soft.com/en/learn/lumber-board-feet-calculator-and-linear-footage-cost/ - **Summary**: Convert nominal hardwood and framing tally lists into Board Feet, Linear Feet, and $/MBF (per 1,000 board feet) lumber orders. *Table — Board Feet vs Linear Feet: why 1 Board Foot = 144 cubic inches!:* | Lumber Tally Line | Linear Feet (Pcs × Len') | Board Feet (Pcs×T"×W"×L'/12) | Cost @ $4,500 / MBF | | --- | --- | --- | --- | | 24 pcs — 2" × 6" × 10' | 240 LF | 240.00 BF (1.00 BF/LF) | $1,080.00 | | 24 pcs — 2" × 8" × 10' | 240 LF | 320.00 BF (1.33 BF/LF) | $1,440.00 | | 24 pcs — 1" × 6" × 10' (4/4) | 240 LF | 120.00 BF (0.50 BF/LF) | $540.00 | - **Formula (Total Board Feet (BF) and Wholesale $/MBF Extended Cost formulas)**: `=IF(OR(COUNT(A2:E2)<>5,A2<0,MOD(A2,1)<>0,MIN(B2:D2)<=0,E2<0),"Invalid lumber inputs",ROUND((A2 * B2 * C2 * D2) / 12, 2))` - **Formula (Extended lumber cost from wholesale $/MBF quote (per 1,000 BF))**: `=IF(OR(COUNT(A2:E2)<>5,A2<0,MOD(A2,1)<>0,MIN(B2:D2)<=0,E2<0),"Invalid lumber inputs",ROUND(((A2 * B2 * C2 * D2) / 12) * (E2 / 1000), 2))` ### Lumped-Capacitance Biot Gate (Bi <= 0.1) & Newtonian Thermal Quench Time - **URL**: https://sheets.arte-soft.com/en/learn/lumped-capacitance-biot-number-and-newtonian-thermal-quench-time/ - **Summary**: Verify lumped-system validity via Characteristic Length L_c = V / A_s and Biot number Bi = h * L_c / k, then calculate thermal time constant tau and exact cooling/heating time. *Table — Always check Biot <= 0.10 before trusting exponential cooling formulas:* | Thermal Quantity | Formula | Example Quench Value | Engineering Meaning | | --- | --- | --- | --- | | Characteristic Length L_c | Volume / Area | 0.0050 m (5 mm) | Volume-to-surface ratio | | Biot Number Bi | (h * L_c) / k | 0.0100 | Bi <= 0.10 -> LUMPED_VALID | | Thermal Time Constant tau | (rho * c_p * L_c) / h | 50.00 s | 63.2% temperature decay time | | Time to Reach 70 °C | -tau * LN((T_tgt - T_inf)/(T_i - T_inf)) | 69.31 s | Exact 75% quench completion | - **Formula (Biot Number Validity Gate Formula)**: `=IF(E3 <= 0.1, "LUMPED_VALID", "GRADIENT_EFFECTS")` - **Formula (Exact Time to Target Temperature Formula)**: `=ROUND(-E4 * LN((B9 - B8) / (B7 - B8)), 2)` ### Lund-Browder Pediatric vs Wallace Rule of Nines TBSA% Formula: Age-Adjusted Head & Legs - **URL**: https://sheets.arte-soft.com/en/learn/lund-browder-pediatric-vs-wallace-rule-of-nines-tbsa-area-formula/ - **Summary**: Calculate age-adjusted Total Body Surface Area %TBSA in infants, children, and adults using Charles C. Lund and Newton C. Browder’s (1944) developmental anatomy chart (where infant Head = 19% vs adult 7%) alongside Alexander Wallace’s (1951) Adult Rule of Nines. *Table — Why applying adult "Rule of Nines" (9% Head) to an infant underestimates cranial surface area by > 10% TBSA!:* | Lund-Browder Developmental Age Bracket | Total Head + Neck Max %TBSA (2% Neck + Cranium) | Both Thighs + Lower Legs + Feet Max %TBSA | Invariant Trunk+Buttocks+Perineum (32%) + Arms (19–20%) | | --- | --- | --- | --- | | Infant (0 to < 1 Year) | 21% (19% Head + 2% Neck) | 27% (13.5% per Leg incl. 3.5% Foot) | 52% (Grand Sum = 100%) | | 5-Year-Old Child | 15% (13% Head + 2% Neck) | 33% (16.5% per Leg) | 52% (Grand Sum = 100%) | | 10-Year-Old Child | 13% (11% Head + 2% Neck) | 35% (17.5% per Leg) | 52% (Grand Sum = 100%) | | Adult (>= 15 Years, Lund-Browder) | 9% (7% Head + 2% Neck) | 39% (19.5% per Leg) | 52% (Grand Sum = 100%) | - **Formula (Age-Adjusted Lund-Browder Maximum Cranial Head %TBSA (Excl. 2% Neck))**: `=IF(B2 < 0, "Age Cannot Be Negative", IF(B2 < 1, 19, IF(B2 < 5, 17, IF(B2 < 10, 13, IF(B2 < 15, 11, 7)))))` - **Formula (Patient Partial- + Full-Thickness %TBSA from Fractional Regional Involvement)**: `=IF(OR(B2 < 0, B3 < 0, B3 > 1, B4 < 0, B4 > 26, B5 < 0, B5 > 2), "Invalid Age or Regional Fractional Involvement", ROUND(B3 * IF(B2 < 1, 19, IF(B2 < 5, 17, IF(B2 < 10, 13, IF(B2 < 15, 11, 7)))) + B4 + B5 * IF(B2 < 1, 13.5, IF(B2 < 5, 14.5, IF(B2 < 10, 16.5, IF(B2 < 15, 17.5, 19.5)))), 2))` ### M/M/1/K Finite-Buffer Queue Blocking Probability, Drop Rate & Mean Occupancy - **URL**: https://sheets.arte-soft.com/en/learn/m-m-1-k-finite-buffer-queue-blocking-probability-and-effective-throughput/ - **Summary**: Model finite-capacity single-server queues (API connection pools, router packet buffers, call trunks) with exact M/M/1/K blocking probability P_K, admitted throughput lambda_eff, mean occupancy L, and rho = 1 singularity handling. *Table — Why finite buffer K stabilizes overloaded queues (rho >= 1) while shedding P_K arrivals:* | M/M/1/K Metric (K = 4 System Slots) | Sub-Capacity Load (lambda=8, mu=10, rho=0.8) | Unit-Load Singularity (lambda=10, mu=10, rho=1.0) | | --- | --- | --- | | Blocking / Rejection Probability P_K | 0.1218 (12.18% shed) | 0.2000 (1 / (4 + 1) = 20.00% shed) | | Effective Admitted Rate lambda_eff | 7.0252 req/s | 8.0000 req/s | | Mean System Occupancy L | 1.5631 jobs | 2.0000 jobs (K / 2) | - **Formula (Singularity-Safe M/M/1/K Blocking Probability P_K Formula)**: `=LET(rho_val, B2 / B3, cap_k, B4, IF(ABS(rho_val - 1) < 0.000000001, ROUND(1 / (cap_k + 1), 4), ROUND(((1 - rho_val) * (rho_val ^ cap_k)) / (1 - (rho_val ^ (cap_k + 1))), 4)))` - **Formula (Exact M/M/1/K Mean System Occupancy L Formula)**: `=LET(rho_val, B2 / B3, cap_k, B4, IF(ABS(rho_val - 1) < 0.000000001, ROUND(cap_k / 2, 4), ROUND((rho_val / (1 - rho_val)) - (((cap_k + 1) * (rho_val ^ (cap_k + 1))) / (1 - (rho_val ^ (cap_k + 1)))), 4)))` ### M&A Contingent Earnout Sliding-Scale vs Cliff Formula - **URL**: https://sheets.arte-soft.com/en/learn/ma-contingent-earnout-sliding-scale-vs-binary-cliff-payout-formula/ - **Summary**: Calculate Linear Sliding-Scale Earnout Payout E_max * MIN(1, MAX(0, (R_act - R_min) / (R_max - R_min))), Binary All-or-Nothing Cliff Payout, Present-Value Total Consideration, and Marginal Revenue Slope. *Table — Eliminate post-merger cliff litigation and audit marginal earnout moral hazard!:* | M&A Earnout Metric ($80M Upfront + $30M Earnout on [$50M, $70M], R_act=$62M) | Formula | Verified Output | | --- | --- | --- | | Sliding-Scale Earnout Payout ($M) | E_max * MIN(1, MAX(0, (R_act - R_min)/(R_max - R_min))) | $18.00M (60.0% Achievement) | | Binary Cliff Payout @ R_max ($M) | IF(R_act >= R_max, E_max, 0) | $0.00M (-$18.00M Cliff Drop) | | PV Total Deal Consideration ($M) | C_up + Payout_Slide / (1 + r_disc) | $96.36M (@ 10% Discount) | | Marginal Revenue Earnout Slope | E_max / (R_max - R_min) | 1.5000x ($1.50 per $1 Rev) | - **Formula (Clamped Linear Sliding-Scale Earnout Payout Formula)**: `=LET(c_up, B2, e_mx, B3, r_mn, B4, r_mx, B5, r_ac, B6, rt_d, B7, IF(OR(c_up < 0, e_mx <= 0, r_mn < 0, r_mx <= r_mn, r_ac < 0, rt_d <= -1), "Invalid Earnout Terms", ROUND(e_mx * MIN(1, MAX(0, (r_ac - r_mn) / (r_mx - r_mn))), 2)))` - **Formula (Discounted Total Consideration & Marginal Slope Audit Formula)**: `=IF(ISTEXT(E2), E2, ROUND(B2 + (B3 * MIN(1, MAX(0, (B6 - B4) / (B5 - B4)))) / (1 + B7), 2))` ### M&A EV-to-Equity Bridge, Working Capital Peg & Wire Formula - **URL**: https://sheets.arte-soft.com/en/learn/ma-enterprise-to-equity-bridge-working-capital-peg-and-locked-box-formula/ - **Summary**: Calculate M&A Completion-Accounts Closing Net Debt (Debt - Cash), Dollar-for-Dollar Net Working Capital (NWC) Peg Adjustment (Actual_NWC - Target_Peg), Adjusted Equity Purchase Price, and Day-1 Seller Wire Proceeds Net of Escrow. *Table — Prevent sign-flip errors in M&A Cash-Free Debt-Free EV-to-Equity closing funds flows!:* | M&A Closing Bridge ($120M EV, $8M Cash, $25M Debt, $14.5M NWC vs $16M Peg, $5M Escrow) | Formula | Verified Output | | --- | --- | --- | | Closing Net Debt ($M) | Closing_Debt_&_DebtLike - Closing_Cash | $17.00M | | NWC Peg True-Up ($M) | Actual_Closing_NWC - Target_NWC_Peg | -$1.50M (+$2.00M @ $18M NWC) | | Adjusted Equity Purchase Price | EV - Net_Debt + (Actual_NWC - Peg) | $101.50M ($105.00M @ $18M NWC) | | Day-1 Seller Wire Proceeds ($M) | Adjusted_Equity_Price - Holdback_Escrow | $96.50M | - **Formula (M&A Completion-Accounts Adjusted Equity Value Formula)**: `=LET(ev_h, B2, cs_c, B3, db_c, B4, nw_a, B5, nw_p, B6, es_c, B7, IF(OR(ev_h <= 0, cs_c < 0, db_c < 0, es_c < 0, (ev_h + cs_c - db_c + (nw_a - nw_p)) <= es_c), "Invalid M&A Closing Bridge", ROUND(ev_h + cs_c - db_c + (nw_a - nw_p), 2)))` - **Formula (Surplus Working Capital Delivery Check (Set Actual Closing NWC = $18.00M))**: `=IF(ISTEXT(E2), E2, ROUND(B5 - B6, 2))` ### M&A EPS Accretion / Dilution & Breakeven Synergy Formula - **URL**: https://sheets.arte-soft.com/en/learn/ma-eps-accretion-dilution-cash-vs-stock-financing-synergy-formula/ - **Summary**: Calculate Pro-Forma M&A Earnings Per Share under mixed stock-and-debt acquisition financing, EPS Accretion/Dilution percentage, and Pre-Tax Breakeven Synergies. *Table — Model mixed stock-and-debt M&A EPS accretion and exact breakeven synergies!:* | M&A Merger Consequences Metric ($1.6B Deal, 50% Stock / 50% Debt @ 6%) | Formula | Verified Output | | --- | --- | --- | | New Acquirer Shares Issued (M) | (w_stk * P_deal) / P_acq | 10.00M (S_pf = 110.00M) | | Pro-Forma Combined EPS ($/sh) | NI_pf / (S_acq + New_Shares) | $4.0591 / sh (vs $4.0000 Base) | | EPS Accretion / Dilution (%) | (EPS_pf - EPS_base) / EPS_base | +0.0148 (+1.48% Accretive) | | Pre-Corp Breakeven Synergies ($M) | Required Synergy Lift for EPS_pf = EPS_base | $21.33M (Current $30M > $21.33M) | - **Formula (Pro-Forma Combined EPS & Accretion/Dilution Ratio Formula)**: `=LET(ni_a, B2, sh_a, B3, px_a, B4, ni_t, B5, dl_v, B6, w_st, B7, rt_d, B8, sy_p, B9, tx_c, B10, IF(OR(ni_a <= 0, sh_a <= 0, px_a <= 0, dl_v <= 0, w_st < 0, w_st > 1, rt_d < 0, sy_p < 0, tx_c < 0, tx_c >= 1), "Invalid Merger Input", LET(sh_n, (w_st * dl_v) / px_a, in_p, (1 - w_st) * dl_v * rt_d, ni_pf, ni_a + ni_t + (sy_p - in_p) * (1 - tx_c), ep_pf, ni_pf / (sh_a + sh_n), ep_bs, ni_a / sh_a, ROUND((ep_pf - ep_bs) / ep_bs, 4))))` - **Formula (Exact Pre-Tax Breakeven Synergy Hurdle Formula)**: `=LET(ni_a, B2, sh_a, B3, px_a, B4, ni_t, B5, dl_v, B6, w_st, B7, rt_d, B8, tx_c, B10, IF(ISTEXT(E4), E4, LET(sh_pf, sh_a + (w_st * dl_v) / px_a, ep_bs, ni_a / sh_a, in_p, (1 - w_st) * dl_v * rt_d, ROUND(MAX(0, in_p + ((ep_bs * sh_pf - ni_a - ni_t) / (1 - tx_c))), 2))))` ### M&A Floating-Value Stock Collar Exchange Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/ma-fixed-exchange-ratio-vs-floating-value-stock-collar-formula/ - **Summary**: Calculate the floating stock exchange ratio ER = V_offer / MIN(P_cap, MAX(P_floor, P_acq)), implied target per-share payout, and pro-forma target ownership across M&A collar bands. *Table — Protect target deal value inside the collar band while capping acquirer share dilution!:* | Acquirer Price Scenario (V_offer=$60, Collar [$80, $120]) | Exchange Ratio ER | Implied Target Value / sh | | --- | --- | --- | | Baseline Inside Band (P_acq = $100) | 60 / 100 = 0.6000x | $60.00 (20.00% Ownership) | | Moderate Dip Inside Band (P_acq = $90) | 60 / 90 = 0.6667x | $60.00 (Protected Value) | | Below Floor Crash (P_acq = $64 < $80) | Capped at 60 / 80 = 0.7500x | $48.00 (Dilution Capped) | | Above Cap Rally (P_acq = $150 > $120) | Floored at 60 / 120 = 0.5000x | $75.00 (Upside Shared) | - **Formula (Clamped Floating-Value Collar Exchange Ratio Formula)**: `=LET(v_of, B2, p_aq, B3, p_fl, B4, p_cp, B5, IF(OR(v_of <= 0, p_aq <= 0, p_fl <= 0, p_cp <= p_fl, B6 <= 0, B7 <= 0), "Invalid Collar Band", ROUND(v_of / MIN(p_cp, MAX(p_fl, p_aq)), 4)))` - **Formula (Implied Target Deal Value & Pro-Forma Ownership Share Formula)**: `=LET(er_cl, B2 / MIN(B5, MAX(B4, B3)), IF(ISTEXT(E2), E2, ROUND((er_cl * B6) / (B7 + er_cl * B6), 4)))` ### Macaulay Duration and Modified Duration Bond Formulas (DURATION & MDURATION) - **URL**: https://sheets.arte-soft.com/en/learn/macaulay-duration-and-modified-duration-bond-formulas/ - **Summary**: Compute present-value-weighted cash-flow maturity (Macaulay Duration) and yield sensitivity (Modified Duration) directly from coupon schedules without opaque Analysis ToolPak black boxes. *Table — Macaulay Duration vs. Modified Duration:* | Period (k) | Time (Years) | Cash Flow ($) | Discounted PV ($) | Time-Weighted PV | | --- | --- | --- | --- | --- | | 1 | 0.5 | 30.00 | 29.2683 | 14.6341 | | 2 | 1.0 | 30.00 | 28.5544 | 28.5544 | | 3 | 1.5 | 30.00 | 27.8580 | 41.7870 | | 4 | 2.0 | 1,030.00 | 933.1292 | 1,866.2583 | | Totals / Metrics | — | Price = 1,018.8099 | MacDur = 1.9152 yrs | ModDur = 1.8685 | - **Formula (Macaulay Duration Formula (Years))**: `=ROUND(SUM(E2:E5) / SUM(D2:D5), 4)` - **Formula (Modified Duration Formula (Yield Sensitivity))**: `=ROUND((SUM(E2:E5) / SUM(D2:D5)) / (1 + G4 / G5), 4)` ### Bond Duration & DV01 formulas: Macaulay Duration, Modified Duration & rate shock - **URL**: https://sheets.arte-soft.com/en/learn/macaulay-duration-modified-duration-and-dv01-bond/ - **Summary**: Calculate PV-weighted Macaulay Duration (years), interest-rate sensitivity Modified Duration, and DV01 dollar risk per 1 basis point (0.01%) yield shift. *Table — Why a 3-year coupon bond has a 2.86-year Macaulay Duration (and zero-coupon = 3.00!):* | Fixed-Income Risk Metric ($1,000 Par, 5% Coupon, 3 Yr) | Formula | Result | | --- | --- | --- | | Bond Price (Sum of Cash-Flow PVs) | =SUM(C2:C4) | $1,000.00 | | Macaulay Duration (Years) | =SUMPRODUCT(A2:A4, C2:C4) / SUM(C2:C4) | 2.8594 years (Zero-coupon = 3.0000) | | Modified Duration (% per 1% Δy) | =MacDur / (1 + E2) | 2.7232 | | DV01 ($ per 1 bp = 0.01% Δy) | =Price * ModDur * 0.0001 | $0.2723 per bp; approximately -$27.23 for a +100 bp yield change | - **Formula (Macaulay Duration, Modified Duration, and DV01 formulas)**: `=ROUND(SUMPRODUCT(A2:A4, C2:C4) / SUM(C2:C4), 4)` - **Formula (Modified Duration and DV01 (Dollar Value of 1 basis point))**: `=ROUND((SUMPRODUCT(A2:A4, C2:C4) / SUM(C2:C4)) / (1 + E2), 4)` ### Supersonic Mach Cone Angle & Subsonic Prandtl-Glauert Rule - **URL**: https://sheets.arte-soft.com/en/learn/mach-cone-half-angle-and-prandtl-glauert-compressibility/ - **Summary**: Calculate the Mach-wave half-angle for supersonic flow and a separate Prandtl-Glauert pressure-coefficient approximation. Distinguish weak waves, finite-strength shocks and the sonic limit. - **Formula (Mach-wave half-angle in degrees)**: `=IF(NOT(ISNUMBER(B2)),"Enter numeric Mach",IF(B2<0,"Mach must be nonnegative",IF(B2<1,"Subsonic: no Mach cone",IF(B2=1,"Sonic limit: 90 degrees",DEGREES(ASIN(1/B2))))))` - **Formula (Prandtl-Glauert pressure coefficient)**: `=IF(COUNT(B3:B4)<>2,"Enter numeric Mach and coefficient",IF(B3<0,"Mach must be nonnegative",IF(B3>=0.8,"Outside this subsonic example range",B4/SQRT(1-B3^2))))` ### Mach Number, Speed of Sound in Air & Aerodynamic Dynamic Pressure (q) formulas - **URL**: https://sheets.arte-soft.com/en/learn/mach-number-speed-of-sound-in-air-and-dynamic-pressure/ - **Summary**: Calculate local speed of sound a = SQRT(1.4 * 287.05 * (T_C + 273.15)), flight Mach Number V / a, compressible regime, and dynamic pressure 0.5 * rho * V^2. *Table — Local Mach number in a constant-property ideal-air model:* | Aerodynamic Input | Cell | Flight Condition | Computed Output | | --- | --- | --- | --- | | Ambient Air Temp (T_C) | B2 = 20 C | 293.15 K (no altitude inferred) | Speed of Sound a = 343.23 m/s | | True Airspeed (V_ms) | B3 = 250 m/s | 900 km/h jet cruise | Mach M = 250 / 343.23 = 0.7284 | | Air Density (rho) | B4 = 1.225 kg/m^3 | q = 0.5 * 1.225 * 250^2 | Dynamic Pressure q = 38,281.25 Pa | | Speed400m/s | V set to 400 m/s | 400 / 343.23 = 1.1654 | Mach1.1654; slightly above sonic speed | - **Formula (Local Speed of Sound a (m/s) & Flight Mach Number M = V / a)**: `=IF(OR(COUNT(B2:B4)<>3,B2<=-273.15,B3<0,B4<=0),"Invalid inputs",ROUND(B3 / SQRT(1.4 * 287.05 * (B2 + 273.15)), 4))` - **Formula (Aerodynamic Dynamic Pressure q = 0.5 * rho * V^2 (Pascals))**: `=IF(OR(COUNT(B2:B4)<>3,B2<=-273.15,B3<0,B4<=0),"Invalid inputs",ROUND(0.5 * B4 * (B3 ^ 2), 2))` ### Mach-Zehnder Interferometer (MZI): Phase Transmittance & Extinction Ratio - **URL**: https://sheets.arte-soft.com/en/learn/mach-zehnder-interferometer-phase-shift-and-extinction-ratio/ - **Summary**: Calculate integrated silicon-photonics Mach-Zehnder bar-port transmittance T = COS(π * Δn_eff * L / λ)^2 and finite coupler Extinction Ratio ER = -20 * LOG10(ABS(1 - 2 * κ)) (dB). *Table — Why a 3% directional-coupler split error caps MZI extinction at 24.44 dB!:* | Silicon Photonics MZI Arm Length L (λ=1.55 μm, Δn=0.0005) | Phase Shift ΔΦ (rad) | Ideal Transmittance T = cos^2(ΔΦ/2) | Modulator Bias Point | | --- | --- | --- | --- | | Partial Phase Tuning (L = 500 μm) | 1.0134 rad | 0.7645 (76.45%) | High-Transmission Slope | | Quadrature Linear Bias (L = 775 μm) | 1.5708 rad (π / 2) | 0.5000 (50.00%) | Maximum Linear Small-Signal Gain | | Half-Wave Null Length L_π (L = 1,550 μm) | 3.1416 rad (π) | 0.0000 (0.00%) | Destructive OFF State | - **Formula (Ideal MZI Optical Power Transmittance T = COS(π * Δn_eff * L / λ)^2)**: `=IF(OR(B2 <= 0, B4 < 0), "Invalid MZI Inputs", ROUND(COS(PI() * B3 * B4 / B2) ^ 2, 4))` - **Formula (Coupler-Limited Extinction Ratio ER = -20 * LOG10(ABS(1 - 2 * κ)) (dB))**: `=IF(OR(B5 <= 0, B5 >= 1), "Invalid Split Ratio", IF(B5 = 0.5, "Ideal Infinite ER (50:50 Split)", ROUND(-20 * LOG10(ABS(1 - 2 * B5)), 2)))` ### Macro-Nutrient Meal & Grocery Budget Planner (SUMPRODUCT Atwater 4-4-9 & Protein Cost) - **URL**: https://sheets.arte-soft.com/en/learn/macro-nutrient-meal-planner-calorie-protein-and-cost-per-gram-formula/ - **Summary**: Scale serving multiples across daily meals with SUMPRODUCT to track total protein, carbs, fats, Atwater 4-4-9 calories, protein calorie share %, and daily grocery budget limits. *Table — Scaling meal servings against macro targets and a daily budget cap:* | Daily Metric | Formula Pattern | Planned Value | Target / Cap Check | | --- | --- | --- | --- | | Total Protein (g) | SUMPRODUCT(Servings, Prot_g) | 97 g | 37.60% of kcal | | Total Carbs / Fat | SUMPRODUCT(Servings, Macro_g) | 107 g / 24 g | Balanced split | | Atwater Total Kcal | 4*Prot + 4*Carb + 9*Fat | 1,032 kcal | Exact macro energy | | Daily Grocery Cost | SUMPRODUCT(Servings, Unit_Cost) | $8.80 | Under $10.00 cap | - **Formula (Serving-Weighted Macro Grams & Atwater Calories)**: `=4 * I2 + 4 * I3 + 9 * I4` - **Formula (Budget Cap Gate & Cost per 10g Protein)**: `=IF(I6 <= I7, "Within_Budget", "Over_Budget")` ### MACRS 200% DB & IRC §168(k) Bonus Depreciation Formula - **URL**: https://sheets.arte-soft.com/en/learn/macrs-half-year-200-percent-declining-balance-and-bonus-depreciation-formula/ - **Summary**: Calculate IRC Section 168(k) First-Year Bonus Depreciation ($M), Combined Year-1 MACRS Half-Year 200% Declining-Balance Deduction ($M), Cash Tax Shield ($M), and Adjusted End-of-Year-1 Tax Basis ($M). *Table — Apply regular Year-1 MACRS to remaining basis AFTER bonus depreciation—never to gross CapEx!:* | Year-1 Tax Depreciation KPI ($10.0M CapEx, 60% Bonus, 5-Yr MACRS, 25% Tax) | Formula | Verified Output | | --- | --- | --- | | IRC §168(k) Bonus Depreciation ($M) | Equipment_Cost * Bonus_Pct | $6.00M ($10.00M @ 100%) | | Total Year-1 Tax Deduction ($M) | Bonus + (Cost - Bonus) * 0.5 * (2 / Years) | $6.80M ($2.00M @ 0% Bonus) | | Year-1 Cash Tax Shield ($M) | Total_Year1_Deduction * Tax_Rate | $1.70M ($2.50M @ 100%) | | End-of-Year-1 Tax Basis ($M) | Equipment_Cost - Total_Year1_Deduction | $3.20M ($0.00M @ 100%) | - **Formula (Sequential Bonus + Half-Year 200% DB MACRS Year-1 Formula)**: `=LET(cp_x, B2, bn_p, B3, yr_m, B4, tx_r, B5, IF(OR(cp_x <= 0, bn_p < 0, bn_p > 1, yr_m < 3, tx_r < 0, tx_r >= 0.55), "Invalid MACRS Input", LET(bn_d, cp_x * bn_p, rg_d, (cp_x - bn_d) * 0.5 * (2 / yr_m), ROUND(bn_d + rg_d, 2))))` - **Formula (100% Full Expensing vs 0% Bonus Phase-Out Sensitivity Checks)**: `=IF(ISTEXT(E3), E3, ROUND(B2 - E3, 2))` ### Maddrey Discriminant Function (mDF) Score for Alcoholic Hepatitis - **URL**: https://sheets.arte-soft.com/en/learn/maddrey-discriminant-function-mdf-severe-alcoholic-hepatitis-score/ - **Summary**: Calculate Willis Maddrey’s modified Discriminant Function mDF = 4.6 * (PT_patient - PT_control) + Bilirubin_mg_dL to identify severe alcoholic hepatitis (mDF >= 32) eligible for prednisolone therapy. *Table — Why mDF >= 32 has anchored AASLD & EASL severe alcoholic hepatitis guidelines for over 45 years!:* | Clinical Presentation (PT Control = 12.0 s) | mDF Score | 28-Day Prognostic Stratum | AASLD / EASL Pathway | | --- | --- | --- | --- | | PT = 13.5 s, Bilirubin = 4.2 mg/dL | 11.10 (< 32) | Non-Severe Alcoholic Hepatitis | Supportive Nutrition & Abstinence | | PT = 19.8 s, Bilirubin = 8.4 mg/dL | 44.28 (>= 32) | Severe Alcoholic Hepatitis | Screen Infection -> Prednisolone + Day-7 Lille | | Invalid Lab Values (PT <= 0 or Bili < 0) | Error Guard | "Invalid Coagulation / Bilirubin Inputs" | Verify Units (mg/dL vs μmol/L) | - **Formula (Modified Maddrey Discriminant Function (mDF))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Lab Inputs", ROUND(4.6 * (B2 - B3) + B4, 2))` - **Formula (mDF >= 32 Corticosteroid Eligibility Stratum)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Lab Inputs", IF(4.6 * (B2 - B3) + B4 >= 32, "Severe Alcoholic Hepatitis (mDF >= 32)", "Non-Severe (mDF < 32 — Supportive Care)"))` ### MAE, WAPE & Forecast Bias for Intermittent Zero-Demand SKUs - **URL**: https://sheets.arte-soft.com/en/learn/mae-wape-and-smape-demand-forecast-error-formulas/ - **Summary**: Measure supply-chain forecast accuracy without #DIV/0! zero-actual explosions using Mean Absolute Error MAE = AVERAGE(|A - F|), Weighted Absolute Percentage Error WAPE = SUM(|A - F|) / SUM(A), and Signed Bias. *Table — Why supply-chain planners replace classic MAPE with WAPE on intermittent SKUs!:* | Week | Actual Units (A) | Forecast Units (B) | Abs Error \|A - F\| (C) | | --- | --- | --- | --- | | W1 | 100 | 90 | 10 | | W2 (Stockout / Zero Actual!) | 0 | 20 | 20 (Classic MAPE = #DIV/0!!) | | W3 | 150 | 130 | 20 | | W4 | 50 | 60 | 10 -> MAE = 15.0 \| WAPE = 60/300 = 20% | - **Formula (Weighted Absolute Percentage Error WAPE = SUM(|A - F|) / SUM(A))**: `=IF(SUM(A2:A5) <= 0, "Zero Total Period Demand", ROUND(SUM(C2:C5) / SUM(A2:A5), 4))` - **Formula (Mean Absolute Error (MAE) & Signed Forecast Bias (%))**: `=AVERAGE(C2:C5)` ### Magnetron Sputtering PVD Deposition Rate & Throw Formula - **URL**: https://sheets.arte-soft.com/en/learn/magnetron-sputtering-pvd-thin-film-deposition-rate-cosine-throw-and-step-coverage/ - **Summary**: Calculate Total Sputtered Atom Emission Rate (10¹⁹ atoms/s), Knudsen Cosine Wafer-Center Flux (10¹⁶ atoms/cm²·s), Film Deposition Rate (nm/min), and 500 nm Seed Coat Time (min). *Table — Raise a magnetron wafer chuck from 8.5 to 14.0 cm to improve uniformity and inverse-square cosine throw slashes PVD deposition rate by 63%!:* | DC Magnetron Copper PVD KPI (I=0.85 A, Y=1.85, Cu M=63.546, h=8.5 vs 14.0 cm) | Formula | Verified Output | | --- | --- | --- | | Ejected Atom Rate (x10¹⁹ atoms/s) | ((Current_A / 1.60217663e-19) * Yield) / 1e19 | 0.981 x 10¹⁹ atoms/s | | Wafer-Center Flux (x10¹⁶ /cm²·s) | (Ejected_Atoms_s / (PI() * h_cm^2)) / 1e16 | 4.32 (1.59 @ long-throw h=14.0 cm!) | | Film Deposition Rate (nm/min) | Js * (M / (rho * 6.02214076e23)) * 6e8 | 305.5 nm/min (112.6 nm/min @ 14.0 cm) | | Time for 500 nm Seed Layer (min) | 500 / Deposition_Rate_nm_min | 1.64 min (4.44 min cycle @ 14.0 cm) | - **Formula (Sputter Yield, Knudsen Cosine Throw Flux & Thin-Film Growth Rate Formula)**: `=LET(ic_a, B2, sy_a, B3, ht_c, B4, mw_g, B5, rf_g, B6, nd_s, (ic_a / 0.000000000000000000160217663) * sy_a, js_c, nd_s / (PI() * (ht_c ^ 2)), rd_n, js_c * (mw_g / (rf_g * 602214076000000000000000)) * 600000000, IF(OR(ic_a <= 0.02, sy_a <= 0.05, sy_a > 8, ht_c < 2, ht_c > 50, mw_g < 6, mw_g > 250, rf_g < 1.5, rf_g > 23), "Invalid PVD Input", ROUND(500 / rd_n, 2)))` - **Formula (Long-Throw 14.0 cm High-Aspect Trench Collimation Rate Penalty Check (Set Throw Distance B4 = 14.0 cm))**: `=IF(ISTEXT(E5), E5, LET(nd_s, (B2 / 0.000000000000000000160217663) * B3, js_c, nd_s / (PI() * (B4 ^ 2)), ROUND(js_c * (B5 / (B6 * 602214076000000000000000)) * 600000000, 1)))` ### Maister’s Square-Root Law of Warehouse Centralization & Correlated Safety Stock - **URL**: https://sheets.arte-soft.com/en/learn/maister-square-root-law-warehouse-centralization-safety-stock-formula/ - **Summary**: Project safety-stock savings when consolidating N_old regional depots into N_new hubs using David Maister’s (1976) SQRT(N_new / N_old) law plus inter-regional demand correlation rho. *Table — Why naive SQRT(N_new / N_old) overstates inventory savings when regional demand is correlated:* | Demand Correlation rho (16 Depots -> 4 Hubs) | Generalized Multiplier | Centralized Safety Stock (from 20,000) | | --- | --- | --- | | rho = 0.00 (Independent — Classic Maister) | SQRT(4 / 16) = 0.5000 | 10,000 units (10,000 saved) | | rho = 0.52 (Seasonal / Promo Co-Movement) | SQRT(0.25*0.48 + 0.52) = 0.8000 | 16,000 units (4,000 saved) | | rho = 1.00 (Perfectly Synchronized Shocks) | SQRT(1.0000) = 1.0000 | 20,000 units (0 saved) | - **Formula (Correlation-Adjusted Square-Root Law Safety Stock Formula)**: `=ROUND(B4 * SQRT((B3 / B2) * (1 - B5) + B5), 2)` - **Formula (Net Inventory Reduction & Naive Overstatement Check)**: `=ROUND(B4 - E3, 2)` ### Make dynamic labels singular or plural based on count (1 item vs 0 items) - **URL**: https://sheets.arte-soft.com/en/learn/make-words-singular-or-plural-label/ - **Summary**: Format natural summary strings ("1 pallet", "0 entries", "5 boxes") by testing ABS(Qty) = 1 for regular and irregular nouns. *Table — Why pluralization checks Qty = 1 (not Qty > 1):* | Qty (A) | Singular (B) | Plural (C) | Formatted Phrase | | --- | --- | --- | --- | | 1 | pallet | pallets | 1 pallet | | 0 | entry | entries | 0 entries | | 5 | box | boxes | 5 boxes | - **Formula (Irregular and regular plural formulas)**: `=A2 & " " & IF(ABS(A2)=1, B2, C2)` - **Formula (Compact regular-noun "s" suffix formula)**: `=A2 & " " & B2 & IF(ABS(A2)=1, "", "s")` ### Malus's Law Polarizer Intensity & Brewster's Angle optics formulas - **URL**: https://sheets.arte-soft.com/en/learn/malus-law-polarization-and-brewsters-angle-optics/ - **Summary**: Calculate ideal analyzer transmission and the Brewster angle for two transparent dielectric media. *Table — Ideal polarization models with angles in degrees:* | Optics Parameter | Cell | Laser / Glare Setup | Optical Output | | --- | --- | --- | --- | | Incident Polarized Intensity I0 | B2 = 100 W/m^2 | Collimated polarized beam | 100 W/m^2 at theta = 0 deg | | Analyzer Angle theta | B3 = 60 deg | COS(RADIANS(60))^2 = 0.25 | Transmitted I = 25.00 W/m^2 | | Incident Medium n1 & Glass n2 | B4 = 1.00, B5 = 1.50 | DEGREES(ATAN(1.50 / 1.00)) | Brewster Angle = 56.31 deg | | Crossed Polarizers (90 deg) | B3 set to 90 deg | Ideal cosine-squared limit | Rounded ideal transmission0 | - **Formula (Malus's Law transmitted intensity I = I0 * COS(RADIANS(theta))^2)**: `=IF(OR(COUNT(B2:B3)<>2,B2<0),"Invalid inputs",ROUND(B2 * (COS(RADIANS(B3)) ^ 2), 4))` - **Formula (Brewster's Polarization Angle DEGREES(ATAN(n2 / n1)))**: `=IF(OR(COUNT(B4:B5)<>2,MIN(B4:B5)<=0),"Invalid inputs",IF(B4=B5,"No unique angle",ROUND(DEGREES(ATAN(B5/B4)),2)))` ### Managed Care PMPM Capitation & IBNR Pool Formula - **URL**: https://sheets.arte-soft.com/en/learn/managed-care-pmpm-capitation-pool-ibnr-claims-and-risk-corridor-formula/ - **Summary**: Calculate Risk-Adjusted PMPM Capitation Pool Revenue, Actuarial Completion-Factor Ultimate Incurred Claims (Paid / Completion_Factor), Medical Cost Ratio (MCR), and Net Risk Margin PMPM. *Table — Divide paid claims by the actuarial completion factor—never multiply by (1 + lag)!:* | Full-Risk Capitation Metric (10k Lives, RAF=1.15, $400 PMPM, $3.5M Paid, CF=0.875) | Formula | Verified Output | | --- | --- | --- | | Risk-Adjusted Capitation Pool ($) | Lives * RAF_Score * Base_PMPM | $4,600,000.00 ($460.00 PMPM) | | Ultimate Incurred Claims ($) | Paid_Claims / Completion_Factor | $4,000,000.00 ($500k IBNR) | | Medical Cost Ratio (MCR) | Ultimate_Incurred / Capitation_Pool | 0.8696 (86.96%) | | Net Capitation Margin PMPM ($) | (Cap_Pool - Ultimate_Claims) / Lives | +$60.00 PMPM (-$20 @ $4.2M Paid) | - **Formula (Completion-Adjusted Capitation PMPM Margin Formula)**: `=LET(lv_n, B2, rf_s, B3, pm_b, B4, pd_c, B5, cf_l, B6, IF(OR(lv_n <= 0, rf_s <= 0, pm_b <= 0, pd_c < 0, cf_l <= 0, cf_l > 1), "Invalid Capitation Pool", LET(cp_p, lv_n * rf_s * pm_b, ul_c, pd_c / cf_l, ROUND((cp_p - ul_c) / lv_n, 2))))` - **Formula (Winter Utilization Surge & Run-Out Check)**: `=IF(ISTEXT(E2), E2, ROUND((B5 / B6) / E2, 4))` ### Mann-Whitney U test (Wilcoxon Rank-Sum) statistic & AUC effect size - **URL**: https://sheets.arte-soft.com/en/learn/mann-whitney-u-test-rank-sum-statistic-formula/ - **Summary**: Calculate a pooled-rank Mann–Whitney statistic and a descriptive pairwise superiority estimate for two independent groups. *Table — Use pooled average ranks, including tied values:* | Group & Values | Combined Ascending Ranks (1..8) | Rank Sum R | Mann-Whitney U & AUC | | --- | --- | --- | --- | | Group A [12, 18, 25, 95] (n1=4) | 3, 5, 7, 8 | R1 = 23 | U1 = 23 - 10 = 13 wins | | Group B [8, 10, 15, 20] (n2=4) | 1, 2, 4, 6 | R2 = 13 | U2 = 16 - 13 = 3 (Test U = 3) | | Pairwise Win Rate (AUC) | =U1 / (n1 * n2) | 13 / 16 | 81.25% (unchanged only if ranks stay unchanged) | - **Formula (Mann-Whitney U1, U = MIN(U1, U2), and Common-Language Effect Size (AUC))**: `=IF(OR(COUNT(B2:B9)<>8,COUNTIF(A2:A9,"A")=0,COUNTIF(A2:A9,"B")=0,COUNTIF(A2:A9,"A")+COUNTIF(A2:A9,"B")<>8),"Invalid groups",LET(countA, COUNTIF(A2:A9, "A"), countB, COUNTIF(A2:A9, "B"), rankSumA, SUMIF(A2:A9, "A", C2:C9), winsA, rankSumA - countA * (countA + 1) / 2, MIN(winsA, countA * countB - winsA)))` - **Formula (Pairwise superiority with half credit for ties)**: `=IF(OR(COUNT(B2:B9)<>8,COUNTIF(A2:A9,"A")=0,COUNTIF(A2:A9,"B")=0,COUNTIF(A2:A9,"A")+COUNTIF(A2:A9,"B")<>8),"Invalid groups",LET(countA, COUNTIF(A2:A9, "A"), countB, COUNTIF(A2:A9, "B"), rankSumA, SUMIF(A2:A9, "A", C2:C9), winsA, rankSumA - countA * (countA + 1) / 2, ROUND(winsA / (countA * countB), 4)))` ### Mannheim Peritonitis Index (MPI) Formula: Secondary Intra-Abdominal Sepsis Score (0 to 47) - **URL**: https://sheets.arte-soft.com/en/learn/mannheim-peritonitis-index-mpi-intra-abdominal-sepsis-score/ - **Summary**: Predict laparotomy mortality in secondary peritonitis using Linder & Wacha’s 8-variable Mannheim Peritonitis Index (0–47 points: Age > 50, Female, Organ Failure, Malignancy, Preop > 24h, Non-Colonic Origin, Diffuse Peritonitis, Exudate Character). *Table — Combining host organ reserve with intraoperative exudate character (Clear 0, Purulent 6, Fecal 12)!:* | Mannheim Peritonitis Index (0–47) | Multicenter Mortality Benchmark | Surgical Critical Care Tier | | --- | --- | --- | | MPI <= 20 (Mild Peritonitis) | ~0%–5% In-Hospital Mortality | Primary Closure & Standard Ward/Stepdown Care | | MPI 21–29 (Moderate Sepsis) | ~20%–25% Mortality | ICU Source-Control Monitoring & Empiric Broad Antimicrobials | | MPI >= 30 (Severe Sepsis, e.g., 32) | > 50%–60% Mortality | High Risk — Intensive Organ Support / Relaparotomy Vigilance | - **Formula (Total 8-Variable Mannheim Peritonitis Index Score (0 to 47 Points))**: `=IF(OR(MIN(B2:B8) < 0, MAX(B2:B8) > 1, NOT(OR(B9 = 0, B9 = 6, B9 = 12))), "Invalid MPI Clinical or Exudate Input", 5 * B2 + 5 * B3 + 7 * B4 + 4 * B5 + 4 * B6 + 4 * B7 + 6 * B8 + B9)` - **Formula (Billing Multicenter MPI Mortality Risk Tier (< 21, 21–29, > 29))**: `=IF(OR(MIN(B2:B8) < 0, MAX(B2:B8) > 1, NOT(OR(B9 = 0, B9 = 6, B9 = 12))), "Invalid MPI Clinical or Exudate Input", IF(5 * B2 + 5 * B3 + 7 * B4 + 4 * B5 + 4 * B6 + 4 * B7 + 6 * B8 + B9 > 29, "High Mortality Risk (MPI > 29 — Severe Peritonitis)", IF(5 * B2 + 5 * B3 + 7 * B4 + 4 * B5 + 4 * B6 + 4 * B7 + 6 * B8 + B9 >= 21, "Intermediate Mortality Risk (MPI 21–29)", "Low Mortality Risk (MPI < 21)")))` ### Manning's Open-Channel Flow formula: hydraulic radius, velocity & discharge Q - **URL**: https://sheets.arte-soft.com/en/learn/manning-open-channel-flow-velocity-and-discharge/ - **Summary**: Estimate velocity and discharge for a rectangular SI open channel under steady uniform-flow assumptions. *Table — Estimate rectangular open-channel flow under uniform-flow assumptions:* | Channel Parameter | Cell / Formula | Rectangular Concrete Canal | Hydraulic Meaning | | --- | --- | --- | --- | | Bottom Width b & Depth y | B2 = 2.0 m, B3 = 1.0 m | Area B6 = 2.0 m^2 | Wetted P = b + 2*y = 4.0 m | | Hydraulic Radius R_h | B7 = B6 / (B2 + 2*B3) | 0.50 m | Efficiency of channel shape | | Roughness n & Slope S | B4 = 0.013, B5 = 0.004 | Smooth concrete, 0.4% grade | Lower n = faster flow | | Velocity V & Discharge Q | Manning SI Equation | V = 3.06 m/s \| Q = 6.13 m^3/s | 6,130 liters per second! | - **Formula (Manning flow velocity V = (1 / n) * Rh^(2/3) * SQRT(S) (m/s))**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,B3<0,B4<=0,B5<0),"Invalid inputs",ROUND((1 / B4) * (B7 ^ (2 / 3)) * SQRT(B5), 2))` - **Formula (Volumetric channel discharge Q = Area * Velocity (m^3/s))**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,B3<0,B4<=0,B5<0),"Invalid inputs",ROUND(B6 * (1 / B4) * (B7 ^ (2 / 3)) * SQRT(B5), 2))` ### Manski Worst-Case and Monotone Causal Bounds Formula - **URL**: https://sheets.arte-soft.com/en/learn/manski-worst-case-and-monotone-treatment-response-bounds-formula/ - **Summary**: Bound Average Treatment Effects without random assignment on bounded [0, 1] or [K_0, K_1] outcomes using Manski’s (1990) worst-case bounds and MTR/MTS tightening. *Table — See why Manski worst-case bounds on [0, 1] ALWAYS have exact width 1.00:* | Manski Identification Regime | Lower & Upper Bound Formulas | Sample Bounds [L, U] | | --- | --- | --- | | Naive Observational Difference | mu_1 - mu_0 (Point assumption) | +0.3000 | | Manski Worst-Case Lower L_WC | p*mu_1 + (1-p)*K_0 - ((1-p)*mu_0 + p*K_1) | -0.3200 | | Manski Worst-Case Upper U_WC | p*mu_1 + (1-p)*K_1 - ((1-p)*mu_0 + p*K_0) | +0.6800 (Width = 1.0000) | | Joint MTR + Positive MTS Bounds | [0, MAX(0, mu_1 - mu_0)] | [0.0000, +0.3000] | - **Formula (Manski Assumption-Free Worst-Case Lower & Upper ATE Bounds Formula)**: `=LET(p_tr, B2, mu_1, B3, mu_0, B4, k_lo, B5, k_hi, B6, IF(OR(p_tr <= 0, p_tr >= 1, k_hi <= k_lo, mu_1 < k_lo, mu_1 > k_hi, mu_0 < k_lo, mu_0 > k_hi), "Invalid Bounded Support", ROUND((p_tr * mu_1 + (1 - p_tr) * k_lo) - ((1 - p_tr) * mu_0 + p_tr * k_hi), 4)))` - **Formula (Monotone Treatment Selection (MTS) Upper Bound Formula)**: `=IF(B6 <= B5, "Invalid Bounded Support", ROUND(MIN(E3, B3 - B4), 4))` ### Mantel-Haenszel Pooled Odds Ratio: Defeating Simpson’s Paradox - **URL**: https://sheets.arte-soft.com/en/learn/mantel-haenszel-pooled-odds-ratio-confounder-stratified-formula/ - **Summary**: Calculate the confounder-stratified Cochran-Mantel-Haenszel pooled Odds Ratio OR_MH = Σ(a_k * d_k / N_k) / Σ(b_k * c_k / N_k) across multi-center or acuity strata and contrast against biased crude pooled OR. *Table — Watch Simpson’s Paradox make a life-saving drug look harmful—until Mantel-Haenszel stratifies!:* | Clinical Acuity Stratum (N_k = 300 Each) | Treatment Events / Survivors (a, b) | Control Events / Survivors (c, d) | Odds Ratio Estimate | | --- | --- | --- | --- | | Stratum 1: Outpatient Low-Risk | a1 = 4, b1 = 96 (4.0%) | c1 = 16, d1 = 184 (8.0%) | Stratum OR1 = 0.4792 | | Stratum 2: Inpatient ICU Severe | a2 = 50, b2 = 150 (25.0%) | c2 = 36, d2 = 64 (36.0%) | Stratum OR2 = 0.5926 | | Crude Collapse vs Mantel-Haenszel | Crude 54 / 246 (18.0%) | Crude 52 / 248 (17.3%) | Crude 1.0469 (Biased!) vs MH 0.5675! | - **Formula (Mantel-Haenszel Stratified Pooled Odds Ratio OR_MH)**: `=IF(SUM(G2:G3) <= 0, "Undefined MH Denominator", ROUND(SUM(F2:F3) / SUM(G2:G3), 4))` - **Formula (Unadjusted Crude Collapsed Odds Ratio (Simpson’s Paradox Check))**: `=IF(OR(SUM(C2:C3) <= 0, SUM(D2:D3) <= 0), "Undefined Crude OR", ROUND((SUM(B2:B3) * SUM(E2:E3)) / (SUM(C2:C3) * SUM(D2:D3)), 4))` ### Map Text Tiers to Arbitrary Numeric Weights (CHOOSE & MATCH vs XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/map-categorical-inputs-to-arbitrary-weights-choose-match-formula/ - **Summary**: Assign non-linear SLA severity weights or T-shirt story points ("XS"->1, "S"->2, "M"->5, "L"->8, "XL"->13) to text categories without nested IFs using CHOOSE(MATCH(...)) or XLOOKUP. *Table — Why Fibonacci story points and SLA weights outgrow nested IFs immediately!:* | Incident Severity Code | MATCH Index (1–4) | Arbitrary SLA Weight Assigned | Open Queue Example | | --- | --- | --- | --- | | "P0" (Production Outage) | 1 | 25 pts | 1 ticket × 25 = 25 pts | | "P1" (Major Degradation) | 2 | 10 pts | 2 tickets × 10 = 20 pts | | "P2" / "P3" (Minor / Cosmetic) | 3 / 4 | 3 pts / 1 pt | 2×3 + 1×1 = 7 pts (Total = 52) | - **Formula (Inline Arbitrary Weight Mapper via CHOOSE(MATCH(...)))**: `=IFERROR(CHOOSE(MATCH(B2, {"P0","P1","P2","P3"}, 0), 25, 10, 3, 1), 0)` - **Formula (Lookup-Table Reference Mapper via XLOOKUP)**: `=XLOOKUP(B2, $E$2:$E$5, $F$2:$F$5, 0)` ### Map Likert Survey Text Labels to Numeric Scores (SWITCH vs XLOOKUP Table) - **URL**: https://sheets.arte-soft.com/en/learn/map-likert-survey-text-to-numeric-scores-switch-xlookup/ - **Summary**: Convert qualitative survey responses ("Strongly Agree" through "Strongly Disagree") or risk ratings into numeric 1–5 weights using SWITCH or an XLOOKUP mapping table, while excluding "N/A" responses from averages. *Table — Turn qualitative Likert text scales into clean numeric analytics!:* | Survey Response (B2) | SWITCH / XLOOKUP Score | Included in AVERAGE? | Why "" Beats 0 for Skipped | | --- | --- | --- | --- | | "Strongly Agree" / "Agree" | 5 / 4 | Yes | Numeric weights aggregated cleanly | | "Neutral" / "Disagree" | 3 / 2 | Yes | Exact case-insensitive match | | "N/A" or Blank "" | "" (Empty Text) | Ignored by AVERAGE! | Returning 0 would falsely depress CSAT! | - **Formula (Map 5-Point Likert Text to 1–5 Numeric Score via SWITCH)**: `=SWITCH(TRIM(B2), "Strongly Agree", 5, "Agree", 4, "Neutral", 3, "Disagree", 2, "Strongly Disagree", 1, "")` - **Formula (Table-Driven Score Mapping via XLOOKUP (Audit-Friendly))**: `=XLOOKUP(TRIM(B2), $E$2:$E$6, $F$2:$F$6, "")` ### Thermal Marangoni Number (Ma) Formula: Thermocapillary Surface-Tension Convection - **URL**: https://sheets.arte-soft.com/en/learn/marangoni-thermocapillary-surface-tension-convection-number/ - **Summary**: Calculate the dimensionless thermal Marangoni number Ma = |dsigma/dT| * L * deltaT / (mu * alpha) governing laser weld-pool Penetration, crystal melt growth, thin-film Bénard-Marangoni cells, and microgravity boiling. *Table — Why surface-tension gradients dominate buoyancy in thin liquid films, laser weld pools, and spaceflight!:* | Thermocapillary Pool / Film Condition | Thermal Marangoni Number Ma | Interfacial Flow Regime (vs Ma_c ≈ 80) | | --- | --- | --- | | deltaT = 15 K across L = 12 mm | 401,238.4 | Vigorous Turbulent / Oscillatory Marangoni Jet | | Reduced Gradient deltaT = 4 K | 106,996.9 | Strong Cellular / Steady Thermocapillary Flow | | Zero Viscosity mu = 0 Pa·s | Singular Denominator | "Invalid Thermocapillary Properties" | - **Formula (Thermal Marangoni Number Ma = (|dsigma/dT| * L * deltaT) / (mu * alpha))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 0), "Invalid Thermocapillary Properties", ROUND((B2 * B3 * B4) / (B5 * B6), 1))` - **Formula (Pearson Thin-Film Critical Onset Check (Ma >= 79.6 Bénard-Marangoni Instability))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 0), "Invalid Thermocapillary Properties", IF((B2 * B3 * B4) / (B5 * B6) >= 79.6, "Supercritical Marangoni Convection (Ma >= 79.6)", "Conductive Subcritical Layer (Ma < 79.6)"))` ### Margalef Richness, Menhinick Index & Berger-Parker Dominance Formula - **URL**: https://sheets.arte-soft.com/en/learn/margalef-menhinick-and-berger-parker-biodiversity-indices/ - **Summary**: Calculate three rapid ecological bioassessment indices from species counts: Margalef Richness D_Mg = (S - 1) / LN(N), Menhinick Richness D_Mn = S / SQRT(N), and Berger-Parker Dominance d_BP = N_max / N (plus reciprocal 1 / d_BP). *Table — Pair logarithmic/square-root Richness normalization with Berger-Parker Top-Taxon Dominance!:* | Rapid Ecological Metric (Counts [45, 22, 15, 11, 7, 0]; S = 5, N = 100) | Formula | Evaluated Value | | --- | --- | --- | | Observed Present Species S (Count > 0) | =COUNTIF(B2:B7, ">0") | 5 species | | Margalef Richness Index D_Mg | (S - 1) / LN(N) | 0.8686 | | Menhinick Richness Index D_Mn | S / SQRT(N) | 0.5000 | | Berger-Parker Dominance d_BP (and 1 / d_BP) | MAX(n_i) / N | 0.4500 (Reciprocal 2.2222) | - **Formula (Margalef Species Richness Index D_Mg = (S - 1) / LN(N))**: `=IF(OR(MIN(B2:B7) < 0, SUM(B2:B7) < 2), "Requires Non-Negative Counts & Total N >= 2", ROUND((COUNTIF(B2:B7, ">0") - 1) / LN(SUM(B2:B7)), 4))` - **Formula (Menhinick Richness S / SQRT(N) & Berger-Parker Dominance N_max / N)**: `=IF(OR(MIN(B2:B7) < 0, SUM(B2:B7) <= 0), "Requires Positive Total Individuals N", ROUND(MAX(B2:B7) / SUM(B2:B7), 4))` ### Margrabe Exchange Option Formula & Correlation-Adjusted Spread Volatility - **URL**: https://sheets.arte-soft.com/en/learn/margrabe-option-to-exchange-one-asset-for-another-spread-volatility/ - **Summary**: Value a European option to exchange asset 2 for asset 1 (stock-for-stock mergers, outperformance fees, spark spreads) using William Margrabe’s (1978) risk-free-rate-independent formula. *Table — Why correlation rho—not the risk-free interest rate—governs exchange-option value:* | Correlation rho (S1=S2=100, sig1=sig2=20%, T=1y) | Composite Volatility sigma_ex | Margrabe Option Value | | --- | --- | --- | | rho = 0.00 (Uncorrelated) | SQRT(0.08) = 28.28% | 11.25 | | rho = 0.50 (Moderately Linked) | SQRT(0.04) = 20.00% | 7.97 | | rho = 1.00 (Perfect Lockstep) | SQRT(0.00) = 0.00% | 0.00 (Intrinsic MAX(0, S1-S2) only) | - **Formula (Composite Exchange Volatility Formula)**: `=ROUND(SQRT(MAX(0, (B4 ^ 2) + (B5 ^ 2) - 2 * B6 * B4 * B5)), 4)` - **Formula (Closed-Form Margrabe Exchange Option Formula)**: `=LET(pv_one, B2 * EXP(-B7 * B9), pv_two, B3 * EXP(-B8 * B9), sig_ex, SQRT(MAX(0, (B4 ^ 2) + (B5 ^ 2) - 2 * B6 * B4 * B5)), vol_t, sig_ex * SQRT(B9), IF(vol_t <= 0, ROUND(MAX(0, pv_one - pv_two), 2), LET(d_one, (LN(pv_one / pv_two) + 0.5 * (vol_t ^ 2)) / vol_t, d_two, d_one - vol_t, az_one, ABS(d_one), kt_one, 1 / (1 + 0.2316419 * az_one), tp_one, (EXP(-0.5 * az_one * az_one) / SQRT(2 * PI())) * kt_one * (0.31938153 + kt_one * (-0.356563782 + kt_one * (1.781477937 + kt_one * (-1.821255978 + 1.330274429 * kt_one)))), nd_one, IF(d_one >= 0, 1 - tp_one, tp_one), az_two, ABS(d_two), kt_two, 1 / (1 + 0.2316419 * az_two), tp_two, (EXP(-0.5 * az_two * az_two) / SQRT(2 * PI())) * kt_two * (0.31938153 + kt_two * (-0.356563782 + kt_two * (1.781477937 + kt_two * (-1.821255978 + 1.330274429 * kt_two)))), nd_two, IF(d_two >= 0, 1 - tp_two, tp_two), ROUND(pv_one * nd_one - pv_two * nd_two, 2))))` ### Marimekko (Mekko) Chart Formula: Variable Column Widths, Cumulative X-Spans & Cell Area Share - **URL**: https://sheets.arte-soft.com/en/learn/marimekko-mekko-variable-width-mosaic-chart-span-and-share/ - **Summary**: Construct a two-dimensional Marimekko (Mosaic) market-map table: compute Segment Horizontal Width % W_j, Cumulative X-Axis Start/End Coordinates, Within-Segment Vertical Mix %, and Rectangle Area = Grand-Total Market Share! *Table — Why consulting firms love Marimekko charts: Width * Height = Exact Share of Total Market!:* | Market Segment | Enterprise ($M) | SMB ($M) | Segment Total ($M) | Horizontal Width W_j (%) | Cumulative X-End (%) | | --- | --- | --- | --- | --- | --- | | North America | 90 | 30 | 120 | 60.00% | 60.00% | | Europe | 35 | 15 | 50 | 25.00% | 85.00% | | APAC | 12 | 18 | 30 | 15.00% | 100.00% | - **Formula (Segment Horizontal Width Share W_j (%) of Grand Total Market)**: `=IF(OR(MIN(B2:C4) < 0, SUM(B2:C4) <= 0), "Requires Non-Negative Revenues & Positive Grand Total", ROUND(100 * (B2 + C2) / SUM(B2:C4), 2))` - **Formula (Within-Segment Vertical Share H_11 (%) & Overall Industry Tile Area Share (%))**: `=IF(OR(MIN(B2:C4) < 0, B2 + C2 <= 0), "Segment Total Must Be Positive", ROUND(100 * B2 / (B2 + C2), 2))` ### Marine Propeller Apparent vs True Wake Slip Formula - **URL**: https://sheets.arte-soft.com/en/learn/marine-propeller-pitch-apparent-vs-true-wake-slip-and-thrust-deduction-formula/ - **Summary**: Calculate Theoretical Screw Pitch Velocity V_p (m/s), Ship Speed Over Water V_s (m/s), Bridge Noon-Report Apparent Slip (%), and Hydrodynamic True Slip (%) inside the Taylor Stern Wake. *Table — Why a ship can log NEGATIVE Apparent Slip in following seas—yet True Slip inside the stern wake w is ALWAYS positive!:* | Propeller Slip Noon-Report KPI (Pitch=5.2 m, 105 RPM, 16.0 kn, Wake w=0.22) | Formula | Verified Output | | --- | --- | --- | | Theoretical Pitch Speed Vp (m/s) | (Propeller_Pitch_m * Shaft_RPM) / 60 | 9.10 m/s | | Ship Speed Over Water Vs (m/s) | Ship_Speed_Knots * (1852 / 3600) | 8.23 m/s (7.20 m/s @ 14.0 kn) | | Apparent Slip S_app (%) | ((Vp - Vs) / Vp) * 100 | 9.55% (20.85% @ 14.0 kn fouled) | | True Wake-Adjusted Slip (%) | ((Vp - Vs * (1 - Wake_w)) / Vp) * 100 | 29.45% (38.27% @ 14.0 kn fouled!) | - **Formula (Taylor-Wake True Hydrodynamic Propeller Slip Formula)**: `=LET(pt_m, B2, rp_m, B3, kn_s, B4, wk_w, B5, IF(OR(pt_m <= 0.5, rp_m <= 0, kn_s <= 0, wk_w < 0, wk_w > 0.55), "Invalid Propulsion Input", LET(vp_m, (pt_m * rp_m) / 60, vs_m, kn_s * (1852 / 3600), va_m, vs_m * (1 - wk_w), ROUND(((vp_m - va_m) / vp_m) * 100, 2))))` - **Formula (Hull Biofouling / Head-Sea Speed Loss Slip Surge Check (Set Ship Speed = 14.0 Knots))**: `=IF(ISTEXT(E5), E5, LET(vp_m, (B2 * B3) / 60, vs_m, B4 * (1852 / 3600), ROUND(((vp_m - vs_m) / vp_m) * 100, 2)))` ### Maritime Laytime, Demurrage & Despatch Formula - **URL**: https://sheets.arte-soft.com/en/learn/maritime-laytime-reversible-demurrage-and-half-rate-despatch-formula/ - **Summary**: Calculate Total Reversible Allowed Port Laytime Q/R_load + Q/R_dis, Net Laytime Balance, Shipowner Demurrage Penalty, and Charterer Half-Rate Despatch Rebate ("Despatch Half Demurrage"). *Table — Audit reversible port laytime and avoid the 2x Despatch-Half-Demurrage pricing bug!:* | Voyage Charter Laytime Metric (60k MT, 12k/10k Rates, $24k/d Demurrage, DHD=0.5) | Formula | Verified Output | | --- | --- | --- | | Total Reversible Allowed Laytime | Q_mt / R_load + Q_mt / R_dis | 11.00 days (5.0d + 6.0d) | | Net Laytime Variance (Days) | t_used - t_allow | +2.50 days (at 13.50d Used) | | Port Congestion Demurrage ($) | (t_used - t_allow) * D_rate (if > 0) | +$60,000.00 Payable to Owner | | Early Completion Despatch @ 9.0d | (t_used - t_allow) * D_rate * f_desp | -$24,000.00 Rebate to Charterer | - **Formula (Asymmetric Reversible Laytime Settlement Formula)**: `=LET(q_mt, B2, r_ld, B3, r_ds, B4, t_us, B5, d_rt, B6, f_dp, B7, IF(OR(q_mt <= 0, r_ld <= 0, r_ds <= 0, t_us < 0, d_rt <= 0, f_dp < 0, f_dp > 1), "Invalid Charterparty", LET(t_al, q_mt / r_ld + q_mt / r_ds, df_t, t_us - t_al, ROUND(IF(df_t >= 0, df_t * d_rt, df_t * d_rt * f_dp), 2))))` - **Formula (Charterparty Settlement Direction Classifier Formula)**: `=IF(ISTEXT(E4), E4, IF(E4 > 0, "Demurrage Payable to Owner", IF(E4 < 0, "Despatch Rebate to Charterer", "Exact Laytime / Zero Settlement")))` ### Maritime Time Charter Equivalent (TCE) Formula - **URL**: https://sheets.arte-soft.com/en/learn/maritime-time-charter-equivalent-tce-daily-voyage-yield-formula/ - **Summary**: Convert Lump-Sum or $/MT Spot Voyage Freight into Daily Time Charter Equivalent TCE = (Gross_Freight*(1 - comm) - Bunkers - Port_Dues) / Voyage_Days and Daily Vessel Cash Breakeven Margin. *Table — Standardize spot voyages of any route length onto an apples-to-apples $/day TCE basis!:* | Spot Voyage Metric (75k MT @ $32/MT, 5% Comm, $580k Fuel, $200k Port, 50d) | Formula | Verified Output | | --- | --- | --- | | Net Voyage Revenue ($) | Q_mt * F_mt * (1 - comm) - C_bunk - C_port | $1,500,000.00 | | Time Charter Equivalent TCE ($/day) | Net_Voyage_Revenue / D_voy | $30,000.00 / day | | Daily Vessel EBITDA Cash Margin | TCE - Daily_Vessel_OPEX | $21,500.00 / day | | OPEX-Breakeven Freight Rate ($/MT) | (OPEX*D_voy + C_bunk + C_port)/(Q_mt*(1-comm)) | $16.91 / MT | - **Formula (Daily Time Charter Equivalent (TCE) Formula)**: `=LET(q_mt, B2, f_rt, B3, cm_p, B4, c_bk, B5, c_pt, B6, d_vy, B7, op_x, B8, IF(OR(q_mt <= 0, f_rt <= 0, cm_p < 0, cm_p >= 1, c_bk < 0, c_pt < 0, d_vy <= 0, op_x < 0), "Invalid Voyage Estimate", ROUND((q_mt * f_rt * (1 - cm_p) - c_bk - c_pt) / d_vy, 2)))` - **Formula (OPEX-Breakeven Spot Freight Rate ($/MT) Formula)**: `=IF(ISTEXT(E3), E3, ROUND((B8 * B7 + B5 + B6) / (B2 * (1 - B4)), 2))` ### Mark, Count & Sum Rows Matching Mixed AND + OR Rules (IF + COUNTIF + SUMIF) - **URL**: https://sheets.arte-soft.com/en/learn/mark-and-filter-rows-matching-multiple-logical-tests-and-or/ - **Summary**: Flag audit rows meeting compound AND + OR criteria (e.g., Amount >= $1,000 AND Status is Urgent OR Escalated), then count and sum flagged exposure cleanly. *Table — Why native COUNTIFS struggles with mixed AND + OR logic—and a visible Flag column wins!:* | Ticket Priority (B) | Amount (C) | Helper Flag D = IF(AND(C>=1000, OR(...))) | Audit Action | | --- | --- | --- | --- | | Urgent \| $1,400 | >=$1,000 & Urgent | "Flag" | Included ($4,400 baseline sum) | | Routine \| $2,200 | Fails Priority OR | "" (Blank) | Excluded despite high amount | | Urgent \| $650 (raised to $1,200) | Crosses $1,000 gate | "" -> "Flag" | Flagged sum rises to $5,600 | - **Formula (Sum Total Dollar Exposure Across Flagged Mixed-Logic Rows)**: `=SUMIF(D2:D6, "Flag", C2:C6)` - **Formula (Count Rows Passing Compound AND + OR Screening)**: `=COUNTIF(D2:D6, "Flag")` ### Mark-Houwink-Sakurada Equation: Intrinsic Viscosity [eta] & Polymer Molar Mass (Mv) - **URL**: https://sheets.arte-soft.com/en/learn/mark-houwink-sakurada-intrinsic-viscosity-molar-mass/ - **Summary**: Calculate dilute polymer intrinsic viscosity [eta] = K * Mv^a (dL/g) and invert Ubbelohde viscometer measurements back to viscosity-average molecular weight Mv = ([eta] / K)^(1 / a). *Table — Determine polymer molecular weight and coil conformation from Ubbelohde viscometry!:* | Polystyrene in Toluene (K = 0.00011 dL/g, a = 0.725) | Molar Mass Mv (g/mol) | Intrinsic Viscosity [eta] (dL/g) | Solvent Quality Insight | | --- | --- | --- | --- | | Injection-Molding Grade PS | Mv = 250,000 g/mol | [eta] = 0.9014 dL/g | a = 0.725 -> Good solvent swollen coil | | High-Impact Extrusion PS | Mv = 500,000 g/mol (2x Mv) | [eta] = 1.4899 dL/g (2^0.725 = 1.653x) | Sublinear coil expansion | | Inverse Viscometer Assay | Measured [eta] = 0.9008 dL/g | Mv = 249,785 g/mol | ([eta] / K)^(1 / a) inversion | - **Formula (Intrinsic Viscosity [eta] = K * (Mv ^ a) (dL/g))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Viscometry Inputs", ROUND(B2 * (B4 ^ B3), 4))` - **Formula (Inverse Viscosity-Average Molecular Weight Mv = ([eta] / K) ^ (1 / a) (g/mol))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid Viscometry Inputs", ROUND((B5 / B2) ^ (1 / B3), 0))` ### Holdout Incrementality iROAS & Attribution Bias Formula - **URL**: https://sheets.arte-soft.com/en/learn/marketing-holdout-geo-lift-incrementality-iroas-and-attribution-bias/ - **Summary**: Calculate Randomized Holdout / Geo-Lift Causal Revenue Lift per User, True Incremental Revenue, Causal Incremental ROAS (iROAS), and Platform Last-Touch Attribution Overclaim Multiplier. *Table — Audit platform last-touch ROAS claims against randomized holdout organic baselines!:* | Holdout Incrementality Metric (Nt=50k/$600k, Nc=10k/$90k, Spend=$75k, Claim=$300k) | Formula | Verified Output | | --- | --- | --- | | Causal Lift per Exposed User ($) | (R_treat / N_treat) - (R_ctrl / N_ctrl) | $3.00 ($0.00 @ Rt=$450k) | | True Incremental Revenue ($) | Causal_Lift_Per_User * N_treat | $150,000 ($0 @ Rt=$450k) | | Causal Incremental iROAS (x) | Incremental_Revenue / Ad_Spend | 2.00x (vs 4.00x Pixel ROAS) | | Platform Attribution Overclaim | Platform_Claimed_Rev / Incremental_Rev | 2.00x ("Non-Positive Lift" <=0) | - **Formula (Randomized Holdout Causal iROAS Formula)**: `=LET(n_tr, B2, r_tr, B3, n_ct, B4, r_ct, B5, sp_d, B6, cl_m, B7, IF(OR(n_tr <= 0, r_tr < 0, n_ct <= 0, r_ct < 0, sp_d <= 0, cl_m < 0), "Invalid Holdout Experiment", LET(lf_u, (r_tr / n_tr) - (r_ct / n_ct), inc_r, lf_u * n_tr, ROUND(inc_r / sp_d, 4))))` - **Formula (100% Organic Cannibalization Stress Check (R_treat = $450,000))**: `=IF(ISTEXT(E3), E3, IF(E3 <= 0, "Non-Positive Lift", ROUND(B7 / E3, 2)))` ### Marketplace GMV, Take Rate & Interchange Margin Formula - **URL**: https://sheets.arte-soft.com/en/learn/marketplace-gmv-net-take-rate-payment-interchange-and-chargeback-margin/ - **Summary**: Bridge Gross Merchandise Volume (GMV) from Headline Combined Take Rate to Net Realized Take Rate and Net Contribution Margin after GMV-denominated card interchange, fraud chargebacks, and incentives. *Table — Understand why 2.9% payment interchange eats nearly 20% of a 15%-take-rate marketplace!:* | Marketplace P&L Bridge ($2.0M GMV, 12%+3% Take, 2.9% Pay, 0.6% Cbk, 2.5% Promo) | Formula | Verified Output | | --- | --- | --- | | Headline Gross Take Rate | t_seller + t_buyer | 0.1500 (15.00% = $300k) | | Net Contribution Take Rate (% GMV) | t_gross - f_pay - f_cbk - f_inc | 0.0900 (9.00% of GMV) | | Monthly Contribution Dollars ($) | GMV * Net_Contribution_Take_Rate | $180,000.00 | | Contribution Margin (% Gross Take) | t_net / t_gross | 0.6000 (60.00% Margin) | - **Formula (Net Realized Marketplace Take Rate & Contribution Formula)**: `=LET(gm_v, B2, t_sl, B3, t_by, B4, f_py, B5, f_cb, B6, f_in, B7, t_gr, t_sl + t_by, IF(OR(gm_v <= 0, t_sl < 0, t_by < 0, t_gr <= 0, t_gr >= 1, f_py < 0, f_cb < 0, f_in < 0), "Invalid Marketplace Rates", ROUND(gm_v * (t_gr - f_py - f_cb - f_in), 2)))` - **Formula (Contribution Margin as Share of Gross Take Revenue Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E3 / E2, 4))` ### Mars-van Krevelen Redox Catalytic Rate Law & Oxidized Lattice Fraction theta_ox - **URL**: https://sheets.arte-soft.com/en/learn/mars-van-krevelen-redox-lattice-oxygen-catalytic-kinetics/ - **Summary**: Model selective hydrocarbon oxidation over reducible metal oxides (V2O5, MoO3, CeO2) using Pieter Mars and Dirk Willem van Krevelen’s (1954) redox rate law r_R = (k_red * P_R * k_ox * P_O2^n) / (nu * k_red * P_R + k_ox * P_O2^n). *Table — In selective oxide catalysis, the solid crystal lattice ITSELF is the oxygen shuttle!:* | MvK Quantity (k_red = 0.40, P_R = 0.25 bar, k_ox = 0.80, P_O2 = 0.20 bar, n = 0.5, nu = 1.5) | Formula | Evaluated Value | | --- | --- | --- | | Lattice Reduction Flux k_red * P_R | =B2 * B3 | 0.1000 | | Vacancy Re-Oxidation Flux k_ox * P_O2^n | =B4 * (B5 ^ B6) | 0.3578 | | Steady-State Oxidized Lattice Fraction theta_ox | (k_ox * P_O2^n) / (nu * k_red * P_R + k_ox * P_O2^n) | 0.7046 (70.5% Oxidized) | | Net Reductant Oxidation Rate r_R | k_red * P_R * theta_ox | 0.0705 mol/(g·s) | - **Formula (Steady-State Oxidized Catalyst Lattice Fraction theta_ox)**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid MvK Redox Inputs", ROUND((B4 * (B5 ^ B6)) / (B7 * B2 * B3 + B4 * (B5 ^ B6)), 4))` - **Formula (Mars-van Krevelen Net Reductant Consumption Rate r_R)**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid MvK Redox Inputs", ROUND((B2 * B3 * B4 * (B5 ^ B6)) / (B7 * B2 * B3 + B4 * (B5 ^ B6)), 4))` ### Marshall-Lerner Condition and J-Curve Trade-Balance Formula - **URL**: https://sheets.arte-soft.com/en/learn/marshall-lerner-fx-depreciation-trade-balance-elasticity-condition/ - **Summary**: Test the Marshall-Lerner condition (e_X + e_M > 1), Hirschman’s initial-deficit condition ((X_0 / M_0)*e_X + e_M > 1), and J-curve trade-balance response Delta_NX = dq * (X_0*e_X + M_0*(e_M - 1)). *Table — Catch Hirschman’s deficit trap: when e_X + e_M > 1 STILL worsens the trade deficit!:* | Elasticity Regime (X_0=800, M_0=1,000, dq=10%) | Sum e_X + e_M vs Hirschman Index | Trade-Balance Change Delta_NX | | --- | --- | --- | | Short-Run J-Curve Trough (0.30, 0.40) | 0.70 vs 0.64 (< 1) | -36.00 (Deficit Widens) | | Hirschman Deficit Trap (0.50, 0.55) | 1.05 (> 1!) vs 0.95 (< 1) | -5.00 (Still Worsens!) | | Medium-Run Elastic Recovery (0.80, 0.70) | 1.50 vs 1.34 (> 1) | +34.00 (Trade Improves) | - **Formula (Generalized Domestic-Currency Trade-Balance Response Delta_NX Formula)**: `=LET(x_0, B2, m_0, B3, ex_e, B4, em_e, B5, dq_fx, B6, IF(OR(x_0 <= 0, m_0 <= 0, ex_e < 0, em_e < 0), "Invalid Trade Input", ROUND(dq_fx * (x_0 * ex_e + m_0 * (em_e - 1)), 4)))` - **Formula (Hirschman Coverage-Adjusted Elasticity Index (X_0 / M_0) * e_X + e_M Formula)**: `=LET(x_0, B2, m_0, B3, ex_e, B4, em_e, B5, IF(OR(x_0 <= 0, m_0 <= 0, ex_e < 0, em_e < 0), "Invalid Trade Input", ROUND((x_0 / m_0) * ex_e + em_e, 4)))` ### Marshall Multiple Organ Dysfunction Score (MODS) & PAR Index - **URL**: https://sheets.arte-soft.com/en/learn/marshall-multiple-organ-dysfunction-score-mods-icu-formula/ - **Summary**: Calculate Marshall’s 6-organ Multiple Organ Dysfunction Score (MODS, 0–24) and Pressure-Adjusted Heart Rate PAR = HR * CVP / MAP without vasopressor-dose confounding. *Table — Why Marshall’s MODS uses PAR = HR * CVP / MAP instead of vasopressor infusion doses!:* | Composite 6-Organ MODS Total (0–24) | Approximate ICU Mortality Band | Failed Organs (Grade >= 3) | | --- | --- | --- | | 1 – 8 Points (Mild-Moderate Dysfunction) | 1% – 5% ICU Mortality | Typically 0–1 Severe Organ | | 9 – 12 Points (e.g., 2+2+1+3+2+1 = 11 pts) | ~25% ICU Mortality | Multi-Organ Escalation Zone | | 13 – 16 Points / 17 – 24 Points | ~50% (13–16) to 75–100% (17+) | Refractory Multi-Organ Failure | - **Formula (Total 6-Organ Marshall MODS Score (0–24))**: `=IF(OR(COUNTA(B2:B7) < 6, MIN(B2:B7) < 0, MAX(B2:B7) > 4), "Invalid MODS Organ Grade", SUM(B2:B7))` - **Formula (Marshall Cardiovascular Pressure-Adjusted Heart Rate PAR = HR * CVP / MAP)**: `=IF(OR(B8 <= 0, B9 < 0, B10 <= 0), "Invalid Hemodynamic Inputs", ROUND(B8 * B9 / B10, 1))` ### Martin-Hopkins Adjustable LDL-C vs Friedewald Bias Formula - **URL**: https://sheets.arte-soft.com/en/learn/martin-hopkins-and-sampson-nih-extended-ldl-cholesterol-formula/ - **Summary**: Calculate Atherogenic Non-HDL Cholesterol (TC - HDL), Legacy Fixed-Divisor Friedewald LDL-C (TC - HDL - TG/5), ACC/AHA Guideline Martin-Hopkins Adjustable-Divisor LDL-C (TC - HDL - TG/f_MH), and Friedewald Underestimation Gap. *Table — Catch dangerous Friedewald LDL-C underestimation in elevated triglycerides and PCSK9/statin therapy!:* | Clinical Lipid Panel Metric (TC=165, HDL=40, TG=272 mg/dL, f_MH=6.8) | Formula | Verified Output | | --- | --- | --- | | Atherogenic Non-HDL-C (mg/dL) | Total_Cholesterol - HDL_C | 125.00 mg/dL | | Legacy Friedewald LDL-C (mg/dL) | TC - HDL_C - (Triglycerides / 5) | 70.60 mg/dL (105.00 @ TG=100) | | Martin-Hopkins LDL-C (mg/dL) | TC - HDL_C - (Triglycerides / f_MH) | 85.00 mg/dL (105.00 @ TG=100, f=5) | | Friedewald Underestimation Gap | Martin_Hopkins_LDL - Friedewald_LDL | +14.40 mg/dL (0.00 @ f_MH=5.0) | - **Formula (Martin-Hopkins Adjustable-Divisor LDL Cholesterol Formula)**: `=LET(tc_m, B2, hd_m, B3, tg_m, B4, mh_f, B5, IF(OR(tc_m <= 0, hd_m <= 0, tc_m <= hd_m, tg_m <= 0, tg_m >= 800, mh_f < 3.1, mh_f > 12, (tc_m - hd_m - tg_m / mh_f) <= 0), "Invalid Lipid Panel Input", ROUND(tc_m - hd_m - (tg_m / mh_f), 2)))` - **Formula (Normotriglyceridemic Concordance Check (Set TG = 100 mg/dL, f_MH = 5.0))**: `=IF(ISTEXT(E4), E4, ROUND(E4 - E3, 2))` ### MASCC Risk Index for Febrile Neutropenia (0–26 Outpatient Score) - **URL**: https://sheets.arte-soft.com/en/learn/mascc-febrile-neutropenia-low-risk-outpatient-score-formula/ - **Summary**: Calculate the ASCO/IDSA-endorsed 0–26 MASCC Risk Index in chemotherapy-induced febrile neutropenia—where HIGHER scores (>= 21) identify Low-Risk patients eligible for oral outpatient antibiotics. *Table — Remember the counterintuitive MASCC rule: HIGHER points (>= 21) mean LOWER risk!:* | MASCC Protective Criterion | Points Awarded | Score Threshold & Disposition | | --- | --- | --- | | Symptom Burden (Mutually Exclusive) | +5 None/Mild, +3 Moderate, 0 Severe | Total Range: 0 to 26 Points | | SBP >= 90 (+5), No COPD (+4), Solid/No-Fungal (+4) | Up to +13 Points | MASCC >= 21 -> Low Risk (Oral/Outpatient Candidate) | | No Dehydration (+3), Outpatient Onset (+3), Age < 60 (+2) | Up to +8 Points | MASCC < 21 -> High Risk (Inpatient IV Anti-Pseudomonal) | - **Formula (Total MASCC Febrile Neutropenia Protective Score (0 to 26))**: `=IF(OR(B2 < 0, B2 > 2, B8 <= 0), "Invalid MASCC Inputs", IF(B2 = 2, 5, IF(B2 = 1, 3, 0)) + IF(B3 = 1, 5, 0) + IF(B4 = 1, 4, 0) + IF(B5 = 1, 4, 0) + IF(B6 = 1, 3, 0) + IF(B7 = 1, 3, 0) + IF(B8 < 60, 2, 0))` - **Formula (ASCO / IDSA Febrile Neutropenia Risk & Antibiotic Disposition)**: `=IF((IF(B2 = 2, 5, IF(B2 = 1, 3, 0)) + IF(B3 = 1, 5, 0) + IF(B4 = 1, 4, 0) + IF(B5 = 1, 4, 0) + IF(B6 = 1, 3, 0) + IF(B7 = 1, 3, 0) + IF(B8 < 60, 2, 0)) >= 21, "Low Risk (MASCC >= 21): Oral / Early Discharge Candidate", "High Risk (MASCC < 21): Admit for Inpatient IV Antibiotics")` ### Create display masks for synthetic identifiers and email addresses - **URL**: https://sheets.arte-soft.com/en/learn/mask-credit-card-ssn-and-sensitive-pii-last-4-digits/ - **Summary**: Practice last-four display masking with synthetic text values. A masked output does not remove or secure the original data. *Table — Display masking is not deletion or anonymization:* | Sensitive Input | Masking Pattern | Redacted Output | | --- | --- | --- | | "4532-8910-4421-7789" | "****-****-****-" & RIGHT(clean, 4) | "****-****-****-7789" | | "123-45-6789" (SSN) | Mask all but last four, or all when short | "*****6789" (5 stars + 4 digits) | | "maya.chen@acme.io" | Keep 1st 2 chars + "@domain" | "ma*******@acme.io" | - **Formula (Mask a synthetic text identifier)**: `=IF(COUNTBLANK(A2)=1,"",LET(s,SUBSTITUTE(SUBSTITUTE(TRIM(A2&""),"-","")," ",""),IF(LEN(s)<=4,REPT("*",LEN(s)),REPT("*",LEN(s)-4)&RIGHT(s,4))))` - **Formula (Partially mask a simple email display)**: `=IFERROR(LET(localPart,TEXTBEFORE(B2,"@"),domainPart,TEXTAFTER(B2,"@"),IF(LEN(localPart)<=2,REPT("*",LEN(localPart)),LEFT(localPart,2)&REPT("*",LEN(localPart)-2))&"@"&domainPart),"Invalid email")` ### Find the first cell that does NOT begin with a comment or test prefix - **URL**: https://sheets.arte-soft.com/en/learn/match-first-cell-that-does-not-begin-with-or-contain/ - **Summary**: Skip variable-length metadata/comment header lines ("#", "//", "TEST-") in imported logs to locate the first real transaction row. *Table — Automatically skip variable-length "#" or "TEST-" preamble lines in raw imports!:* | Raw Log Line (A) | Prefix Check <> "#" & Non-Blank (B) | Audit Action | | --- | --- | --- | | "# Generated 2026-10-30" | 0 (Starts with "#") | Skipped | | "# Currency: USD" | 0 (Starts with "#") | Skipped | | "" (Blank spacer) | 0 (Empty line) | Skipped | | "TXN-9001 \| $1,420.00" | 1 (First valid record!) | Matched at relative row 4! | - **Formula (Locate and extract the first non-comment, non-blank record)**: `=IF(COUNTBLANK(D2)>0,"Enter prefix",IFERROR(INDEX(A2:A6,XMATCH(1,B2:B6)),"No matching rows"))` - **Formula (Count candidate records without an empty-array error)**: `=SUM(B2:B6)` ### Match the first error in a column: jump straight to broken rows - **URL**: https://sheets.arte-soft.com/en/learn/match-first-error-cell-in-column-audit/ - **Summary**: Identify the first record with a formula error and list all affected records using an audit helper column. *Table — Build an audit header that names the exact broken row when totals fail:* | OrderID (A) | Units (B) | UnitFee = 120/B (C) | ErrFlag (D) | Audit Status | | --- | --- | --- | --- | --- | | ORD-301 | 4 | 30.00 | 0 | OK | | ORD-302 | 0 | #DIV/0! | 1 (First!) | Flagged 1st Broken ID | | ORD-303 | 6 | 20.00 | 0 | OK | | ORD-304 | 0 | #DIV/0! | 1 | Listed in Full Error Log | - **Formula (First broken Record ID and error-list audit formulas)**: `=XLOOKUP(1, D2:D5, A2:A5, "All Clean")` - **Formula (List all Record IDs currently throwing formula errors)**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A5, D2:D5 = 1, "All Clean"))` ### Match First Row Not Containing Specific Text (XLOOKUP & SEARCH) - **URL**: https://sheets.arte-soft.com/en/learn/match-first-occurrence-not-containing-substring-xlookup-search/ - **Summary**: Retrieve the first order or server record that excludes an internal/test substring using an ISERROR(SEARCH(...)) helper flag with XLOOKUP and count all non-matching records with COUNTIF. *Table — Skipping noisy test or internal prefix rows to find the first real production event!:* | Row Event ID (Col A) | Environment Tag (Col B) | ISERROR(SEARCH("INTERNAL", B)) | Lookup Role | | --- | --- | --- | --- | | EVT-401 | INTERNAL-QA-PING | FALSE (Contains Keyword) | Skipped | | EVT-402 | INTERNAL-STG-SYNC | FALSE (Contains Keyword) | Skipped | | EVT-403 | PROD-EU-CHECKOUT | TRUE (Clean Match!) | Returned First by XLOOKUP! | - **Formula (First Record Whose Tag Does Not Contain Excluded Substring)**: `=IF(TRIM(F2) = "", "Enter Excluded Text", XLOOKUP(TRUE, C2:C6, A2:A6, "All Rows Excluded"))` - **Formula (Count Total Records Not Containing Excluded Substring)**: `=IF(TRIM(F2) = "", COUNTA(B2:B6), COUNTIF(B2:B6, "<>*" & F2 & "*"))` ### Match Long Text Over 255 Characters (EXACT + XLOOKUP Bypass for Deep URLs & Clauses) - **URL**: https://sheets.arte-soft.com/en/learn/match-long-text-over-255-characters-exact-xlookup-bypass/ - **Summary**: Bypass legacy 255-character lookup limits and prefix collisions when matching long tracking URLs, API payloads, and contract clauses that differ only after character 255. *Table — Why legacy MATCH and COUNTIF fail past character 255:* | String Length | Difference Position | Legacy MATCH / COUNTIF | EXACT + XLOOKUP | | --- | --- | --- | --- | | 120 chars | Char 80 | Works (case-insensitive) | Works (case-sensitive) | | 263 chars | Char 263 ("-v1" vs "-v2") | #VALUE! or false tie | Exact match ("DOC-102") | | 263 chars | Case change at char 262 | Cannot distinguish | Distinguishes "-V2" vs "-v2" | - **Formula (Full-Length Exact Lookup Past 255 Characters)**: `=XLOOKUP(TRUE, C2:C4, B2:B4, "NO_MATCH")` - **Formula (Count Long-Text Matches Without COUNTIF Truncation)**: `=COUNTIF(C2:C4, TRUE)` ### Match Next Highest Capacity Bracket & Dynamic Column Peak (XLOOKUP +1 & CHOOSECOLS) - **URL**: https://sheets.arte-soft.com/en/learn/match-next-highest-ceiling-bracket-xlookup-match-mode/ - **Summary**: Select the smallest server, container, or breaker rating that meets or exceeds required load using XLOOKUP match_mode = 1, and verify dynamic column capacity peaks with MAX(CHOOSECOLS(...)). *Table — Engineering & capacity sizing requires ceiling matching (match_mode = 1), not floor (-1):* | Sizing Task | Formula Pattern | Behavior on 62 kW Load | | --- | --- | --- | | Next-highest rated model | XLOOKUP(62, $D$2:$D$5, $E$2:$E$5, "EXCEEDS_MAX", 1) | Selects 75 kW model ("GEN-75") | | Headroom kW margin | XLOOKUP(62, $D$2:$D$5, $D$2:$D$5, NA(), 1) - 62 | 13 kW spare capacity | | Selected column max peak | MAX(CHOOSECOLS($D$2:$F$5, MATCH(hdr, $D$1:$F$1, 0))) | Returns peak rating of chosen spec column | - **Formula (Next-Highest Capacity Lookup & Dynamic Column Max Formula)**: `=XLOOKUP(B2, $E$2:$E$5, $D$2:$D$5, "EXCEEDS_MAX", 1)` ### Matlock (1970) Soft-Clay Lateral Pile p-y Curve Formula: N_p, y_50 & Cubic Spring - **URL**: https://sheets.arte-soft.com/en/learn/matlock-soft-clay-lateral-pile-p-y-curve-and-eps50-deflection-formula/ - **Summary**: Generate nonlinear lateral soil-pile spring resistance p(y) (kN/m) in submerged soft clay using Hudson Matlock’s (1970, API RP 2GEO / LPILE) bearing factor N_p = MIN(9, 3 + gamma_prime*z/c_u + J*z/D), y_50 = 2.5*eps_50*D, and cubic parabola. *Table — Model nonlinear soil yielding around offshore jackets, wind monopiles, and bridge shafts!:* | Lateral Deflection Ratio y / y_50 (D = 1.0 m, eps_50 = 0.010 -> y_50 = 0.025 m) | Deflection y (mm) | Mobilized Fraction p / p_u | Soil Reaction p (at p_u = 285 kN/m) | | --- | --- | --- | --- | | Small Working Load (y / y_50 = 0.125) | 3.125 mm | 0.5 * (0.125)^(1/3) = 0.250 | 71.25 kN/m | | Half-Capacity Reference (y / y_50 = 1.00) | 25.00 mm | 0.5 * (1.00)^(1/3) = 0.500 | 142.50 kN/m | | Full Plastic Flow Plateau (y / y_50 >= 8.00) | >= 200.0 mm | 1.000 (Capped) | 285.00 kN/m | - **Formula (Matlock Ultimate Lateral Clay Resistance p_u (kN/m) at Depth z)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Depth, Diameter D, Shear Strength c_u, gamma_prime, or J", ROUND(MIN(9, 3 + (B5 * B2) / B4 + (B6 * B2) / B3) * B4 * B3, 2))` - **Formula (Mobilized Static p-y Spring Resistance p(y) (kN/m) at Deflection y)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0, B8 < 0), "Invalid Matlock p-y Inputs", ROUND((MIN(9, 3 + (B5 * B2) / B4 + (B6 * B2) / B3) * B4 * B3) * MIN(1, 0.5 * ((B8 / (2.5 * B7 * B3)) ^ (1 / 3))), 2))` ### 3x3 Matrix Determinant and Cramer's Rule Linear System Solver (MDETERM & MINVERSE) - **URL**: https://sheets.arte-soft.com/en/learn/matrix-determinant-inverse-and-cramers-rule-linear-solver/ - **Summary**: Calculate exact 2x2 and 3x3 matrix determinants, test for singular zero-determinant systems, and solve simultaneous linear equations A*x = b via cofactor expansion. *Table — Cofactor determinant expansion and Cramer's Rule:* | Equation Row | x Coeff (A) | y Coeff (B) | z Coeff (C) | RHS Constant (D) | | --- | --- | --- | --- | --- | | Eq 1 | 2 | 1 | -1 | 8 | | Eq 2 | -3 | -1 | 2 | -11 | | Eq 3 | -2 | 1 | 2 | -3 | | Solution | x = 2 | y = 3 | z = -1 | det(A) = -1 | - **Formula (3x3 Matrix Determinant Formula (MDETERM Equivalent))**: `=A2 * (B3 * C4 - C3 * B4) - B2 * (A3 * C4 - C3 * A4) + C2 * (A3 * B4 - B3 * A4)` - **Formula (Cramer's Rule Unknown Solver With Singularity Guard)**: `=LET(det_a, A2 * (B3 * C4 - C3 * B4) - B2 * (A3 * C4 - C3 * A4) + C2 * (A3 * B4 - B3 * A4), det_x, D2 * (B3 * C4 - C3 * B4) - B2 * (D3 * C4 - C3 * D4) + C2 * (D3 * B4 - B3 * D4), IF(det_a = 0, "Singular Matrix", det_x / det_a))` ### Matsuda Index (ISI_comp) Formula: Whole-Body OGTT Hepatic + Peripheral Insulin Sensitivity - **URL**: https://sheets.arte-soft.com/en/learn/matsuda-whole-body-ogtt-insulin-sensitivity-index-isi-formula/ - **Summary**: Capture both fasting hepatic and post-load skeletal-muscle insulin sensitivity from a 75 g Oral Glucose Tolerance Test using Masafumi Matsuda & Ralph DeFronzo’s composite index 10,000 / SQRT((G_0 * I_0) * (G_mean * I_mean)). *Table — Why fasting HOMA-IR reflects primarily hepatic resistance while Matsuda’s OGTT index captures muscle disposal!:* | 75 g OGTT Metabolic Profile (mg/dL & uIU/mL) | Fasting HOMA-IR (G0*I0/405) | Matsuda Whole-Body ISI | Clamp-Correlated Interpretation | | --- | --- | --- | --- | | G0=95, I0=14; Mean G=138, Mean I=62 | 3.28 | 2.96 | Borderline / Insulin-Resistant Phenotype | | G0=84, I0=6; Mean G=108, Mean I=28 | 1.24 | 8.10 | High Whole-Body Insulin Sensitivity | | Zero or Negative Assay Input | Invalid Assay | "Invalid OGTT Glucose or Insulin" | Positive Assay Guard | - **Formula (Matsuda-DeFronzo Whole-Body Insulin Sensitivity Index = 10,000 / SQRT((G_0*I_0)*(G_mean*I_mean)))**: `=IF(MIN(B2:B5) <= 0, "Invalid OGTT Glucose or Insulin", ROUND(10000 / SQRT((B2 * B3) * (B4 * B5)), 2))` - **Formula (Companion Fasting Hepatic HOMA-IR = (G_0 * I_0) / 405)**: `=IF(MIN(B2:B5) <= 0, "Invalid OGTT Glucose or Insulin", ROUND((B2 * B3) / 405, 2))` ### Matthews Correlation Coefficient (MCC) & Cohen's Kappa Confusion Matrix formulas - **URL**: https://sheets.arte-soft.com/en/learn/matthews-correlation-coefficient-mcc-and-cohens-kappa/ - **Summary**: Compute binary MCC and unweighted Cohen kappa from valid integer counts, distinguish undefined cases and compare asymmetric confusion matrices. *Table — Why 90% Accuracy can be a worthless classifier—and why MCC & Kappa catch it!:* | Confusion Matrix Metric | Formula | Strong Model (80, 880, 20, 20) | Dummy All-Negative (0, 900, 0, 100) | | --- | --- | --- | --- | | Raw Accuracy (TP+TN)/N | (B2+B3) / SUM(B2:B5) | 96.00% (0.9600) | 90.00% (0.9000 — Deceptive!) | | Matthews Correlation (MCC) | (TP*TN-FP*FN) / SQRT(Marginals) | 70,000 / 90,000 = 0.7778 | 0 by explicit zero-marginal convention | | Cohen's Chance-Adj Kappa | (p_o - p_e) / (1 - p_e) | (0.96 - 0.82) / 0.18 = 0.7778 | 0 for this matrix | - **Formula (Guarded Matthews Correlation Coefficient (MCC) on [-1, +1])**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,SUM(B2:B5)<=0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF((B2 + B4) * (B2 + B5) * (B3 + B4) * (B3 + B5) = 0, 0, ROUND((B2 * B3 - B4 * B5) / SQRT((B2 + B4) * (B2 + B5) * (B3 + B4) * (B3 + B5)), 4))))` - **Formula (Cohen's Chance-Corrected Kappa Statistic)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,SUM(B2:B5)<=0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF((SUM(B2:B5)^2-((B2+B4)*(B2+B5)+(B5+B3)*(B4+B3)))=0,"Undefined kappa",ROUND((SUM(B2:B5)*(B2+B3)-((B2+B4)*(B2+B5)+(B5+B3)*(B4+B3)))/(SUM(B2:B5)^2-((B2+B4)*(B2+B5)+(B5+B3)*(B4+B3))),4))))` ### Matthiessen’s Rule & Cryogenic Residual Resistivity Ratio (RRR) - **URL**: https://sheets.arte-soft.com/en/learn/matthiessens-rule-residual-resistivity-ratio-rrr-metal-purity/ - **Summary**: Separate impurity/defect resistivity rho_0 from thermal phonon scattering rho_ph(T) via Augustus Matthiessen’s Rule rho_tot = rho_0 + rho_ph and grade cryogenic copper/niobium purity via RRR = rho(300 K) / rho(4.2 K). *Table — Why CERN accelerator cavities & MRI magnets specify RRR >= 300 instead of "99.99% pure"!:* | Copper Cryogenic Grade (rho_ph,300K = 16.78 nOhm*m) | 4.2 K Residual rho_0 (nOhm*m) | 300 K Total rho (nOhm*m) | Residual Resistivity Ratio RRR | | --- | --- | --- | --- | | Superconducting Magnet Stabilizer (OFHC) | 0.056 nOhm*m | 16.836 nOhm*m | 300.6 (High Cryogenic Conductivity) | | Commercial Electrolytic Tough Pitch (ETP) | 0.350 nOhm*m | 17.130 nOhm*m | 48.9 | | Cold-Worked Brass Alloy | 42.000 nOhm*m | 58.780 nOhm*m | 1.4 (Impurity Dominated) | - **Formula (Total Electrical Resistivity by Matthiessen’s Rule rho_tot = rho_0 + rho_ph(T) (nOhm*m))**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Resistivity Inputs", ROUND(B2 + B3, 3))` - **Formula (Cryogenic Residual Resistivity Ratio RRR = (rho_0 + rho_ph,300K) / rho_0)**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Resistivity Inputs", ROUND((B2 + B3) / B2, 1))` ### Find highest & lowest value on a specific day of week (WEEKDAY, MAXIFS & MINIFS) - **URL**: https://sheets.arte-soft.com/en/learn/max-and-min-value-on-specific-weekday-filter/ - **Summary**: Use a Monday-first weekday helper to find maximum and minimum numeric readings, while distinguishing no matching dates from a genuine zero result. *Table — Isolate peak Mondays or quietest Saturdays from a daily time series!:* | Date (A) | Daily Load MW (B) | ISO WEEKDAY(A, 2) (C) | Day Name & Role | | --- | --- | --- | --- | | 2026-10-19 | 410 | 1 (Monday) | Monday #1 | | 2026-10-20 | 520 | 2 (Tuesday) | Overall peak (not Monday!) | | 2026-10-23 | 380 | 5 (Friday) | Friday #1 | | 2026-10-26 | 465 | 1 (Monday) | Peak Monday = 465 MW! | | 2026-10-30 | 340 | 5 (Friday) | Lowest Friday = 340 MW! | | 2026-11-02 | 430 | 1 (Monday) | Lowest Monday = 410 MW | - **Formula (Maximum value occurring on target ISO weekday F2 (1 = Mon .. 7 = Sun))**: `=IF(OR(COUNT(F2)<>1,COUNT(C2:C7)<>6,COUNT(B2:B7)<>6),"Invalid inputs",IF(OR(F2<1,F2>7,F2<>INT(F2)),"Invalid inputs",IF(COUNTIF(C2:C7,F2)=0,"No records",MAXIFS(B2:B7, C2:C7, F2))))` - **Formula (Minimum value occurring on target ISO weekday F2)**: `=IF(OR(COUNT(F2)<>1,COUNT(C2:C7)<>6,COUNT(B2:B7)<>6),"Invalid inputs",IF(OR(F2<1,F2>7,F2<>INT(F2)),"Invalid inputs",IF(COUNTIF(C2:C7,F2)=0,"No records",MINIFS(B2:B7, C2:C7, F2))))` ### Find MAX & MIN Values While Ignoring All Errors (Even in Negative Ranges) - **URL**: https://sheets.arte-soft.com/en/learn/max-and-min-values-ignoring-all-errors-in-range/ - **Summary**: Extract the true maximum and minimum finite numbers from ranges containing #DIV/0! or #N/A errors using MAXIFS and MINIFS without failing on all-negative readings. *Table — Avoid the all-negative IFERROR(..., 0) trap in cold-chain and drawdown logs:* | Sensor Probe | Temp Reading (C) | MAXIFS("<1E100") | MINIFS(">-1E100") | | --- | --- | --- | --- | | Probe A | -18.5 | Candidate | Candidate | | Probe B | #N/A (Offline) | Skipped | Skipped | | Probe C | -12.2 | Max = -12.2 | Candidate | | Probe D | #DIV/0! | Skipped | Skipped | | Probe E | -21.4 | Candidate | Min = -21.4 | - **Formula (Error-Safe Maximum Across Negative or Positive Numbers)**: `=IF(COUNT(B2:B6) = 0, "No Valid Data", MAXIFS(B2:B6, B2:B6, "<1E100"))` - **Formula (Error-Safe Minimum Across Negative or Positive Numbers)**: `=IF(COUNT(B2:B6) = 0, "No Valid Data", MINIFS(B2:B6, B2:B6, ">-1E100"))` ### How MAXA, MINA, STDEVA, and VARA Coerce Booleans and Text vs. Numeric Aggregates - **URL**: https://sheets.arte-soft.com/en/learn/maxa-mina-stdeva-vara-boolean-and-text-coercion-aggregates/ - **Summary**: Audit and reproduce Excel's *A statistical functions (MAXA, MINA, STDEVA, STDEVPA, VARA, VARPA), where TRUE evaluates as 1, FALSE and text strings evaluate as 0, and blanks are ignored. *Table — Why mixed boolean/text columns shift MAXA, MINA, and STDEVA:* | Unit | Raw Entry (B) | Numeric-Only View | *A Coerced Value (C) | Effect on *A Stats | | --- | --- | --- | --- | --- | | Line-1 | 0.65 | 0.65 | 0.65 | Included as 0.65 | | Line-2 | TRUE | Ignored | 1.00 | Pushes MAXA from 0.85 to 1 | | Line-3 | "Pending" | Ignored | 0.00 | Pulls MINA from 0.40 to 0 | | Line-4 | 0.40 | 0.40 | 0.40 | Included as 0.40 | | Line-5 | 0.85 | 0.85 | 0.85 | Included as 0.85 | - **Formula (Explicit *A Coercion Mapping & STDEVA / VARA Evaluation)**: `=ROUND(STDEV_S(C2:C6), 4)` - **Formula (Compare Against Numeric-Only STDEV.S)**: `=ROUND(STDEV_S(B2:B6), 4)` ### MINIFS and MAXIFS: find lowest and highest values by category - **URL**: https://sheets.arte-soft.com/en/learn/maxifs-minifs-highest-lowest-by-category/ - **Summary**: Compare the lowest and highest supplier quotes within one material group, and avoid mistaking a 0 unmatched result for a free quote. *Table — Supplier quotes across two material categories:* | Material (A) | Quote (B) | | --- | --- | | Timber | 145 | | Steel | 290 | | Timber | 132 | | Timber | 158 | | Steel | 310 | - **Formula (Extract category minimum, maximum, and spread)**: `=MINIFS(B2:B6,A2:A6,D2)` - **Formula (The zero-return trap when no rows match)**: `=IF(COUNTIF(A2:A6,D2)=0,"No quotes",MINIFS(B2:B6,A2:A6,D2))` ### Maximum and Minimum Value by Calendar Month (MAXIFS, MINIFS & EOMONTH) - **URL**: https://sheets.arte-soft.com/en/learn/maximum-and-minimum-value-by-calendar-month-maxifs/ - **Summary**: Find the peak high and trough low within any calendar month using MAXIFS and MINIFS bounded by first-of-month and EOMONTH(firstOfMonth, 0), distinguishing empty months from genuine zero readings. *Table — Bound calendar months cleanly with EOMONTH and guard empty months:* | Reading Date | Peak Demand (MW) | Target Month Start (E2) | Monthly Result | | --- | --- | --- | --- | | 2026-02-28 | 495 | 2026-03-01 | Excluded (February) | | 2026-03-01 | 410 | 2026-03-01 | Included (Month start boundary) | | 2026-03-18 | 530 | 2026-03-01 | Monthly Max = 530 MW | | 2026-03-31 | 385 | 2026-03-01 | Monthly Min = 385 MW | | 2026-04-01 | 560 | 2026-03-01 | Excluded (April) | - **Formula (Guarded Monthly Maximum (MAXIFS + EOMONTH))**: `=LET(mEnd, EOMONTH(E2, 0), IF(COUNTIFS(A2:A6, ">=" & E2, A2:A6, "<=" & mEnd) = 0, "No Data", MAXIFS(B2:B6, A2:A6, ">=" & E2, A2:A6, "<=" & mEnd)))` - **Formula (Monthly Peak-to-Trough Spread (MAXIFS Minus MINIFS))**: `=LET(mEnd, EOMONTH(E2, 0), MAXIFS(B2:B6, A2:A6, ">=" & E2, A2:A6, "<=" & mEnd) - MINIFS(B2:B6, A2:A6, ">=" & E2, A2:A6, "<=" & mEnd))` ### Maximum Drawdown (MDD), High-Water Mark & recovery gain % formulas - **URL**: https://sheets.arte-soft.com/en/learn/maximum-drawdown-mdd-and-high-water-mark-formula/ - **Summary**: Track running portfolio peaks MAX($B$2:B2), underwater drawdown %, worst peak-to-trough Maximum Drawdown, and asymmetric recovery % needed. *Table — Why MAX(Portfolio) to MIN(Portfolio) is WRONG when the trough came BEFORE the peak!:* | Period (A) | NAV $k (B) | Running Peak =MAX($B$2:B_row) | Drawdown % =(B-C)/C | | --- | --- | --- | --- | | Jan / Feb | $100k -> $120k | $100k -> $120k | 0.00% -> 0.00% (New High!) | | Mar / Apr | $102k -> $90k | $120k -> $120k | -15.00% -> -25.00% (Worst MDD!) | | May / Jun | $114k -> $132k | $120k -> $132k | -5.00% -> 0.00% (Recovered!) | - **Formula (Worst observed percentage drawdown)**: `=ROUND(MIN(D2:D7), 4)` - **Formula (Required % gain to recover back to High-Water Mark from worst drawdown)**: `=LET(mdd,MIN(D2:D7),IF(mdd<=-1,"No finite recovery gain",ROUND(1/(1+mdd)-1,4)))` ### Maximum Flow & Min-Cut Network Model (Node Conservation, Arc Slack & Bottleneck Cut) - **URL**: https://sheets.arte-soft.com/en/learn/maximum-flow-network-node-conservation-and-min-cut-bottleneck/ - **Summary**: Model directed logistics and pipeline networks by auditing SUMIFS transshipment flow conservation (Outflow - Inflow = 0), residual arc capacity slack, and Max-Flow = Min-Cut optimality. *Table — Verifying feasible flow conservation and the Max-Flow Min-Cut certificate:* | Directed Arc | Capacity | Assigned Flow | Residual Slack | Bottleneck Status | | --- | --- | --- | --- | --- | | S -> A | 12 | 12 | 0 | Saturated | | S -> B | 10 | 9 | 1 | Has spare capacity | | A -> B | 5 | 4 | 1 | Redirects A surplus to B | | A -> T | 8 | 8 | 0 | Min-Cut Sink Bottleneck | | B -> T | 13 | 13 | 0 | Min-Cut Sink Bottleneck | - **Formula (Intermediate Hub Flow Conservation Formula (SUMIFS))**: `=SUMIFS($D$2:$D$6, $A$2:$A$6, "A") - SUMIFS($D$2:$D$6, $B$2:$B$6, "A")` - **Formula (Max-Flow = Min-Cut Optimality Check)**: `=AND(H2 = 0, H3 = 0, MIN(E2:E6) >= 0, H4 = H5)` ### Find maximum period-over-period jump, steepest drop & largest absolute swing - **URL**: https://sheets.arte-soft.com/en/learn/maximum-period-over-period-change-and-drawdown-spike/ - **Summary**: Find the largest and smallest signed adjacent-period changes, the largest absolute change, and its first matching period. *Table — Signed extrema and absolute changes answer different questions:* | Month (A) | Metric Value (B) | Signed Delta B_t - B_{t-1} (C) | Abs Swing \|Delta\| (D) | | --- | --- | --- | --- | | Jan | 200 | — (Baseline) | — | | Feb | 215 | +15 | 15 | | Mar | 260 | +45 (Biggest Gain!) | 45 | | Apr | 250 | -10 | 10 | | May | 190 | -60 (Steepest Drop!) | 60 (Largest Shock -> "May"!) | - **Formula (Ending period of the largest absolute adjacent change)**: `=IF(OR(COUNT(B2:B6)<>5,COUNTBLANK(A2:A6)>0),"Invalid inputs",INDEX(A3:A6, XMATCH(MAX(D3:D6), D3:D6, 0)))` - **Formula (Largest signed change)**: `=IF(OR(COUNT(B2:B6)<>5,COUNTBLANK(A2:A6)>0),"Invalid inputs",MAX(C3:C6))` ### Mayo-Lewis Copolymer Equation & Azeotropic Feed Ratio - **URL**: https://sheets.arte-soft.com/en/learn/mayo-lewis-copolymerization-instantaneous-monomer-composition/ - **Summary**: Calculate instantaneous copolymer chain composition F_1 = (r_1*f_1^2 + f_1*f_2) / (r_1*f_1^2 + 2*f_1*f_2 + r_2*f_2^2) and drift-free azeotropic monomer feed f_1,azeo = (1 - r_2) / (2 - r_1 - r_2). *Table — Why batch copolymer reactors suffer composition drift—except right at the azeotropic feed!:* | Styrene (M1, r1=0.52) + MMA (M2, r2=0.46) Feed | Instantaneous Chain F1 | Batch Drift Direction (F1 - f1) | Reactor Control Strategy | | --- | --- | --- | --- | | Styrene-Lean Feed (f1 = 0.3000) | 0.3710 | +0.0710 (Depletes Styrene) | Semi-Batch Styrene Makeup Needed | | Azeotropic Feed (f1 = 0.5294) | 0.5294 (= f1!) | 0.0000 (Zero Drift!) | Uniform Optical-Grade SAN/SMMA | | Styrene-Rich Feed (f1 = 0.8000) | 0.7311 | -0.0689 (Enriches Styrene) | Semi-Batch MMA Makeup Needed | - **Formula (Mayo-Lewis Instantaneous Copolymer Mole Fraction F_1)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B4 < 0), "Invalid Reactivity Inputs", IF(OR(B2 = 0, B2 = 1), B2, ROUND((B3 * (B2 ^ 2) + B2 * (1 - B2)) / (B3 * (B2 ^ 2) + 2 * B2 * (1 - B2) + B4 * ((1 - B2) ^ 2)), 4)))` - **Formula (Drift-Free Azeotropic Monomer Feed Fraction f_1,azeo = (1 - r_2) / (2 - r_1 - r_2))**: `=IF(OR(B3 < 0, B4 < 0), "Invalid Reactivity Inputs", IF(OR(AND(B3 < 1, B4 < 1), AND(B3 > 1, B4 > 1)), ROUND((1 - B4) / (2 - B3 - B4), 4), "No Internal Azeotrope"))` ### Mayo Score & Non-Invasive Partial Mayo Score for Ulcerative Colitis - **URL**: https://sheets.arte-soft.com/en/learn/mayo-score-and-partial-mayo-ulcerative-colitis-activity-formula/ - **Summary**: Calculate Kenneth Schroeder’s 4-domain Full Mayo Ulcerative Colitis Score (0–12 including Endoscopic Subscore) alongside the 3-domain Non-Invasive Partial Mayo Score (0–9) for clinic visits between colonoscopies. *Table — Combine Full Endoscopic Mayo (0–12) and Non-Invasive Partial Mayo (0–9) in one sheet!:* | Ulcerative Colitis Activity Tier | Full 4-Item Mayo (0–12) | Non-Invasive 3-Item Partial Mayo (0–9) | Mucosal Healing Note | | --- | --- | --- | --- | | Clinical & Endoscopic Remission | 0–2 (No Subscore > 1) | 0–1 | Endoscopic Subscore 0–1 Target | | Mild / Moderate UC (e.g., 2+2+2+2 = 8) | 3–5 (Mild) / 6–10 (Moderate) | 2–4 (Mild) / 5–7 (Moderate) | Biologic / Small-Molecule Induction | | Severe UC Flare | 11–12 | 8–9 | IV Corticosteroids & Rescue Check | - **Formula (Full 4-Domain Mayo Ulcerative Colitis Score (0–12) & Severity Classification)**: `=IF(OR(COUNT(B2:B5) < 4, MIN(B2:B5) < 0, MAX(B2:B5) > 3), "Invalid Mayo Subscore (0-3)", SUM(B2:B5))` - **Formula (Non-Invasive 3-Domain Partial Mayo Score (0–9, Excluding Endoscopy B4))**: `=IF(OR(B2 < 0, B2 > 3, B3 < 0, B3 > 3, B5 < 0, B5 > 3), "Invalid Mayo Subscore (0-3)", B2 + B3 + B5)` ### McCabe-Thiele Distillation Operating Lines & Feed q-Line Intersection Formula - **URL**: https://sheets.arte-soft.com/en/learn/mccabe-thiele-operating-lines-and-q-line-pinch-intersection/ - **Summary**: Calculate the McCabe-Thiele rectifying operating-line slope R / (R + 1), intercept xD / (R + 1), and exact singularity-free feed q-line intersection coordinates (x_int, y_int) valid for ALL thermal qualities q (including q = 1!). *Table — Avoid division-by-zero at saturated liquid feed q = 1 with the exact (R + q) algebra!:* | Feed Thermal State q (R = 2.0, xF = 0.45, xD = 0.96) | Rectifying Slope R/(R+1) | Intersection Liquid x_int | Intersection Vapor y_int | | --- | --- | --- | --- | | Saturated Boiling Liquid (q = 1.00) | 0.6667 | 0.4500 (Vertical at xF!) | 0.6200 | | 50% Vaporized Flash Feed (q = 0.50) | 0.6667 | 0.3480 | 0.5520 | | Saturated Dew-Point Vapor (q = 0.00) | 0.6667 | 0.1950 | 0.4500 (Horizontal at xF!) | - **Formula (Singularity-Free Feed q-Line & Rectifying Line Intersection x_int)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= B3, B4 >= 1, (B2 + B5) <= 0), "Invalid Column Inputs", ROUND(((B3 * (B2 + 1)) + (B4 * (B5 - 1))) / (B2 + B5), 4))` - **Formula (Corresponding Intersection Vapor Mole Fraction y_int on Rectifying Line)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= B3, B4 >= 1, (B2 + B5) <= 0), "Invalid Column Inputs", ROUND(((B2 * (((B3 * (B2 + 1)) + (B4 * (B5 - 1))) / (B2 + B5))) + B4) / (B2 + 1), 4))` ### McKee Corrugated Box Compression (BCT) & Stacking Formula - **URL**: https://sheets.arte-soft.com/en/learn/mckee-corrugated-box-compression-test-bct-and-ect-pallet-stacking-formula/ - **Summary**: Calculate R.C. McKee’s Simplified Corrugated Box Compression Strength BCT_lbf = 5.87 * ECT_lb_in * SQRT(Flute_Caliper_in * Box_Perimeter_in), Humidity/Creep Safe Bottom-Box Load, and Maximum Safe Pallet Layers. *Table — Derate laboratory McKee BCT for warehouse humidity and creep before stacking pallets!:* | McKee Corrugated Metric (32 ECT, 0.16" C-Flute, 20x12" RSC, F_env=0.25, 30 lb/box) | Formula | Verified Output | | --- | --- | --- | | Carton Perimeter Z (inches) | 2 * (Length_in + Width_in) | 64.00 in | | Dry Lab McKee Strength BCT (lbf) | 5.87 * ECT * SQRT(Caliper * Z) | 601.09 lbf (751.36 lbf @ 40 ECT) | | Safe Warehouse Bottom Load (lbf) | Lab_BCT * F_env | 150.27 lbf (187.84 lbf @ 40 ECT) | | Max Safe Pallet Layers High | 1 + INT(Safe_Bottom_Load / Box_lb) | 6 Layers (7 Layers @ 40 ECT) | - **Formula (Simplified McKee Box Compression Test (BCT) Formula)**: `=LET(ec_t, B2, fl_h, B3, ln_b, B4, wd_b, B5, sf_f, B6, bx_w, B7, IF(OR(ec_t <= 0, fl_h <= 0, ln_b <= 0, wd_b <= 0, sf_f <= 0, sf_f > 1, bx_w <= 0), "Invalid Corrugated Box Spec", LET(pr_z, 2 * (ln_b + wd_b), ROUND(5.87 * ec_t * SQRT(fl_h * pr_z), 2))))` - **Formula (40-ECT Heavy-Duty Board Upgrade Check)**: `=IF(ISTEXT(E3), E3, 1 + INT(E4 / B7))` ### McNemar’s Paired-Proportions Chi-Square Test & Edwards Continuity Correction - **URL**: https://sheets.arte-soft.com/en/learn/mcnemar-paired-proportions-discordant-chi-square-and-edwards-continuity/ - **Summary**: Test before-vs-after binary treatment shifts or matched classifier error rates using discordant pairs (b and c), Edwards continuity-corrected chi-square, and matched-pair odds ratio. *Table — Why standard 2x2 Pearson chi-square is invalid on matched or pre/post subjects:* | Matched Statistic | Formula | Example (b=22, c=8) | Interpretation | | --- | --- | --- | --- | | Discordant Pairs (b + c) | C2 + B3 | 30 | Informative switchers | | Uncorrected McNemar Chi2 | (b - c)^2 / (b + c) | 6.5333 | Asymptotic df=1 statistic | | Edwards Corrected Chi2 | (MAX(0, ABS(b - c) - 1))^2 / (b + c) | 5.6333 | Exceeds 3.8415 (p < 0.05) | | Matched-Pair Odds Ratio | b / c | 2.7500 | 2.75x Yes->No vs No->Yes | - **Formula (Uncorrected & Edwards Continuity-Corrected McNemar Formulas)**: `=IF(C2 + B3 = 0, 0, ROUND((MAX(0, ABS(C2 - B3) - 1) ^ 2) / (C2 + B3), 4))` - **Formula (Matched-Pair Marginal Shift Difference)**: `=ROUND((C2 - B3) / SUM(B2:C3), 4)` ### MCP apply_changes Revision, Idempotency & Conflict Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-apply-changes-base-revision-pending-review-and-operation-id-audit/ - **Summary**: Audit external connector apply_changes guardrails on cloud workbooks: Pro + editor/owner access, <= 100 cell cap, 16-80 char operation_id idempotency, base revision matching, and pendingReview concurrent peer-edit routing. *Table — Prevent silent overwrites when an external MCP client writes to a live collaborative workbook!:* | apply_changes Governance Check | Verified Server Rule | Example Audit Output | | --- | --- | --- | | Entitlement & Role Gate | Active Pro + owner/editor on Cloud Workbook | Pass (Suggester/Viewer Blocked) | | Batch Size & Idempotency Gate | 1..100 cells & 16 <= LEN(operation_id) <= 80 | 58 cells headroom (36-char UUID) | | Metered Arte AI Credit Cost | 0 Arte AI credits (120 calls/min burst cap) | 0 credits | | Concurrent Revision Outcome (Rev 18 -> 21) | IF(AND(Rev > Base, Conflict=1), "pendingReview") | Route to pendingReview | - **Formula (apply_changes Payload & Entitlement Preflight Gate Formula)**: `=LET(pr_ok, B2, ed_ok, B3, n_cl, B4, id_ln, B5, IF(OR(pr_ok <> 1, ed_ok <> 1), "Blocked: Require Active Pro & Editor/Owner", IF(OR(n_cl < 1, n_cl > 100), "Blocked: Exceeds 100-Cell Cap", IF(OR(id_ln < 16, id_ln > 80), "Blocked: Require 16-80 Char operation_id", "Preflight Valid"))))` - **Formula (Base-Revision & Concurrent Peer-Edit Outcome Classifier Formula)**: `=LET(pf_st, E2, rv_bs, B6, rv_cr, B7, cf_cl, B8, IF(pf_st <> "Preflight Valid", pf_st, IF(OR(rv_bs < 0, rv_cr < rv_bs, AND(rv_cr = rv_bs, cf_cl = 1)), "Invalid Revision State", IF(AND(rv_cr > rv_bs, cf_cl = 1), "Route to pendingReview", "Clean Direct Commit"))))` ### MCP Comment Reply Parent Anchor, comment_id Retry & Alert Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-comment-reply-parent-anchor-comment-id-retry-and-notification-audit/ - **Summary**: Audit Collaborative Comment Threading Rules in Arte Sheets: Exact read_range / Parent-Thread Anchor Inheritance, Explicit User Request Gate Before Participant Notification, Identical-Retry-Only comment_id Reuse, and Scoped Thread Resolution. *Table — Prevent orphaned replies, duplicate retries, and unrequested @mention notifications in shared workbooks!:* | Comment Thread Audit Rule (Anchor=1, Requested=1, BadReuse=0, Pro+Role=1) | Governance Rule | Verified Output | | --- | --- | --- | | Comment Write Audit Gate | Exact Anchor, Explicit Request, Fresh ID, Pro+Role | Allowed: Post or Reply With Verified Anchor | | Participant Alert Impact | Live Notification Side-Effect Disclosure | Notifies Thread/@Mentioned Participants | | Arte AI Inference Credits | Ordinary OAuth MCP Tool Call Cost | 0 Credits (vs Metered In-App Assistant) | | Thread Resolution Scope | Target Thread Isolation + Untrusted Text Guard | Resolve or Reopen Only Requested Thread | - **Formula (Collaborative Comment Anchor, Retry-ID & Notification Consent Formula)**: `=LET(an_ok, B2, rq_u, B3, id_bad, B4, pr_r, B5, IF(OR(AND(an_ok <> 0, an_ok <> 1), AND(rq_u <> 0, rq_u <> 1), AND(id_bad <> 0, id_bad <> 1), AND(pr_r <> 0, pr_r <> 1)), "Invalid Comment Audit Flag", IF(id_bad = 1, "Reject: Reuse comment_id Only For Identical Retries", IF(rq_u = 0, "Hold: Post Only When Explicitly Requested", IF(an_ok = 0, "Hold: Copy Exact Anchor From read_range / Parent", IF(pr_r = 0, "Denied: Active Pro + Owner/Editor/Suggester Required", "Allowed: Post or Reply With Verified Anchor"))))))` - **Formula (Recycled comment_id (B4 = 1), Unrequested Post (B3 = 0) & Missing Anchor (B2 = 0) Checks)**: `=IF(E2 <> "Allowed: Post or Reply With Verified Anchor", E2, "Resolve or Reopen Only Requested Thread")` ### MCP Comment Tools: 25-Entry/120KB Cap & Suggester Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-comment-tools-25-entry-120kb-cap-and-suggester-resolve-audit/ - **Summary**: Audit list_comments (<=25 entries, <=120 KB), add_comment, and resolve_comment permissions (Pro + owner/editor/suggester on whole-cell anchors) and 120/min rate limits without Arte AI credit burn. *Table — Coordinate peer-review comment threads safely across Arte Sheets and MCP tools!:* | MCP Comment Governance Layer | Contract Rule (0.1.0 In Review / Not Published) | Verified Audit Result | | --- | --- | --- | | list_comments Response Cap | sheets:read; <= 25 entries & <= 120 KB | 18 entries, 64 KB -> Bounded Read OK | | add_comment / resolve_comment Gate | sheets:write + Active Pro + owner/editor/suggester + Whole-Cell Anchor | Role 2 (Suggester) -> Allowed (0 Arte Credits) | | Viewer Role Attempt (Role_Tier = 1) | Viewers Cannot Post or Resolve Threads | Denied: Viewer Role Is Read-Only | | Per-Account Burst Limiter (> 120/min) | Shared Across Tokens/Clients -> 429 Retry-After: 60 | 125 calls -> Throttled: 429 Retry-After 60s | - **Formula (list_comments Payload & Entry-Count Cap Formula)**: `=LET(ct_en, B2, kb_sz, B3, IF(OR(ct_en < 1, kb_sz <= 0, NOT(OR(B4 = 0, B4 = 1)), NOT(OR(B5 = 1, B5 = 2, B5 = 3)), NOT(OR(B6 = 0, B6 = 1)), B7 < 0), "Invalid Comment Audit Input", IF(B7 > 120, "Throttled: 429 Retry-After 60s", IF(OR(ct_en > 25, kb_sz > 120), "Paginate: Exceeds 25-Entry or 120KB Cap", "Bounded Read OK (<=25 & <=120KB)"))))` - **Formula (add_comment & resolve_comment Role & Pro Gate Formula)**: `=IF(E2 = "Invalid Comment Audit Input", E2, IF(B7 > 120, "Throttled: 429 Retry-After 60s", IF(B4 = 0, "Denied: Active Pro Required for Comment Writes", IF(B5 = 1, "Denied: Viewer Role Is Read-Only", IF(B6 = 0, "Denied: Copy Whole-Cell Anchor from read_range", "Allowed: Whole-Cell Comment Mutation (0 Arte Credits)")))))` ### Academy MCP Lesson Gate, Locale & Progress Audit Formula - **URL**: https://sheets.arte-soft.com/en/learn/mcp-list-lessons-get-lesson-locked-metadata-and-locale-fallback-audit/ - **Summary**: Audit academy:read lesson access across free vs Pro-gated catalog metadata, transparent locale fallback without fabricated official translations, and read-only server-verified progress boundaries. *Table — Separate catalog metadata, Pro lesson entitlement, and verified in-app exercises cleanly!:* | Academy MCP Governance Metric (Free Lesson=0, Free Acct=0, Locale=1, 12/15 Verified, 5 Chat) | Formula | Verified Output | | --- | --- | --- | | get_lesson Entitlement Gate | Free Allowed; Paid Requires Active Pro | Allow get_lesson: Free Tier | | Localization Delivery Rule | Official Locale vs Disclosed EN Source | Serve Official Localized Lesson | | Counted verifiedLessons | Server_Verified_Exercises Only | 12 (5 chat runs add 0 verified) | | Remaining In-App Exercises | MAX(0, Required - Server_Verified) | 3 in-app validator runs needed | - **Formula (Academy Lesson Entitlement & Locked-Metadata Guard Formula)**: `=LET(pd_l, B2, pr_a, B3, lc_a, B4, vr_n, B5, ch_n, B6, rq_n, B7, IF(OR(AND(pd_l <> 0, pd_l <> 1), AND(pr_a <> 0, pr_a <> 1), AND(lc_a <> 0, lc_a <> 1), vr_n < 0, ch_n < 0, rq_n <= 0, vr_n > rq_n), "Invalid Academy Audit Input", IF(pd_l = 0, "Allow get_lesson: Free Tier", IF(pr_a = 1, "Allow get_lesson: Active Pro", "Locked Metadata Only: Active Pro Required"))))` - **Formula (Transparent Locale Fallback & Verified-Exercise Boundary Formula)**: `=IF(E2 = "Invalid Academy Audit Input", E2, IF(LEFT(E2, 6) = "Locked", "Catalog Metadata Only (Do Not Fabricate Lesson)", IF(B4 = 1, "Serve Official Localized Lesson", "Offer EN Source (Disclose Unlocalized)")))` ### MCP list_workbooks Pagination & Connected Apps Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-list-workbooks-pagination-cloud-collab-and-connected-apps-revoke-audit/ - **Summary**: Audit list_workbooks (<=100 cloud documents per page), why local browser-only workbooks require cloud collaboration before external MCP reads/writes, and OAuth revocation via Profile -> Connected apps. *Table — Separate local browser-only sheets from cloud collaboration workbooks in connector discovery!:* | Connector Setup & Discovery Rule (Plugin 0.1.0 In Review / Not Published) | Verified Contract Limit | Baseline Audit Result | | --- | --- | --- | | Visible Cloud Workbooks | n_tot - n_loc (Local Browser Sheets Excluded) | 140 Cloud Docs (25 Local Hidden) | | list_workbooks Cursor Pages | ROUNDUP(Cloud_Docs / MIN(100, Page_Size), 0) | 2 Pages (<=100 / page, 0 AI Credits) | | Range Read/Write Prerequisite | OAuth Active AND Cloud Collaboration Enabled | Connector Ready: Cloud Collab & OAuth Active | | Grant Revocation Path | Profile -> Connected apps (Zero Chat Secrets) | Revocable Anytime; 120/min Burst Cap | - **Formula (list_workbooks Page Count & Burst-Budget Remaining Formula)**: `=LET(n_tt, B2, n_lc, B3, f_cl, B4, f_oa, B5, pg_s, B6, IF(OR(n_tt < 0, n_lc < 0, n_lc > n_tt, NOT(OR(f_cl = 0, f_cl = 1)), NOT(OR(f_oa = 0, f_oa = 1)), pg_s < 1, pg_s > 100), "Invalid Discovery Audit", LET(n_cd, n_tt - n_lc, IF(n_cd = 0, 1, ROUNDUP(n_cd / pg_s, 0)))))` - **Formula (OAuth & Cloud-Collaboration Readiness Classifier Formula)**: `=IF(ISTEXT(E3), E3, IF(B5 = 0, "Blocked: OAuth Revoked or Disconnected", IF(B4 = 0, "Save to Account & Enable Collaboration First", "Connector Ready: Cloud Collab & OAuth Active")))` ### MCP OAuth Hygiene, Cloud Visibility & Lesson Prompt Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-oauth-credential-hygiene-local-workbook-visibility-and-lesson-prompt-guard/ - **Summary**: Audit Arte Sheets ChatGPT 0.1.0 setup and teaching guardrails: host OAuth without chat passwords/tokens (revokable in Profile -> Connected apps), no ChatGPT credit transfer claims, cloud collaboration visibility vs local browser sheets, and lesson-text prompt-injection quarantine. *Table — Enforce OAuth secret hygiene, cloud-collaboration prerequisites, and lesson-text isolation!:* | MCP Setup & Lesson Security Audit (Cloud=1, Collab=1, SecretAsk=0, CreditClaim=0, LessonInj=0) | Formula | Verified Output | | --- | --- | --- | | Connector Workbook Visibility | AND(Saved_To_Cloud = 1, Collab_Enabled = 1) | 1 (0 if Local Browser-Only!) | | Security & Policy Violation Count | Secret_Asked + Credit_Claim + Lesson_Inject | 0 Violations | | Onboarding & Teaching Gate | Secret -> Credit -> Injection -> Cloud Check | Compliant Setup: Cloud Collab Ready via OAuth | | User OAuth Revocation Surface | Documented Account Control Path | Profile -> Connected apps | - **Formula (MCP Setup, Credit-Isolation & Lesson Prompt-Guard Formula)**: `=LET(cl_s, B2, cb_e, B3, sc_p, B4, cr_t, B5, ls_w, B6, IF(OR(AND(cl_s <> 0, cl_s <> 1), AND(cb_e <> 0, cb_e <> 1), AND(sc_p <> 0, sc_p <> 1), AND(cr_t <> 0, cr_t <> 1), AND(ls_w <> 0, ls_w <> 1)), "Invalid Binary Audit Flag", IF(sc_p = 1, "Block: Never Ask Passwords/Tokens in Chat", IF(cr_t = 1, "Block: ChatGPT Credits Never Transfer", IF(ls_w = 1, "Quarantine: Lesson Text Never Authorizes Writes", IF(OR(cl_s = 0, cb_e = 0), "Unavailable: Save to Account & Enable Collaboration", "Compliant Setup: Cloud Collab Ready via OAuth"))))))` - **Formula (Local Browser-Only Sheet (B2 = 0) & Lesson-Text Injection (B6 = 1) Checks)**: `=IF(ISTEXT(E4), IF(E4 = "Invalid Binary Audit Flag", E4, "Profile -> Connected apps"), "Profile -> Connected apps")` ### MCP Public Link Rotation & Cell Prompt-Guard Formula - **URL**: https://sheets.arte-soft.com/en/learn/mcp-public-link-rotation-20x10-view-and-untrusted-cell-prompt-guard-audit/ - **Summary**: Audit manage_public_link owner/Pro rotation vs named invitations, 20-row by 10-column anonymous pagination tiles, and strict untrusted-data isolation for cell/comment prompt strings. *Table — Never enable anonymous public links from a named share request—and treat cell text strictly as data!:* | MCP Link & Prompt-Security Metric (Intent=0, OwnerPro=1, Action=0, 65x14 Sheet, Directive=1) | Formula | Verified Output | | --- | --- | --- | | manage_public_link Action Gate | Explicit Intent + Owner + Pro Check | Keep Public Link Unchanged (Use share_workbook for Named Invite) | | Public 20x10 Pagination Tiles | ROUNDUP(Rows/20, 0) * ROUNDUP(Cols/10, 0) | 8 anonymous view tiles | | Max Cells per Public Tile | MIN(Rows, 20) * MIN(Cols, 10) | 200 cells (No charts/comments/AI) | | Untrusted Cell/Comment Guard | Isolate Workbook Text from Tool Calls | Treat Cell/Comment Text Strictly as Data (Never Invoke Tools) | - **Formula (Public Link Consent, Owner/Pro Entitlement & Rotation/Disable Formula)**: `=LET(ex_i, B2, ow_p, B3, ac_m, B4, rw_n, B5, cl_n, B6, dr_f, B7, IF(OR(AND(ex_i <> 0, ex_i <> 1), AND(ow_p <> 0, ow_p <> 1), ac_m < 0, ac_m > 2, INT(ac_m) <> ac_m, rw_n < 1, cl_n < 1, AND(dr_f <> 0, dr_f <> 1)), "Invalid Link Governance Input", IF(ac_m = 0, "Keep Public Link Unchanged (Use share_workbook for Named Invite)", IF(ex_i = 0, "Block: Named Share Never Authorizes Public Link", IF(ow_p = 0, "Block: Requires Workbook Owner + Active Pro", IF(ac_m = 1, "Rotate/Enable New URL (Old Public URL Invalidated)", "Disable Public URL (Named Memberships Preserved)"))))))` - **Formula (20x10 Public Pagination Tile Count & Prompt-Injection Data Boundary)**: `=IF(E2 = "Invalid Link Governance Input", E2, ROUNDUP(B5 / 20, 0) * ROUNDUP(B6 / 10, 0))` ### MCP Connector Setup: No Demo Edits & Credit Non-Transfer Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-setup-no-demo-mutation-neutral-denial-and-credit-non-transfer-audit/ - **Summary**: Audit Scoped OAuth Onboarding Rules for the Arte Sheets ChatGPT Connector (0.1.0, In review / Not published): Read-Only Setup Discovery via list_workbooks and list_lessons, Zero Speculative Demo Edits or Invitations, Neutral Access-Denial Reporting, and Zero ChatGPT Credit Transfer. *Table — Verify connector onboarding with read-only discovery—never mutate sheets or claim credit transfers!:* | MCP Setup Governance Check (0.1.0 In Review / Not Published) | Rule Formula | Verified Output | | --- | --- | --- | | Setup Discovery Action Gate | OAuth=1 & DemoMut=0 & Cloud=1 & Auth=1 | Allowed: Read-Only Discovery (list_workbooks / list_lessons) | | Billing & Denial Boundary | Neutral reporting; no plugin checkout | Neutral Denial Only: Plugin Does Not Sell Plans or Credits | | Transferable ChatGPT Credits | Zero cross-platform credit transfer | 0 | | OAuth Revocation Control | Self-service grant management path | Revoke Anytime in Profile -> Connected apps | - **Formula (Connector Setup Guardrail Decision Formula)**: `=IF(OR(NOT(OR(B2=0,B2=1)), NOT(OR(B3=0,B3=1)), NOT(OR(B4=0,B4=1)), NOT(OR(B5=0,B5=1))), "Invalid Setup Flag", IF(B2 = 0, "Reconnect via Host OAuth (Never Ask Passwords/Tokens)", IF(B4 = 1, "Reject: Never Edit or Invite Just to Demo Setup", IF(B3 = 0, "Local Sheet Unavailable: Save to Account & Enable Collab", IF(B5 = 0, "Report Access Denial Neutrally (No Plugin Plan Sales)", "Allowed: Read-Only Discovery (list_workbooks / list_lessons)")))))` - **Formula (Demo-Mutation, Local-Sheet, Plan-Denial & Disconnected-OAuth Stress Checks)**: `=IF(E2 = "Invalid Setup Flag", E2, 0)` ### MCP share_workbook In-App Invite, emailSent=false & Replay Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-share-workbook-in-app-invite-emailsent-false-and-replay-audit/ - **Summary**: Audit External OAuth share_workbook Governance in Arte Sheets: Owner + Active Pro Gate, Ambiguous Recipient/Role Hold, In-App Invitation Disclosure (emailSent=false), Zero Arte AI Credit Usage, and Idempotent Replay Semantics. *Table — Distinguish named in-app share_workbook invitations from outgoing emails and public links!:* | MCP share_workbook Governance Check (Owner=1, Pro=1, Explicit=1, Replay=0, Calls=3) | Rule / Formula | Verified Output | | --- | --- | --- | | Share Mutation Gate | Owner=1, Pro=1, Explicit=1, Calls<=120 | Allowed: Create In-App Invitation | | Notification Delivery Mode | In-App Invitation (Never Outgoing Email) | In-App Invite Only (emailSent=false) | | Arte AI Credits Consumed | Ordinary MCP Tool Execution Cost | 0 Credits (vs Metered In-App AI) | | Idempotent Replay Status | B5=0 Fresh vs B5=1 Transport Replay | Fresh Invite Recorded (or Verify Active) | - **Formula (External OAuth share_workbook Permission, Ambiguity & Rate-Limit Gate Formula)**: `=LET(is_o, B2, pr_a, B3, ex_r, B4, rp_i, B5, cl_m, B6, IF(OR(AND(is_o <> 0, is_o <> 1), AND(pr_a <> 0, pr_a <> 1), AND(ex_r <> 0, ex_r <> 1), AND(rp_i <> 0, rp_i <> 1), cl_m < 1), "Invalid Share Audit Input", IF(cl_m > 120, "Rate-Limited: 429 Retry-After 60s", IF(ex_r = 0, "Hold: Clarify Recipient and Role First", IF(is_o = 0, "Denied: Owner Role Required", IF(pr_a = 0, "Denied: Active Pro Required (No Plugin Checkout)", "Allowed: Create In-App Invitation"))))))` - **Formula (Idempotent Replay (B5 = 1), Ambiguous Role (B4 = 0) & Non-Owner / Free-Tier Denial Checks)**: `=IF(E2 <> "Allowed: Create In-App Invitation", E2, IF(B5 = 1, "Replay Recorded Only: Verify Active Membership", "Fresh Invite Recorded: Share Link Manually"))` ### MCP Structural Step Coordinate Shift & Readback Audit - **URL**: https://sheets.arte-soft.com/en/learn/mcp-structural-step-coordinate-shift-readback-and-unsupported-ops-audit/ - **Summary**: Audit 1-based row/column coordinate shifts R_shifted = R_0 + Ins_Above - Del_Above inside execute_steps (<= 10 steps, <= 20 structural ops, <= 100 cells), enforce post-mutation read_range verification, and reject unsupported file-create/export/macro requests. *Table — Account for 1-based structural row shifts and never promise unsupported export or macro execution!:* | execute_steps Structural Audit Metric (4 Steps, Row 12, +3 Ins, -1 Del, 24 Cells) | Formula | Verified Output | | --- | --- | --- | | Total 1-Based Structural Ops | Rows_Inserted + Rows_Deleted (Cap <= 20) | 4 Ops (>20 Requires Split) | | Shifted 1-Based Target Row | R_0 + Rows_Inserted_Above - Rows_Deleted_Above | Row 14 (Row 12 if 0 Structural) | | Net Coordinate Drift Offset | Rows_Inserted_Above - Rows_Deleted_Above | +2 Rows (Update Later Steps!) | | MCP / Assistant Batch Gate | Reject Unsupported -> Cap Check -> Readback | Valid Batch: Shift Target Row & Read Back Range | - **Formula (Structural Coordinate Shift & Capability Boundary Gate Formula)**: `=LET(st_n, B2, rw_0, B3, in_a, B4, dl_a, B5, cl_n, B6, un_f, B7, IF(OR(st_n < 1, rw_0 < 1, in_a < 0, dl_a < 0, rw_0 <= dl_a, cl_n < 0, un_f < 0), "Invalid Step Audit Input", IF(un_f > 0, "Reject: Unsupported Create/Export/Macro/Code", IF(OR(st_n > 10, in_a + dl_a > 20, cl_n > 100), "Split Batch: Exceeds 10-Step / 20-Struct / 100-Cell Cap", IF(in_a - dl_a <> 0, "Valid Batch: Shift Target Row & Read Back Range", "Valid Batch: Coordinates Unchanged")))))` - **Formula (Unsupported Export/Macro Rejection & 20-Op Structural Cap Checks)**: `=IF(OR(B2 < 1, B3 < 1, B4 < 0, B5 < 0, B3 <= B5, B6 < 0, B7 < 0), "Invalid Step Audit Input", B3 + B4 - B5)` ### Spreadsheet arithmetic with fictional blood-pressure and laboratory values - **URL**: https://sheets.arte-soft.com/en/learn/mean-arterial-pressure-map-anion-gap-and-corrected-calcium/ - **Summary**: Practice approximate MAP, an anion-gap subtraction and a historical albumin-adjusted calcium calculation, with explicit units and limitations. *Table — Educational arithmetic only; these values do not diagnose a patient:* | Clinical Panel | Cells & Inputs | Bedside Formula | Arithmetic result; no clinical classification | | --- | --- | --- | --- | | Blood Pressure (SBP / DBP) | B2 = 120, B3 = 75 mmHg | B3 + (B2 - B3) / 3 | Approximate MAP = 90 mmHg | | Electrolytes (Na, Cl, HCO3) | B4 = 140, B5 = 102, B6 = 18 | B4 - (B5 + B6) | Anion gap = 20 mEq/L | | Calcium & Albumin | B7 = 8.2 mg/dL, B8 = 2.5 g/dL | B7 + 0.8 * (4 - B8) | Historical adjusted total Ca = 9.4 mg/dL | | Hypotensive Case (84 / 48) | SBP = 84, DBP = 48 mmHg | 48 + 36 / 3 | Approximate MAP = 60 mmHg | - **Formula (Mean Arterial Pressure MAP = ROUND((B2 + 2 * B3) / 3, 1))**: `=IF(OR(COUNT(B2:B3)<>2,MIN(B2:B3)<=0,B22,MIN(B7:B8)<=0),"Invalid inputs",ROUND(B7 + 0.8 * (4 - B8), 2))` ### Mears Criterion: External Boundary-Layer Mass Transfer Check (< 0.15) - **URL**: https://sheets.arte-soft.com/en/learn/mears-criterion-external-film-mass-and-heat-transfer-catalyst/ - **Summary**: Test whether external fluid-film mass transfer limits heterogeneous catalytic reaction rates (< 5% error) via David Mears’ observable criterion Ω_Mears = (-r_A')_obs * ρ_b * R * n / (k_c * C_Ab) < 0.15. *Table — Crushing catalyst pellets tests INTERNAL pores—boosting velocity tests EXTERNAL Mears film!:* | Superficial Gas Velocity Regime | External Film kc (cm/s) | Mears Number Ω_Mears | Packed-Bed Diagnostic Status | | --- | --- | --- | --- | | Low Recycle Flow (Sluggish Film) | 0.05 cm/s | 0.2550 (>= 0.15) | External Film Mass-Transfer Limited! | | Borderline Flow Cutoff | 0.085 cm/s | 0.1500 (= 0.15) | 5% Rate Deviation Boundary | | High Recycle Flow (Thin Boundary Layer) | 0.40 cm/s | 0.0319 (< 0.15) | Negligible External Film Resistance | - **Formula (Mears External Mass-Transfer Criterion Ω_Mears)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Mears Inputs", ROUND((B2 * B3 * B4 * B5) / (B6 * B7), 4))` - **Formula (Mears < 0.15 External Film Resistance Pass/Fail Decision)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Mears Inputs", IF((B2 * B3 * B4 * B5) / (B6 * B7) < 0.15, "Negligible External Film Resistance (<0.15)", "External Film Limited (>=0.15: Increase Flow Velocity)"))` ### Mechanical Shaft Seal Balance Ratio, PV & Heat Formula - **URL**: https://sheets.arte-soft.com/en/learn/mechanical-shaft-seal-balance-ratio-closing-face-pressure-and-pv-heat-load/ - **Summary**: Calculate Net Seal-Face Contact Pressure Pf (MPa), Mean Sliding Velocity v (m/s), Tribological PV Factor (MPa·m/s), and Seal-Chamber Flush Heat Generation (W). *Table — Put an unbalanced mechanical seal (B > 1.0) into a 18-bar boiler feed pump and fluid closing force boils the lubrication film dry in seconds!:* | API 682 Mechanical Seal KPI (B=0.72, k=0.50, dP=1.80 MPa, dm=58 mm @ 2,950 RPM) | Formula | Verified Output | | --- | --- | --- | | Net Face Contact Pressure Pf (MPa) | (Balance_B - Film_k) * dP_MPa + P_spring | 0.576 MPa (1.350 MPa @ unbalanced B=1.15!) | | Mean Face Sliding Speed v (m/s) | (PI() * (Mean_Diam_mm / 1000) * RPM) / 60 | 8.96 m/s | | Tribological PV Factor (MPa·m/s) | Net_Contact_Pf_MPa * Sliding_Speed_m_s | 5.16 MPa·m/s (12.09 @ unbalanced B=1.15!) | | Frictional Face Heat Load (W) | Friction_f * Pf_MPa * Face_Area_mm2 * v | 393.7 W (922.8 W vaporizes film @ B=1.15!) | - **Formula (API 682 Seal Balance Ratio, Face PV & Flush Heat Generation Formula)**: `=LET(br_s, B2, kf_g, B3, dp_m, B4, ps_m, B5, dm_m, B6, nr_m, B7, af_m, B8, fr_c, B9, IF(OR(kf_g < 0.3, kf_g > 0.8, br_s <= kf_g, br_s > 1.5, dp_m < 0, ps_m <= 0, dm_m <= 10, nr_m <= 0, af_m <= 50, fr_c <= 0.01, fr_c > 0.3), "Invalid Seal Input", LET(pf_m, (br_s - kf_g) * dp_m + ps_m, vs_m, (PI() * (dm_m / 1000) * nr_m) / 60, ROUND(fr_c * pf_m * af_m * vs_m, 1))))` - **Formula (Unbalanced Seal (B = 1.15) High-Pressure Film-Flashing Failure Check (Set Balance Ratio B2 = 1.15))**: `=IF(ISTEXT(E5), E5, LET(pf_m, (B2 - B3) * B4 + B5, vs_m, (PI() * (B6 / 1000) * B7) / 60, ROUND(pf_m * vs_m, 2)))` ### Median Absolute Deviation (MAD) & Iglewicz-Hoaglin Modified Z-Score outlier formula - **URL**: https://sheets.arte-soft.com/en/learn/median-absolute-deviation-mad-and-modified-z-score/ - **Summary**: Calculate median absolute deviation and a modified Z-score, including the zero-MAD case, to flag observations for investigation. *Table — Compare two measures of distance from the center:* | Observation X (A) | \|X - Median(14)\| (B) | Standard Z-Score | Modified Z-Score (MAD = 2) | | --- | --- | --- | --- | | 10 | 4 | -0.52 | -1.3490 (not flagged) | | 12 | 2 | -0.47 | -0.6745 (not flagged) | | 14 (Median) | 0 | -0.42 | 0.0000 (Center) | | 16 | 2 | -0.37 | 0.6745 (not flagged) | | 100 | 86 | 1.79 | 29.0035 (potential outlier) | - **Formula (Median Absolute Deviation MAD = MEDIAN(B2:B6))**: `=IF(COUNT(A2:A6)<>5,"Invalid inputs",MEDIAN(B2:B6))` - **Formula (Iglewicz-Hoaglin Modified Z-Score (> 3.5 outlier test))**: `=IF(COUNT(A2:A6)<>5,"Invalid inputs",IF(MEDIAN(B2:B6)=0,"Undefined (MAD = 0)",ROUND(0.6745 * (A6 - MEDIAN($A$2:$A$6)) / MEDIAN(B2:B6), 4)))` ### MEDIAN function: summarize typical values without outlier distortion - **URL**: https://sheets.arte-soft.com/en/learn/median-function-outliers-odd-even/ - **Summary**: Find the middle value of a dataset when one extreme spike pulls AVERAGE upward, and verify how MEDIAN handles both odd and even observation counts. *Table — Four normal response times and one overnight incident:* | Ticket (A) | Minutes (B) | | --- | --- | | T-01 | 11 | | T-02 | 14 | | T-03 | 15 | | T-04 | 16 | | T-05 | 144 | - **Formula (Odd count vs even count in MEDIAN)**: `=MEDIAN(B2:B6)` ### Medicare Physician RVU, GPCI & Payment Formula - **URL**: https://sheets.arte-soft.com/en/learn/medicare-physician-rvu-gpci-geographic-index-and-conversion-factor-formula/ - **Summary**: Calculate CMS Resource-Based Relative Value Scale (RBRVS) Unadjusted RVUs, Geographic Practice Cost Index (GPCI) Adjusted RVUs, Medicare Allowed Fee-Schedule Payment, and 80% Part B Plan Reimbursement. *Table — Weight Work, Practice Expense, and Malpractice RVUs by their separate GPCIs before multiplying!:* | CMS MPFS Metric (wRVU=2.50, PE=2.00, MP=0.30; GPCIs 1.06/1.20/0.80; CF=$33) | Formula | Verified Output | | --- | --- | --- | | Unadjusted Total RVU | wRVU + PE_RVU + MP_RVU | 4.80 RVU | | GPCI-Adjusted Total RVU | wRVU*GPCI_w + PE*GPCI_pe + MP*GPCI_mp | 5.29 RVU (3.85 Facility PE=0.80) | | Medicare Allowed Payment ($) | GPCI_Adjusted_RVU * Conversion_Factor | $174.57 ($158.40 @ National 1.00) | | Medicare 80% Plan Payment ($) | 0.80 * Allowed_Payment | $139.66 ($34.91 Coinsurance) | - **Formula (CMS RBRVS Geographic-Adjusted Allowed Payment Formula)**: `=LET(rv_w, B2, rv_p, B3, rv_m, B4, gp_w, B5, gp_p, B6, gp_m, B7, cf_d, B8, IF(OR(rv_w < 0, rv_p < 0, rv_m < 0, rv_w + rv_p + rv_m <= 0, gp_w <= 0, gp_p <= 0, gp_m <= 0, cf_d <= 0), "Invalid MPFS Input", LET(ad_r, rv_w * gp_w + rv_p * gp_p + rv_m * gp_m, ROUND(ad_r * cf_d, 2))))` - **Formula (Site-of-Service Neutrality Check (Non-Facility vs Hospital Facility PE))**: `=IF(ISTEXT(E4), E4, ROUND(0.8 * E4, 2))` ### Variation of Information (VI) and Normalized Partition Distance Formula - **URL**: https://sheets.arte-soft.com/en/learn/meila-variation-of-information-mutual-information-partition-metric/ - **Summary**: Compute Meilă’s (2007) true metric distance between clusterings VI(U, V) = 2*H(U, V) - H(U) - H(V) in bits and Kraskov’s Normalized Variation of Information in [0, 1]. *Table — Use a true triangle-inequality metric when comparing clusterings across runs:* | Information Metric (Bits) | Shannon Formula (0*log2(0) = 0) | Sample Output | | --- | --- | --- | | Marginal Entropies H(U), H(V) | -SUM(p_i * LOG(p_i, 2)) | 1.0000 bit, 1.0000 bit | | Joint Entropy H(U, V) | -SUM(p_ij * LOG(p_ij, 2)) | 1.7219 bits | | Variation of Information VI | 2 * H(U, V) - H(U) - H(V) | 1.4439 bits | | Normalized VI (Jaccard Info Dist) | VI(U, V) / H(U, V) = 1 - I / H(U,V) | 0.8385 (Swapped labels -> 0) | - **Formula (Variation of Information VI(U, V) (in Bits) Formula)**: `=LET(n_tot, SUM(B2:C3), IF(n_tot <= 0, "Empty Partition", LET(r_a, B2 + C2, r_b, B3 + C3, c_a, B2 + B3, c_b, C2 + C3, h_u, IF(r_a <= 0, 0, -(r_a / n_tot) * LOG(r_a / n_tot, 2)) + IF(r_b <= 0, 0, -(r_b / n_tot) * LOG(r_b / n_tot, 2)), h_v, IF(c_a <= 0, 0, -(c_a / n_tot) * LOG(c_a / n_tot, 2)) + IF(c_b <= 0, 0, -(c_b / n_tot) * LOG(c_b / n_tot, 2)), h_uv, IF(B2 <= 0, 0, -(B2 / n_tot) * LOG(B2 / n_tot, 2)) + IF(C2 <= 0, 0, -(C2 / n_tot) * LOG(C2 / n_tot, 2)) + IF(B3 <= 0, 0, -(B3 / n_tot) * LOG(B3 / n_tot, 2)) + IF(C3 <= 0, 0, -(C3 / n_tot) * LOG(C3 / n_tot, 2)), ROUND(2 * h_uv - h_u - h_v, 4))))` - **Formula (Label-Permutation Invariance Check (Swapped Cluster IDs))**: `=IF(F3 <= 0, 0, ROUND(F4 / F3, 4))` ### Historical MELD-Na arithmetic: logarithms, bounds and rounding - **URL**: https://sheets.arte-soft.com/en/learn/meld-and-meld-na-liver-disease-severity-score-formula/ - **Summary**: Explore a simplified historical non-dialysis MELD-Na example with fictional laboratory inputs. This is not the current transplant-allocation calculator. - **Formula (Calculate the bounded historical base score)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(MIN(B2:B4)<=0,"Invalid inputs",MAX(6,MIN(40,ROUND(9.57*LN(MAX(1,MIN(4,B2)))+3.78*LN(MAX(1,B3))+11.2*LN(MAX(1,B4))+6.43,0)))))` - **Formula (Apply sodium adjustment above a base score of 11)**: `=IF(COUNT(B5:B6)<>2,"Invalid inputs",IF(OR(B5<=0,B6<6,B6>40,B6<>INT(B6)),"Invalid inputs",MAX(6,MIN(40,IF(B6<=11,B6,ROUND(B6+1.32*(137-MIN(137,MAX(125,B5)))-0.033*B6*(137-MIN(137,MAX(125,B5))),0))))))` ### UNOS MELD Liver Transplant Allocation Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/meld-score-end-stage-liver-disease-transplant-allocation-formula/ - **Summary**: Calculate Original UNOS Model for End-Stage Liver Disease (MELD) Score 9.57*LN(Cr_eff) + 3.78*LN(Bili_eff) + 11.2*LN(INR_eff) + 6.43 with mandatory 1.0 lower lab floors, 4.0 Creatinine/Dialysis ceiling, and [6, 40] clamping. *Table — Enforce UNOS 1.0 lab floors and the 4.0 dialysis ceiling before taking natural logarithms!:* | UNOS MELD Allocation Metric (Cr=2.0, Bilirubin=4.0, INR=2.0, Dialysis=0) | Formula | Verified Output | | --- | --- | --- | | UNOS Effective Creatinine (mg/dL) | IF(Dialysis=1, 4, MIN(4, MAX(1, Cr))) | 2.00 mg/dL (4.00 @ Dialysis=1) | | Continuous MELD Raw Score | 9.57*LN(Cr) + 3.78*LN(Bili) + 11.2*LN(INR) + 6.43 | 26.07 (6.43 @ Normal <1.0 Labs) | | Official UNOS Integer MELD [6–40] | MIN(40, MAX(6, ROUND(Raw_MELD, 0))) | 26 (33 @ Dialysis=1; 6 Floor) | | Hepatology Transplant Urgency | >=25 High \| 15–24 Mod \| <15 Low | High Urgency Allocation (MELD >= 25) | - **Formula (Official UNOS Clamped Integer MELD [6, 40] Formula)**: `=LET(cr_v, B2, bl_v, B3, in_r, B4, dl_f, B5, IF(OR(cr_v <= 0, bl_v <= 0, in_r <= 0, AND(dl_f <> 0, dl_f <> 1)), "Invalid Hepatology Lab Input", LET(cr_e, IF(dl_f = 1, 4, MIN(4, MAX(1, cr_v))), bl_e, MAX(1, bl_v), in_e, MAX(1, in_r), rw_m, 9.57 * LN(cr_e) + 3.78 * LN(bl_e) + 11.2 * LN(in_e) + 6.43, MIN(40, MAX(6, ROUND(rw_m, 0))))))` - **Formula (Dialysis 4.0 Ceiling (MELD 33) & Sub-1.0 Normal-Lab Floor (MELD 6) Checks)**: `=IF(ISTEXT(E4), E4, IF(E4 >= 25, "High Urgency Allocation (MELD >= 25)", IF(E4 >= 15, "Moderate Transplant Benefit (15-24)", "Low Urgency Monitoring (< 15)")))` ### Melitz Export Productivity Cutoff & Exporter Share Formula - **URL**: https://sheets.arte-soft.com/en/learn/melitz-heterogeneous-firm-productivity-and-export-cutoff-formula/ - **Summary**: Calculate the Melitz-Chaney export cutoff hurdle phi_X* / phi_D* = tau * (f_X / f_D)^(1/(sigma - 1)), Pareto exporter share, and domestic survival cutoff elevation. *Table — Model why only top-productivity firms export — and how trade reallocates industry TFP:* | Melitz-Chaney Metric (sig=4, k=4, f_D=1, f_X=8, tau=1.25) | Formula | Verified Output | | --- | --- | --- | | Export Productivity Hurdle | tau * (f_X / f_D)^(1 / (sigma - 1)) | 2.5000x phi_D* | | Share of Firms Exporting (p_exp) | MIN(1, (phi_D* / phi_X*)^k) | 0.0256 (2.56% of Firms) | | Domestic Cutoff Gain (n = 5) | (1 + n * tau^(-k) * (f_X/f_D)^(1 - k/(sig-1)))^(1/k) | 1.1928 (+19.28% TFP) | - **Formula (Melitz Export-to-Domestic Productivity Cutoff Ratio phi_X* / phi_D* Formula)**: `=LET(sig_e, B2, k_par, B3, f_dom, B4, f_exp, B5, tau_c, B6, IF(OR(sig_e <= 1, k_par <= sig_e - 1, f_dom <= 0, f_exp <= 0, tau_c < 1), "Require k > sigma - 1 > 0 and tau >= 1", ROUND(tau_c * POWER(f_exp / f_dom, 1 / (sig_e - 1)), 4)))` - **Formula (Trade-Induced Domestic Cutoff Elevation Ratio phi_D* / phi_aut* Formula)**: `=LET(sig_e, B2, k_par, B3, f_dom, B4, f_exp, B5, tau_c, B6, n_pt, B7, IF(OR(sig_e <= 1, k_par <= sig_e - 1, f_dom <= 0, f_exp <= 0, tau_c < 1, n_pt < 0), "Require k > sigma - 1 > 0 and tau >= 1", LET(exp_t, n_pt * POWER(tau_c, -k_par) * POWER(f_exp / f_dom, 1 - k_par / (sig_e - 1)), ROUND(POWER(1 + exp_t, 1 / k_par), 4))))` ### Ménard Dynamic Compaction Depth & Specific Energy Formula - **URL**: https://sheets.arte-soft.com/en/learn/menard-dynamic-compaction-drop-weight-energy-and-effective-improvement-depth-formula/ - **Summary**: Calculate Crane Drop-Tamper Impact Energy W*H (tonne·m & MJ), Ménard-Lukas Effective Densification Depth n*SQRT(W*H) (m), and Grid Applied Specific Energy (kJ/m²). *Table — Doubling a crawler crane’s drop height does NOT double compaction depth—Rayleigh/compression wave attenuation scales strictly with SQRT(W * H)!:* | FHWA GEC-1 Dynamic Compaction KPI (W=18 t, H=22 m, Nd=8 Drops) | Formula | Verified Output | | --- | --- | --- | | Nominal Impact Rating W*H (t·m) | Tamper_Mass_W_t * Drop_Height_H_m | 396.0 tonne·m | | Effective Improvement Depth (m) | Soil_Factor_n * SQRT(W_t * H_m) | 10.35 m (7.16 m in silty fill n=0.36!) | | Single-Drop Potential Energy (MJ) | (W_t * 9.80665 * H_m) / 1000 | 3.88 MJ / blow | | Grid Specific Energy (kJ/m²) | (Drops_Nd * W_t * 9.80665 * H_m) / S_m^2 | 863.0 kJ/m² (430.0 kJ/m² @ S=8.5 m) | - **Formula (Ménard-Lukas Root-Energy Depth & Crater-Grid Specific Energy Formula)**: `=LET(wt_t, B2, hd_m, B3, nf_s, B4, nd_c, B5, sp_m, B6, IF(OR(wt_t < 2, wt_t > 50, hd_m < 3, hd_m > 40, nf_s < 0.25, nf_s > 0.7, nd_c < 1, sp_m < 1.5, sp_m > 15), "Invalid DDC Schedule", ROUND((nd_c * wt_t * 9.80665 * hd_m) / (sp_m ^ 2), 1)))` - **Formula (Fines-Rich Silty Fill (n = 0.36) & Over-Wide 8.5 m Grid Under-Compaction Check)**: `=IF(ISTEXT(E5), E5, ROUND(B4 * SQRT(B2 * B3), 2))` ### Mentzer Index (MCV / RBC) & Green-King Index: Beta-Thalassemia Trait vs. Iron Deficiency - **URL**: https://sheets.arte-soft.com/en/learn/mentzer-and-srivastava-microcytic-anemia-thalassemia-indices/ - **Summary**: Differentiate microcytic beta-thalassemia minor (< 13 Mentzer, < 65 Green-King) from iron-deficiency anemia (> 13 Mentzer, >= 65 Green-King) directly from routine CBC indices. *Table — Why beta-thalassemia minor produces compensatory erythrocytosis (high RBC -> Mentzer < 13) while iron deficiency starves marrow RBC output!:* | Microcytic CBC Panel (MCV < 80 fL) | Mentzer Index = MCV / RBC | Green-King = MCV²*RDW/(100*Hb) | Primary Diagnostic Suspicion | | --- | --- | --- | --- | | MCV 64, RBC 5.80, Hb 11.4, RDW 13.2% | 11.03 (< 13) | 47.43 (< 65) | Beta-Thalassemia Trait — Order HbA2 Electrophoresis | | MCV 68, RBC 3.90, Hb 9.2, RDW 18.5% | 17.44 (> 13) | 93.00 (>= 65) | Iron-Deficiency Anemia — Check Ferritin / TSAT | | Normocytic/Macrocytic MCV >= 80 fL | Not Microcytic | "Requires Microcytosis (MCV < 80 fL)" | CBC Pre-Filter Guard | - **Formula (Mentzer Microcytic Discrimination Index = MCV (fL) / RBC (10^6/μL))**: `=IF(OR(B2 <= 0, B2 >= 80, B3 <= 0, B4 <= 0, B5 <= 0), "Requires Microcytosis (MCV < 80 fL)", ROUND(B2 / B3, 2))` - **Formula (Green & King Red-Cell Distribution Index = (MCV² * RDW) / (100 * Hb))**: `=IF(OR(B2 <= 0, B2 >= 80, B3 <= 0, B4 <= 0, B5 <= 0), "Requires Microcytosis (MCV < 80 fL)", ROUND(((B2 ^ 2) * B5) / (100 * B4), 2))` ### Merchant Shear-Plane Angle & Cutting Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/merchant-orthogonal-metal-cutting-shear-angle-and-cutting-force-formula/ - **Summary**: Calculate M.E. Merchant’s Minimum-Power Shear-Plane Angle phi = 45 + alpha/2 - beta/2, Rake-Face Friction Coefficient TAN(beta), Shear-Plane Area, and Tangential Cutting Force F_c. *Table — Predict CNC spindle tangential cutting forces from Merchant’s force circle—in radians!:* | Merchant Force-Circle Metric (alpha=10°, beta=40°, tau_s=200MPa, b=3mm, t1=0.2mm) | Formula | Verified Output | | --- | --- | --- | | Merchant Shear Angle phi (deg) | 45 + alpha_deg / 2 - beta_deg / 2 | 30.00° (45.00° @ alpha=20, beta=20) | | Rake Friction Coefficient mu | TAN(beta_deg * PI() / 180) | 0.8391 (0.3640 @ beta = 20°) | | Shear-Plane Area A_s (mm^2) | (b * t_1) / SIN(phi * PI() / 180) | 1.20 mm^2 | | Tangential Cutting Force F_c (N) | (tau_s*b*t1*COS(b-a))/(SIN(p)*COS(p+b-a)) | 415.69 N (240.00 N Lubricated) | - **Formula (Merchant Tangential Cutting Force F_c Formula)**: `=LET(al_d, B2, bt_d, B3, ts_m, B4, wd_b, B5, fd_t, B6, ph_d, 45 + al_d / 2 - bt_d / 2, IF(OR(bt_d <= 0, bt_d >= 90, ts_m <= 0, wd_b <= 0, fd_t <= 0, ph_d <= 0, ph_d + bt_d - al_d >= 90), "Invalid Orthogonal Geometry", LET(dg_r, PI() / 180, nm_f, ts_m * wd_b * fd_t * COS((bt_d - al_d) * dg_r), dn_f, SIN(ph_d * dg_r) * COS((ph_d + bt_d - al_d) * dg_r), ROUND(nm_f / dn_f, 2))))` - **Formula (Lubricated Positive-Rake Reduction Check (alpha = 20°, beta = 20°))**: `=IF(ISTEXT(E5), E5, ROUND((B5 * B6) / SIN(E2 * PI() / 180), 2))` ### Merge two tables by ID: Left Join, Inner Join, and Orphan Key audit - **URL**: https://sheets.arte-soft.com/en/learn/merge-and-join-two-tables-by-id-xlookup/ - **Summary**: Join an Orders fact table to a Customers master table using XLOOKUP enrichment columns and FILTER for Inner Join vs unmatched Anti-Join audits. *Table — SQL-style Left Join, Inner Join, and Anti-Join right in spreadsheet cells:* | OrderID (A) | CustID (B) | Amount (C) | Joined Tier (D) | Join Status | | --- | --- | --- | --- | --- | | ORD-101 | C-10 | $400 | Enterprise | Matched (Inner & Left) | | ORD-102 | C-99 | $150 | UNMATCHED | Orphan! (Left / Anti-Join) | | ORD-103 | C-20 | $350 | Growth | Matched (Inner & Left) | | ORD-104 | C-10 | $250 | Enterprise | Matched (Inner & Left) | - **Formula (Inner-joined revenue and orphan-order audit formulas)**: `=FILTER(A2:D5,H2:H5,"None")` - **Formula (Extract orphan OrderIDs missing from the Customer master (Anti-Join))**: `=TEXTJOIN(", ", TRUE, FILTER(A2:A5, H2:H5=FALSE, "None"))` - **Formula (Additional worked calculation)**: `=SUMIF(H2:H5, TRUE, C2:C5)` - **Formula (Additional worked calculation)**: `=SUMIF(D2:D5, "Enterprise", C2:C5)` ### Merton Optimal Portfolio Share & Consumption-Wealth Formula - **URL**: https://sheets.arte-soft.com/en/learn/merton-continuous-time-portfolio-share-and-crra-welfare-rate/ - **Summary**: Calculate Merton’s continuous-time risky-asset allocation pi* = (mu - r_f)/(gamma * sigma^2), certainty-equivalent return r_CE, and optimal CRRA payout propensity c*/W. *Table — Size endowment equity weight and sustainable spending rate simultaneously via Merton (1969):* | Merton Portfolio Metric (mu=10%, r_f=4%, sig=20%, rho=3%) | gamma = 3.0 (Endowment) | gamma = 1.0 (Log / Kelly) | | --- | --- | --- | | Optimal Risky Weight (pi*) | 0.5000 (50.00%) | 1.5000 (150.00% Levered) | | Certainty-Equivalent Return (r_CE) | 0.0550 (5.50%/yr) | 0.0850 (8.50%/yr) | | Optimal Spending Rate (c* / W) | 0.0467 (4.67%/yr) | 0.0300 (= rho Exactly!) | - **Formula (Merton Optimal Risky Portfolio Weight pi* = (mu - r_f) / (gamma * sigma^2) Formula)**: `=LET(mu_r, B2, rf_r, B3, sig_v, B4, gam_r, B5, IF(OR(sig_v <= 0, gam_r <= 0), "Invalid Merton Input", ROUND((mu_r - rf_r) / (gam_r * (sig_v^2)), 4)))` - **Formula (Merton Infinite-Horizon Optimal Consumption-to-Wealth Ratio c* / W Formula)**: `=LET(mu_r, B2, rf_r, B3, sig_v, B4, gam_r, B5, rho_d, B6, IF(OR(sig_v <= 0, gam_r <= 0, rho_d <= 0), "Invalid Merton Input", LET(r_ce, rf_r + ((mu_r - rf_r)^2) / (2 * gam_r * (sig_v^2)), cw_rt, (rho_d + (gam_r - 1) * r_ce) / gam_r, IF(cw_rt <= 0, "Transversality Violated (Require c*/W > 0)", ROUND(cw_rt, 4)))))` ### Merton Jump-Diffusion Option Pricing via Poisson-Weighted Black-Scholes - **URL**: https://sheets.arte-soft.com/en/learn/merton-jump-diffusion-option-series-poisson-weighted-black-scholes/ - **Summary**: Price European options under sudden lognormal jumps using Merton’s (1976) jump-compensated Poisson-weighted Black-Scholes sum and verify convergence to pure Black-Scholes at lambda = 0. *Table — Compensate risk-neutral drift k_bar before summing Poisson jump states:* | Jump State n | Poisson Weight w_n (lam_p*T = 0.1794) | Conditional BSM Call c_n | | --- | --- | --- | | n = 0 Jumps | EXP(-0.1794) = 0.835779 | c_0 at r_0 = 0.0912, sig_0 = 0.2000 | | n = 1 Jump | w_0 * 0.179391 = 0.149931 | c_1 at r_1 = -0.1263, sig_1 = 0.2915 | | n = 2..3 Jumps | 0.013448 + 0.000804 (Sum = 0.999963) | Captures fat-tail jump dispersion | | Merton Jump Call vs Pure BSM | SUM(w_n * c_n) / SUM(w_n) | 7.6062 (vs pure BSM 6.8887 at lam = 0) | - **Formula (Expected Percentage Jump Size k_bar and Compensated Intensity Formula)**: `=ROUND(EXP(B8 + 0.5 * B9^2) - 1, 6)` - **Formula (Normalized 4-State Merton Jump-Diffusion Call Formula)**: `=IF(OR(B5 <= 0, B6 <= 0, B7 < 0, B9 < 0), "Invalid Jump Input", ROUND(SUMPRODUCT(E2:E5, F2:F5) / SUM(E2:E5), 4))` ### Merton Structural Credit Distance-to-Default (DD) Formula - **URL**: https://sheets.arte-soft.com/en/learn/merton-structural-credit-distance-to-default-dd-formula/ - **Summary**: Calculate Merton’s (1974) / KMV structural credit Distance-to-Default DD = (LN(V_A / D) + (mu_A - 0.5 * sigma_A^2) * T) / (sigma_A * SQRT(T)) in asset standard deviations. *Table — Measure how many asset-volatility sigmas separate a borrower from insolvency!:* | Borrower Profile (D = $100M, T = 1y) | Asset Value V_A / Drift mu_A | Asset Vol sigma_A | Distance-to-Default (DD) | | --- | --- | --- | --- | | Investment-Grade Industrial | $150M / 7.0% | 25.0% | 1.7769 sigmas | | At-Barrier Distressed (V_A = D) | $100M / 7.0% | 25.0% | 0.1550 sigmas | | Low-Volatility Utility | $150M / 7.0% | 12.5% | 3.7413 sigmas | - **Formula (Merton Physical Distance-to-Default (DD in Standard Deviations))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0, B6 <= 0), "Invalid Credit Inputs", ROUND((LN(B2 / B3) + (B4 - 0.5 * (B5 ^ 2)) * B6) / (B5 * SQRT(B6)), 4))` - **Formula (Static Solvency Asset Cushion Ratio (1 - D / V_A))**: `=IF(B2 <= 0, 0, ROUND(1 - (B3 / B2), 4))` ### Merton distance to default: lognormal model and a one-year linear buffer - **URL**: https://sheets.arte-soft.com/en/learn/merton-structural-credit-distance-to-default-formula/ - **Summary**: Calculate an illustrative distance to default from asset value, debt, annual asset drift and volatility, with explicit model assumptions and input checks. *Table — Model distance is not a legal insolvency assessment:* | Metric | Formula | Assets 150, debt 100 | Assets 90, debt 100 | | --- | --- | --- | --- | | Debt face value / current assets | B3 / B2 | 66.67% | 111.11% | | Exact Merton DD (sigmas) | (LN(V/D) + (mu-0.5*sig^2)*T) / (sig*SQRT(T)) | 0.4542 / 0.25 = +1.8169 sigmas | -0.2264 sigmas (< 0!) | | Illustrative one-year linear buffer | (B2 - B3) / (B2 * B5) | 50 / 37.5 = +1.3333 sigmas | -10 / 22.5 = -0.4444 sigmas | - **Formula (Lognormal distance using the assumed drift)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B5<=0,B6<=0),"Invalid inputs",ROUND((LN(B2 / B3) + (B4 - 0.5 * (B5 ^ 2)) * B6) / (B5 * SQRT(B6)), 4)))` - **Formula (A separate one-year linear buffer)**: `=IF(COUNT(B2:B3,B5)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B5<=0),"Invalid inputs",ROUND((B2 - B3) / (B2 * B5), 4)))` ### Metcalfe vs Odlyzko-Tilly Network Value & Critical Mass - **URL**: https://sheets.arte-soft.com/en/learn/metcalfe-vs-odlyzko-tilly-network-value-and-critical-mass-formula/ - **Summary**: Compare Metcalfe pair count N*(N - 1)/2 against Odlyzko-Tilly Zipf network value N * LN(N) and solve Rohlfs’s (1974) critical-mass tipping penetration f_crit*. *Table — Avoid quadratic Metcalfe overvaluation and solve exact Rohlfs critical-mass tipping!:* | Network Metric (N=1,000, v_max=100, P=16) | Formula | Verified Output | | --- | --- | --- | | Metcalfe Unweighted Pair Count | N * (N - 1) / 2 | 499,500.00 | | Odlyzko-Tilly Zipf Network Index | N * LN(N) | 6,907.7553 | | Rohlfs Critical-Mass Hurdle (f_crit*) | 0.5 * (1 - SQRT(1 - 4*P / v_max)) | 0.2000 (20.00% Tipping Point) | | Stable High-Adoption Share (f_high*) | 0.5 * (1 + SQRT(1 - 4*P / v_max)) | 0.8000 (80.00% Market Share) | - **Formula (Odlyzko-Tilly Zipf-Weighted Network Value Index N * LN(N) Formula)**: `=IF(B2 < 2, "Require N >= 2", ROUND(B2 * LN(B2), 4))` - **Formula (Rohlfs Critical-Mass Tipping Fraction f_crit* Formula)**: `=LET(v_mx, B3, px_s, B4, IF(OR(v_mx <= 0, px_s < 0), "Invalid Network Input", IF(4 * px_s > v_mx, "Network Collapse (Price > v_max / 4)", ROUND(0.5 * (1 - SQRT(1 - (4 * px_s) / v_mx)), 4))))` ### METS-IR Calculator: Bello-Chavolla Non-Insulin Metabolic Score for Insulin Resistance - **URL**: https://sheets.arte-soft.com/en/learn/mets-ir-metabolic-score-for-insulin-resistance-bello-chavolla/ - **Summary**: Quantify peripheral insulin sensitivity without fasting serum insulin assays using Omar Yaxmehen Bello-Chavolla et al.’s (2018) clamp-validated METS-IR = (LN(2 * FPG_mg_dL + TG_mg_dL) * BMI) / LN(HDL_mg_dL). *Table — Estimate hyperinsulinemic-euglycemic clamp insulin resistance from routine Fasting Glucose, Lipids, and BMI!:* | Clinical Profile (FPG, TG, HDL in mg/dL; BMI in kg/m^2) | Evaluated METS-IR | Metabolic Interpretation | | --- | --- | --- | | Insulin-Sensitive Adult (FPG=88, TG=95, BMI=22.5, HDL=58) | 31.04 | Normal peripheral insulin sensitivity | | Borderline Overweight (FPG=102, TG=155, BMI=28.0, HDL=44) | 43.53 | Intermediate cardiometabolic risk | | Metabolic Syndrome (FPG=108, TG=184, BMI=31.0, HDL=40) | 50.35 | Elevated insulin resistance (> 50.0 threshold) | - **Formula (Bello-Chavolla (2018) METS-IR Non-Insulin Insulin Resistance Score)**: `=IF(OR(B2 < 40, B2 > 600, B3 < 20, B3 > 2000, B4 < 12, B4 > 80, B5 <= 5, B5 > 150), "Invalid Fasting Glucose, TG, BMI, or HDL-C Inputs", ROUND((LN(2 * B2 + B3) * B4) / LN(B5), 2))` - **Formula (METS-IR Cardiometabolic Risk Stratification (> 50.0 Cutoff))**: `=IF(OR(B2 < 40, B2 > 600, B3 < 20, B3 > 2000, B4 < 12, B4 > 80, B5 <= 5, B5 > 150), "Invalid Fasting Glucose, TG, BMI, or HDL-C Inputs", IF((LN(2 * B2 + B3) * B4) / LN(B5) > 50, "METS-IR > 50.0: Elevated Insulin Resistance & T2DM Risk", "METS-IR <= 50.0: Below High-Risk Clamp Resistance Cutoff"))` ### Modified Early Warning Score (MEWS 0–14): Ward Rapid-Response Escalation Formula - **URL**: https://sheets.arte-soft.com/en/learn/mews-modified-early-warning-score-ward-deterioration-formula/ - **Summary**: Calculate Subbe's 5-parameter bedside Modified Early Warning Score (MEWS, 0 to 14 points) directly from Systolic BP, Heart Rate, Respiratory Rate, Temperature (°C), and AVPU level (0–3) to trigger Rapid Response Team escalation at >= 5. *Table — Catch silent ward sepsis and shock hours before cardiac arrest!:* | Total MEWS Score (0–14) | Ward Escalation Tier | Rapid-Response Nursing Protocol | | --- | --- | --- | | 0 – 1 points | Low Clinical Risk | Routine q4h–q8h nursing vital-sign frequency | | 2 – 4 points | Moderate / Watch Tier | Increase vitals to q1h–q2h; notify charge nurse / MD | | >= 5 points (Subbe Critical Cutoff!) | High Risk — Rapid Response! | Urgent bedside physician / Rapid Response Team & ICU eval! | - **Formula (Automated 5-Parameter MEWS Total Score (0 to 14 Points))**: `=IF(OR(B2 <= 20, B3 <= 10, B4 <= 0, B5 <= 25, B6 < 0, B6 > 3), "Invalid Vital Sign", IF(B2 <= 70, 3, IF(B2 <= 80, 2, IF(B2 <= 100, 1, IF(B2 < 200, 0, 2)))) + IF(B3 < 40, 2, IF(B3 <= 50, 1, IF(B3 <= 100, 0, IF(B3 <= 110, 1, IF(B3 <= 129, 2, 3))))) + IF(B4 < 9, 2, IF(B4 <= 14, 0, IF(B4 <= 20, 1, IF(B4 <= 29, 2, 3)))) + IF(B5 < 35, 2, IF(B5 < 38.5, 0, 2)) + B6)` - **Formula (Ward Rapid-Response Escalation Trigger (< 5 vs >= 5))**: `=IF(OR(B2 <= 20, B3 <= 10, B4 <= 0, B5 <= 25, B6 < 0, B6 > 3), "Invalid Vital Sign", IF((IF(B2 <= 70, 3, IF(B2 <= 80, 2, IF(B2 <= 100, 1, IF(B2 < 200, 0, 2)))) + IF(B3 < 40, 2, IF(B3 <= 50, 1, IF(B3 <= 100, 0, IF(B3 <= 110, 1, IF(B3 <= 129, 2, 3))))) + IF(B4 < 9, 2, IF(B4 <= 14, 0, IF(B4 <= 20, 1, IF(B4 <= 29, 2, 3)))) + IF(B5 < 35, 2, IF(B5 < 38.5, 0, 2)) + B6) >= 5, "MEWS >= 5: Activate Rapid Response / Urgent ICU Review", "MEWS < 5: Standard / Stepped Ward Monitoring"))` ### Meyer-Peter & Muller (1948) Bedload Sediment Transport Formula: Shields Excess & q_b - **URL**: https://sheets.arte-soft.com/en/learn/meyer-peter-muller-gravel-bedload-sediment-transport-rate-formula/ - **Summary**: Calculate gravel- and coarse-sand river bedload transport intensity Phi = 8 * MAX(0, theta_prime - 0.047)^1.5 and volumetric unit bedload rate q_b (m^2/s) using Eugen Meyer-Peter and Robert Muller’s (1948, ETH Zurich) flume law. *Table — Predict river gravel bedload transport above critical Shields stress theta_c = 0.047!:* | Mountain Gravel River State (d_50 = 0.025 m = 25 mm, s = 2.65) | Effective Shields Stress theta_prime | Dimensionless MPM Phi | Volumetric Bedload q_b (m^2/s) | | --- | --- | --- | --- | | Baseflow Below Threshold (R_h = 0.8 m, S = 0.0020) | 0.0388 <= 0.047 | 0.0000 | 0.00000 m^2/s (Armored Bed) | | Bankfull Flood (R_h = 1.65 m, S = 0.0025) | 0.1000 | 0.0976 | 0.00155 m^2/s (4.11 kg/m/s) | | Extreme Peak Flood (R_h = 2.475 m, S = 0.0025) | 0.1500 | 0.2644 | 0.00420 m^2/s (11.13 kg/m/s) | - **Formula (Meyer-Peter & Muller Dimensionless Bedload Intensity Phi = 8 * MAX(0, theta - 0.047)^1.5)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 1), "Requires R_h > 0, Slope S > 0, Grain Size d_50 > 0, and s > 1", ROUND(8 * (MAX(0, (B2 * B3) / ((B5 - 1) * B4) - 0.047) ^ 1.5), 4))` - **Formula (Dry Mass Unit Bedload Transport Rate g_b (kg / (m · s)) = rho_s * q_b)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 1), "Requires R_h > 0, Slope S > 0, Grain Size d_50 > 0, and s > 1", ROUND(1000 * B5 * (8 * (MAX(0, (B2 * B3) / ((B5 - 1) * B4) - 0.047) ^ 1.5)) * SQRT((B5 - 1) * 9.80665 * (B4 ^ 3)), 3))` ### Meyerhof & Vesić Ultimate Bearing Capacity Formula: Exact N_q, N_c & N_gamma Strip Footing - **URL**: https://sheets.arte-soft.com/en/learn/meyerhof-and-vesic-bearing-capacity-factors-nq-nc-ngamma-formula/ - **Summary**: Calculate shallow strip-footing ultimate bearing capacity q_u = c'*N_c + q*N_q + 0.5*gamma*B*N_gamma from friction angle phi' using exact Prandtl-Reissner N_q, N_c and Vesić (1973) vs. Meyerhof (1963) N_gamma. *Table — Why modern Eurocode 7 & AASHTO foundation design uses Prandtl-Reissner N_q, N_c and Vesić / Meyerhof N_gamma!:* | Friction Angle phi' (deg) | Exact N_q & N_c (Prandtl-Reissner) | Meyerhof N_gamma vs. Vesić N_gamma | | --- | --- | --- | | phi' = 0° (Undrained Tresca Clay) | N_q = 1.00, N_c = 2 + PI = 5.14 | N_gamma,M = 0.00 \| N_gamma,V = 0.00 | | phi' = 30° (Medium Dense Sand) | N_q = 18.40, N_c = 30.14 | N_gamma,M = 15.67 \| N_gamma,V = 22.40 | | phi' = 35° (Dense Sand/Gravel) | N_q = 33.30, N_c = 46.12 | N_gamma,M = 37.15 \| N_gamma,V = 48.03 | - **Formula (Vesić (1973) Ultimate Strip Footing Bearing Capacity q_u (kPa))**: `=IF(OR(B2 < 0, B2 >= 50, B3 < 0, B4 <= 0, B5 < 0, B6 <= 0), "Invalid Geotechnical Footing Inputs", IF(B2 = 0, ROUND(B3 * (2 + PI()) + B4 * B5, 2), ROUND(B3 * ((EXP(PI() * TAN(RADIANS(B2))) * (TAN(RADIANS(45 + B2 / 2)) ^ 2) - 1) / TAN(RADIANS(B2))) + (B4 * B5) * (EXP(PI() * TAN(RADIANS(B2))) * (TAN(RADIANS(45 + B2 / 2)) ^ 2)) + 0.5 * B4 * B6 * (2 * (EXP(PI() * TAN(RADIANS(B2))) * (TAN(RADIANS(45 + B2 / 2)) ^ 2) + 1) * TAN(RADIANS(B2))), 2)))` - **Formula (Meyerhof (1963) Self-Weight Bearing Factor N_gamma,M = (N_q - 1) * TAN(1.4 * phi'))**: `=IF(OR(B2 < 0, B2 >= 50), "Invalid Friction Angle", ROUND((EXP(PI() * TAN(RADIANS(B2))) * (TAN(RADIANS(45 + B2 / 2)) ^ 2) - 1) * TAN(RADIANS(1.4 * B2)), 2))` ### Michaelis-Menten enzyme kinetics formula: reaction velocity v, Km & kcat - **URL**: https://sheets.arte-soft.com/en/learn/michaelis-menten-enzyme-kinetics-vmax-km-velocity/ - **Summary**: Calculate a simple Michaelis-Menten initial rate, its fraction of Vmax, and kcat from compatible enzyme concentration units. *Table — Hyperbolic saturation kinetics: why Km equals the substrate concentration at 0.5 × Vmax!:* | Substrate [S] (Vmax=120, Km=40 µM) | Relative rate v/Vmax = [S]/(Km+[S]) | Reaction Velocity v (µM/min) | | --- | --- | --- | | [S] = 10 µM (0.25 × Km) | 20.00% (0.20) | 24.00 µM/min | | [S] = 40 µM (1.00 × Km) | 50.00% (Exact half-max!) | 60.00 µM/min (= 0.5 × Vmax) | | [S] = 360 µM (9.00 × Km) | 90.00% (0.90) | 108.00 µM/min | - **Formula (Initial velocity and fraction of Vmax)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<=0,C2<0),"Invalid inputs",ROUND(A2*C2/(B2+C2),2))` - **Formula (Relative rate v/Vmax)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<=0,C2<0),"Invalid inputs",ROUND(C2/(B2+C2),4))` - **Formula (Turnover number kcat)**: `=IF(OR(NOT(ISNUMBER(A2)),NOT(ISNUMBER(D2)),A2<0,D2<=0),"Invalid inputs",ROUND(A2/D2,1))` ### Microstrip PCB Impedance (Z0) & Propagation Delay Formula - **URL**: https://sheets.arte-soft.com/en/learn/microstrip-pcb-trace-characteristic-impedance-z0-and-propagation-delay/ - **Summary**: Calculate Quasi-TEM Effective Dielectric Constant epsilon_eff, IPC-2141 Microstrip Characteristic Impedance Z_0 (Ohms), Propagation Delay (ps/mm), and Phase Velocity (% of c). *Table — Why outer-layer microstrip signals travel FASTER than inner stripline—because electric field lines share FR-4 and air!:* | IPC-2141 Microstrip KPI (W=0.26 mm, H=0.16 mm, T=0.035 mm, FR-4 Er=4.20) | Formula | Verified Output | | --- | --- | --- | | Effective Permittivity eps_eff | (Er+1)/2 + ((Er-1)/2)/SQRT(1 + 12*H/W) | 3.153 (3.327 @ wide W = 0.50 mm) | | Characteristic Impedance Z0 (Ohm) | (87/SQRT(Er+1.41)) * LN(5.98*H/(0.8*W+T)) | 50.34 Ohms (28.95 Ohms @ W = 0.50) | | Propagation Delay tpd (ps/mm) | 3.33564 * SQRT(eps_eff) | 5.92 ps/mm (6.08 ps/mm @ W = 0.50) | | Phase Velocity (% of Vacuum c) | (1 / SQRT(eps_eff)) * 100 | 56.32% c (54.82% c @ W = 0.50 mm) | - **Formula (IPC-2141 Microstrip Impedance Z0 & Quasi-TEM Delay Formula)**: `=LET(wd_m, B2, ht_m, B3, tk_m, B4, er_s, B5, IF(OR(wd_m <= 0, ht_m <= 0, tk_m < 0, er_s < 1.8, er_s > 12, (5.98 * ht_m) <= 1.2 * (0.8 * wd_m + tk_m)), "Invalid Microstrip Geometry", LET(ef_e, ((er_s + 1) / 2) + ((er_s - 1) / 2) * (1 / SQRT(1 + 12 * (ht_m / wd_m))), ROUND((1 / SQRT(ef_e)) * 100, 2))))` - **Formula (Low-Impedance Capacitive Pad / Wide-Bus Mismatch Check (Set Trace Width W = 0.50 mm))**: `=IF(ISTEXT(E5), E5, ROUND((87 / SQRT(B5 + 1.41)) * LN((5.98 * B3) / (0.8 * B2 + B4)), 2))` ### MID function: extract a middle code segment while keeping leading zeros - **URL**: https://sheets.arte-soft.com/en/learn/mid-extract-middle-characters/ - **Summary**: Slice a fixed-position middle segment such as 482 or 035 out of product codes like AA-482-Z using one-based character positions. *Table — Three-digit batch segments starting at character 4:* | Part code (A) | Middle segment (pos 4, len 3) | | --- | --- | | AA-482-Z | 482 | | BB-305-Q | 305 | | CC-035-R | 035 | | A-9 | | - **Formula (Count positions starting at 1, including hyphens)**: `=MID(A2,4,3)` ### Price Elasticity of Demand (Midpoint / Arc formula) & revenue impact check - **URL**: https://sheets.arte-soft.com/en/learn/midpoint-price-elasticity-of-demand-revenue-impact/ - **Summary**: Calculate symmetric Arc Price Elasticity ((Q2-Q1)/AvgQ) / ((P2-P1)/AvgP) to classify Elastic vs Inelastic demand and revenue change. *Table — Why point elasticity changes when you reverse P1 and P2—and Midpoint Arc fixes it!:* | Pricing Experiment | Arc Elasticity Ed | Demand Regime | Revenue Impact (P2*Q2 - P1*Q1) | | --- | --- | --- | --- | | $100 -> $120, Qty 1,000 -> 700 | -1.9412 (\|Ed\| > 1) | Elastic | -$16,000 ($100k -> $84k) | | $100 -> $120, Qty 1,000 -> 950 | -0.2821 (\|Ed\| < 1) | Inelastic | +$14,000 ($100k -> $114k!) | | $120 -> $100, Qty 700 -> 1,000 | -1.9412 (Exact same!) | Symmetric! | +$16,000 | - **Formula (Symmetric Midpoint (Arc) Price Elasticity of Demand formula)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<=0,C2<0,D2<0,C2+D2=0,A2=B2),"Invalid inputs",ROUND(((D2-C2)/((D2+C2)/2))/((B2-A2)/((B2+A2)/2)),4))` - **Formula (Classify Elastic (|Ed| > 1), Unit Elastic (|Ed| = 1), or Inelastic (|Ed| < 1))**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<=0,C2<0,D2<0,C2+D2=0,A2=B2),"Invalid inputs",LET(elasticity,ABS(((D2-C2)/((D2+C2)/2))/((B2-A2)/((B2+A2)/2))),IF(ABS(elasticity-1)<0.0000000001,"Unit Elastic",IF(elasticity>1,"Elastic","Inelastic"))))` ### Calculate Midrange and Tukey Trimean: extreme vs outlier-resistant centers - **URL**: https://sheets.arte-soft.com/en/learn/midrange-and-trimean-central-tendency/ - **Summary**: Compute the Midrange (MIN + MAX) / 2 and contrast it with Tukey's outlier-resistant Trimean (Q1 + 2*Median + Q3) / 4. *Table — Midrange vs Mean vs Tukey Trimean on skewed data:* | Estimator | Formula on [12, 15, 18, 22, 93] | Result | | --- | --- | --- | | Midrange | =(MIN + MAX) / 2 = (12 + 93) / 2 | 52.50 (pulled by 93) | | Arithmetic Mean | =AVERAGE(A2:A6) = 160 / 5 | 32.00 | | Tukey Trimean | =(15 + 2*18 + 22) / 4 | 18.25 (robust) | | Median | =MEDIAN(A2:A6) | 18.00 | - **Formula (Midrange and Tukey Trimean formulas)**: `=(MIN(A2:A6) + MAX(A2:A6)) / 2` - **Formula (Tukey's quartile-weighted Trimean)**: `=(QUARTILE.INC(A2:A6, 1) + 2 * MEDIAN(A2:A6) + QUARTILE.INC(A2:A6, 3)) / 4` ### Miettinen Test-Based Confidence Interval Formula: OR^(1 ± z / SQRT(Chi-Square)) - **URL**: https://sheets.arte-soft.com/en/learn/miettinen-test-based-odds-ratio-confidence-interval-formula/ - **Summary**: Reconstruct 95% confidence limits for any Odds Ratio, Risk Ratio, or Hazard Ratio published with only a point estimate and Mantel-Haenszel chi-square statistic using Olli S. Miettinen’s 1976 test-based formula OR^(1 ± z / SQRT(chi²)). *Table — Guaranteeing exact p-value consistency between Mantel-Haenszel chi-square tests and 95% confidence limits!:* | Point Estimate & 1-df Chi-Square (z = 1.96) | Lower 95% Limit OR^(1 - z/SQRT(chi²)) | Upper 95% Limit OR^(1 + z/SQRT(chi²)) | Hypothesis Test Alignment | | --- | --- | --- | --- | | OR = 2.65, chi² = 6.76 (p < 0.01) | 1.2711 (> 1.00) | 5.5247 | Excludes 1.00 iff chi² > z² | | OR = 2.65, chi² = 3.24 (p = 0.072) | 0.9170 (< 1.00) | 7.6584 | Crosses 1.00 cleanly when p > 0.05 | | Null Estimate OR = 1.00 or chi² <= 0 | Undefined SE_TB | "Requires Positive Non-Null OR & Chi-Square" | Singularity Guard | - **Formula (Miettinen Test-Based Lower Confidence Limit = MIN(OR^(1 - z/SQRT(chi²)), OR^(1 + z/SQRT(chi²))))**: `=IF(OR(B2 <= 0, B2 = 1, B3 <= 0, B4 <= 0), "Requires Positive Non-Null OR & Chi-Square", ROUND(MIN(B2 ^ (1 - B4 / SQRT(B3)), B2 ^ (1 + B4 / SQRT(B3))), 4))` - **Formula (Miettinen Test-Based Upper Confidence Limit = MAX(OR^(1 - z/SQRT(chi²)), OR^(1 + z/SQRT(chi²))))**: `=IF(OR(B2 <= 0, B2 = 1, B3 <= 0, B4 <= 0), "Requires Positive Non-Null OR & Chi-Square", ROUND(MAX(B2 ^ (1 - B4 / SQRT(B3)), B2 ^ (1 + B4 / SQRT(B3))), 4))` ### Mifflin-St Jeor resting energy estimate: a spreadsheet exercise - **URL**: https://sheets.arte-soft.com/en/learn/mifflin-st-jeor-bmr-and-tdee-daily-calorie-formula/ - **Summary**: Practice the adult Mifflin-St Jeor resting-energy equation with fictional inputs and an explicitly assumed activity multiplier. *Table — Estimate resting energy expenditure, not an individual diet prescription:* | Profile Input | Cell | Subject Example | Energy Output | | --- | --- | --- | --- | | Sex & Age | B2 = "M", B5 = 35 | 35-year-old male | +5 sex constant (-161 for "F") | | Weight & Height | B3 = 80 kg, B4 = 180 cm | 800 + 1,125 - 175 + 5 | BMR = 1,755 kcal/day | | Activity Factor (PAL) | B6 = 1.55 | Assumed multiplier, not a measured activity level | TDEE = 2,720.25 kcal/day | | Female Equivalent ("F") | Same height/weight/age | 1,755 - 166 | Female BMR = 1,589 kcal/day | - **Formula (Mifflin-St Jeor resting energy estimate (kcal/day))**: `=IF(OR(COUNT(B3:B6)<>4,B3<=0,B4<=0,B5<19,B5>78,B6<=0,AND(UPPER(TRIM(B2))<>"M",UPPER(TRIM(B2))<>"F")),"Invalid inputs",10 * B3 + 6.25 * B4 - 5 * B5 + IF(UPPER(TRIM(B2)) = "M", 5, -161))` - **Formula (Apply a supplied activity multiplier)**: `=IF(OR(COUNT(B3:B6)<>4,B3<=0,B4<=0,B5<19,B5>78,B6<=0,AND(UPPER(TRIM(B2))<>"M",UPPER(TRIM(B2))<>"F")),"Invalid inputs",ROUND((10 * B3 + 6.25 * B4 - 5 * B5 + IF(UPPER(TRIM(B2)) = "M", 5, -161)) * B6, 2))` ### Milgrom-Roberts Limit-Pricing Separating Formula - **URL**: https://sheets.arte-soft.com/en/learn/milgrom-roberts-limit-pricing-separating-signal-quantity-formula/ - **Summary**: Calculate Paul Milgrom and John Roberts’s (1982) least-cost separating limit quantity Q_sep = MAX(Q_m(L), Q_m(H) + SQRT(Delta_H / b)), limit price P_sep, and signaling profit distortion. *Table — Understand why a low-cost incumbent cuts Period-1 price below monopoly to signal efficiency!:* | Limit-Pricing Signaling Metric (A=120, c_L=20, c_H=40, b=1, Delta_H=324) | Formula | Verified Output | | --- | --- | --- | | High-Cost Monopoly Output Q_m(H) | (A - c_H) / (2 * b) | 40.00 (P_m(H) = 80.00) | | Low-Cost Monopoly Output Q_m(L) | (A - c_L) / (2 * b) | 50.00 (P_m(L) = 70.00) | | Least-Cost Separating Quantity (Q_sep) | MAX(Q_m(L), Q_m(H) + SQRT(Delta_H / b)) | 58.00 units | | Separating Limit Price & Signal Cost | P_sep = A - b*Q_sep; Loss = b*(Q_sep - Q_m(L))^2 | P_sep = 62.00; Cost = 64.00 | - **Formula (Least-Cost Separating Limit Quantity Q_sep Formula)**: `=LET(a_dm, B2, cl_mc, B3, ch_mc, B4, b_sl, B5, dl_h, B6, IF(OR(b_sl <= 0, cl_mc < 0, ch_mc <= cl_mc, a_dm <= ch_mc, dl_h < 0), "Invalid Limit-Price Input", LET(qm_l, (a_dm - cl_mc) / (2 * b_sl), qm_h, (a_dm - ch_mc) / (2 * b_sl), ROUND(MAX(qm_l, qm_h + SQRT(dl_h / b_sl)), 4))))` - **Formula (Separating Limit Price & Low-Cost Period-1 Signaling Distortion Formula)**: `=IF(ISTEXT(E4), E4, ROUND(B5 * ((E4 - E3) ^ 2), 4))` ### Miller-Orr Stochastic Cash Control Bands: Return Point and Upper Limit - **URL**: https://sheets.arte-soft.com/en/learn/miller-orr-stochastic-cash-balance-return-point-and-upper-control-limit/ - **Summary**: Compute the Miller-Orr cube-root cash control spread Z, asymmetric one-third return point RP = L + Z/3, and upper sweep threshold H = L + Z for volatile daily cash flows. *Table — Avoid the midpoint trap in Miller-Orr cash band design:* | Control Band Metric | Miller-Orr Formula | Exact Output | | --- | --- | --- | | One-Third Step (Z / 3) | (3 * b * sig_day^2 / (4 * r_day))^(1/3) | 30,000 | | Total Control Spread Z | 3 * (Z / 3) | 90,000 | | Optimal Return Point RP | L + Z / 3 (NOT midpoint L + Z / 2) | 80,000 (vs 95,000 trap) | | Upper Sweep Limit H & Avg Cash | H = L + Z; Avg = L + (4/9)*Z | H = 140,000; Avg = 90,000 | - **Formula (Miller-Orr Return Point RP Formula)**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Policy Input", ROUND(B2 + ((3 * B3 * B4^2) / (4 * B5))^(1 / 3), 2))` - **Formula (Total Spread Z, Upper Limit H & Volatility Stress Test)**: `=LET(l_min, B2, b_fee, B3, sig_d, B4, r_day, B5, IF(OR(b_fee <= 0, sig_d <= 0, r_day <= 0), "Invalid Policy Input", ROUND(l_min + 3 * ((3 * b_fee * sig_d^2) / (4 * r_day))^(1 / 3), 2)))` ### Normalize data between 0 and 1 (Min-Max scaling vs Z-score) - **URL**: https://sheets.arte-soft.com/en/learn/min-max-normalization-and-z-score-scaling/ - **Summary**: Rescale disparate KPIs onto a common 0–1 (or 0–100) scale with (x - MIN) / (MAX - MIN) or standardize into Z-scores. *Table — Min-Max [0, 1] scaling vs Z-score standardization:* | MetricVal (A) | Min-Max [0..1] | 0–100 Score | Z-Score | | --- | --- | --- | --- | | 20 | 0.00 | 0 | -1.0247 | | 40 | 0.25 | 25 | -0.4392 | | 60 | 0.50 | 50 | +0.1464 | | 100 | 1.00 | 100 | +1.3175 | - **Formula (Min-Max scaling with a constant-column policy)**: `=LET(lo, MIN($A$2:$A$5), hi, MAX($A$2:$A$5), IF(hi=lo, 0, ROUND((A4 - lo) / (hi - lo), 4)))` - **Formula (Standardized Z-score formula)**: `=ROUND((A4 - AVERAGE($A$2:$A$5)) / STDEV.S($A$2:$A$5), 4)` ### MIN and MAX in Excel: find the extremes and calculate the range - **URL**: https://sheets.arte-soft.com/en/learn/min-max-range-negative-values/ - **Summary**: Use a short temperature log to find the lowest and highest readings, calculate their difference, and avoid reporting missing data as zero. - **Formula (Use MIN for the smallest recorded number)**: `=MIN(B2:B6)` - **Formula (Use MAX for the largest recorded number)**: `=MAX(B2:B6)` - **Formula (Calculate the distance between the extremes)**: `=MAX(B2:B6)-MIN(B2:B6)` - **Formula (Check that there are readings to summarize)**: `=IF(COUNT(B2:B6)=0,"No readings",MAX(B2:B6)-MIN(B2:B6))` ### Mincer Earnings Function Formula: Return to Schooling & Concave Experience Wage Profile - **URL**: https://sheets.arte-soft.com/en/learn/mincer-human-capital-schooling-and-quadratic-experience-earnings/ - **Summary**: Model human-capital earnings EXP(beta_0 + r_s*S + beta_1*X + beta_2*X²), marginal return to work experience (beta_1 + 2*beta_2*X), and peak-earnings career horizon X* = -beta_1 / (2*beta_2) using Jacob Mincer’s 1974 log-wage equation. *Table — The single most estimated equation in labor economics: Jacob Mincer’s 1974 semi-log human-capital curve!:* | Career Stage (S = 16 yr Schooling, r_s = 9.5%) | Predicted Geometric Mean Wage EXP(ln W) | Marginal Return to +1 Yr Experience | | --- | --- | --- | | Mid-Career X = 10 Years Experience | $17,154.23 | +3.10% / yr | | Senior Career X = 25 Years Experience | $22,387.92 | +1.00% / yr (Approaching X_peak = 32.1 yr) | | Negative Schooling S < 0 or Convex beta_2 >= 0 | Invalid Profile | "Invalid Mincer Human-Capital Inputs" | - **Formula (Mincer Predicted Geometric-Mean Earnings W = EXP(beta_0 + r_s*S + beta_1*X + beta_2*X²))**: `=IF(OR(B3 < 0, B4 < 0, B5 <= 0, B6 < 0, B7 >= 0), "Invalid Mincer Human-Capital Inputs", ROUND(EXP(B2 + B3 * B4 + B5 * B6 + B7 * (B6 ^ 2)), 2))` - **Formula (Marginal Percentage Return to Experience (%) = (beta_1 + 2 * beta_2 * X) * 100)**: `=IF(OR(B3 < 0, B4 < 0, B5 <= 0, B6 < 0, B7 >= 0), "Invalid Mincer Human-Capital Inputs", ROUND((B5 + 2 * B7 * B6) * 100, 2))` ### Theil MSE Bias-Variance-Covariance and Mincer-Zarnowitz Formula - **URL**: https://sheets.arte-soft.com/en/learn/mincer-zarnowitz-and-theil-mse-bias-variance-covariance-decomposition/ - **Summary**: Decompose Mean Squared Forecast Error into exact additive Bias Share U_M, Variance Share U_S, and Unsystematic Covariance Share U_C = 1 - U_M - U_S alongside Mincer-Zarnowitz slope beta_MZ. *Table — Diagnose WHY a forecast missed: systematic level bias, amplitude scaling, or pure noise?:* | Theil / Mincer-Zarnowitz Metric | Exact Formula (Population Moments) | Sample Output | | --- | --- | --- | | Total Mean Squared Error MSE | SUMXMY2 / T = AVERAGE((f_t - y_t)^2) | 776.0000 | | Theil Bias Proportion U_M | (AVERAGE(f) - AVERAGE(y))^2 / MSE | 0.7423 (576 / 776) | | Theil Variance Proportion U_S | (STDEVP(f) - STDEVP(y))^2 / MSE | 0.2577 (200 / 776) | | Theil Noise Share U_C & Slope beta_MZ | 2*(1 - CORREL(f,y))*sig_f*sig_y / MSE; SLOPE(y,f) | U_C = 0.0000; beta_MZ = 0.5000 | - **Formula (Theil Bias Proportion U_M & Variance Proportion U_S Formula)**: `=LET(mse_v, SUMPRODUCT((C2:C6 - B2:B6)^2) / ROWS(B2:B6), IF(mse_v <= 0, "Perfect Zero-MSE Forecast", ROUND(((AVERAGE(C2:C6) - AVERAGE(B2:B6))^2) / mse_v, 4)))` - **Formula (Mincer-Zarnowitz Efficiency Slope beta_MZ & Recalibration Check)**: `=IF(STDEVP(C2:C6) <= 0, "Constant Forecast", ROUND(SLOPE(B2:B6, C2:C6), 4))` ### Mindlin-Reissner Thick Circular Plate Bending + Shear Deflection - **URL**: https://sheets.arte-soft.com/en/learn/mindlin-reissner-thick-circular-plate-transverse-shear-deflection-boost/ - **Summary**: Extend Kirchhoff thin-plate formulas to thick viewports and flange blinds using Mindlin-Reissner transverse shear deflection q*R^2 / (4*kappa*G*h) and exact (h/R)^2 scaling. *Table — Predict the exact 36% transverse-shear boost on a thick circular viewport:* | Thick-Plate Metric (h/R = 0.30, nu = 0.20) | Mindlin-Reissner Formula | Sample Output | | --- | --- | --- | | Flexural Rigidity D & Shear G | E*h^3/(12*(1-nu^2)); G = E/(2*(1+nu)) | D = 168,750 N*m; G = 30 GPa | | Kirchhoff Bending Term w_KL | 1000 * q_Pa * R^4 / (64 * D) | 0.0222 mm | | Transverse Shear Term w_shear | 1000 * q_Pa * R^2 / (4 * kappa * G * h) | 0.0080 mm | | Total Mindlin-Reissner w_MR | w_KL + w_shear (Shear/Bend = 0.3600) | 0.0302 mm (+36.0% over thin plate) | - **Formula (Dimensionless Shear-to-Bending Amplification Ratio Formula)**: `=IF(OR(B3 <= 0, B4 < 0, B4 >= 0.5, B5 <= 0, B7 <= 0), "Invalid Plate Input", ROUND((16 / (6 * B7 * (1 - B4))) * ((B3 / B5)^2), 4))` - **Formula (Total Mindlin-Reissner Clamped Center Deflection (mm) Formula)**: `=LET(e_pa, B2 * 10^9, h_m, B3, nu_v, B4, r_m, B5, q_pa, B6 * 1000, kap, B7, IF(OR(e_pa <= 0, h_m <= 0, nu_v < 0, nu_v >= 0.5, r_m <= 0, kap <= 0), "Invalid Plate Input", LET(d_rig, e_pa * (h_m^3) / (12 * (1 - nu_v^2)), g_pa, e_pa / (2 * (1 + nu_v)), w_kl, (q_pa * (r_m^4)) / (64 * d_rig), w_sh, (q_pa * (r_m^2)) / (4 * kap * g_pa * h_m), ROUND(1000 * (w_kl + w_sh), 6))))` ### Mini-Cog Rapid Cognitive & Dementia Screen (0–5 Composite) - **URL**: https://sheets.arte-soft.com/en/learn/mini-cog-3-word-recall-and-clock-drawing-dementia-screen/ - **Summary**: Compute Soo Borson’s 3-minute Mini-Cog score (0–5) from Delayed 3-Word Recall (0–3 pts) + All-or-None Clock Drawing Test (Normal = 2 pts, Abnormal = 0 pts), flagging 0–2 for formal dementia workup. *Table — Why Clock Drawing only changes clinical disposition when Word Recall is 1 or 2!:* | Delayed 3-Word Recall (0–3) | Clock Drawing ("10 Past 11": 0 or 2) | Total Mini-Cog (0–5) | Cognitive Screening Result | | --- | --- | --- | --- | | 0 Words Recalled | Normal (2) or Abnormal (0) | 0 or 2 pts (<= 2) | Positive Screen (Cognitive Impairment Likely) | | 1 or 2 Words Recalled | Abnormal Clock (0 pts) | 1 or 2 pts (<= 2) | Positive Screen (Clock Tie-Breaker Fails) | | 1–2 Words + Normal Clock (2) OR 3 Words | 2 pts (or Any Clock if 3 Words) | 3, 4, or 5 pts (>= 3) | Negative Screen (Lower Likelihood) | - **Formula (Total 5-Point Mini-Cog Score (Recall 0–3 + Clock 0 or 2))**: `=IF(OR(NOT(OR(B2 = 0, B2 = 1, B2 = 2, B2 = 3)), NOT(OR(B3 = 0, B3 = 2))), "Invalid Mini-Cog Score (Clock Must Be 0 or 2)", B2 + B3)` - **Formula (Mini-Cog Cognitive Impairment Screening Interpretation)**: `=IF(OR(NOT(OR(B2 = 0, B2 = 1, B2 = 2, B2 = 3)), NOT(OR(B3 = 0, B3 = 2))), "Invalid Mini-Cog Score (Clock Must Be 0 or 2)", IF(B2 + B3 <= 2, "Positive Screen (0-2: Evaluate for Cognitive Impairment)", "Negative Screen (3-5: Normal Brief Screen)"))` ### Minimum value if unique: find the lowest non-tied bid and winning bidder - **URL**: https://sheets.arte-soft.com/en/learn/minimum-value-if-unique-lowest-unique-bid/ - **Summary**: Disqualify tied low values and extract the smallest strictly unique number (and its owner) using COUNTIF, FILTER, MIN, and XLOOKUP. *Table — Solve reverse-auction and tie-disqualification rules cleanly:* | Vendor (A) | Bid $ (B) | Bid Count (C) | Eligibility | | --- | --- | --- | --- | | Apex / Bolt | $100 / $100 | 2 each | Disqualified (Tied low) | | Core / Echo | $115 / $115 | 2 each | Disqualified (Tied) | | Dune | $125 | 1 (Unique!) | Winner — Lowest Unique Bid! | | Flux | $140 | 1 (Unique) | Higher unique bid | - **Formula (Find the minimum strictly unique value (with all-tied fallback))**: `=IF(OR(COUNT(B2:B7)<>6,MIN(B2:B7)<=0,COUNTBLANK(A2:A7)>0),"Invalid bid data",IF(COUNTIF(C2:C7, 1) = 0, "No Unique Bid", MIN(FILTER(B2:B7, C2:C7 = 1))))` - **Formula (Look up the winning vendor who submitted the lowest unique bid)**: `=IF(OR(COUNT(B2:B7)<>6,MIN(B2:B7)<=0,COUNTBLANK(A2:A7)>0),"Invalid bid data",IF(COUNTIF(C2:C7, 1) = 0, "None", XLOOKUP(MIN(FILTER(B2:B7, C2:C7 = 1)), B2:B7, A2:A7)))` ### Mitscherlich-Baule Fertilizer Yield & Optimum Formula - **URL**: https://sheets.arte-soft.com/en/learn/mitscherlich-baule-diminishing-returns-fertilizer-yield-response-formula/ - **Summary**: Calculate Mitscherlich-Baule Crop Yield Y = A_max * (1 - 2^(-(N_0 + N_app) / b_Baule)), Unfertilized Check Yield, Net Agronomic Profit Lift ($/ha), and Profit-Maximizing Economic Optimal Nitrogen Rate. *Table — Price diminishing fertilizer returns with Baule’s halving law and solve exact Economic Optimal Nitrogen!:* | Mitscherlich-Baule Metric (A_max=12 t/ha, N0=50, Napp=100, b=50 kg/ha, $220/t, $1.40/kg N) | Formula | Verified Output | | --- | --- | --- | | Predicted Crop Yield Y (t/ha) | A_max * (1 - 2^(-(N_0 + N_app) / b)) | 10.50 t/ha (87.5% of Ceiling) | | Unfertilized Check Yield (t/ha) | A_max * (1 - 2^(-N_0 / b)) | 6.00 t/ha (50.0% @ 1 Baule) | | Net Profit Over Check ($/ha) | (Y - Y_0) * P_crop - N_app * c_N | +$850.00 / ha | | Economic Optimal Applied N (kg/ha) | MAX(0, b*LOG2(A*P*LN(2)/(b*c_N)) - N_0) | 185.41 kg/ha | - **Formula (Closed-Form Economic Optimal Nitrogen Rate (EONR) Formula)**: `=LET(a_mx, B2, n_0s, B3, n_ap, B4, b_un, B5, p_cr, B6, c_nt, B7, IF(OR(a_mx <= 0, n_0s < 0, n_ap < 0, b_un <= 0, p_cr <= 0, c_nt <= 0), "Invalid Fertility Model", ROUND(MAX(0, b_un * (LN((a_mx * p_cr * LN(2)) / (b_un * c_nt)) / LN(2)) - n_0s), 2)))` - **Formula (Net Agronomic Return Over Fertilizer Cost Formula)**: `=IF(ISTEXT(E5), E5, ROUND((B2 * (1 - 2 ^ (-(B3 + B4) / B5)) - B2 * (1 - 2 ^ (-B3 / B5))) * B6 - B4 * B7, 2))` ### M/M/1 Queueing formula: server utilization, queue length (Lq) & wait time (Wq) - **URL**: https://sheets.arte-soft.com/en/learn/mm1-queueing-utilization-wait-time-and-queue-length/ - **Summary**: Model call-center, checkout, and API worker queues using M/M/1 arrival rate lambda, service rate mu, utilization rho = lambda/mu, Lq, and Wq. *Table — Queue delay grows as utilization approaches one:* | M/M/1 Metric (Service Rate mu = 24 / hr) | Formula | At lambda = 18 / hr (75% Util.) | | --- | --- | --- | | Server Utilization (rho) | lambda / mu = 18 / 24 | 0.75 (75.0%) | | Avg Waiting in Queue (Lq) | rho^2 / (1 - rho) = 0.5625 / 0.25 | 2.25 requests | | Avg Wait Time in Queue (Minutes) | (rho / (mu * (1 - rho))) * 60 | 7.50 minutes | | At 90% Utilization (lambda = 21.6 / hr) | (0.90 / (24 * 0.10)) * 60 | 22.50 minutes (3x jump!) | - **Formula (Average queue wait time Wq in minutes (with stability guard))**: `=IF(OR(COUNT(A2:B2)<>2,A2<0,B2<=0),"Invalid inputs",IF(A2 >= B2, "Unstable Queue", LET(rho, A2 / B2, ROUND((rho / (B2 * (1 - rho))) * 60, 2))))` - **Formula (Average number of items waiting in queue (Lq))**: `=IF(OR(COUNT(A2:B2)<>2,A2<0,B2<=0),"Invalid inputs",IF(A2 >= B2, "Unstable Queue", LET(rho, A2 / B2, ROUND((rho ^ 2) / (1 - rho), 2))))` ### Mini Nutritional Assessment Short-Form (MNA-SF 0–14) Formula: BMI & Calf Fallback - **URL**: https://sheets.arte-soft.com/en/learn/mna-sf-mini-nutritional-assessment-short-form-geriatric-score/ - **Summary**: Calculate the revised 6-item Mini Nutritional Assessment Short-Form (MNA-SF, 0–14 points — Rubenstein et al., 2001 / Kaiser et al., 2009) with automatic Calf Circumference (>= 31 cm = 3 pts, < 31 cm = 0 pts) fallback when standing BMI is unavailable. *Table — Why Kaiser et al.’s (2009) revised MNA-SF (0–14) works even in bedbound older adults without standing height/weight!:* | MNA-SF Total Score (0–14 Points) | Kaiser et al. (2009) Nutritional Status | ESPEN Clinical Action | | --- | --- | --- | | 12 to 14 Points | Normal Nutritional Status | Routine rescreening (every 3 mo institutional / annually community) | | 8 to 11 Points | At Risk of Malnutrition | Protein-calorie fortification, oral supplements & weight monitoring | | 0 to 7 Points | Malnourished | Comprehensive dietitian consult, etiology workup & targeted nutrition support | - **Formula (Revised MNA-SF Total Score (0–14) with Automatic BMI-or-Calf-Circumference Item F Logic)**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, B4 < 0, B4 > 2, AND(B5 <> 0, B5 <> 2), B6 < 0, B6 > 2, AND(B7 <= 0, B8 <= 0)), "Invalid MNA-SF Item or Missing Both BMI & Calf Circumference", B2 + B3 + B4 + B5 + B6 + IF(B7 > 0, IF(B7 >= 23, 3, IF(B7 >= 21, 2, IF(B7 >= 19, 1, 0))), IF(B8 >= 31, 3, 0)))` - **Formula (MNA-SF 3-Tier Geriatric Nutrition Triage Classifier (Normal 12–14 / At Risk 8–11 / Malnourished 0–7))**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, B4 < 0, B4 > 2, AND(B5 <> 0, B5 <> 2), B6 < 0, B6 > 2, AND(B7 <= 0, B8 <= 0)), "Invalid MNA-SF Item or Missing Both BMI & Calf Circumference", IF(B2 + B3 + B4 + B5 + B6 + IF(B7 > 0, IF(B7 >= 23, 3, IF(B7 >= 21, 2, IF(B7 >= 19, 1, 0))), IF(B8 >= 31, 3, 0)) >= 12, "Normal Nutritional Status (12–14)", IF(B2 + B3 + B4 + B5 + B6 + IF(B7 > 0, IF(B7 >= 23, 3, IF(B7 >= 21, 2, IF(B7 >= 19, 1, 0))), IF(B8 >= 31, 3, 0)) >= 8, "At Risk of Malnutrition (8–11)", "Malnourished (0–7)")))` ### MOD function: calculate leftover items after filling complete packs - **URL**: https://sheets.arte-soft.com/en/learn/mod-function-remainder-items/ - **Summary**: Find how many loose items remain when packing whole quantities into fixed-size sleeves or cartons, and check exact multiples and zero-divisor errors. *Table — Packing 53 labels into sleeves of 12:* | Total labels (A) | Labels per sleeve (B) | Loose remainder | | --- | --- | --- | | 53 | 12 | 5 | | 48 | 12 | 0 | | 0 | 12 | 0 | - **Formula (Compute the remainder directly with MOD)**: `=MOD(A2,B2)` ### MODE.SNGL and MODE: find the most frequent number in a dataset - **URL**: https://sheets.arte-soft.com/en/learn/mode-sngl-most-frequent-value/ - **Summary**: Identify the most common pack size or order quantity with MODE.SNGL, and handle all-unique ranges where no value repeats (#N/A). *Table — When the most common value matters more than the average:* | Order Rows (A2:A7) | Values | MODE.SNGL(A2:A7) | | --- | --- | --- | | Initial batch | 12, 24, 12, 36, 12, 24 | 12 (appears 3 times) | | Updated batch | 12, 24, 24, 36, 24, 24 | 24 (appears 4 times) | | All unique batch | 10, 20, 30, 40, 50, 60 | #N/A (no duplicate value) | - **Formula (Find the modal order quantity)**: `=MODE.SNGL(A2:A7)` - **Formula (Wrap all-unique ranges in IFNA)**: `=IFNA(MODE.SNGL(A2:A7), "No repeating value")` ### Modified Aldrete Score for Phase-I PACU Post-Anesthesia Discharge - **URL**: https://sheets.arte-soft.com/en/learn/modified-aldrete-pacu-post-anesthesia-discharge-readiness-score/ - **Summary**: Calculate J. Antonio Aldrete’s 5-domain Modified PACU Recovery Score (0–10 across Activity, Respiration, Circulation, Consciousness, and Pulse Oximetry SpO2) with zero-subscore safety hold. *Table — Verify safe physiological recovery before transferring post-surgical patients out of Phase-I PACU!:* | Modified Aldrete Profile (0–10) | Minimum Domain Subscore | PACU Disposition Decision | Nursing / Anesthesia Action | | --- | --- | --- | --- | | Total Score 9–10 (e.g., 2+2+2+1+2 = 9) | MIN(B2:B6) >= 1 | Phase-I PACU Discharge Ready | Safe Transfer to Ward / Phase-II Recovery | | Total Score <= 8 (All Subscores >= 1) | MIN(B2:B6) >= 1 | Continue PACU Monitoring | Reassess Every 15 Minutes | | Any Single Domain = 0 (e.g., SpO2 = 0) | MIN(B2:B6) = 0 | CRITICAL HOLD IN PACU | Immediate Airway / Hemodynamic Intervention | - **Formula (Total 5-Domain Modified Aldrete Recovery Score (0–10))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 0, MAX(B2:B6) > 2), "Invalid Aldrete Domain (0-2)", SUM(B2:B6))` - **Formula (Phase-I PACU Discharge Readiness & Zero-Subscore Safety Hold)**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 0, MAX(B2:B6) > 2), "Invalid Aldrete Domain (0-2)", IF(MIN(B2:B6) = 0, "HOLD IN PACU — Critical Zero Subscore (Apnea / Severe Hypoxia / Unresponsive)", IF(SUM(B2:B6) >= 9, "Phase-I PACU Discharge Ready (Aldrete >= 9)", "Continue PACU Monitoring (Aldrete < 9)")))` ### Modified Brooke Burn Fluid Resuscitation (2 mL/kg/%TBSA) & Curreri Calorie Formula - **URL**: https://sheets.arte-soft.com/en/learn/modified-brooke-and-curreri-adult-burn-resuscitation-calorie-formula/ - **Summary**: Calculate ATLS / ABA initial 24-hour Modified Brooke Lactated Ringer’s resuscitation volume (2 mL * kg * %TBSA, first-8h hourly infusion rate) to prevent "fluid creep," alongside P. William Curreri’s adult burn hypermetabolic nutrition formula (25 * kg + 40 * %TBSA). *Table — Why ATLS 10th Edition shifted initial adult thermal burn resuscitation from 4 mL (Parkland) to 2 mL (Modified Brooke)!:* | Burn Protocol Calculation (80 kg Adult, 35% 2nd/3rd-Degree TBSA, 2 hr Pre-Hospital Delay) | Formula | Evaluated Target | | --- | --- | --- | | Modified Brooke Total 24-Hour Crystalloid Volume | 2 * Weight_kg * %TBSA | 5,600 mL | | Initial Hourly LR Rate Across Remaining 6 Hours of First 8h Window | (0.5 * V_24h) / (8 - t_delay) | 466.7 mL/hr | | Second 16-Hour Baseline Hourly LR Rate (Titrate to UOP) | (0.5 * V_24h) / 16 | 175.0 mL/hr | | Curreri Adult Burn Calorie Ceiling (Capped at 50% TBSA) | 25 * Weight_kg + 40 * MIN(%TBSA, 50) | 3,400 kcal/day | - **Formula (Modified Brooke First-Window Hourly LR Infusion Rate (mL/hr, Adjusted for Pre-Hospital Elapsed Hours))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 100, B4 < 0, B4 >= 8), "Invalid Weight, %TBSA (1–100), or Elapsed Delay >= 8h", ROUND((B2 * B3) / (8 - B4), 1))` - **Formula (Curreri Adult Burn Hypermetabolic Energy Estimate (Capped at 50% TBSA, kcal/day))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 100), "Invalid Weight or %TBSA", ROUND(25 * B2 + 40 * MIN(B3, 50), 0))` ### Modified CT Severity Index (MCTSI / Balthazar) for Acute Pancreatitis - **URL**: https://sheets.arte-soft.com/en/learn/modified-ct-severity-index-mctsi-balthazar-pancreatitis-score/ - **Summary**: Calculate Koenraad Mortele’s 0–10 Modified CT Severity Index (even integers 0–10) from Pancreatic Inflammation (0/2/4), Parenchymal Necrosis Percentage (0%, <= 30%, > 30%), and Extrapancreatic Complications (0/2). *Table — Upgrade classical Balthazar CTSI with extrapancreatic vascular/pleural complication points!:* | Modified CT Severity Index (0, 2, 4, 6, 8, 10) | Radiologic Severity Tier | Predicted Morbidity & Organ Failure | | --- | --- | --- | | MCTSI 0–2 Points (e.g., 2) | Mild Acute Pancreatitis | Short Length of Stay, Rare Intervention | | MCTSI 4–6 Points | Moderate Acute Pancreatitis | Monitor Fluid Collections & Nutritional Support | | MCTSI 8–10 Points (e.g., 10) | Severe Necrotizing Pancreatitis | High Organ Failure & Step-Up Drainage/Necrosectomy Risk | - **Formula (Total 3-Domain Modified CT Severity Index (0–10 Even Points))**: `=IF(OR(NOT(OR(B2 = 0, B2 = 2, B2 = 4)), B3 < 0, B3 > 100, B4 < 0, B4 > 1), "Invalid MCTSI Input", B2 + IF(B3 = 0, 0, IF(B3 <= 30, 2, 4)) + 2 * B4)` - **Formula (Mortele MCTSI Pancreatitis Severity Classification (Mild / Moderate / Severe))**: `=IF(OR(NOT(OR(B2 = 0, B2 = 2, B2 = 4)), B3 < 0, B3 > 100, B4 < 0, B4 > 1), "Invalid MCTSI Input", IF((B2 + IF(B3 = 0, 0, IF(B3 <= 30, 2, 4)) + 2 * B4) >= 8, "Severe Necrotizing Pancreatitis (MCTSI 8-10) — High Organ-Failure & Step-Up Intervention Risk", IF((B2 + IF(B3 = 0, 0, IF(B3 <= 30, 2, 4)) + 2 * B4) >= 4, "Moderate Acute Pancreatitis (MCTSI 4-6)", "Mild Acute Pancreatitis (MCTSI 0-2)")))` ### Modified Dietz portfolio return with day-weighted external cash flows - **URL**: https://sheets.arte-soft.com/en/learn/modified-dietz-portfolio-return-cash-flow-weighting/ - **Summary**: Calculate investment performance across mid-month deposits and withdrawals without daily portfolio valuations via R = (EMV - BMV - SUM(CF)) / (BMV + SUM(w_i * CF_i)). *Table — Estimate a period return while accounting for external flows:* | Portfolio Event | Day / Weight w_i | Amount | Capital & Gain Impact | | --- | --- | --- | --- | | Beginning Market Value (BMV) | Day 0 (100%) | $100,000 (B2) | Base capital = $100,000 | | Deposit #1 (C2, D2) | Day 6 -> (30-6)/30 = 0.80 | +$10,000 | Weighted CF E2 = +$8,000 | | Withdrawal #2 (C3, D3) | Day 21 -> (30-21)/30 = 0.30 | -$4,000 | Weighted CF E3 = -$1,200 | | Ending Market Value (EMV) | Day 30 (B4 = 30) | $118,500 (B3) | Gain $12,500 / Cap $106,800 = 11.70%! | - **Formula (Modified Dietz period return formula)**: `=IF(OR(COUNT(B2:B4)<>3,COUNT(C2:D3)<>4),"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B4<>INT(B4),C2<0,C3<0,C2>B4,C3>B4,C2<>INT(C2),C3<>INT(C3)),"Invalid inputs",IF((B2+SUM(E2:E3))<=0,"Undefined return",ROUND((B3 - B2 - SUM(D2:D3)) / (B2 + SUM(E2:E3)), 4))))` - **Formula (Compare with midpoint weighting)**: `=IF(OR(COUNT(B2:B4)<>3,COUNT(C2:D3)<>4),"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B4<>INT(B4),C2<0,C3<0,C2>B4,C3>B4,C2<>INT(C2),C3<>INT(C3)),"Invalid inputs",IF((B2+0.5*SUM(D2:D3))<=0,"Undefined return",ROUND((B3 - B2 - SUM(D2:D3)) / (B2 + 0.5 * SUM(D2:D3)), 4))))` ### Modified Internal Rate of Return (MIRR): Separate Finance & Reinvestment Rates - **URL**: https://sheets.arte-soft.com/en/learn/modified-internal-rate-of-return-mirr-finance-reinvest/ - **Summary**: Compute the exact Modified Internal Rate of Return (MIRR) by discounting negative cash outflows at your cost of capital and compounding positive cash inflows at realistic treasury reinvestment rates. *Table — Why standard IRR overstates project returns and breaks on mid-life capex:* | Period (t) | Cash Flow | Treatment in MIRR (r_f = 8%, r_r = 6%) | Present / Terminal Contribution | | --- | --- | --- | --- | | Year 0 | -$100,000 | Discounted at 8% for 0 yrs | PV_neg += $100,000.00 | | Year 1 | +$30,000 | Compounded at 6% for 3 yrs | FV_pos += $35,730.48 | | Year 2 | -$15,000 | Discounted at 8% for 2 yrs | PV_neg += $12,859.91 | | Year 3 | +$55,000 | Compounded at 6% for 1 yr | FV_pos += $58,300.00 | | Year 4 | +$65,000 | Compounded at 6% for 0 yrs | FV_pos += $65,000.00 (MIRR = 8.9519%) | - **Formula (Exact Closed-Form MIRR Formula (SUMPRODUCT & SEQUENCE))**: `=LET(tIdx, SEQUENCE(5, 1, 0, 1), pvNeg, SUMPRODUCT((B2:B6 < 0) * (-B2:B6) / ((1 + E2) ^ tIdx)), fvPos, SUMPRODUCT((B2:B6 > 0) * B2:B6 * ((1 + E3) ^ (4 - tIdx))), IF(OR(pvNeg <= 0, fvPos <= 0), "Requires Both Sign Flows", ROUND((fvPos / pvNeg) ^ (1 / 4) - 1, 6)))` - **Formula (Compare Against Standard IRR on the Same Cash-Flow Vector)**: `=ROUND(IRR(B2:B6), 6)` ### Modigliani Life-Cycle Saving & Wealth-Income Formula - **URL**: https://sheets.arte-soft.com/en/learn/modigliani-life-cycle-wealth-to-income-and-saving-rate-formula/ - **Summary**: Calculate Franco Modigliani’s Life-Cycle Hypothesis (LCH) smoothed annual consumption C = (W_0 + N*Y)/(N + M), active-worker saving rate, and retirement peak wealth-to-income ratio. *Table — Understand hump-shaped wealth accumulation across working and retirement years!:* | Modigliani LCH Metric (W_0=30k, Y=80k, N=30, M=15) | Formula | Verified Output | | --- | --- | --- | | Smoothed Annual Consumption (C) | (W_0 + N * Y) / (N + M) | 54,000.00 / yr | | Marginal Propensity to Consume Income (MPC_Y) | N / (N + M) | 0.6667 (MPC_W = 0.0222) | | Active-Worker Saving Rate (s = (Y - C) / Y) | (Y - C) / Y | 0.3250 (32.50% of Income) | | Peak Retirement Wealth-to-Income (W_ret / Y) | (M * C) / Y | 10.1250x Annual Income | - **Formula (Modigliani-Brumberg Smoothed Annual Consumption Formula)**: `=LET(w_in, B2, y_lb, B3, n_wk, B4, m_rt, B5, IF(OR(y_lb <= 0, n_wk <= 0, m_rt < 0, w_in + n_wk * y_lb <= 0), "Invalid Life-Cycle Input", ROUND((w_in + n_wk * y_lb) / (n_wk + m_rt), 2)))` - **Formula (Active-Worker Saving Rate & Peak Retirement Wealth Ratio Formula)**: `=IF(ISTEXT(E2), E2, ROUND((B3 - E2) / B3, 4))` ### Modigliani M-Squared (M2) Return & Grinold's Fundamental Law (IC * SQRT(BR)) - **URL**: https://sheets.arte-soft.com/en/learn/modigliani-m2-risk-adjusted-return-and-information-coefficient/ - **Summary**: Calculate a hypothetical volatility-scaled return and a simplified skill/breadth model using fictional, consistently measured inputs. *Table — Separate a volatility-scaled return from its benchmark difference:* | Portfolio / Active Metric | Cells & Inputs | Calculation | Institutional Output | | --- | --- | --- | --- | | Fund Return Rp & Vol Sigma_p | B2 = 16%, B3 = 20% | Rf B4 = 4% -> Sharpe = 0.60 | Higher raw risk than index | | Index Return Rb & Vol Sigma_B | B5 = 12%, B6 = 15% | M2 = 4% + 0.60 * 15% | Scaled return 13%; benchmark difference +1 percentage point | | Skill IC & Bet Breadth BR | B7 = 0.05, B8 = 100 bets | 0.05 * SQRT(100) | Information Ratio IR = 0.50 | | 4x Breadth (400 bets/yr) | B8 set to 400 | 0.05 * SQRT(400) | Model IR = 1.00 | - **Formula (Modigliani Risk-Adjusted Return M2 = Rf + Sharpe * Sigma_Benchmark)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B3<=0,B6<0),"Invalid inputs",ROUND(B4 + ((B2 - B4) / B3) * B6, 4)))` - **Formula (Grinold Fundamental Law of Active Management IR = IC * SQRT(Breadth))**: `=IF(COUNT(B7:B8)<>2,"Invalid inputs",IF(OR(ABS(B7)>1,B8<=0),"Invalid inputs",ROUND(B7 * SQRT(B8), 4)))` ### Mohr-Coulomb Soil Shear Strength & Infinite-Slope Factor of Safety - **URL**: https://sheets.arte-soft.com/en/learn/mohr-coulomb-soil-shear-strength-and-slope-safety-factor/ - **Summary**: Calculate a drained Mohr–Coulomb shear-strength example and, separately, an ideal dry cohesionless infinite-slope ratio. *Table — Use consistent strength parameters and separate the two models:* | Geotechnical Shear Metric | Formula | Strength: c′=15 kPa, sigma′=80 kPa, phi′=32°; separate dry slope: phi=32°, beta=24° | Over-Steepened beta = 36° | | --- | --- | --- | --- | | Mohr-Coulomb Shear Strength | B2 + B3 * TAN(RADIANS(B4)) | 15 + 49.99 = 64.99 kPa | 64.99 kPa | | Zero effective friction angle | tau = c′ when phi′ = 0 | 15.00 kPa (arithmetic limiting case) | Not an undrained analysis | | Independent dry-slope ratio | TAN(RADIANS(B6))/TAN(RADIANS(B5)) | 1.40 (model ratio) | 0.86 (model ratio) | - **Formula (Mohr-Coulomb Drained Shear Strength tau_f (kPa))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<0,B4<0,B4>=90),"Invalid inputs",ROUND(B2+B3*TAN(RADIANS(B4)),2)))` - **Formula (Dry Cohesionless Infinite-Slope Factor of Safety (FS))**: `=IF(OR(NOT(ISNUMBER(B5)),NOT(ISNUMBER(B6))),"Invalid inputs",IF(OR(B5<=0,B5>=90,B6<0,B6>=90),"Invalid inputs",ROUND(TAN(RADIANS(B6))/TAN(RADIANS(B5)),2)))` ### Mohr's Circle 2D Principal Stresses (sigma_1, sigma_2) & Max Shear Stress formulas - **URL**: https://sheets.arte-soft.com/en/learn/mohrs-circle-principal-stresses-and-maximum-in-plane-shear/ - **Summary**: Compute the two in-plane principal stresses and distinguish maximum in-plane shear from absolute three-dimensional maximum shear in plane stress. *Table — Transform stress components at one point:* | Mohr's Circle Quantity | Formula | Inputs: sx=80, sy=-40, txy=35 | Transformed Stress (MPa) | | --- | --- | --- | --- | | Circle Center sigma_avg | (B2 + B3) / 2 | (80 + (-40)) / 2 | 20.00 MPa | | Max In-Plane Shear (Radius R) | SQRT(((B2 - B3)/2)^2 + B4^2) | SQRT(60^2 + 35^2) = SQRT(4825) | 69.46 MPa | | Major Principal Stress sigma_1 | sigma_avg + R | 20 + 69.4622 | +89.46 MPa (Peak tension!) | | Minor Principal Stress sigma_2 | sigma_avg - R | 20 - 69.4622 | -49.46 MPa (Peak compression!) | - **Formula (Major Principal Stress sigma_1 = (sx + sy)/2 + SQRT(((sx - sy)/2)^2 + txy^2))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",ROUND(((B2 + B3) / 2) + SQRT((((B2 - B3) / 2) ^ 2) + (B4 ^ 2)), 2))` - **Formula (Maximum In-Plane Shear Stress tau_max (Mohr's Circle Radius))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",ROUND(SQRT((((B2 - B3) / 2) ^ 2) + (B4 ^ 2)), 2))` - **Formula (Smaller in-plane principal stress)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",ROUND(((B2 + B3) / 2) - SQRT((((B2 - B3) / 2) ^ 2) + (B4 ^ 2)), 2))` - **Formula (Absolute maximum shear for the plane-stress assumption)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",LET(stressMean,(B2+B3)/2,circleRadius,SQRT(((B2-B3)/2)^2+B4^2),ROUND((MAX(stressMean+circleRadius,0)-MIN(stressMean-circleRadius,0))/2,2)))` ### Molarity (M) & lab solution bench-prep mass formula (Grams = M × L × MW) - **URL**: https://sheets.arte-soft.com/en/learn/molarity-mass-and-stoichiometry-solution-prep-chemistry/ - **Summary**: Convert mass, molar mass and final solution volume to molarity, and calculate theoretical solute mass for a target concentration. *Table — Forward Molarity (mol/L) and reverse bench-scale solute mass (Grams):* | Stoichiometry Calculation (NaCl MW = 58.44 g/mol) | Formula | Result | | --- | --- | --- | | Moles of Solute (29.22 g / 58.44) | =A2 / B2 | 0.5000 mol | | Solution Molarity (29.22 g in 500 mL) | =(A2 / B2) / (C2 / 1000) | 1.0000 M (mol/L) | | Grams Needed for 500 mL of 0.15 M solution | =D2 * (C2 / 1000) * B2 | 4.3830 g NaCl | - **Formula (Molarity (mol/L) from solute grams, Molecular Weight, and volume in mL)**: `=IF(OR(COUNT(A2:D2)<>4,A2<0,B2<=0,C2<=0,D2<0),"Invalid solution inputs",ROUND((A2 / B2) / (C2 / 1000), 4))` - **Formula (Grams of dry reagent to weigh for Target Molarity D2 in C2 mL)**: `=IF(OR(COUNT(A2:D2)<>4,A2<0,B2<=0,C2<=0,D2<0),"Invalid solution inputs",ROUND(D2 * (C2 / 1000) * B2, 4))` ### Molski-Glinka ESED Notch Strain vs Neuber Formula - **URL**: https://sheets.arte-soft.com/en/learn/molski-glinka-strain-energy-density-notch-plasticity-vs-neuber-formula/ - **Summary**: Calculate Elastic Pseudo-Notch Stress K_t * S_nom, Molski-Glinka Equivalent Strain-Energy Density (ESED) Elastic-Plastic Notch Strain, Neuber Hyperbola Strain, and Plane-Stress/Plane-Strain Ratio. *Table — Bound thick-plate plane-strain notch plasticity between Molski-Glinka ESED and Neuber’s Rule!:* | Notch Plasticity Metric (S_nom=200 MPa, Kt=3.0, sigma_y=300 MPa, E=200 GPa) | Formula | Verified Output | | --- | --- | --- | | Elastic Pseudo-Stress S_e (MPa) | K_t * S_nom | 600.00 MPa (r = S_e / sigma_y = 2.0) | | Molski-Glinka ESED Notch Strain | eps_y * ((S_e / sigma_y)^2 + 1) / 2 | 0.003750 (0.001200 @ S_nom=80) | | Neuber Hyperbola Notch Strain | eps_y * (S_e / sigma_y)^2 | 0.006000 (0.001200 @ S_nom=80) | | Neuber / Glinka Strain Ratio | eps_Neuber / eps_Glinka | 1.60x (1.00x Elastic @ S_nom=80) | - **Formula (Molski-Glinka ESED Localized Notch-Root Strain Formula)**: `=LET(s_nm, B2, k_tc, B3, sg_y, B4, md_e, B5, IF(OR(s_nm <= 0, k_tc < 1, sg_y <= 0, md_e <= 0), "Invalid Notch Input", IF(s_nm >= sg_y, "Gross Section Yield (S_nom >= sigma_y)", LET(s_el, k_tc * s_nm, e_mp, md_e * 1000, IF(s_el <= sg_y, ROUND(s_el / e_mp, 6), ROUND((sg_y / (2 * e_mp)) * (((s_el / sg_y) ^ 2) + 1), 6))))))` - **Formula (Elastic Convergence Check (S_e <= sigma_y))**: `=IF(ISTEXT(E3), E3, ROUND(E4 / E3, 2))` ### Monod Bioreactor Microbial Growth, Doubling Time & Chemostat Washout - **URL**: https://sheets.arte-soft.com/en/learn/monod-microbial-growth-kinetics-and-chemostat-washout-rate/ - **Summary**: Explore Monod growth, intrinsic doubling time and the washout boundary of an ideal single-substrate chemostat without decay or biomass retention. *Table — Distinguish microbial growth from net biomass accumulation:* | Bioprocess Kinetic Metric | Formula | mu_max=0.60/h, Ks=4 g/L, S=12 g/L, Sin=20 g/L | At S = Ks = 4 g/L | | --- | --- | --- | --- | | Specific Growth Rate mu | (B2 * B4) / (B3 + B4) | 7.2 / 16 = 0.4500 hr^-1 | 0.3000 hr^-1 (0.5 * mu_max!) | | Cell Doubling Time t_d (hr) | LN(2) / ((B2 * B4) / (B3 + B4)) | 0.6931 / 0.45 = 1.54 hours | 2.31 hours | | Critical Washout Rate D_crit | (B2 * B5) / (B3 + B5) | 12 / 24 = 0.5000 hr^-1 ceiling | 0.5000 hr^-1 | - **Formula (Monod Specific Microbial Growth Rate mu = (mu_max * S) / (K_s + S))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<0),"Invalid inputs",ROUND(B2*B4/(B3+B4),4)))` - **Formula (Intrinsic doubling time at constant substrate)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<0),"Invalid inputs",IF(B4=0,"No finite doubling time",ROUND(LN(2)/(B2*B4/(B3+B4)),2))))` - **Formula (Ideal chemostat washout boundary)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<0),"Invalid inputs",ROUND(B2*B5/(B3+B5),4)))` ### Mononobe-Okabe Seismic Active Earth Pressure Coefficient (K_AE) Formula: Retaining Wall Thrust - **URL**: https://sheets.arte-soft.com/en/learn/mononobe-okabe-seismic-active-earth-pressure-coefficient-k-ae/ - **Summary**: Calculate earthquake pseudo-static retaining-wall thrust P_AE = 0.5 * gamma * H^2 * (1 - k_v) * K_AE and dynamic increment Delta_K_AE = K_AE - K_A using N. Mononobe & S. Okabe’s (1926/1929) AASHTO/Eurocode 8 wedge formula. *Table — Born from the 1923 Great Kanto Earthquake: how horizontal acceleration k_h tilts Coulomb’s soil wedge!:* | Seismic Acceleration Regime (phi=34°, delta=17°, gamma=18.5 kN/m^3, H=6 m) | Seismic Angle theta (deg) | K_AE & Total Wall Thrust P_AE (kN/m) | | --- | --- | --- | | Static Design (k_h = 0.00, k_v = 0.00) | 0.00° | K_A = 0.2564 \| P_A = 85.39 kN/m | | Moderate Seismic Zone (k_h = 0.20, k_v = 0.00) | 11.31° | K_AE = 0.4021 (+56.8%!) \| P_AE = 133.90 kN/m | | Extreme Shaking (theta >= phi -> Fluidized Slope!) | theta >= 34° | Wedge Instability Guard Triggered! | - **Formula (Mononobe-Okabe Seismic Active Coefficient K_AE (Vertical Wall, Level Granular Backfill))**: `=IF(OR(B2 <= 0, B2 >= 50, B3 < 0, B4 < 0, B5 >= 1, D2 >= B2), "Invalid Seismic Wedge (Requires theta < phi & kv < 1)", ROUND((COS(RADIANS(B2 - D2)) ^ 2) / (COS(RADIANS(D2)) * COS(RADIANS(B3 + D2)) * ((1 + SQRT(SIN(RADIANS(B2 + B3)) * SIN(RADIANS(B2 - D2)) / COS(RADIANS(B3 + D2)))) ^ 2)), 4))` - **Formula (Total Seismic Active Thrust P_AE = 0.5 * gamma * H^2 * (1 - k_v) * K_AE (kN/m))**: `=IF(OR(B2 <= 0, B2 >= 50, B3 < 0, B4 < 0, B5 >= 1, B6 <= 0, B7 <= 0, D2 >= B2), "Invalid Seismic Wedge Inputs", ROUND(0.5 * B6 * (B7 ^ 2) * (1 - B5) * ((COS(RADIANS(B2 - D2)) ^ 2) / (COS(RADIANS(D2)) * COS(RADIANS(B3 + D2)) * ((1 + SQRT(SIN(RADIANS(B2 + B3)) * SIN(RADIANS(B2 - D2)) / COS(RADIANS(B3 + D2)))) ^ 2))), 2))` ### Monostatic Radar Range Equation: Maximum Detection Range (Rmax) & Fourth-Power Law - **URL**: https://sheets.arte-soft.com/en/learn/monostatic-radar-range-equation-received-power-and-rmax/ - **Summary**: Calculate maximum monostatic radar detection range Rmax = ((Pt * G^2 * lambda^2 * sigma) / ((4*pi)^3 * Smin))^0.25 in kilometers and echo power Pr in dBm. *Table — Why doubling radar detection range requires 16x transmitter power!:* | X-Band Radar Configuration (G=1000, lam=0.03 m) | Peak Power Pt & Target RCS | Max Range Rmax (km) | Scaling Insight | | --- | --- | --- | --- | | Baseline 100 kW Transmitter | Pt = 100,000 W, sigma = 2.0 m^2 | 30.86 km | Echo at Rmax = -100 dBm | | 16x Power Upgrade (1.6 MW) | Pt = 1,600,000 W, sigma = 2.0 m^2 | 61.72 km (Exact 2.0x!) | 16^0.25 = 2x detection range | | Stealth Target (sigma = 0.0002 m^2) | 10,000x smaller RCS | 3.09 km (0.1x range!) | (10^-4)^0.25 = 10x range cut | - **Formula (Maximum Radar Detection Range Rmax (km))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Radar Parameters", ROUND((((B2 * (B3 ^ 2) * (B4 ^ 2) * B5) / (((4 * PI()) ^ 3) * B6)) ^ 0.25) / 1000, 2))` - **Formula (Minimum Detectable Signal Smin Converted to dBm (10 * LOG10(Smin * 1000)))**: `=IF(B6 <= 0, "Invalid Radar Parameters", ROUND(10 * LOG10(B6 * 1000), 1))` ### Monrad-Pelton Concentric Annulus Heat Transfer Formula (Double-Pipe Exchangers) - **URL**: https://sheets.arte-soft.com/en/learn/monrad-pelton-concentric-annulus-heat-transfer-nusselt-formula/ - **Summary**: Calculate inner-wall turbulent Nusselt number Nu_i = 0.020 * Re^0.8 * Pr^(1/3) * (D_o / D_i)^0.53 in jacketed double-pipe heat exchangers. *Table — Why substituting hydraulic diameter D_h = D_o - D_i into Dittus-Boelter misses inner-tube curvature!:* | Annulus Geometry (D_i = 0.025 m, Re = 28,000, Pr = 4.5) | Curvature Factor (D_o/D_i)^0.53 | Monrad-Pelton Nu_i | Design Check | | --- | --- | --- | --- | | D_o = 0.050 m (D_o / D_i = 2.0) | 1.4439 | 172.20 | Standard 2-in × 1-in Hairpin Exchanger | | D_o = 0.075 m (D_o / D_i = 3.0) | 1.7901 | 213.49 | Wide Jacket Annular Gap | | Invalid D_o <= D_i or Laminar Re < 10,000 | Geometry/Regime Error | "Requires Do > Di and Turbulent Re >= 10000" | Annulus Bounds Guard | - **Formula (Monrad-Pelton Inner-Wall Turbulent Annulus Nusselt Number Nu_i)**: `=IF(OR(B3 <= 0, B2 <= B3, B4 < 10000, B5 <= 0), "Requires Do > Di and Turbulent Re >= 10000", ROUND(0.020 * (B4 ^ 0.8) * (B5 ^ (1 / 3)) * ((B2 / B3) ^ 0.53), 2))` - **Formula (Annular Curvature Enhancement Multiplier (D_o / D_i)^0.53)**: `=IF(OR(B3 <= 0, B2 <= B3), "Requires Do > Di and Turbulent Re >= 10000", ROUND((B2 / B3) ^ 0.53, 4))` ### Calculation of Pi in Spreadsheets: Unit-Circle Scatter Dartboard & Archimedes Bounds - **URL**: https://sheets.arte-soft.com/en/learn/monte-carlo-and-archimedes-polygon-pi-approximation-formula/ - **Summary**: Approximate Pi visually using a Monte Carlo unit-quarter-circle scatter indicator (X^2 + Y^2 <= 1 -> Pi_hat = 4 * Hits / N) and bound Pi deterministically via Archimedes’ inscribed/circumscribed regular N-gon perimeters. *Table — Compare stochastic O(1 / SQRT(N)) Monte Carlo darts against Archimedes’ deterministic O(1 / N^2) polygons!:* | Method & Resolution N | Lower / Stochastic Estimate | Upper Deterministic Bound | Absolute Error vs PI() | | --- | --- | --- | --- | | Archimedes Hexagon (N = 6) | 6 * SIN(30°) = 3.000000 | 6 * TAN(30°) = 3.464102 | Width = 0.464102 | | Archimedes 96-gon (N = 96) | 96 * SIN(1.875°) = 3.141032 | 96 * TAN(1.875°) = 3.142715 | Width = 0.001683 | | Monte Carlo Sample (N = 10,000) | Pi_hat ~= 4 * (Hits / N) | 95% CI +/- 0.0322 | Converges as N^(-0.5) | - **Formula (Archimedes Inscribed Regular N-gon Lower Bound N * SIN(PI() / N))**: `=IF(B2 < 3, "Requires Polygon Sides N >= 3", ROUND(B2 * SIN(PI() / B2), 6))` - **Formula (Monte Carlo Unit-Quarter-Circle Pi Estimate 4 * Hits / N_trials)**: `=IF(OR(B4 <= 0, B3 < 0, B3 > B4), "Invalid Hit or Trial Count", ROUND(4 * (B3 / B4), 4))` ### PERT three-point estimates and a fixed path’s duration uncertainty - **URL**: https://sheets.arte-soft.com/en/learn/monte-carlo-expected-value-pert-3-point-estimate/ - **Summary**: Convert Optimistic, Most Likely, and Pessimistic estimates into PERT Weighted Mean (O + 4M + P)/6, Task SD (P - O)/6, and Quadrature Path Risk. *Table — Distinguish an estimate from a simulated project schedule:* | PERT Risk Formula | Calculation | Result | | --- | --- | --- | | PERT Expected Duration (6, 10, 20) | =(6 + 4*10 + 20) / 6 | 11.00 days | | Single-Task PERT SD | =(20 - 6) / 6 | 2.3333 days | | Critical Path SD (Task SDs 3d & 4d) | =SQRT(SUM({3;4}^2)) | 5.00 days under independence | - **Formula (PERT 3-point expected value and Critical Path SD formulas)**: `=ROUND((A2 + 4 * B2 + C2) / 6, 4)` - **Formula (Combined Critical Path Standard Deviation across independent tasks)**: `=ROUND(SQRT(SUM(E2:E3 ^ 2)), 4)` - **Formula (Single-task standard-deviation estimate)**: `=ROUND((C2-A2)/6,4)` ### Convert month name ("April" or "Apr") to month number (1–12) - **URL**: https://sheets.arte-soft.com/en/learn/month-number-from-month-name/ - **Summary**: Match the first 3 letters of any English month name against a 12-month array constant in XMATCH for locale-independent 1–12 numbers. *Table — Why XMATCH on 3-letter prefixes beats DATEVALUE("1-" & A2):* | MonthText (A) | 3-Letter Prefix | Month Number | 2026 Start Date | | --- | --- | --- | --- | | September | Sep | 9 | 2026-09-01 | | apr | apr | 4 | 2026-04-01 | - **Formula (Month-number and calendar-date formulas)**: `=IFNA(XMATCH(LEFT(TRIM(A2), 3), {"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"}), "Invalid month")` - **Formula (Display the first-of-month date as text)**: `=TEXT(DATE(2026, XMATCH(LEFT(TRIM(A3), 3), {"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"}), 1), "yyyy-mm-dd")` ### Calculate monthly savings needed to reach a financial goal (PMT) - **URL**: https://sheets.arte-soft.com/en/learn/monthly-savings-needed-for-goal-pmt/ - **Summary**: Pass GoalAmount as the 4th fv argument of PMT (with existing savings as negative pv) to solve required monthly contributions. *Table — Use PMT's 4th fv argument for sinking-fund targets:* | GoalAmt (A) | AnnualRate (B) | Months (C) | StartSaved (D) | Monthly Deposit | | --- | --- | --- | --- | --- | | 50000 | 0.06 | 60 | 0 | 716.64 | | 50000 | 0.06 | 60 | 5000 | 619.98 | | 50000 | 0 | 60 | 0 | 833.33 | - **Formula (Required monthly contribution formula)**: `=ROUND(-PMT(B2 / 12, C2, -D2, A2), 2)` - **Formula (Verify ending balance with FV)**: `=ROUND(FV(B2 / 12, C2, PMT(B2 / 12, C2, -D2, A2), -D2), 2)` ### Global Moran’s I Spatial Autocorrelation and Null Expectation Formula - **URL**: https://sheets.arte-soft.com/en/learn/morans-i-global-spatial-autocorrelation-and-expected-null-formula/ - **Summary**: Calculate Global Moran’s I = (N / S_0) * (SUM_ij w_ij * z_i * z_j) / SUM(z_i^2) across contiguous regions and benchmark against exact finite-sample expectation E[I] = -1 / (N - 1). *Table — Catch the finite-sample trap: spatial randomness has E[I] = -1 / (N - 1), NOT zero!:* | Spatial Corridor Metric (N = 4) | Exact Formula | Sample Output | | --- | --- | --- | | Centered Sum of Squares SUM(z_i^2) | SUM((x_i - x_bar)^2) | 328.0000 | | Spatial Cross-Product SUM(z_i * wz_i) | SUM_i z_i * (SUM_j w_ij * z_j) | +192.0000 (Clustered) | | Global Moran’s I Statistic | (N / S_0) * CrossProd / SUM(z_i^2) | +0.3902 | | Exact Spatial-Randomness Null E[I] | -1 / (N - 1) | -0.3333 (Checkerboard -> -0.9106!) | - **Formula (Global Moran’s I Spatial Autocorrelation Formula)**: `=LET(n_reg, ROWS(B2:B5), s_0, SUM(E2:E5), ss_z, SUMPRODUCT(C2:C5, C2:C5), IF(OR(n_reg <= 1, s_0 <= 0, ss_z <= 0), "Constant Map or Disconnected Graph", ROUND((n_reg / s_0) * (SUMPRODUCT(C2:C5, D2:D5) / ss_z), 4)))` - **Formula (Checkerboard Dispersion Test (Negative Spatial Autocorrelation))**: `=ROUND(-1 / (ROWS(B2:B5) - 1), 4)` ### Morisita-Horn Overlap Index Formula: Sample-Size-Robust Community Similarity & Dissimilarity - **URL**: https://sheets.arte-soft.com/en/learn/morisita-horn-community-abundance-overlap-similarity-index/ - **Summary**: Compare two ecological assemblages, immune TCR repertoires, or dietary niches using Henry S. Horn’s (1966) Morisita-Horn Overlap Index C_MH = 2 * SUM(p_i * q_i) / (SUM(p_i^2) + SUM(q_i^2)) on [0, 1]. *Table — Why Morisita-Horn dominates Jaccard and Bray-Curtis when sequencing depths or sample sizes differ!:* | Taxon / Clonotype | Site A Count x_i (N_A = 100) | Site B Count y_i (N_B = 200) | Share p_i | Share q_i | Product p_i * q_i | | --- | --- | --- | --- | --- | --- | | Taxon 1 | 50 | 80 | 0.50 | 0.40 | 0.2000 | | Taxon 2 | 30 | 60 | 0.30 | 0.30 | 0.0900 | | Taxon 3 | 15 | 50 | 0.15 | 0.25 | 0.0375 | | Taxon 4 | 5 | 10 | 0.05 | 0.05 | 0.0025 | - **Formula (Morisita-Horn Community Overlap Similarity Index C_MH (0 to 1))**: `=IF(OR(MIN(B2:C5) < 0, SUM(B2:B5) <= 0, SUM(C2:C5) <= 0), "Requires Non-Negative Counts & Positive Sample Totals", ROUND((2 * SUMPRODUCT(B2:B5 / SUM(B2:B5), C2:C5 / SUM(C2:C5))) / (SUMPRODUCT((B2:B5 / SUM(B2:B5)) ^ 2) + SUMPRODUCT((C2:C5 / SUM(C2:C5)) ^ 2)), 4))` - **Formula (Morisita-Horn Beta-Diversity Dissimilarity 1 - C_MH)**: `=IF(OR(MIN(B2:C5) < 0, SUM(B2:B5) <= 0, SUM(C2:C5) <= 0), "Requires Non-Negative Counts & Positive Sample Totals", ROUND(1 - (2 * SUMPRODUCT(B2:B5 / SUM(B2:B5), C2:C5 / SUM(C2:C5))) / (SUMPRODUCT((B2:B5 / SUM(B2:B5)) ^ 2) + SUMPRODUCT((C2:C5 / SUM(C2:C5)) ^ 2)), 4))` ### Morison Equation Offshore Pile Wave Drag & Inertia Formula - **URL**: https://sheets.arte-soft.com/en/learn/morison-equation-offshore-pile-wave-drag-and-inertia-hydrodynamic-force-formula/ - **Summary**: Calculate Peak Wave Drag Force Amplitude F_D (kN/m), Peak Added-Mass Inertia Force Amplitude F_I (kN/m), Naive In-Phase Sum (kN/m), and True Phase-Accurate Peak Morison Force F_max (kN/m). *Table — Wave velocity u(t) and acceleration du/dt are 90° out of phase—NEVER simply add peak drag F_D + peak inertia F_I!:* | Morison Wave-Force KPI (D=1.2 m, Cd=1.05, Cm=2.0, u=2.4 m/s, a=1.5 m/s²) | Formula | Verified Output | | --- | --- | --- | | Peak Drag Force FD (kN/m) | 0.5 * rho * Cd * D * (u_max^2) / 1000 | 3.72 kN/m (15.50 @ D = 5.0 m) | | Peak Inertia Force FI (kN/m) | rho * Cm * (PI()*D^2/4) * a_max / 1000 | 3.48 kN/m (60.38 @ D = 5.0 m!) | | Naive Unphased Sum FD+FI (kN/m) | Peak_Drag_FD + Peak_Inertia_FI | 7.20 kN/m (75.88 @ D = 5.0 m) | | True Phase-Max Morison Force | IF(FI >= 2*FD, FI, FD + FI^2/(4*FD)) | 4.53 kN/m (60.38 @ D = 5.0 m!) | - **Formula (Exact Phase-Maximized Morison Wave Load per Meter Formula)**: `=LET(rh_w, B2, dm_p, B3, cd_f, B4, cm_f, B5, um_x, B6, am_x, B7, IF(OR(rh_w <= 950, dm_p <= 0, cd_f < 0.4, cd_f > 2.5, cm_f < 1, cm_f > 2.5, um_x <= 0, am_x <= 0), "Invalid Morison Input", LET(fd_k, (0.5 * rh_w * cd_f * dm_p * (um_x ^ 2)) / 1000, fi_k, (rh_w * cm_f * (PI() * (dm_p ^ 2) / 4) * am_x) / 1000, ROUND(IF(fi_k >= 2 * fd_k, fi_k, fd_k + (fi_k ^ 2) / (4 * fd_k)), 2))))` - **Formula (5.0 m Offshore Wind Monopile Inertia-Dominance Regime Shift Check (Set Diameter D = 5.0 m))**: `=IF(ISTEXT(E5), E5, ROUND(((0.5 * B2 * B4 * B3 * (B6 ^ 2)) + (B2 * B5 * (PI() * (B3 ^ 2) / 4) * B7)) / 1000, 2))` ### Morse Fall Scale (MFS): Inpatient Fall Risk Score (0–125) & Prevention Tier - **URL**: https://sheets.arte-soft.com/en/learn/morse-fall-scale-inpatient-fall-risk-score-formula/ - **Summary**: Calculate the 0–125 point Janice Morse Fall Scale from 3-month fall history (+25), secondary diagnosis (+15), ambulatory aid (0/15/30), IV/heparin lock (+20), gait (0/10/20), and mental status (0/15). *Table — Quantify acute-care inpatient fall risk systematically at admission and shift change!:* | Morse Total Score | Fall Risk Classification | Example Clinical Profile | Nursing Fall Bundle | | --- | --- | --- | --- | | 0–24 points | Low Fall Risk (0–24) | No fall hx, Secondary Dx (+15), Normal gait -> 15 pts | Universal safe-environment precautions | | 25–44 points | Moderate Fall Risk (25–44) | Secondary Dx (+15) + IV Lock (+20) -> 35 pts | Standard fall-prevention plan | | >= 45 points (Max 125) | High Fall Risk (>= 45) | Fall Hx (+25), Sec Dx (+15), Walker (+15), Weak Gait (+10) -> 65 pts | High-risk fall wrist band, bed alarm, supervised ambulation | - **Formula (Total Morse Fall Scale Score (0 to 125 Points))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, AND(B4 <> 0, B4 <> 15, B4 <> 30), B5 < 0, B5 > 1, AND(B6 <> 0, B6 <> 10, B6 <> 20), AND(B7 <> 0, B7 <> 15)), "Invalid Morse Inputs", (B2 * 25) + (B3 * 15) + B4 + (B5 * 20) + B6 + B7)` - **Formula (Morse Fall Risk Prevention Tier (< 25, 25–44, >= 45))**: `=IF(((B2 * 25) + (B3 * 15) + B4 + (B5 * 20) + B6 + B7) >= 45, "High Fall Risk (>= 45: High-Risk Fall Bundle)", IF(((B2 * 25) + (B3 * 15) + B4 + (B5 * 20) + B6 + B7) >= 25, "Moderate Fall Risk (25-44)", "Low Fall Risk (0-24)"))` ### Mortensen-Pissarides Beveridge Curve & Hosios Formula - **URL**: https://sheets.arte-soft.com/en/learn/mortensen-pissarides-beveridge-curve-and-hosios-matching-formula/ - **Summary**: Calculate Cobb-Douglas job-finding rate mu * theta^(1 - eta), vacancy-filling rate mu * theta^(-eta), Beveridge steady-state unemployment u*, and Hosios efficiency. *Table — Derive the downward-sloping Beveridge Curve and Hosios externality balance:* | DMP Search Metric (s=0.03, mu=0.45, eta=0.50) | theta = 1.00 | theta = 2.25 (Tight Market) | | --- | --- | --- | | Worker Job-Finding Rate f(theta) | 0.4500 / mo | 0.6750 / mo | | Firm Vacancy-Filling Rate q(theta) | 0.4500 / mo | 0.3000 / mo | | Beveridge Steady-State u* | 0.0625 (6.25%) | 0.0426 (4.26%) | | Hosios Efficiency Check (beta vs eta) | beta = 0.50 -> Efficient | beta > 0.50 -> Excess u* | - **Formula (Steady-State Beveridge Curve Unemployment Rate u* Formula)**: `=LET(s_sp, B2, mu_m, B3, eta_m, B4, th_vu, B5, IF(OR(s_sp <= 0, mu_m <= 0, eta_m <= 0, eta_m >= 1, th_vu <= 0), "Invalid DMP Input", LET(f_jb, mu_m * POWER(th_vu, 1 - eta_m), ROUND(s_sp / (s_sp + f_jb), 4))))` - **Formula (Hosios Congestion-Externality Efficiency Diagnostic Formula)**: `=LET(eta_m, B4, bt_bg, B6, IF(OR(eta_m <= 0, eta_m >= 1, bt_bg <= 0, bt_bg >= 1), "Invalid DMP Input", IF(ABS(bt_bg - eta_m) < 1E-9, "Efficient (Hosios Condition Met)", IF(bt_bg > eta_m, "Excess Unemployment (beta > eta)", "Over-Vacancy Congestion (beta < eta)"))))` ### Mortgage CPR to SMM formula: Single Monthly Mortality & pool prepayments - **URL**: https://sheets.arte-soft.com/en/learn/mortgage-cpr-to-smm-single-monthly-mortality-prepayment/ - **Summary**: Convert annualized Constant Prepayment Rate (CPR) to monthly Single Monthly Mortality (SMM) and model unscheduled mortgage pool principal prepayments. *Table — Why SMM is 1 - (1 - CPR)^(1/12) instead of CPR / 12!:* | Pool Prepayment Metric | Formula | 6% CPR ($500k Pool, $4k Sched Prin) | | --- | --- | --- | | Single Monthly Mortality (SMM) | 1 - (1 - 0.06)^(1/12) | 0.005143 (0.5143% / month) | | Unscheduled Prepayment ($) | ($500,000 - $4,000) * SMM | $2,550.93 | | Inverse: SMM = 1.0% -> Annual CPR | 1 - (1 - 0.01)^12 | 11.36% CPR | - **Formula (Convert annualized CPR to monthly SMM)**: `=IF(OR(NOT(ISNUMBER(A2)),A2<0,A2>1),"Invalid inputs",ROUND(1 - (1 - A2) ^ (1 / 12), 6))` - **Formula (Calculate monthly unscheduled principal prepayment dollars)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,A2>1,B2<0,C2<0,C2>B2),"Invalid inputs",ROUND((B2 - C2) * (1 - (1 - A2) ^ (1 / 12)), 2))` - **Formula (Convert monthly SMM back to annualized CPR)**: `=IF(OR(NOT(ISNUMBER(D2)),D2<0,D2>1),"Invalid inputs",ROUND(1 - (1 - D2) ^ 12, 4))` ### Illustrative mortgage payment caps and loan principal with PV - **URL**: https://sheets.arte-soft.com/en/learn/mortgage-debt-to-income-dti-ratio-and-max-loan/ - **Summary**: Combine assumed housing and debt-payment caps, subtract housing costs, and model loan principal. *Table — Enforce the stricter of Front-End (28%) and Back-End (36%) DTI caps:* | Underwriting Step ($10,000/mo Income, 6% nominal annual rate, 30 Yr) | Other Debt = $600 | Other Debt = $1,100 | | --- | --- | --- | | Front-End Housing Cap (28%) | $2,800 (Binding!) | $2,800 | | Back-End Housing Cap (36% - Debt) | $3,000 | $2,500 (Binding!) | | Max P&I (less $550 Tax/Ins/HOA) | $2,250 / mo | $1,950 / mo | | Max Qualified Loan = PV(6%/12, 360, -PI) | $375,281.13 | $325,243.65 | - **Formula (Illustrative mortgage principal and DTI-cap formulas)**: `=LET(maxPiti, MIN(A2 * 0.28, A2 * 0.36 - B2), maxPi, MAX(0, maxPiti - C2), ROUND(PV(D2 / 12, E2 * 12, -maxPi), 2))` - **Formula (Binding maximum monthly housing payment (PITI + HOA))**: `=ROUND(MIN(A2 * 0.28, A2 * 0.36 - B2), 2)` ### Mortgage refinance break-even formula: monthly savings, payback months & net gain - **URL**: https://sheets.arte-soft.com/en/learn/mortgage-refinance-break-even-months-and-net-savings/ - **Summary**: Compare equal-term fixed-rate loan payments and estimate simple payment-savings payback for upfront refinancing costs. *Table — Compare the same principal and remaining term:* | Refinance Metric ($300k, 300 mos left) | Formula | Result | | --- | --- | --- | | Current Monthly Payment (6.75%) | =ROUND(-PMT(B2/12, D2, A2), 2) | $2,072.73 | | Refinanced Payment (5.50%) | =ROUND(-PMT(C2/12, D2, A2), 2) | $1,842.26 ($230.47/mo saved) | | Closing-Cost Break-Even ($4,200) | =ROUNDUP(E2 / MonthlySavings, 0) | 19 months (1 yr 7 mos) | | Net Lifetime Savings (After Fees) | =ROUND(MonthlySavings * D2 - E2, 2) | $64,941.63 | - **Formula (Closing-cost break-even months and monthly payment savings formulas)**: `=LET(saving,-PMT(B2/12,D2,A2)+PMT(C2/12,D2,A2),IF(E2<0,"Invalid closing costs",IF(saving<=0,"No positive payment savings",ROUNDUP(E2/saving,0))))` - **Formula (Net lifetime savings over the remaining loan term (net of closing costs))**: `=ROUND((-PMT(B2 / 12, D2, A2) - (-PMT(C2 / 12, D2, A2))) * D2 - E2, 2)` ### Morton Number (Mo) & Grace Diagram Gas-Bubble Fluid Property Index - **URL**: https://sheets.arte-soft.com/en/learn/morton-number-and-grace-bubble-rise-shape-regime-formula/ - **Summary**: Calculate the dimensionless fluid-property Morton Number Mo = g * μ_L^4 * (ρ_L - ρ_G) / (ρ_L^2 * σ^3) and Grace diagram abscissa LOG10(Mo) spanning 14 orders of magnitude from clean water (-10.6) to viscous syrups (+1.1). *Table — Why μ_L^4 makes Morton Number span 14 orders of magnitude across industrial liquids!:* | Gas-Liquid Bioreactor / Column System | Viscosity μL (Pa·s) | Grace Parameter LOG10(Mo) | Characteristic Bubble Behavior | | --- | --- | --- | --- | | Air in Clean Water at 20 °C | 0.001 Pa·s | -10.59 (Mo = 2.55E-11) | Low-Mo Wobbling Ellipsoidal Regime | | Mineral Oil Absorber | 0.050 Pa·s | -3.38 (Mo = 4.17E-4) | Intermediate Viscous Damping | | Concentrated Glycerol / Polymer Melt | 0.800 Pa·s | +1.11 (Mo = 12.82) | High-Mo Laminar Dimpled / Skirted Cap | - **Formula (Grace Diagram Logarithmic Morton Index LOG10(Mo))**: `=IF(OR(B2 <= 0, B3 <= B4, B4 < 0, B5 <= 0), "Invalid Fluid Properties", ROUND(LOG10((9.80665 * (B2 ^ 4) * (B3 - B4)) / ((B3 ^ 2) * (B5 ^ 3))), 2))` - **Formula (Fluid Viscosity Regime Classification on Grace Bubble Map)**: `=IF(OR(B2 <= 0, B3 <= B4, B4 < 0, B5 <= 0), "Invalid Fluid Properties", IF(LOG10((9.80665 * (B2 ^ 4) * (B3 - B4)) / ((B3 ^ 2) * (B5 ^ 3))) < -6, "Low-Mo Water-Like Regime (Wobbling Ellipsoids)", IF(LOG10((9.80665 * (B2 ^ 4) * (B3 - B4)) / ((B3 ^ 2) * (B5 ^ 3))) <= -1, "Intermediate-Mo Regime", "High-Mo Viscous Regime (Smooth / Skirted Caps)")))` ### Moseley's Law Characteristic K-Alpha X-Ray Energy & Atomic Number Z - **URL**: https://sheets.arte-soft.com/en/learn/moseley-characteristic-x-ray-atomic-number-and-rutherford-cross-section/ - **Summary**: Calculate characteristic K-alpha X-ray photon energy E_Ka = (3/4) * R_inf * (Z - 1)^2 (keV), wavelength lambda (Angstroms), and inverse elemental identification Z = 1 + SQRT(E_eV / 10.2043) for XRF/EDS spectroscopy. *Table — Identify chemical elements from EDS/XRF K-alpha X-ray fluorescence peaks!:* | X-Ray Anode / XRF Element | Atomic Number Z | Moseley K-alpha E (keV) | Wavelength lambda = 12.3984 / E (A) | | --- | --- | --- | --- | | Copper XRD Tube (Cu) | Z = 29 | 8.000 keV | 1.550 Angstrom | | Molybdenum XRD Tube (Mo) | Z = 42 | 17.153 keV | 0.723 Angstrom | | Tungsten CT Anode (W) | Z = 74 | 54.379 keV | 0.228 Angstrom | - **Formula (Moseley K-Alpha X-Ray Photon Energy (keV) from Atomic Number Z)**: `=IF(B2 < 2, "Requires Atomic Number Z >= 2", ROUND((10.2043 * ((B2 - 1) ^ 2)) / 1000, 3))` - **Formula (Inverse EDS/XRF Elemental Atomic Number Z from Peak Energy (keV))**: `=IF(B3 <= 0, "Invalid Photon Energy", ROUND(1 + SQRT((B3 * 1000) / 10.2043), 0))` ### MOSFET Drain Current (Cutoff, Triode & Saturation) & gm formulas - **URL**: https://sheets.arte-soft.com/en/learn/mosfet-drain-current-triode-linear-and-saturation-regions/ - **Summary**: Model square-law NMOS transistor drain current across Cutoff (V_GS <= V_th), Triode/Linear (V_DS < V_OV), and Saturation (V_DS >= V_OV) with IFS plus transconductance g_m. *Table — An ideal long-channel NMOS square-law model:* | MOSFET Operating Region | Voltage Condition (V_th = 0.7 V) | Drain Current Formula | k_n = 2 mA/V^2, V_GS = 2.5 V | | --- | --- | --- | --- | | Cutoff (OFF) | V_GS <= 0.7 V | 0 mA | 0.00 mA (at V_GS = 0.5 V) | | Triode / Linear Switch | V_DS = 1.0 V < V_OV (1.8 V) | k_n * (V_OV*V_DS - 0.5*V_DS^2) | 2.60 mA | | Saturation Amplifier | V_DS = 3.0 V >= V_OV (1.8 V) | 0.5 * k_n * (V_GS - V_th)^2 | 3.24 mA (g_m = 3.60 mA/V) | - **Formula (Unified 3-Region Shichman-Hodges NMOS Drain Current I_D (mA))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B4<=0,B5<0),"Invalid inputs",IFS(B3 <= B4, 0, B5 < (B3 - B4), ROUND(B2 * (((B3 - B4) * B5) - 0.5 * (B5 ^ 2)), 4), TRUE, ROUND(0.5 * B2 * ((B3 - B4) ^ 2), 4))))` - **Formula (Small-signal transconductance across all three regions)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B4<=0,B5<0),"Invalid inputs",IF(B3<=B4,0,ROUND(B2*MIN(B5,B3-B4),4))))` - **Formula (Display the selected operating region)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B4<=0,B5<0),"Invalid inputs",IF(B3<=B4,"Cutoff",IF(B5 0, M > 0 | - **Formula (Free-Nucleus Gamma Recoil Kinetic Energy E_R (meV))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Nuclear Inputs", ROUND(((B2 ^ 2) / (2 * B3 * 931494100)) * 1000, 4))` - **Formula (Mössbauer Spectrometer Doppler Drive Velocity v (mm/s))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Nuclear Inputs", ROUND((B4 / B2) * 299792458000, 3))` ### Find the most frequently occurring text value in a column - **URL**: https://sheets.arte-soft.com/en/learn/most-frequent-text-value-in-range/ - **Summary**: Pair a COUNTIF frequency helper column with XLOOKUP(MAX(...)) to return the modal text category—where numeric MODE fails. *Table — Why MODE.SNGL returns #N/A on text categories:* | Reason (A) | Freq Helper (B) | Top Category? | | --- | --- | --- | | Billing | 3 | Winner (MAX = 3) | | Login | 1 | | | Billing | 3 | | | Export | 1 | | | Billing | 3 | | - **Formula (Modal text value and peak frequency formulas)**: `=XLOOKUP(MAX(B2:B6), B2:B6, A2:A6)` - **Formula (Peak occurrence count)**: `=MAX(B2:B6)` ### Find the Most Common Text Values (#1 Categorical Mode & Ranked Runner-Ups) - **URL**: https://sheets.arte-soft.com/en/learn/most-frequent-text-value-top-categorical-mode-index-match-countif/ - **Summary**: Extract the most frequent text label and second-most common category—where numeric MODE returns #N/A—using COUNTIF frequencies, MAX, MATCH, INDEX, and FILTER. *Table — Why MODE.SNGL fails on text columns and how frequency ranking works:* | Rank | Ticket Category | Occurrences | Extraction Logic | | --- | --- | --- | --- | | #1 Top Category | Billing | 3 | INDEX(A2:A8, MATCH(MAX(B2:B8), B2:B8, 0)) | | #2 Runner-Up | API | 2 | Top match after FILTER(..., A2:A8 <> "Billing") | | Remaining | SSO, Export | 1 each | Tied at frequency 1 | - **Formula (#1 Most Common Text Value)**: `=INDEX(A2:A8, MATCH(MAX(B2:B8), B2:B8, 0))` - **Formula (#2 Second Most Common Text Value via LET + FILTER)**: `=LET(topCat, INDEX(A2:A8, MATCH(MAX(B2:B8), B2:B8, 0)), remCats, FILTER(A2:A8, A2:A8 <> topCat), remCnts, FILTER(B2:B8, A2:A8 <> topCat), INDEX(remCats, MATCH(MAX(remCnts), remCnts, 0)))` ### List Most Frequently Occurring Numbers & Bimodal Ties (UNIQUE, COUNTIF & SORTBY) - **URL**: https://sheets.arte-soft.com/en/learn/most-frequently-occurring-numbers-top-k-numeric-modes-tie-safe/ - **Summary**: Extract every tied numeric mode, rank distinct numbers by occurrence count, and compute modal frequency share without MODE.SNGL hiding bimodal clusters. *Table — Why MODE.SNGL misleads on bimodal defect sizes and order quantities:* | Pack Size | Occurrences in 9 Orders | Frequency Share | Modal Status | | --- | --- | --- | --- | | 12 | 3 | 33.33% | Tied Top Mode #1 | | 15 | 3 | 33.33% | Tied Top Mode #2 | | 18 | 1 | 11.11% | Singleton | | 20 / 25 | 1 each | 11.11% each | Singleton | - **Formula (Count & Extract All Tied Numeric Modes)**: `=ROWS(UNIQUE(FILTER(A2:A10, B2:B10 = MAX(B2:B10))))` - **Formula (Retrieve Nth Tied Numeric Mode & Modal Share %)**: `=INDEX(SORT(UNIQUE(FILTER(A2:A10, B2:B10 = D3))), 2)` ### Mostinski Reduced-Pressure Kettle Reboiler Boiling h & CHF Formula - **URL**: https://sheets.arte-soft.com/en/learn/mostinski-reduced-pressure-kettle-reboiler-nucleate-boiling-h-and-chf-formula/ - **Summary**: Calculate Reduced Pressure P_r = P / P_c, Mostinski Pressure Factor F_p, Nucleate Pool-Boiling Coefficient h_nb (W/m²·K), and Mostinski Maximum Critical Heat Flux q_crit (kW/m²). *Table — Estimate kettle reboiler h_nb from Critical Pressure P_c (in kPa!) alone—no surface tension or liquid viscosity tables needed!:* | Mostinski Reboiler KPI (Propane Pc = 4,250 kPa, P = 850 kPa, q = 40,000 W/m²) | Formula | Verified Output | | --- | --- | --- | | Reduced Pressure P_r | Operating_P_kPa / Critical_Pc_kPa | 0.200 (0.400 @ P = 1,700 kPa) | | Mostinski Pressure Factor F_p | 1.8*Pr^0.17 + 4*Pr^1.2 + 10*Pr^10 | 1.949 (2.873 @ P = 1,700 kPa) | | Nucleate Boiling h_nb (W/m²·K) | 0.00417 * (Pc^0.69) * (q^0.70) * F_p | 4,314.89 W/m²·K (6,361.75 @ 1,700 kPa) | | Mostinski Critical Flux (kW/m²) | 0.367 * Pc * (Pr^0.35) * ((1 - Pr)^0.90) | 726.43 kW/m² (714.68 @ 1,700 kPa) | - **Formula (Mostinski Corresponding-States Boiling Coefficient Formula)**: `=LET(pc_k, B2, op_k, B3, qf_w, B4, IF(OR(pc_k < 500, op_k < 0.005 * pc_k, op_k > 0.9 * pc_k, qf_w <= 0), "Invalid Mostinski Input", LET(pr_f, op_k / pc_k, fp_m, 1.8 * (pr_f ^ 0.17) + 4 * (pr_f ^ 1.2) + 10 * (pr_f ^ 10), ROUND(0.00417 * (pc_k ^ 0.69) * (qf_w ^ 0.7) * fp_m, 2))))` - **Formula (Higher-Pressure Column Operation Boiling Boost Check (Set Operating P = 1,700 kPa))**: `=IF(ISTEXT(E4), E4, LET(pr_f, B3 / B2, ROUND(0.367 * B2 * (pr_f ^ 0.35) * ((1 - pr_f) ^ 0.9), 2)))` ### Mott-Gurney Space-Charge-Limited Current (SCLC) Law for OLEDs & Perovskites - **URL**: https://sheets.arte-soft.com/en/learn/mott-gurney-space-charge-limited-current-sclc-semiconductor/ - **Summary**: Calculate trap-free solid-state space-charge-limited current density J = (9/8) * eps_r * eps_0 * mu * (V^2 / L^3) (A/m^2) to extract carrier mobility in organic OLEDs, polymers, and halide perovskites. *Table — Why OLED and perovskite current scales as V^2 / L^3 instead of Ohm’s Law!:* | Applied Bias & Film Thickness (eps_r = 3.5, mu = 1e-7 m^2/Vs) | Scaling Law V^2 / L^3 | Mott-Gurney Current J (A/m^2) | mA/cm^2 Equivalent | | --- | --- | --- | --- | | V = 5.0 V across L = 100 nm (1e-7 m) | 2.50e22 V^2/m^3 | 87,158.41 A/m^2 | 8,715.8 mA/cm^2 | | Doubled Bias V = 10.0 V (L = 100 nm) | 1.00e23 V^2/m^3 (4x) | 348,633.64 A/m^2 | 34,863.4 mA/cm^2 | | Doubled Thickness L = 200 nm at V = 5.0 V | 3.125e21 V^2/m^3 (1/8x) | 10,894.80 A/m^2 | 1,089.5 mA/cm^2 | - **Formula (Mott-Gurney SCLC Current Density J (A/m^2) = (9/8) * eps_r * eps_0 * mu * (V^2 / L^3))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid SCLC Inputs", ROUND((9 / 8) * B2 * 0.0000000000088541878 * B3 * ((B4 ^ 2) / (B5 ^ 3)), 2))` - **Formula (Extracted SCLC Carrier Mobility mu (cm^2/(V*s)) From Measured Current Density)**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid SCLC Inputs", ROUND(B3 * 10000, 6))` ### Moving average formula: smooth noisy weekly data with a trailing N-period window - **URL**: https://sheets.arte-soft.com/en/learn/moving-average-formula/ - **Summary**: Calculate a dynamic trailing N-period moving average with TAKE and AVERAGE, and emit NA() on incomplete warm-up rows. *Table — Smooth week-to-week spikes without lag bugs:* | Week (A) | Orders (B) | 3-Wk Moving Avg | WindowN (D2) | | --- | --- | --- | --- | | W1 | 110 | #N/A (warm-up) | 3 | | W2 | 130 | #N/A (warm-up) | | | W3 | 120 | 120.00 | | | W4 | 150 | 133.33 | | | W5 | 160 | 143.33 | | - **Formula (Latest N-period moving average with TAKE)**: `=ROUND(AVERAGE(TAKE(B2:B6, -D2)), 2)` - **Formula (Mark incomplete warm-up rows with NA())**: `=IF(ROWS($B$2:B3) < $D$2, NA(), AVERAGE(B2:B3))` ### Round to Nearest Multiple (MROUND Pattern) vs. Up/Down Multiples (CEILING & FLOOR) - **URL**: https://sheets.arte-soft.com/en/learn/mround-round-to-nearest-arbitrary-multiple-vs-ceiling-and-floor/ - **Summary**: Round quantities, billing increments, and unit prices to the nearest, next-higher, or next-lower multiple of 5, 0.25, or carton pack size using ROUND, CEILING, and FLOOR. *Table — Choosing between nearest, upward, and downward multiple rounding:* | Raw Input | Multiple (M) | Nearest: ROUND(x/M,0)*M | Up: CEILING(x,M) | Down: FLOOR(x,M) | | --- | --- | --- | --- | --- | | 37 units | 5 | 35 | 40 | 35 | | 38 units | 5 | 40 | 40 | 35 | | 37.5 midpoint | 5 | 40 | 40 | 35 | | 14.38 price | 0.25 | 14.50 | 14.50 | 14.25 | - **Formula (Nearest Multiple Formula (Universal MROUND Equivalent))**: `=ROUND(B2 / C2, 0) * C2` - **Formula (Upward Pack-Size & Downward Tier-Multiple Formulas)**: `=CEILING(B2, C2)` ### MRP Gross-to-Net & Lot-Multiple Planned Order Formula - **URL**: https://sheets.arte-soft.com/en/learn/mrp-gross-to-net-projected-balance-and-lot-multiple-order-formula/ - **Summary**: Calculate Joseph Orlicky’s MRP Unreplenished Projected Balance, Safety-Stock-Protected Net Requirement MAX(0, Gross + Safety_Stock - On_Hand - Scheduled_Receipts), Lot-Multiple Planned Order Receipt, and Ending On-Hand Inventory. *Table — Protect Safety Stock inside MRP Gross-to-Net netting and round up to vendor pallet multiples!:* | Orlicky MRP Bucket Metric (Gross=1,200, OH=350, Sched=200, SS=150, Lot=250) | Formula | Verified Output | | --- | --- | --- | | Unreplenished Available Balance | On_Hand + Scheduled_Receipts - Gross_Req | -650 units (+200 @ OH=1,200) | | Safety-Protected Net Requirement | MAX(0, Gross + SS - On_Hand - Sched) | 800 units (0 @ OH=1,200) | | Planned Order Receipt (Lot Mult) | IF(Net=0, 0, ROUNDUP(Net/Lot,0)*Lot) | 1,000 units (4 Pallets; 0 @ OH=1,200) | | Ending Projected On-Hand | On_Hand + Sched + Planned_Order - Gross | 350 units (>= 150 Safety Stock) | - **Formula (MRP Lot-Multiple Planned Order Receipt Formula)**: `=LET(gr_q, B2, oh_0, B3, sc_r, B4, ss_f, B5, lt_m, B6, IF(OR(gr_q < 0, oh_0 < 0, sc_r < 0, ss_f < 0, lt_m <= 0), "Invalid MRP Bucket Input", LET(nt_r, MAX(0, gr_q + ss_f - oh_0 - sc_r), IF(nt_r = 0, 0, ROUNDUP(nt_r / lt_m, 0) * lt_m))))` - **Formula (Above-Safety-Stock Zero-Order Check (Set Beginning On-Hand = 1,200))**: `=IF(ISTEXT(E4), E4, B3 + B4 + E4 - B2)` ### MTBF, MTTR, System Availability & SLA "Nines" downtime budget formulas - **URL**: https://sheets.arte-soft.com/en/learn/mtbf-mttr-system-availability-and-sla-nines-downtime/ - **Summary**: Calculate observed availability and a time-based downtime budget for the supplied window. Distinguish sample repair statistics from future reliability and contractual SLA rules. *Table — Translate SRE outage logs into MTBF, MTTR, and SLA "Nines" error budgets!:* | Reliability Metric | Formula / Input | Value | Operational Meaning | | --- | --- | --- | --- | | Observation Window (B2) | 8,760 hrs (1 yr) | 4 outages (B3), 6 hrs down (B4) | 8,754 hrs healthy uptime | | MTBF & MTTR | (B2-B4)/B3 & B4/B3 | 2,188.5 hrs \| 1.5 hrs | 90 min mean recovery | | Availability A | MTBF / (MTBF + MTTR) | 0.999315 (99.9315%) | Exceeds 99.9%, misses 99.99%! | | 99.99% SLA Budget (B5) | (1 - 0.9999) * 525600 | 52.56 min/yr allowed | Actual 360 min exceeds the illustrative target budget | - **Formula (Observed availability for the supplied window)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B4>B2,B5<0,B5>1),"Invalid inputs",ROUND((B2-B4)/B2,6)))` - **Formula (Allowed downtime minutes for this window)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<0,B3<>INT(B3),B4<0,B4>B2,B5<0,B5>1),"Invalid inputs",ROUND((1 - B5) * (B2*60), 2)))` ### Sort a Table by Two Columns (Region Ascending, Revenue Descending) with SORTBY - **URL**: https://sheets.arte-soft.com/en/learn/multi-column-sort-by-two-keys-sortby/ - **Summary**: Order records simultaneously by a primary text category ascending (+1) and a secondary numeric KPI descending (-1) using multi-key SORTBY. *Table — Combine alphabetical grouping with largest-first KPI ranking in one formula:* | Rank Order | Account Rep | Region (+1 Asc) | Booked ARR (-1 Desc) | | --- | --- | --- | --- | | 1 | Zoe | EMEA | $160,000 | | 2 | Mia | EMEA | $120,000 | | 3 | Liam | EMEA | $95,000 | | 4 | Noah | NA | $185,000 | | 5 | Ava | NA | $140,000 | - **Formula (Ordered Rep Leaderboard Sequence (Region Asc, ARR Desc))**: `=TEXTJOIN(", ", TRUE, SORTBY(A2:A6, B2:B6, 1, C2:C6, -1))` - **Formula (Top-Ranked Rep Inside First Alphabetical Region)**: `=INDEX(SORTBY(A2:A6, B2:B6, 1, C2:C6, -1), 1)` ### Weighted average with multiple criteria (SUMPRODUCT + SUMIFS) - **URL**: https://sheets.arte-soft.com/en/learn/multi-condition-weighted-average-filter/ - **Summary**: Calculate volume-weighted unit price or yield strictly for rows matching Region, Channel, or Status filters. *Table — Filter both numerator and denominator by the exact same criteria:* | Region (A) | Status (B) | Qty (C) | UnitPrice (D) | Included in North+Closed? | | --- | --- | --- | --- | --- | | North | Closed | 100 | 20 | Yes (2,000 rev / 100 qty) | | North | Open | 200 | 15 | No (Open) | | North | Closed | 300 | 16 | Yes (4,800 rev / 300 qty) | | South | Closed | 400 | 12 | No (South) | - **Formula (Multi-criteria weighted average formula)**: `=LET(w, SUMIFS(C2:C5, A2:A5, "North", B2:B5, "Closed"), IF(w=0, "No matching weight", ROUND(SUMPRODUCT((A2:A5="North") * (B2:B5="Closed"), C2:C5, D2:D5) / w, 2)))` - **Formula (Contrast unweighted AVERAGEIFS)**: `=AVERAGEIFS(D2:D5, A2:A5, "North", B2:B5, "Closed")` ### Multi-Sheet Inventory Reconciliation: ERP Book Stock, In-Transit Transfers & Shrinkage Audit - **URL**: https://sheets.arte-soft.com/en/learn/multi-sheet-warehouse-inventory-reconciliation-in-transit-variance/ - **Summary**: Reconcile ERP ledger balances against physical warehouse cycle counts by netting outbound in-transit stock, computing unit and dollar shrinkage variances, and flagging material recount exceptions. *Table — Separating timing differences (in-transit stock) from true inventory shrinkage:* | SKU | ERP Book | Inbound In-Transit | Expected Floor | Physical Count | Variance ($) | | --- | --- | --- | --- | --- | --- | | SKU-10 | 500 | 40 | 460 | 460 | $0 (Timing only) | | SKU-20 | 300 | 0 | 300 | 288 | -$300 (Recount!) | | SKU-30 | 180 | 20 | 160 | 159 | -$15 (Within tol.) | | SKU-40 | 220 | 0 | 220 | 226 | +$240 (Overage!) | - **Formula (Expected Floor Stock & Dollar Shrinkage Variance)**: `=(D2 - (B2 - C2)) * E2` - **Formula (Real-Time Collaborative Cycle-Count Review in Arte Sheets)**: `=IF(ABS(F2) >= $I$2, "Recount_Required", "Matched_OK")` ### Multinomial Coefficient Formula: Group Partitions & Repeated-Item Permutations (FACT) - **URL**: https://sheets.arte-soft.com/en/learn/multinomial-coefficient-distinct-group-arrangements-fact/ - **Summary**: Calculate the exact multinomial coefficient (n1 + n2 + ... + nk)! / (n1! * n2! * ... * nk!) using FACT and SUM to count ordered squad assignments, categorical outcomes, and word anagrams. *Table — Generalizing combinations from two buckets to k labeled buckets:* | Problem Scenario | Bucket Counts (n1..n4) | Total N | Denominator Product | Distinct Arrangements | | --- | --- | --- | --- | --- | | Assign 12 engineers to 3 squads (5, 4, 3) | 5, 4, 3, 0 | 12 | 120 * 24 * 6 * 1 = 17,280 | 27,720 | | Distinct anagrams of "MISSISSIPPI" | 1, 4, 4, 2 | 11 | 1 * 24 * 24 * 2 = 1,152 | 34,650 | | Roll 6 dice: three 6s, two 5s, one 1 | 3, 2, 1, 0 | 6 | 6 * 2 * 1 * 1 = 12 | 60 | - **Formula (Exact Multinomial Coefficient With Non-Negative Integer Guard)**: `=IF(OR(MIN(B2:B5) < 0, SUMPRODUCT(ABS(B2:B5 - INT(B2:B5))) > 0), "Counts Must Be Non-Negative Integers", FACT(SUM(B2:B5)) / (FACT(B2) * FACT(B3) * FACT(B4) * FACT(B5)))` - **Formula (Multinomial Outcome Probability Given Bucket Probabilities p1..p4)**: `=ROUND((FACT(SUM(B2:B5)) / (FACT(B2) * FACT(B3) * FACT(B4) * FACT(B5))) * IF(B2 = 0, 1, C2 ^ B2) * IF(B3 = 0, 1, C3 ^ B3) * IF(B4 = 0, 1, C4 ^ B4) * IF(B5 = 0, 1, C5 ^ B5), 6)` ### Return multiple lookup matches into separate rows or columns (FILTER + TRANSPOSE) - **URL**: https://sheets.arte-soft.com/en/learn/multiple-matches-into-columns-or-rows-transpose/ - **Summary**: Turn one-to-many lookups (all reps in a territory or all SKUs on an order) into vertical lists with FILTER or horizontal columns with TRANSPOSE(FILTER(...)). *Table — Why XLOOKUP and VLOOKUP stop at the first match—and how FILTER solves it:* | Dept Summary | Match Col 1 | Match Col 2 | Match Col 3 | | --- | --- | --- | --- | | Eng | Ada | Cy | Eva | | Sales | Ben | — | — | | Legal (0 matches) | (blank / "None") | — | — | - **Formula (Horizontal multi-match and sorted multi-match formulas)**: `=TRANSPOSE(SORT(FILTER(B2:B6, A2:A6="Eng", "None")))` - **Formula (Count how many horizontal columns spilled)**: `=COLUMNS(TRANSPOSE(FILTER(B2:B6, A2:A6="Eng", "None")))` ### Multiplication table & 2D SaaS seat-pricing matrix ($A3 * B$1 vs spilled array) - **URL**: https://sheets.arte-soft.com/en/learn/multiplication-and-pricing-matrix-mixed-references/ - **Summary**: Generate a 2D outer-product matrix with either classic mixed references ($A3 * B$1) or a single spilled dynamic-array formula (A3:A5 * B1:D1). *Table — Two ways to build a 2D pricing or multiplication grid: Mixed Refs vs Array Spill:* | Seats \ Term Months ($20/seat/mo) | 1 Mo (0% off) | 12 Mos (10% off) | 24 Mos (20% off) | | --- | --- | --- | --- | | 5 Seats ($A3) | $100 | $1,080 | $1,920 | | 10 Seats ($A4) | $200 | $2,160 | $3,840 | | 25 Seats ($A5) | $500 | $5,400 | $9,600 | - **Formula (Mixed-reference 2D quote cell and dynamic outer-product formulas)**: `=ROUND($A4 * $E$2 * C$1 * (1 - C$2), 2)` - **Formula (Sum all cells in the spilled 2D outer-product matrix A3:A5 * B1:D1)**: `=SUM(A3:A5 * B1:D1)` - **Formula (Produce the full quote matrix)**: `=A3:A5*$E$2*B1:D1*(1-B2:D2)` ### Murphree Vapor Tray Efficiency (E_MV) Formula: Single-Stage Mass Transfer & Pseudo-Equilibrium - **URL**: https://sheets.arte-soft.com/en/learn/murphree-vapor-tray-efficiency-distillation-stage-formula/ - **Summary**: Evaluate single-plate distillation and gas-absorption performance using Eger V. Murphree’s 1925 vapor efficiency E_MV = (y_n - y_(n+1)) / (y_n* - y_(n+1)) and step off actual tray outlet compositions y_n = y_(n+1) + E_MV * (y_n* - y_(n+1)). *Table — Measuring fractional approach to vapor-liquid equilibrium across a single real distillation tray!:* | Tray Vapor Mole Fractions (y_(n+1), y_n, y_n*) | Actual Jump (y_n - y_(n+1)) | Max Equilibrium Jump (y_n* - y_(n+1)) | Murphree Efficiency E_MV | | --- | --- | --- | --- | | y_(n+1)=0.042, y_n=0.068, y_n*=0.078 | +0.0260 | +0.0360 | 0.7222 (72.22%) | | Improved Froth Contact y_n = 0.073 | +0.0310 | +0.0360 | 0.8611 (86.11%) | | Pinch Point y_n* = y_(n+1) = 0.042 | 0.0000 | 0.0000 (Division by Zero!) | "Equilibrium Pinch or Invalid Mole Fractions" | - **Formula (Murphree Vapor Tray Efficiency E_MV = (y_n - y_(n+1)) / (y_n* - y_(n+1)))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1, B4 = B2), "Equilibrium Pinch or Invalid Mole Fractions", ROUND((B3 - B2) / (B4 - B2), 4))` - **Formula (Murphree Percentage Tray Efficiency (%))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1, B4 = B2), "Equilibrium Pinch or Invalid Mole Fractions", ROUND(100 * (B3 - B2) / (B4 - B2), 2))` ### Murray Lung Injury Score (LIS) & VV-ECMO Referral Threshold (>= 3.0) - **URL**: https://sheets.arte-soft.com/en/learn/murray-lung-injury-score-lis-ecmo-referral-ards-composite/ - **Summary**: Average the 4 ordinal (0–4) Murray Lung Injury Score components—Chest Radiograph Quadrants, PaO2/FiO2 Hypoxemia, PEEP Level, and Respiratory System Compliance—to evaluate > 2.5 Severe ARDS and >= 3.0 VV-ECMO referral criteria. *Table — Why VV-ECMO centers average Murray’s 4 domains instead of looking at P/F alone!:* | Murray Lung Injury Score (0.00–4.00) | Component Profile Example | ARDS & ECMO Triage Tier | | --- | --- | --- | | 0.00 Points | All 4 Domains = 0 | No Acute Lung Injury (0) | | 0.25 – 2.50 Points (e.g., [2, 3, 2, 2] -> 2.25) | Moderate Consolidation & PEEP | Mild-to-Moderate Lung Injury (0.1–2.5) | | 2.75 (>2.5) / >= 3.00 (e.g., [3, 4, 3, 3] -> 3.25) | 4-Quadrant Stiff Lung, P/F <100 | Severe ARDS (>2.5); VV-ECMO Eligible (>=3.0!) | - **Formula (Murray Composite Lung Injury Score = AVERAGE(B2:B5) (0.00–4.00))**: `=IF(OR(COUNT(B2:B5) < 2, MIN(B2:B5) < 0, MAX(B2:B5) > 4), "Invalid Murray Component (0-4)", ROUND(AVERAGE(B2:B5), 2))` - **Formula (Murray ARDS Severity & CESAR VV-ECMO Referral Classification)**: `=IF(OR(COUNT(B2:B5) < 2, MIN(B2:B5) < 0, MAX(B2:B5) > 4), "Invalid Murray Component (0-4)", IF(AVERAGE(B2:B5) >= 3, "Severe ARDS: VV-ECMO Referral Threshold (>=3.0)", IF(AVERAGE(B2:B5) > 2.5, "Severe Lung Injury / ARDS (>2.5)", IF(AVERAGE(B2:B5) > 0, "Mild-to-Moderate Lung Injury (0.1-2.5)", "No Lung Injury (0)"))))` ### Music Catalog Net Publisher’s Share (NPS) Valuation Formula - **URL**: https://sheets.arte-soft.com/en/learn/music-catalog-nps-publishing-and-masters-valuation-multiple-formula/ - **Summary**: Calculate Music IP Post-Administration Net Receipts, Investor Net Publisher’s Share (NPS) / Net Label Share After Writer Payables, Catalog Acquisition Valuation (NPS * Multiple), and Implied Unlevered Royalty Yield. *Table — Price songwriting and master-recording catalogs on Net Publisher’s Share—never Gross Royalties!:* | Music IP Catalog Metric ($5.0M Gross, 10% Admin, 40% Writer Payable, 16.0x NPS) | Formula | Verified Output | | --- | --- | --- | | Post-Admin Net Receipts ($M) | Gross_Royalties * (1 - Admin_Fee_Pct) | $4.50M | | Net Publisher’s Share NPS ($M) | Post_Admin_Net * (1 - Writer_Share) | $2.70M/yr | | Catalog Purchase Price ($M) | Acquired_NPS * Catalog_Multiple_x | $43.20M ($54.00M @ 20.0x Iconic) | | Day-1 Unlevered Cash Yield | Acquired_NPS / Purchase_Price | 0.0625 (6.25%; 0.0500 @ 20.0x) | - **Formula (Music Catalog Net Publisher’s Share (NPS) Valuation Formula)**: `=LET(gr_r, B2, ad_f, B3, wr_s, B4, ml_x, B5, IF(OR(gr_r <= 0, ad_f < 0, ad_f >= 0.5, wr_s < 0, wr_s >= 1, ml_x <= 0), "Invalid Music Catalog Input", LET(np_s, gr_r * (1 - ad_f) * (1 - wr_s), ROUND(np_s * ml_x, 2))))` - **Formula (20.0x Iconic Evergreen Catalog Multiple Check)**: `=IF(ISTEXT(E4), E4, ROUND(E3 / E4, 4))` ### Music Streaming Royalty & Advance Recoupment Formula - **URL**: https://sheets.arte-soft.com/en/learn/music-publishing-pro-rata-vs-user-centric-streaming-royalty-recoupment/ - **Summary**: Calculate Pro-Rata DSP Master Royalty Pool Payout, Contractual Artist Royalty Credited, Remaining Unrecouped Label Advance, and Payable Artist Cash Royalty. *Table — Recoup recording advances from the artist’s royalty share—never 100% of gross receipts!:* | Music Royalty Waterfall Metric ($500M Pool, 100B Total, 40M Artist, 20% Rate, $50k Adv) | Formula | Verified Output | | --- | --- | --- | | Gross Master Pool Receipt ($) | Pool_Net * (Catalog_Streams / Total_Streams) | $200,000.00 ($0.0050 / stream) | | Credited Artist Royalty ($) | Gross_Master * Artist_Royalty_Rate | $40,000.00 ($250k Gross Breakeven) | | Ending Unrecouped Advance ($) | MAX(0, Beg_Advance - Credited_Royalty) | $10,000.00 ($0.00 @ 80M streams) | | Payable Artist Cash Check ($) | MAX(0, Credited_Royalty - Beg_Advance) | $0.00 ($30,000.00 @ 80M streams) | - **Formula (Pro-Rata Streaming Royalty & Advance Recoupment Formula)**: `=LET(pl_n, B2, st_t, B3, st_c, B4, rt_a, B5, ad_u, B6, IF(OR(pl_n <= 0, st_t <= 0, st_c < 0, st_c > st_t, rt_a <= 0, rt_a > 1, ad_u < 0), "Invalid Streaming Ledger", LET(gr_m, pl_n * (st_c / st_t), cr_a, gr_m * rt_a, ROUND(MAX(0, cr_a - ad_u), 2))))` - **Formula (Remaining Unrecouped Advance Balance Formula)**: `=IF(ISTEXT(E3), E3, ROUND(MAX(0, B6 - E3), 2))` ### Muskingum River Flood Routing: C1, C2, C3 Coefficients & Routed Outflow (Q2) - **URL**: https://sheets.arte-soft.com/en/learn/muskingum-river-flood-routing-c1-c2-c3-hydrograph-formula/ - **Summary**: Route upstream flood hydrographs through natural river reaches using McCarthy's Muskingum storage equation Q2 = C1*I2 + C2*I1 + C3*Q1 with automatic Courant/sub-interval stability guard 2*K*X <= dt <= 2*K*(1 - X). *Table — Capture both flood-wave translation (K) and wedge attenuation (X) in river reaches!:* | Muskingum Step (K=12 hr, X=0.20, dt=6 hr) | Inflows I1 -> I2 (m^3/s) | Start Outflow Q1 | Routed Outflow Q2 (m^3/s) | | --- | --- | --- | --- | | Weights Check (D = 25.2 hr) | C1=0.0476, C2=0.4286, C3=0.5238 | Sum = 1.0000 | All Ci >= 0 (Stable!) | | Rising Flood Limb (0 -> 6 hr) | I1 = 100 -> I2 = 280 | Q1 = 100.00 | Q2 = 108.57 m^3/s (Wedge storage!) | | Receding Peak Step (6 -> 12 hr) | I1 = 280 -> I2 = 150 | Q1 = 108.57 | Q2 = 184.01 m^3/s (Delayed wave!) | - **Formula (Routed Downstream Outflow Q2 = C1*I2 + C2*I1 + C3*Q1 (m^3/s, With Stability Check))**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 0.5, B4 < (2 * B2 * B3), B4 > (2 * B2 * (1 - B3))), "Unstable dt (Require 2KX <= dt <= 2K(1-X))", ROUND((((B4 - (2 * B2 * B3)) * B6) + ((B4 + (2 * B2 * B3)) * B5) + (((2 * B2 * (1 - B3)) - B4) * B7)) / ((2 * B2 * (1 - B3)) + B4), 2))` - **Formula (Muskingum Leading Coefficient C1 = (dt - 2*K*X) / (2*K*(1 - X) + dt))**: `=ROUND((B4 - (2 * B2 * B3)) / ((2 * B2 * (1 - B3)) + B4), 4)` ### Mussa-Rosen SaaS Versioning & Information Rent Formula - **URL**: https://sheets.arte-soft.com/en/learn/mussa-rosen-second-degree-versioning-and-information-rent-pricing-formula/ - **Summary**: Calculate Incentive-Compatible Basic Price P_L = theta_L * q_L, High-Type Information Rent (theta_H - theta_L) * q_L, Enterprise Tier Price P_H = theta_H * q_H - Rent_H, and Total Versioning Revenue. *Table — Price Good/Better/Best SaaS tiers without cannibalizing Enterprise accounts!:* | Mussa-Rosen SaaS Menu Metric (60 SMB @ thL=10, 40 Ent @ thH=22; qL=5, qH=12) | Formula | Verified Output | | --- | --- | --- | | Basic Tier Price P_L ($/mo) | theta_L * q_L | $50.00 / mo | | Enterprise Information Rent ($/mo) | (theta_H - theta_L) * q_L | $60.00 / mo | | IC-Compatible Enterprise Price P_H | theta_H * q_H - (theta_H - theta_L)*q_L | $204.00 / mo (vs $264 Full) | | Two-Tier Versioning Revenue ($/mo) | N_L * P_L + N_H * P_H | $11,160.00 (vs $10,560 1-Tier) | - **Formula (Incentive-Compatible Enterprise Tier Price Formula)**: `=LET(n_lo, B2, n_hi, B3, th_l, B4, th_h, B5, q_lo, B6, q_hi, B7, IF(OR(n_lo <= 0, n_hi <= 0, th_l <= 0, th_h <= th_l, q_lo <= 0, q_hi <= q_lo), "Invalid Tier Menu", ROUND(th_h * q_hi - (th_h - th_l) * q_lo, 2)))` - **Formula (Total Two-Tier Menu Revenue Formula)**: `=IF(ISTEXT(E4), E4, ROUND(B2 * E2 + B3 * E4, 2))` ### MUST Score Calculator: BAPEN Malnutrition Universal Screening Tool Formula - **URL**: https://sheets.arte-soft.com/en/learn/must-malnutrition-universal-screening-tool-bapen-risk-score/ - **Summary**: Calculate the 3-step BAPEN Malnutrition Universal Screening Tool (MUST, 0–6 points) from Adult BMI (kg/m^2), Unplanned 3–6 Month Weight Loss (%), and Acute Disease >5-Day No-Intake Effect. *Table — Three rapid bedside steps classify adult malnutrition risk across hospital, clinic, and care-home settings!:* | MUST Step | 0 Points | 1 Point | 2 Points | | --- | --- | --- | --- | | Step 1: BMI (kg/m^2) | > 20.0 | 18.5 to 20.0 | < 18.5 | | Step 2: Unplanned 3–6 Mo Weight Loss (%) | < 5.0% | 5.0% to 10.0% | > 10.0% | | Step 3: Acute Illness + >5 Days No Intake | Absent (0) | — | Present (+2 pts) | - **Formula (Total BAPEN MUST Malnutrition Risk Score (0 to 6 Points))**: `=IF(OR(B2 < 10, B2 > 80, B3 < 0, B3 > 60, AND(B4 <> 0, B4 <> 1)), "Invalid MUST Screening Inputs", IF(B2 > 20, 0, IF(B2 >= 18.5, 1, 2)) + IF(B3 < 5, 0, IF(B3 <= 10, 1, 2)) + IF(B4 = 1, 2, 0))` - **Formula (BAPEN MUST Risk Category & Care Pathway Action)**: `=IF(OR(B2 < 10, B2 > 80, B3 < 0, B3 > 60, AND(B4 <> 0, B4 <> 1)), "Invalid MUST Screening Inputs", IF((IF(B2 > 20, 0, IF(B2 >= 18.5, 1, 2)) + IF(B3 < 5, 0, IF(B3 <= 10, 1, 2)) + IF(B4 = 1, 2, 0)) = 0, "MUST 0: Low Risk (Routine Re-Screening)", IF((IF(B2 > 20, 0, IF(B2 >= 18.5, 1, 2)) + IF(B3 < 5, 0, IF(B3 <= 10, 1, 2)) + IF(B4 = 1, 2, 0)) = 1, "MUST 1: Medium Risk (3-Day Intake Observation)", "MUST >= 2: High Risk (Treat / Dietitian Referral)")))` ### Must pass K out of N subjects or checks (quorum and floor rule) - **URL**: https://sheets.arte-soft.com/en/learn/must-pass-k-out-of-n-checks-threshold/ - **Summary**: Evaluate multi-part exams, vendor scorecards, or board quorums requiring at least K passing scores plus a minimum floor on every item. *Table — Replace combinatorial OR chains with COUNTIF >= K:* | Candidate (A) | M1 (B) | M2 (C) | M3 (D) | M4 (E) | M5 (F) | Outcome | | --- | --- | --- | --- | --- | --- | --- | | Candidate1 | 82 | 75 | 64 | 90 | 71 | Pass (4 >= 70, min 64 >= 50) | | Candidate2 | 85 | 80 | 42 | 91 | 78 | Fail (min 42 < 50 floor) | - **Formula (K-of-N quorum and minimum-floor formula)**: `=IF(AND(COUNT(B2:F2)=5, COUNTIF(B2:F2, ">=70") >= 4, MIN(B2:F2) >= 50), "Pass", "Fail")` - **Formula (Simple K-of-N count without a floor)**: `=COUNTIF(B2:F2, ">=70") >= 4` ### Myers Debt-Overhang Underinvestment NPV Hurdle Formula - **URL**: https://sheets.arte-soft.com/en/learn/myers-debt-overhang-underinvestment-npv-hurdle-formula/ - **Summary**: Quantify senior-creditor wealth transfer, shareholder net NPV Delta_E, and Stewart Myers’s (1977) debt-overhang hurdle NPV_min = I * (1 - p_G) / p_G. *Table — Audit why distressed shareholders rationally walk away from positive-NPV investments!:* | Debt-Overhang Metric (I=30, dV=42, p_G=60%) | Unrestructured D = 100 | Restructured D = 65 | | --- | --- | --- | | Total Firm Social NPV (Delta_V - I) | +12.00 | +12.00 | | Creditor Wealth Transfer (Delta_Debt) | +16.80 | +10.00 | | Shareholder Net Gain (Delta_Equity) | -4.80 (Underinvestment!) | +2.00 (Invests!) | | Unrestructured NPV Hurdle I*(1-p_G)/p_G | +20.00 (Requires dV >= 50) | Resolved by Write-Down | - **Formula (Exact Two-State Shareholder Incremental Value Delta_E Formula)**: `=LET(d_fc, B2, v_gd, B3, v_bd, B4, p_gd, B5, i_cx, B6, dv_pj, B7, IF(OR(d_fc < 0, v_bd < 0, v_gd < v_bd, p_gd <= 0, p_gd >= 1, i_cx <= 0, dv_pj < 0), "Invalid Overhang Input", LET(eg_gn, MAX(0, v_gd + dv_pj - d_fc) - MAX(0, v_gd - d_fc), eb_gn, MAX(0, v_bd + dv_pj - d_fc) - MAX(0, v_bd - d_fc), ROUND(p_gd * eg_gn + (1 - p_gd) * eb_gn - i_cx, 4))))` - **Formula (Senior Creditor Wealth Transfer Delta_Debt = Social_NPV + I_inv - (Delta_E + I_inv) Formula)**: `=IF(ISTEXT(E3), E3, ROUND((B7 - B6) - E3, 4))` ### Myers-Majluf Equity Issuance & Pecking Order Formula - **URL**: https://sheets.arte-soft.com/en/learn/myers-majluf-adverse-selection-equity-issuance-pecking-order-formula/ - **Summary**: Calculate Stewart Myers and Nicholas Majluf’s (1984) pooled equity-issuance dilution loss on undervalued high-state firms and prove why internal cash and riskless debt beat seasoned equity. *Table — Prove why rational managers forfeit a +$20M positive-NPV project rather than issue undervalued stock!:* | Myers-Majluf Metric (A_H=150, A_L=50, p_H=0.5, I=100, NPV=20) | Formula | Verified Output | | --- | --- | --- | | Pooled Market Asset Expectation (A_bar) | p_H * A_H + (1 - p_H) * A_L | 100.00 ($M) | | Old-Shareholder Pooled Retention (s_old) | (A_bar + NPV) / (A_bar + I + NPV) | 0.5455 (6 / 11) | | High-Type Old-Shareholder Wealth | s_old * (A_H + I + NPV) | 147.27 ($M vs 150 Walk-Away!) | | High-Type Net Equity-Issue Gain | W_old_H - A_H | -2.73 ($M — Underinvestment!) | - **Formula (High-State Old-Shareholder Pooled Equity-Issue Net Gain Formula)**: `=LET(a_hi, B2, a_lo, B3, p_hi, B4, inv_i, B5, npv_p, B6, IF(OR(a_lo < 0, a_hi <= a_lo, p_hi <= 0, p_hi >= 1, inv_i <= 0, npv_p < 0), "Invalid Pecking-Order Input", LET(a_br, p_hi * a_hi + (1 - p_hi) * a_lo, s_ol, (a_br + npv_p) / (a_br + inv_i + npv_p), ROUND(s_ol * (a_hi + inv_i + npv_p) - a_hi, 2))))` - **Formula (Myers-Majluf Pooling vs Separating Equilibrium Verdict Formula)**: `=IF(ISTEXT(E4), E4, IF(E4 >= 0, "Pooling Equity Issue Survives", "Underinvestment: Reject Equity (Use Cash/Debt)"))` ### N function: convert TRUE/FALSE to 1/0 and embed inline formula comments - **URL**: https://sheets.arte-soft.com/en/learn/n-function-booleans-and-formula-notes/ - **Summary**: Turn logical checkboxes into 1/0 numbers and document complex formulas inline with + N("explanation") using N. *Table — How N converts every spreadsheet data type:* | Input (A) | N(A) Result | Practical Use | | --- | --- | --- | | TRUE | 1 | Convert boolean flag to 1 | | FALSE | 0 | Convert boolean flag to 0 | | "Audit note" | 0 | Add +N("note") inside math formulas | | 125 | 125 | Numbers pass through untouched | - **Formula (Apply a boolean surcharge flag and document the formula inline)**: `=A2 * (1 + 0.2 * N(B2)) + N("20% rush fee when RushOrder is TRUE")` - **Formula (Contrast N("125") = 0 with VALUE("125") = 125)**: `=N("125")` ### NA function: output #N/A intentionally so line charts skip missing periods - **URL**: https://sheets.arte-soft.com/en/learn/na-function-missing-chart-values/ - **Summary**: Mark missing readings with NA(), distinguish them from zero, and understand chart-specific handling before plotting. *Table — Missing data is not a measured zero:* | Month (A) | RawReading (B) | SensorState (C) | PlotSeries IF(C="Offline", NA(), B) | | --- | --- | --- | --- | | Jan | 42 | Online | 42 | | Feb | 0 | Offline | #N/A | | Mar | 46 | Online | 46 | - **Formula (Emit NA() for offline or future periods)**: `=IF(C3="Offline", NA(), B3)` - **Formula (Summarize series containing #N/A with IFNA)**: `=ISNA(IF(C3="Offline", NA(), B3))` ### NAFLD Fibrosis Score (NFS) Noninvasive MASLD Liver Fibrosis Formula - **URL**: https://sheets.arte-soft.com/en/learn/nafld-fibrosis-score-nfs-metabolic-liver-fibrosis-formula/ - **Summary**: Calculate Paul Angulo’s validated NAFLD Fibrosis Score NFS = -1.675 + 0.037*Age + 0.094*BMI + 1.13*IFG_DM + 0.99*(AST/ALT) - 0.013*Platelets - 0.66*Albumin to rule out (< -1.455) or rule in (> 0.675) F3–F4 advanced liver fibrosis. *Table — Screen metabolic fatty liver (NAFLD / MASLD) for F3–F4 bridging fibrosis using routine clinic labs!:* | NAFLD Fibrosis Score (NFS) Band | Histologic Fibrosis Stage | Clinical Hepatology Pathway | | --- | --- | --- | | NFS < -1.455 (e.g., -3.416) | F0–F2 (Advanced Fibrosis Excluded) | Low Risk — Primary-Care Lifestyle & Periodic Repeat | | -1.455 <= NFS <= 0.675 | Indeterminate Gray Zone | Order VCTE FibroScan or ELF Blood Panel | | NFS > 0.675 (e.g., +1.392) | F3–F4 Advanced Fibrosis / Cirrhosis | High Risk — Refer to Hepatology Specialist | - **Formula (Angulo (2007) NAFLD Fibrosis Score (NFS))**: `=IF(OR(B2 < 18, B3 <= 10, AND(B4 <> 0, B4 <> 1), B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Liver Lab Inputs", ROUND(-1.675 + 0.037 * B2 + 0.094 * B3 + 1.13 * B4 + 0.99 * (B5 / B6) - 0.013 * B7 - 0.66 * B8, 3))` - **Formula (F3–F4 Advanced Liver Fibrosis Risk Stratification)**: `=IF(OR(B2 < 18, B3 <= 10, AND(B4 <> 0, B4 <> 1), B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Liver Lab Inputs", IF((-1.675 + 0.037 * B2 + 0.094 * B3 + 1.13 * B4 + 0.99 * (B5 / B6) - 0.013 * B7 - 0.66 * B8) > 0.675, "High Probability F3-F4 Advanced Fibrosis (> 0.675)", IF((-1.675 + 0.037 * B2 + 0.094 * B3 + 1.13 * B4 + 0.99 * (B5 / B6) - 0.013 * B7 - 0.66 * B8) < -1.455, "Low Risk: F0-F2 Advanced Fibrosis Excluded (< -1.455)", "Indeterminate (-1.455 to 0.675): Order FibroScan")))` ### Naive forecast accuracy: WMAPE and row percentage errors - **URL**: https://sheets.arte-soft.com/en/learn/naive-and-seasonal-naive-forecast-mape-accuracy/ - **Summary**: Benchmark any demand forecast against a Naïve (Y_{t-1}) baseline using Mean Absolute Percentage Error (MAPE) and volume-weighted WMAPE. *Table — Use a naive forecast as a baseline:* | Period (A) | Actual (B) | Naïve Forecast (C) | AbsError (D) | APE (D / B) | | --- | --- | --- | --- | --- | | P1 | 100 | (seed) | — | — | | P2 | 125 | 100 | 25 | 20.0% | | P3 | 100 | 125 | 25 | 25.0% | | P4 | 125 | 100 | 25 | 20.0% (WMAPE = 75/350 = 21.43%) | - **Formula (WMAPE from total absolute error)**: `=ROUND(SUM(D3:D5) / SUM(B3:B5), 4)` - **Formula (Row Absolute Percentage Error (APE))**: `=IF(B3=0, "Undefined APE", ROUND(ABS(B3 - C3) / B3, 4))` ### NAREIT FFO, AFFO & True Dividend Payout Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/nareit-ffo-and-affo-funds-from-operations-payout-ratio-formula/ - **Summary**: Calculate Equity REIT NAREIT Funds From Operations (FFO), Adjusted Funds From Operations (AFFO) After Straight-Line Rent Accruals and Recurring TI/LC Maintenance Capex, Headline FFO Payout Ratio, and True Cash AFFO Payout Ratio. *Table — Never judge REIT dividend safety on GAAP EPS or headline FFO—reconcile down to cash AFFO!:* | Equity REIT Cashflow Metric ($85M NI, $140M D&A, $25M Gain, $12M SL, $28M Capex, $128M Div) | Formula | Verified Output | | --- | --- | --- | | NAREIT FFO ($M) | GAAP_NI + Real_Estate_DA - Property_Gains | $200.00M | | Adjusted FFO / AFFO ($M) | FFO - StraightLine_Rent - Recurring_TI_LC_Capex | $160.00M ($112.00M @ $76M TI) | | Headline FFO Payout Ratio | Common_Dividends_Paid / NAREIT_FFO | 0.6400 (Unchanged @ $76M TI!) | | True Cash AFFO Payout Ratio | Common_Dividends_Paid / AFFO | 0.8000 (1.1429 Uncovered @ $76M TI) | - **Formula (Equity REIT AFFO & True Cash Payout Ratio Formula)**: `=LET(ni_g, B2, da_r, B3, gn_s, B4, sl_r, B5, cx_m, B6, dv_c, B7, ff_o, ni_g + da_r - gn_s, af_o, ff_o - sl_r - cx_m, IF(OR(da_r < 0, cx_m < 0, dv_c < 0, ff_o <= 0, af_o <= 0), "Invalid REIT FFO/AFFO Input", ROUND(dv_c / af_o, 4)))` - **Formula (Suburban Office TI/LC Capex Surge Trap Check (Set Recurring Capex & TI/LC = $76.00M))**: `=IF(ISTEXT(E5), E5, ROUND(B2 + B3 - B4 - B5 - B6, 2))` ### Admiralty Coefficient, Hull Speed & Slow-Steaming Formula - **URL**: https://sheets.arte-soft.com/en/learn/naval-admiralty-coefficient-hull-speed-and-slow-steaming-cubic-law/ - **Summary**: Calculate Displacement Vessel Froude Hull Speed 1.34*SQRT(LWL_ft), Admiralty-Formula Shaft Power (Disp^(2/3) * V^3) / C_adm, Daily Bunker Consumption (t/day), and Slow-Steaming Voyage Fuel per 1,000 Nautical Miles. *Table — Cut maritime voyage bunker burn by 36% with a 20% slow-steaming speed reduction!:* | Maritime Propulsion Metric (64,000 t, LWL=625 ft, V=20 kn, Cadm=640, SFOC=175) | Formula | Verified Output | | --- | --- | --- | | Froude Hull Speed Ceiling (kn) | 1.34 * SQRT(LWL_ft) | 33.50 knots | | Required Shaft Power (kW) | (Disp^(2/3) * Speed_kn^3) / C_adm | 20,000.00 kW (10,240 kW @ 16 kn) | | Daily Bunker Consumption (t/d) | (Shaft_kW * SFOC * 24) / 10^6 | 84.00 t/day (43.01 t/d @ 16 kn) | | Fuel per 1,000 Nautical Miles | (Shaft_kW * SFOC) / (Speed_kn * 1000) | 175.00 t/1000nm (112.00 @ 16 kn) | - **Formula (Admiralty Propulsion Shaft Power Formula)**: `=LET(dp_t, B2, lw_f, B3, v_kn, B4, c_ad, B5, sf_c, B6, IF(OR(dp_t <= 0, lw_f <= 0, v_kn <= 0, c_ad <= 0, sf_c <= 0), "Invalid Vessel Propulsion Input", ROUND(((dp_t ^ (2 / 3)) * (v_kn ^ 3)) / c_ad, 2)))` - **Formula (16-Knot Slow-Steaming Charter Sensitivity Check)**: `=IF(ISTEXT(E3), E3, ROUND((E3 * B6) / (B4 * 1000), 2))` ### True Shooting Percentage (TS%) & Effective FG% (eFG%) Basketball formulas - **URL**: https://sheets.arte-soft.com/en/learn/nba-true-shooting-percentage-ts-and-effective-fg-percentage/ - **Summary**: Calculate effective field-goal percentage and the conventional box-score approximation of true shooting, with consistent scoring inputs. - **Formula (True Shooting Percentage TS% = PTS / (2 * (FGA + 0.44 * FTA)))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(MIN(B2:B6)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B4>B3,B5>B4,B2<2*B4+B5,B2>2*B4+B5+B6),"Invalid inputs",IF(B3+0.44*B6=0,"Not applicable",ROUND(B2/(2*(B3+0.44*B6)),4))))` - **Formula (Effective Field Goal Percentage eFG% = (FGM + 0.5 * 3PM) / FGA)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(MIN(B2:B6)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B4>B3,B5>B4,B2<2*B4+B5,B2>2*B4+B5+B6),"Invalid inputs",IF(B3=0,"Not applicable",ROUND((B4+0.5*B5)/B3,4))))` ### Neher-McGrath Underground Cable Ampacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/neher-mcgrath-underground-power-cable-thermal-resistance-and-ampacity-formula/ - **Summary**: Calculate AC Skin/Proximity Conductor Resistance Rac (mOhm/m), Available Conductor Thermal Headroom (K), Maximum Continuous Ampacity Imax (A), and Joule Heat Load (W/m). *Table — Dry backfill soil doubling trench thermal resistivity Rca from 0.88 to 1.85 K·m/W slashes 90°C XLPE underground feeder ampacity by 37%!:* | Neher-McGrath Cable Ampacity KPI (90°C XLPE, Rdc=78.5 uOhm/m, Yc=0.06, dTd=1.4°C) | Formula | Verified Output | | --- | --- | --- | | AC Conductor Resistance Rac (mOhm/m) | (Rdc_uOhm_m / 1000) * (1 + Skin_Prox_Yc) | 0.0832 mOhm/m | | Available Thermal Headroom (°C) | Max_Tc_C - (Soil_Ta_C + Dielectric_dTd_C) | 63.6°C (53.6°C @ 35°C summer soil) | | Max Continuous Ampacity Imax (A) | SQRT(Headroom_C / ((Rac_mOhm_m/1000) * Rca)) | 932.0 A (590.1 A = -36.7% @ dry soil!) | | Dissipated Conductor Heat (W/m) | (Max_Ampacity_A ^ 2) * (Rac_mOhm_m / 1000) | 72.27 W/m (28.97 W/m thermal runaway cap) | - **Formula (NEC 310.15(C) / IEC 60287 Neher-McGrath Thermal-Circuit Ampacity Formula)**: `=LET(tc_c, B2, ta_c, B3, dt_d, B4, rd_u, B5, yc_f, B6, rc_a, B7, ra_o, (rd_u * 0.000001) * (1 + yc_f), dh_c, tc_c - (ta_c + dt_d), IF(OR(tc_c < 60, tc_c > 105, ta_c < -10, ta_c > 55, dt_d < 0, dh_c < 5, rd_u <= 5, yc_f < 0, yc_f > 1, rc_a < 0.2, rc_a > 5), "Invalid Ampacity Input", ROUND(dh_c / rc_a, 2)))` - **Formula (Moisture-Migration Dried Trench Soil (`T_a = 35°C`, `R_ca = 1.85` K·m/W) Derating Check)**: `=IF(ISTEXT(E5), E5, LET(ra_o, (B5 * 0.000001) * (1 + B6), dh_c, B2 - (B3 + B4), ROUND(SQRT(dh_c / (ra_o * B7)), 1)))` ### Nelson-Aalen Cumulative Hazard H(t), Aalen Variance & Fleming-Harrington Survival - **URL**: https://sheets.arte-soft.com/en/learn/nelson-aalen-cumulative-hazard-estimator-and-breslow-survival/ - **Summary**: Estimate nonparametric cumulative failure hazard H(t) = SUM(d_i / n_i), Aalen standard error SQRT(SUM(d_i / n_i^2)), and exponential survival S_FH(t) = EXP(-H(t)) on right-censored cohorts. *Table — Why Nelson-Aalen avoids zero-survival collapse at the final event time:* | Month t_i | At Risk n_i | Events d_i | Hazard Step d_i/n_i & Cum H(t) | | --- | --- | --- | --- | | 3 | 20 | 2 | 0.1000 \| H(3) = 0.1000 | | 6 | 16 | 2 | 0.1250 \| H(6) = 0.2250 | | 9 | 10 | 2 | 0.2000 \| H(9) = 0.4250 | | 12 | 8 | 2 | 0.2500 \| H(12) = 0.6750 -> S_FH = 0.5092 | - **Formula (Nelson-Aalen Hazard Increment & Cumulative H(t) Formula)**: `=IF(B2 <= 0, 0, C2 / B2)` - **Formula (Aalen Standard Error & Fleming-Harrington Survival Formula)**: `=ROUND(EXP(-SUM(D2:D5)), 4)` ### Nelson-Siegel-Svensson (NSS) 4-Factor Yield Curve & Second Curvature Hump - **URL**: https://sheets.arte-soft.com/en/learn/nelson-siegel-svensson-four-factor-yield-curve-second-hump-spot-rate/ - **Summary**: Extend 4-parameter Nelson-Siegel with Lars Svensson’s (1994) second curvature loading beta_3 and decay tau_2 used by the ECB and Bundesbank to fit 10Y–30Y sovereign convexity. *Table — Why central banks add Svensson’s beta_3 and tau_2 second hump at long maturities:* | Curve Component at m = 10 Years | Loading Expression | Contribution (tau1=2, tau2=10) | | --- | --- | --- | | Long-Run Level beta_0 | 1.0000 * 0.045 | +0.0450 | | Short-Term Slope beta_1 * L_1(5) | 0.1987 * (-0.015) | -0.0030 | | First Hump beta_2 * C_1(5) | 0.1919 * 0.020 | +0.0038 | | Second Svensson Hump beta_3 * C_2(1) | 0.2642 * (-0.012) | -0.0032 -> Spot y(10) = 0.0427 | - **Formula (Singularity-Safe Nelson-Siegel-Svensson Spot Rate Formula)**: `=IF(B8 <= 0, ROUND(B2 + B3, 4), LET(u_one, B8 / B6, u_two, B8 / B7, slp_one, (1 - EXP(-u_one)) / u_one, crv_one, slp_one - EXP(-u_one), crv_two, ((1 - EXP(-u_two)) / u_two) - EXP(-u_two), ROUND(B2 + B3 * slp_one + B4 * crv_one + B5 * crv_two, 4)))` - **Formula (Second-Hump Basis-Point Attribution Check)**: `=IF(B8 <= 0, 0, LET(u_two, B8 / B7, ROUND(B5 * (((1 - EXP(-u_two)) / u_two) - EXP(-u_two)) * 10000, 2)))` ### Nelson-Siegel Yield Curve Model: Level, Slope & Curvature Spot & Forward Rates - **URL**: https://sheets.arte-soft.com/en/learn/nelson-siegel-yield-curve-level-slope-and-curvature-spot-rate/ - **Summary**: Fit parsimonious sovereign and corporate spot yield curves across any maturity tau using Charles Nelson and Andrew Siegel’s (1987) four-parameter level, slope, and medium-term hump loadings. *Table — Why central banks fit curves with Nelson-Siegel beta_0, beta_1, and beta_2 factors:* | Curve Component (tau=2, lambda=2) | Formula | Example (b0=4.5%, b1=-1.5%, b2=+2.0%) | | --- | --- | --- | | Overnight Limit y(0) | beta_0 + beta_1 | 0.0300 (3.00%) | | Slope Loading L_1(1) | (1 - EXP(-1)) / 1 | 0.6321 | | Curvature Loading L_2(1) | L_1(1) - EXP(-1) | 0.2642 | | 2-Year Spot / Instantaneous Forward | y(2) vs f(2) | 0.0408 (4.08%) / 0.0468 (4.68%) | - **Formula (Nelson-Siegel Spot Yield Formula (With tau = 0 Limit Guard))**: `=IF(B6 = 0, ROUND(B2 + B3, 4), LET(x_sc, B6 / B5, load_slp, (1 - EXP(-x_sc)) / x_sc, load_crv, load_slp - EXP(-x_sc), ROUND(B2 + B3 * load_slp + B4 * load_crv, 4)))` - **Formula (Nelson-Siegel Instantaneous Forward Rate Formula)**: `=LET(x_sc, B6 / B5, ROUND(B2 + B3 * EXP(-x_sc) + B4 * x_sc * EXP(-x_sc), 4))` ### Nerlove-Arrow Advertising Goodwill Stock Formula - **URL**: https://sheets.arte-soft.com/en/learn/nerlove-arrow-advertising-goodwill-stock-optimality-formula/ - **Summary**: Generalize Dorfman-Steiner to durable brand equity dG/dt = a - delta*G using Marc Nerlove and Kenneth Arrow’s (1962) dynamic goodwill-to-sales rule G* / (P*Q) = beta_G / (epsilon_P * (r + delta)). *Table — Stop treating durable brand advertising as an instant perishable expense!:* | Nerlove-Arrow Brand Capital Metric (Rev=10M, beta_G=0.12, eps_P=2.0) | Formula | Verified Output | | --- | --- | --- | | User Cost of Brand Goodwill (r + delta) | 0.10 + 0.20 | 0.3000 (30.00% / yr) | | Optimal Goodwill-to-Sales Ratio (G* / Rev) | beta_G / (epsilon_P * (r + delta)) | 0.2000 (20.00% of Sales) | | Target Brand Goodwill Stock (G*) | Revenue * 0.2000 | 2,000,000.00 | | Steady-State Annual Ad Budget (delta * G*) | 0.20 * 2,000,000 | 400,000.00 (4.00% Ad-to-Sales) | - **Formula (Optimal Goodwill-to-Sales Ratio & Target Goodwill Capital Stock Formula)**: `=LET(rv_an, B2, bt_gw, B3, ep_pr, B4, r_dsc, B5, dl_dp, B6, IF(OR(rv_an <= 0, bt_gw < 0, ep_pr <= 1, r_dsc < 0, dl_dp <= 0), "Invalid Nerlove-Arrow Input", ROUND(rv_an * bt_gw / (ep_pr * (r_dsc + dl_dp)), 2)))` - **Formula (Steady-State Replacement Advertising-to-Sales Ratio Formula)**: `=LET(bt_gw, B3, ep_pr, B4, r_dsc, B5, dl_dp, B6, IF(OR(bt_gw < 0, ep_pr <= 1, r_dsc < 0, dl_dp <= 0), "Invalid Nerlove-Arrow Input", ROUND((dl_dp / (r_dsc + dl_dp)) * (bt_gw / ep_pr), 4)))` ### Nernst equation: electrochemical cell potential and reaction quotient - **URL**: https://sheets.arte-soft.com/en/learn/nernst-equation-electrochemical-cell-potential-voltage/ - **Summary**: Calculate a reversible cell potential from a supplied standard potential, temperature and dimensionless activity-based reaction quotient. *Table — Use a temperature-consistent standard potential and reaction quotient:* | Daniell Cell State (E0 = 1.100 V, n = 2, 25 °C) | Reaction Quotient Q | Cell Potential E (Volts) | | --- | --- | --- | | Low reaction quotient | Q = 0.01 | 1.1592 V | | Unit reaction quotient | Q = 1 | 1.1000 V | | High reaction quotient | Q = 100 | 1.0408 V | - **Formula (Nernst potential with supplied temperature-consistent E0)**: `=IF(OR(COUNT(A2:F2)<>6,B2<=0,B2<>INT(B2),C2<=-273.15,D2<=0,E2<=0,F2<=0),"Invalid inputs",ROUND(A2 - ((E2 * (C2 + 273.15)) / (B2 * F2)) * LN(D2), 4))` - **Formula (Thermal voltage slope (RT / nF in Volts per natural-log unit))**: `=IF(OR(COUNT(A2:F2)<>6,B2<=0,B2<>INT(B2),C2<=-273.15,D2<=0,E2<=0,F2<=0),"Invalid inputs",ROUND((E2 * (C2 + 273.15)) / (B2 * F2), 5))` ### Nernst Equilibrium (Reversal) Potential & Electrochemical Driving Force - **URL**: https://sheets.arte-soft.com/en/learn/nernst-equilibrium-potential-and-thermal-voltage-ion-reversal/ - **Summary**: Compute ion reversal potential E_ion = (R*T / (z*F)) * LN([X]_out / [X]_in) in millivolts across temperature and valence, plus net transmembrane driving force V_m - E_ion. *Table — Why textbook 61.5 mV log10 approximations fail away from 37 °C or for divalent ions:* | Ion at 37 °C (V_m = -70 mV) | Valence z | [Out] / [In] (mM) | Reversal E_ion & Driving Force | | --- | --- | --- | --- | | Potassium (K+) | +1 | 4.5 / 140 | E_K = -91.87 mV \| V_m - E_K = +21.87 mV (Outward) | | Hyperkalemic K+ | +1 | 8.0 / 140 | E_K = -76.50 mV \| Depolarized +15.37 mV | | Calcium (Ca2+) | +2 | 2.0 / 0.0001 | E_Ca = +132.34 mV \| Strong inward gradient | | Chloride (Cl-) | -1 | 110 / 10 | E_Cl = -64.09 mV \| Signed z = -1 flips sign | - **Formula (Exact Temperature- & Valence-Aware Nernst Potential Formula (mV))**: `=LET(tk, B2 + 273.15, v_th, (8.31446 * tk / 96485.33) * 1000, ROUND((v_th / B3) * LN(B4 / B5), 2))` - **Formula (Electrochemical Driving Force (V_m - E_ion))**: `=ROUND(B6 - E3, 2)` ### Nernst-Planck Electrodiffusion Equation: Fickian Diffusion + Electric Migration Flux - **URL**: https://sheets.arte-soft.com/en/learn/nernst-planck-electrodiffusion-flux-and-migration-formula/ - **Summary**: Calculate total ionic molar flux J_i = -D_i * (dC/dx + ((z_i * F) / (R * T)) * C * (dPhi/dx)) in umol/(m^2*s) across PEM fuel cells, Li-ion electrolytes, and biological ion channels. *Table — Model coupled concentration diffusion and electric-field drift in batteries & neurons!:* | Potential Gradient dPhi/dx | Fickian Diffusion Term | Electric Migration Term | Net Cation Flux J (umol/m^2*s) | | --- | --- | --- | --- | | Zero Field (dPhi/dx = 0 V/m) | +0.100 umol/(m^2*s) | 0.000 umol/(m^2*s) | +0.100 (Pure Fickian diffusion) | | Assisting Field (-50 V/m, E = +50) | +0.100 umol/(m^2*s) | +19.461 umol/(m^2*s) | +19.561 (195x stronger flux!) | | Opposing Field (+50 V/m, E = -50) | +0.100 umol/(m^2*s) | -19.461 umol/(m^2*s) | -19.361 (Pumped uphill vs dC/dx!) | - **Formula (Total Nernst-Planck Ionic Molar Flux J_i in umol/(m^2*s))**: `=IF(OR(B2 <= 0, B4 < 0, B6 <= 0), "Invalid Electrolyte Inputs", ROUND(-1000000 * B2 * (B5 + (((B3 * 96485.33) / (8.31446 * B6)) * B4 * B7)), 3))` - **Formula (Pure Migration Component J_mig Only (umol/(m^2*s)))**: `=IF(OR(B2 <= 0, B4 < 0, B6 <= 0), "Invalid Electrolyte Inputs", ROUND(-1000000 * B2 * (((B3 * 96485.33) / (8.31446 * B6)) * B4 * B7), 3))` ### Nested Logit Inclusive Value (Logsum) and IIA Paradox Formula - **URL**: https://sheets.arte-soft.com/en/learn/nested-logit-inclusive-value-logsum-and-within-nest-substitution/ - **Summary**: Resolve Multinomial Logit’s Red-Bus/Blue-Bus IIA paradox using McFadden’s Nested Logit inclusive value IV = LN(SUM EXP(V_j / lambda)) and Random Utility consistency check 0 < lambda <= 1. *Table — Resolve the Red-Bus / Blue-Bus paradox with McFadden’s nest dissimilarity parameter lambda:* | Dissimilarity Parameter lambda (V = 0) | Auto Share P_auto | Red Bus Share P_rb (= P_bb) | | --- | --- | --- | | Standard MNL / IIA Trap (lambda = 1.00) | 0.3333 (Too Low!) | 0.3333 (66.7% Total Bus) | | Moderate Nest Correlation (lambda = 0.50) | 0.4142 | 0.2929 (58.6% Total Bus) | | Tight Within-Nest Substitution (lambda = 0.10) | 0.4827 (~50%) | 0.2586 (~25% Each Bus) | - **Formula (Transit Nest Inclusive Value (Logsum) IV_tr = LN(EXP(V_rb/lambda) + EXP(V_bb/lambda)) Formula)**: `=LET(v_rb, B3, v_bb, B4, lam_n, B5, IF(OR(lam_n <= 0, lam_n > 1), "Violates RUM Consistency (Require 0 < lambda <= 1)", ROUND(LN(EXP(v_rb / lam_n) + EXP(v_bb / lam_n)), 4)))` - **Formula (Unconditional Choice Probability P_auto and P_rb = P_transit * P(rb | transit) Formula)**: `=LET(v_au, B2, v_rb, B3, v_bb, B4, lam_n, B5, IF(OR(lam_n <= 0, lam_n > 1), "Violates RUM Consistency (Require 0 < lambda <= 1)", LET(sum_n, EXP(v_rb / lam_n) + EXP(v_bb / lam_n), w_tr, POWER(sum_n, lam_n), p_tr, w_tr / (EXP(v_au) + w_tr), p_cond, EXP(v_rb / lam_n) / sum_n, ROUND(p_tr * p_cond, 4))))` ### Nested VLOOKUP & Chained XLOOKUP: Two-Hop Crosswalk Mapping Formula - **URL**: https://sheets.arte-soft.com/en/learn/nested-vlookup-and-xlookup-two-hop-crosswalk-mapping/ - **Summary**: Translate legacy ERP or vendor codes through an intermediate crosswalk bridge table into master pricing using IFNA(VLOOKUP(VLOOKUP(G2, A2:B5, 2, FALSE), D2:E5, 2, FALSE), "Unmapped Code") or chained XLOOKUP. *Table — Bridging legacy SKU codes to master catalog prices via a two-hop crosswalk lookup!:* | Invoice Legacy Code G2 | Hop 1: Crosswalk Master SKU | Hop 2: Master Unit Price | Broken-Chain Handling | | --- | --- | --- | --- | | G2 = "LEG-20" | "MST-402" | $290 | Clean 2-hop resolution | | G2 = "LEG-30" | "MST-403" | $410 | Matches both VLOOKUP & XLOOKUP | | G2 = "LEG-99" (Missing in Hop 1) | #N/A intercepted | "Unmapped Legacy or Master SKU" | Single outer IFNA / XLOOKUP fallback | - **Formula (Two-Hop Nested VLOOKUP Wrapped in IFNA(VLOOKUP(VLOOKUP(...)), Fallback))**: `=IFNA(VLOOKUP(VLOOKUP(G2, A2:B5, 2, FALSE), D2:E5, 2, FALSE), "Unmapped Legacy or Master SKU")` - **Formula (Equivalent Chained XLOOKUP(XLOOKUP(...)) Crosswalk Formula)**: `=XLOOKUP(XLOOKUP(G2, A2:A5, B2:B5, "__MISSING__"), D2:D5, E2:E5, "Unmapped Legacy or Master SKU")` ### Net Promoter Score (NPS) & CSAT Top-2-Box formulas with COUNTIF - **URL**: https://sheets.arte-soft.com/en/learn/net-promoter-score-nps-and-csat-formula-countif/ - **Summary**: Calculate NPS including passive respondents and a 1–5 top-two-box CSAT percentage from a validated eight-response sample. *Table — Why Passives (7–8) count in the NPS denominator even though they score 0 in the numerator!:* | CX Metric (8 Survey Responses) | Scores | Formula | Score | | --- | --- | --- | --- | | Promoters (9–10) | 10, 9, 9, 10 (4 of 8) | COUNTIF(A2:A9, ">=9") / 8 | 50.0% | | Passives (7–8) | 8, 7 (2 of 8) | Included in denominator (8)! | 25.0% | | Detractors (0–6) | 6, 4 (2 of 8) | COUNTIF(A2:A9, "<=6") / 8 | 25.0% -> NPS = +25.0 | | CSAT Top-2-Box (4–5 on 1–5) | [5,4,5,5,3,4,2,5] (6 of 8) | COUNTIF(B2:B9, ">=4") / 8 | 75.0% (0.75) | - **Formula (Net Promoter Score (NPS on -100 to +100 scale))**: `=IF(COUNT(A2:A9)<>8,"Invalid inputs",IF(OR(COUNT(A2:A9)<>8,MIN(A2:A9)<0,MAX(A2:A9)>10,A2<>INT(A2),A3<>INT(A3),A4<>INT(A4),A5<>INT(A5),A6<>INT(A6),A7<>INT(A7),A8<>INT(A8),A9<>INT(A9)),"Invalid inputs",ROUND(((COUNTIF(A2:A9, ">=9") - COUNTIF(A2:A9, "<=6")) / COUNT(A2:A9)) * 100, 1)))` - **Formula (CSAT Top-2-Box satisfaction percentage (4 or 5 out of 5))**: `=IF(COUNT(B2:B9)<>8,"Invalid inputs",IF(OR(COUNT(B2:B9)<>8,MIN(B2:B9)<1,MAX(B2:B9)>5,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6),B7<>INT(B7),B8<>INT(B8),B9<>INT(B9)),"Invalid inputs",ROUND(COUNTIF(B2:B9, ">=4") / COUNT(B2:B9), 4)))` ### NETWORKDAYS function: count working days excluding holidays - **URL**: https://sheets.arte-soft.com/en/learn/networkdays-working-days-excluding-holidays/ - **Summary**: Count Monday-to-Friday working days between a start and end date inclusively, deducting weekday closures from a holiday range without double-counting weekend holidays. *Table — A Monday-to-Friday week with one midweek closure:* | Start (B2) | End (C2) | Closure 1 (E2) | Closure 2 (E3) | | --- | --- | --- | --- | | Mon 2 Mar 2026 (46083) | Fri 6 Mar 2026 (46087) | Wed 4 Mar 2026 (46085) | Sat 7 Mar 2026 (46088) | - **Formula (Both endpoints count when they fall on weekdays)**: `=NETWORKDAYS(B2,C2,E2:E3)` ### Neuber's Rule: Local Elastic-Plastic Notch Stress & Strain Concentration - **URL**: https://sheets.arte-soft.com/en/learn/neuber-rule-elastic-plastic-notch-root-stress-and-strain/ - **Summary**: Calculate the Neuber hyperbola product sigma * epsilon = (Kt * S)^2 / E (MPa) at geometric stress raisers and solve local notch-root total strain under elastic-perfectly-plastic yielding. *Table — Stop overpredicting notch-root stress once local yielding redistributes load!:* | Nominal Load S (Kt = 2.5, E = 200 GPa, sy = 450 MPa) | Pseudo-Elastic Kt * S | Neuber Product (Kt*S)^2 / E | EPP Notch-Root Strain epsilon | | --- | --- | --- | --- | | Yielded Notch (S = 240 MPa) | 600 MPa (> 450 MPa Yield!) | 1.800 MPa | 0.00400 (Plastic amplification!) | | Purely Elastic Notch (S = 120 MPa) | 300 MPa (<= 450 MPa Elastic) | 0.450 MPa | 0.00150 (= 300 / 200,000) | | Invalid Kt < 1 or E <= 0 | Guarded Input Error | Non-physical geometry | "Invalid Notch Parameters" | - **Formula (Neuber Hyperbola Energy Product sigma * epsilon = (Kt * S)^2 / E (MPa))**: `=IF(OR(B2 < 1, B3 < 0, B4 <= 0, B5 <= 0), "Invalid Notch Parameters", ROUND(((B2 * B3) ^ 2) / B4, 3))` - **Formula (Local Notch-Root Total Strain (Elastic-Perfectly-Plastic Closed Form))**: `=IF(OR(B2 < 1, B3 < 0, B4 <= 0, B5 <= 0), "Invalid Notch Parameters", ROUND(IF((B2 * B3) <= B5, (B2 * B3) / B4, ((B2 * B3) ^ 2) / (B4 * B5)), 5))` ### Neutron Star Compactness (2GM/Rc^2), Gravitational Redshift & Buchdahl Limit - **URL**: https://sheets.arte-soft.com/en/learn/neutron-star-compactness-and-gravitational-surface-redshift/ - **Summary**: Calculate general-relativistic stellar compactness Xi = (2 * G * M) / (R * c^2), exact Schwarzschild surface gravitational redshift z_grav = ((1 - Xi)^-0.5) - 1, and verify Buchdahl's stability bound Xi < 8/9. *Table — Weigh pulsars with X-ray gravitational redshift and test Buchdahl's 8/9 collapse limit!:* | Compact Object Configuration | Compactness Xi = 2GM/(Rc^2) | Surface Redshift z_grav | General-Relativistic Regime | | --- | --- | --- | --- | | Canonical Pulsar (1.4 M_sun, R = 12.0 km) | 0.3446 | z = 0.2352 (+23.5%) | Stable Neutron Star (< 8/9) | | Heavy Pulsar (2.0 M_sun, R = 11.5 km) | 0.5136 | z = 0.4339 (+43.4%) | Stiff EOS Neutron Star (< 8/9) | | Buchdahl Collapse Violated (2.0 M_sun, R = 6.0 km) | 0.9844 (>= 8/9!) | Unstable Collapse! | "Exceeds Buchdahl Stability Limit (8/9)!" | - **Formula (Relativistic Compactness Parameter Xi = (2 * G * M) / (R * c^2))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Star Inputs", ROUND((2 * 6.6743e-11 * B2 * 1.98847e30) / (B3 * 1000 * (299792458 ^ 2)), 4))` - **Formula (Gravitational Surface Redshift z_grav with Buchdahl Stability Check (Xi < 8/9))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Star Inputs", IF(((2 * 6.6743e-11 * B2 * 1.98847e30) / (B3 * 1000 * (299792458 ^ 2))) >= (8 / 9), "Exceeds Buchdahl Stability Limit (8/9)!", ROUND((1 / SQRT(1 - ((2 * 6.6743e-11 * B2 * 1.98847e30) / (B3 * 1000 * (299792458 ^ 2))))) - 1, 4)))` ### New Ballard Score (NBS) Neonatal Gestational Age Formula (20–44 Weeks) - **URL**: https://sheets.arte-soft.com/en/learn/new-ballard-score-gestational-age-neuromuscular-physical-maturity/ - **Summary**: Calculate clinical newborn gestational age in weeks GA = 24 + 0.4 * (Neuromuscular + Physical_Score) across Jeanne Ballard’s expanded -10 to +50 neonatal maturity scale. *Table — Date preterm and unbooked newborns accurately when first-trimester ultrasound is unavailable!:* | Total New Ballard Score S (-10 to +50) | Exact Formula 24 + 0.4 * S | Estimated Gestational Age | WHO / ACOG Maturity Tier | | --- | --- | --- | --- | | Total Score S = 0 (-10 = 20.0 wk) | 24 + 0.4 * 0 | 24.0 Weeks | Extremely Preterm (< 28.0 wk) | | Total Score S = 10 (5 Neuro + 5 Phys) | 24 + 0.4 * 10 | 28.0 Weeks | Very Preterm (28.0 - 31.9 wk) | | Total Score S = 35 (18 Neuro + 17 Phys) | 24 + 0.4 * 35 | 38.0 Weeks | Term Newborn (37.0 - 41.9 wk) | - **Formula (Estimated Clinical Gestational Age (Weeks) = 24 + 0.4 * (Neuro + Physical))**: `=IF(OR((B2 + B3) < -10, (B2 + B3) > 50), "Invalid Ballard Score (-10 to 50)", ROUND(24 + 0.4 * (B2 + B3), 1))` - **Formula (WHO / ACOG Neonatal Gestational Maturity Classification)**: `=IF(OR((B2 + B3) < -10, (B2 + B3) > 50), "Invalid Ballard Score (-10 to 50)", IF((24 + 0.4 * (B2 + B3)) < 28, "Extremely Preterm (< 28.0 wk)", IF((24 + 0.4 * (B2 + B3)) < 32, "Very Preterm (28.0 - 31.9 wk)", IF((24 + 0.4 * (B2 + B3)) < 37, "Moderate to Late Preterm (32.0 - 36.9 wk)", IF((24 + 0.4 * (B2 + B3)) < 42, "Term Newborn (37.0 - 41.9 wk)", "Post-Term Newborn (>= 42.0 wk)")))))` ### New Orleans Criteria (NOC) Head CT Rule for GCS 15 Minor Head Trauma - **URL**: https://sheets.arte-soft.com/en/learn/new-orleans-criteria-noc-gcs-15-minor-head-injury-ct-formula/ - **Summary**: Apply Michelle Haydel’s 7-item New Orleans Criteria (Headache, Vomiting, Age > 60, Drug/Alcohol Intoxication, Persistent Anterograde Amnesia, Visible Trauma Above Clavicles, Seizure) in GCS = 15 blunt head injury with LOC. *Table — Know the critical scope difference between New Orleans Criteria (GCS = 15 ONLY) and CCHR (GCS 13–15)!:* | New Orleans Criteria Group (GCS = 15 + LOC Required) | Clinical Triggers (+1 Each) | Head CT Action | | --- | --- | --- | | Eligibility Gate | GCS < 15 or Focal Neurologic Deficit | "Not Eligible for NOC Clearance (Order Head CT)" | | Symptoms & History (4 items) | Headache, Vomiting, Drug/Alcohol Intox, Seizure | >= 1 Positive -> Order Non-Contrast Head CT | | Age, Memory & Exam (3 items) | Age > 60, Persistent Short-Term Amnesia, Trauma > Clavicles | 0 / 7 Positive -> Safe to Defer Head CT | - **Formula (Count of Positive New Orleans Criteria (0 to 7))**: `=IF(B3 > 60, 1, 0) + IF(B4 = 1, 1, 0) + IF(B5 = 1, 1, 0) + IF(B6 = 1, 1, 0) + IF(B7 = 1, 1, 0) + IF(B8 = 1, 1, 0) + IF(B9 = 1, 1, 0)` - **Formula (New Orleans Criteria Head CT Decision With GCS = 15 Gate)**: `=IF(OR(B2 < 3, B2 > 15, B3 <= 3), "Invalid / Pediatric <3y Exclusion", IF(B2 < 15, "GCS < 15: Outside NOC Scope — Head CT Indicated", IF((IF(B3 > 60, 1, 0) + SUM(B4:B9)) >= 1, "Head CT Indicated (>= 1 New Orleans Criterion)", "No Head CT Required (All 7 NOC Negative)")))` ### Newcombe Hybrid Wilson Score Confidence Interval for Two-Proportion Risk Difference - **URL**: https://sheets.arte-soft.com/en/learn/newcombe-hybrid-score-risk-difference-confidence-interval/ - **Summary**: Construct boundary-respecting 95% confidence limits for independent risk difference RD = p_1 - p_2 using Robert Newcombe’s (1998) Method 10 square-and-add Wilson score intervals. *Table — Why FDA/EMA biostatisticians prefer Newcombe’s Method 10 over naive Wald RD ± z*SQRT(p1*q1/n1 + p2*q2/n2)!:* | Two-Arm Binomial Comparison (z = 1.96) | Point Risk Difference p_1 - p_2 | Newcombe Method 10 Lower 95% | Newcombe Method 10 Upper 95% | | --- | --- | --- | --- | | 18/50 (36%) vs 6/50 (12%) | +0.2400 (+24.0% ARD) | +0.0727 | +0.3926 (Excludes 0 -> Significant) | | 6/50 (12%) vs 6/50 (12%) — Equal | 0.0000 | -0.1342 | +0.1342 (Symmetric Null) | | Invalid Count x < 0, x > n, or n <= 0 | Error Guard | Error Guard | "Invalid Two-Arm Counts" | - **Formula (Newcombe Method 10 Lower 95% Risk-Difference Confidence Limit)**: `=IF(OR(B2 < 0, B3 <= 0, B2 > B3, B4 < 0, B5 <= 0, B4 > B5, B6 <= 0), "Invalid Two-Arm Counts", ROUND((B2 / B3 - B4 / B5) - SQRT(((B2 / B3 - B7) ^ 2) + ((B10 - B4 / B5) ^ 2)), 4))` - **Formula (Newcombe Method 10 Upper 95% Risk-Difference Confidence Limit)**: `=IF(OR(B2 < 0, B3 <= 0, B2 > B3, B4 < 0, B5 <= 0, B4 > B5, B6 <= 0), "Invalid Two-Arm Counts", ROUND((B2 / B3 - B4 / B5) + SQRT(((B8 - B2 / B3) ^ 2) + ((B4 / B5 - B9) ^ 2)), 4))` ### Newey-West Bartlett HAC Long-Run Variance and Standard Error Formula - **URL**: https://sheets.arte-soft.com/en/learn/newey-west-bartlett-hac-autocorrelation-consistent-standard-error/ - **Summary**: Correct serially correlated regression or sample-mean standard errors using Newey and West’s (1987) Bartlett-kernel triangular weights w_j = 1 - j / (L + 1) that guarantee positive variance. *Table — Understand why unweighted sample autocovariance sums can produce NEGATIVE variance!:* | HAC Variance Component (L = 3) | Formula Expression | Sample Output | | --- | --- | --- | | Bartlett Weights w_1, w_2, w_3 | MAX(0, 1 - j / (L + 1)) | 0.75, 0.50, 0.25 | | Naive i.i.d. Variance & SE | gamma_0 = 4.00; SQRT(gamma_0 / T) | 4.0000; SE = 0.2000 | | Newey-West Long-Run Omega_NW | gamma_0 + 2 * SUM(w_j * gamma_j) | 8.2000 | | Newey-West HAC Standard Error | SQRT(Omega_NW / T) | 0.2864 (1.4318x inflation) | - **Formula (Newey-West Bartlett-Kernel Long-Run Variance Omega_NW Formula)**: `=LET(l_bw, B3, g_0, B4, IF(OR(B2 <= 1, l_bw < 0, g_0 <= 0), "Invalid HAC Input", LET(w_1, MAX(0, 1 - 1 / (l_bw + 1)), w_2, MAX(0, 1 - 2 / (l_bw + 1)), w_3, MAX(0, 1 - 3 / (l_bw + 1)), ROUND(g_0 + 2 * (w_1 * B5 + w_2 * B6 + w_3 * B7), 4))))` - **Formula (HAC Standard Error of the Mean & Bandwidth L = 0 Reduction Check)**: `=IF(ISNUMBER(E3), ROUND(SQRT(E3 / B2), 4), E3)` ### Newman-Girvan Network Modularity Q Partition Formula - **URL**: https://sheets.arte-soft.com/en/learn/newman-girvan-network-modularity-q-community-partition-formula/ - **Summary**: Evaluate graph community clustering via Mark Newman and Michelle Girvan’s (2004) Modularity Q = SUM_c(e_cc - a_c^2) comparing intra-community edge share against the degree-preserving configuration null model. *Table — Why raw internal edge percentage fails — and how Newman-Girvan Modularity Q subtracts the random null!:* | Community Partition Metric (m = 10 Edges, 2m = 20 Stubs) | Formula | Verified Output | | --- | --- | --- | | Observed Intra-Community Edge Fraction | SUM(L_in) / m = 8 / 10 | 0.8000 (80.0% Internal Edges) | | Degree-Preserving Null Expectation | SUM((D_c / 2m)^2) = 0.45^2 + 0.40^2 + 0.15^2 | 0.3850 (38.5% Random Baseline) | | Newman-Girvan Modularity (Q) | SUM(e_cc - a_c^2) | 0.4150 (Strong Partition!) | | Single-Cluster Degenerate Merge Check | 1.0000 - 1.0000^2 | 0.0000 (Zero Modularity Gain) | - **Formula (Total Undirected Edge Count m = SUM(L_in) + 0.5 * SUM(L_ext) Formula)**: `=IF(OR(MIN(B2:B4) < 0, MIN(C2:C4) < 0, MOD(SUM(C2:C4), 2) <> 0, SUM(B2:B4) + 0.5 * SUM(C2:C4) <= 0), "Invalid Partition Stubs", SUM(B2:B4) + 0.5 * SUM(C2:C4))` - **Formula (Exact Newman-Girvan Modularity Q = SUM(e_cc) - SUM(a_c^2) Formula)**: `=LET(m_ed, SUM(B2:B4) + 0.5 * SUM(C2:C4), IF(OR(MIN(B2:B4) < 0, MIN(C2:C4) < 0, MOD(SUM(C2:C4), 2) <> 0, m_ed <= 0), "Invalid Partition Stubs", ROUND((SUM(B2:B4) / m_ed) - (SUMPRODUCT(D2:D4, D2:D4) / (4 * (m_ed ^ 2))), 4)))` ### Newmark Seismic Sliding-Block Formula: Yield Acceleration k_y & Permanent Slope Displacement - **URL**: https://sheets.arte-soft.com/en/learn/newmark-seismic-sliding-block-critical-acceleration-and-displacement/ - **Summary**: Evaluate earthquake slope performance beyond pseudo-static failure using Nathan M. Newmark’s (1965) Critical Yield Acceleration k_y = (FS_static - 1) * SIN(beta) and Ambraseys-Menu permanent co-seismic displacement D_N (cm). *Table — Why brief earthquake spikes exceeding FS = 1.0 cause finite centimeters of slip — NOT instant collapse!:* | Newmark Quantity (FS_static = 1.35, Thrust Angle beta = 24 deg, k_max = 0.36g) | Formula | Evaluated Value | | --- | --- | --- | | Critical Yield Acceleration k_y (in g) | (FS_static - 1) * SIN(RADIANS(beta)) | 0.1424g | | Yield-to-Peak Acceleration Ratio k_y / k_max | k_y / k_max | 0.3954 | | Ambraseys-Menu Median Permanent Slip D_N | 10^0.90 * (1 - r)^2.53 * r^(-1.09) | 6.11 cm | - **Formula (Newmark Critical Yield Acceleration Coefficient k_y (Fraction of g))**: `=IF(OR(B2 <= 1, B3 <= 0, B3 >= 90), "Requires Static FS > 1.0 and 0 < beta < 90 deg", ROUND((B2 - 1) * SIN(RADIANS(B3)), 4))` - **Formula (Ambraseys-Menu Median Co-Seismic Permanent Displacement D_N (cm))**: `=IF(OR(B2 <= 1, B3 <= 0, B3 >= 90, B4 <= 0), "Invalid Slope or Seismic PGA Inputs", IF(B4 <= (B2 - 1) * SIN(RADIANS(B3)), 0, ROUND((10 ^ 0.9) * ((1 - ((B2 - 1) * SIN(RADIANS(B3))) / B4) ^ 2.53) * ((((B2 - 1) * SIN(RADIANS(B3))) / B4) ^ (-1.09)), 2)))` ### NEWS2 Scale 1 spreadsheet exercise: scoring bands and single-parameter triggers - **URL**: https://sheets.arte-soft.com/en/learn/news2-royal-college-early-warning-score-sepsis-escalation/ - **Summary**: Practice IF and IFS with fictional NEWS2 Scale 1 observations, explicit input validation and the separate single-parameter three-point trigger. - **Formula (Aggregate points for the Scale 1 example)**: `=IF(OR(COUNT(B2:B3,B5:B6,B8)<>5,AND(B4<>"Yes",B4<>"No"),AND(B7<>"Alert",B7<>"New confusion",B7<>"Voice",B7<>"Pain",B7<>"Unresponsive")),"Invalid inputs",IF(OR(B2<0,B3<0,B3>100,B5<=0,B6<0,B8<=-273.15,B2<>INT(B2),B3<>INT(B3),B5<>INT(B5),B6<>INT(B6),ABS(B8*10-ROUND(B8*10,0))>0.00000001),"Invalid inputs",IFS(B2<=8,3,B2<=11,1,B2<=20,0,B2<=24,2,TRUE,3)+IFS(B3<=91,3,B3<=93,2,B3<=95,1,TRUE,0)+IF(B4="Yes",2,0)+IFS(B5<=90,3,B5<=100,2,B5<=110,1,B5<=219,0,TRUE,3)+IFS(B6<=40,3,B6<=50,1,B6<=90,0,B6<=110,1,B6<=130,2,TRUE,3)+IF(B7="Alert",0,3)+IFS(B8<=35,3,B8<=36,1,B8<=38,0,B8<=39,1,TRUE,2)))` - **Formula (Threshold category including the single red score)**: `=IF(OR(NOT(ISNUMBER(C2)),NOT(ISNUMBER(C3))),"Invalid inputs",IFS(C2>=7,"High: aggregate 7+",C2>=5,"Medium: aggregate 5-6",C3=3,"Low-medium: single red score",TRUE,"Low: aggregate 0-4, no red score"))` ### Newsvendor model formula: Critical Fractile & optimal perishable stock level - **URL**: https://sheets.arte-soft.com/en/learn/newsvendor-critical-fractile-perishable-inventory-formula/ - **Summary**: Calculate a single-period critical fractile and select an order quantity from five equally likely demand scenarios. Distinguish empirical demand quantiles from interpolated percentiles. *Table — Match the order quantile to the assumed demand distribution:* | Newsvendor Parameter ($28 Price, $12 Cost, $4 Salvage) | Formula | Value | | --- | --- | --- | | Underage Stockout Cost (Cu) | Price - Cost = $28 - $12 | $16.00 lost profit / unit | | Overage Leftover Cost (Co) | Cost - Salvage = $12 - $4 | $8.00 spoilage loss / unit | | Critical fractile (model target) | Cu / (Cu + Co) = 16 / 24 | 0.6667 (66.67th percentile) | | Empirical-scenario order quantity | SMALL(Demand, ROUNDUP(5*CF,0)) | 160 units | - **Formula (Calculate Newsvendor Critical Fractile Cu / (Cu + Co))**: `=IF(OR(COUNT(A2:C2)<>3,C2<0,A2<=B2,B2<=C2),"Invalid inputs",LET(cu, A2 - B2, co, B2 - C2, ROUND(cu / (cu + co), 4)))` - **Formula (Order quantity under the five-scenario empirical model)**: `=IF(OR(COUNT(A2:C2)<>3,C2<0,A2<=B2,B2<=C2,COUNT(E2:E6)<>5,MIN(E2:E6)<0,E2<>INT(E2),E3<>INT(E3),E4<>INT(E4),E5<>INT(E5),E6<>INT(E6)),"Invalid inputs",SMALL(E2:E6,ROUNDUP(ROWS(E2:E6)*(A2-B2)/(A2-C2),0)))` ### Newton's Law of Cooling formula: transient temperature & time to cool - **URL**: https://sheets.arte-soft.com/en/learn/newtons-law-of-cooling-transient-temperature-and-time-to-cool/ - **Summary**: Calculate temperature and target time in a constant-ambient, constant-rate lumped cooling or warming model, with explicit reachability checks. *Table — An exponential model with constant surroundings:* | Thermal Decay Metric | Formula | T_0 = 92°C, T_amb = 22°C, k = 0.045/min | Target 20 C for this cooling example | | --- | --- | --- | --- | | Temp after 15 Minutes | B3 + (B2 - B3) * EXP(-B4 * B5) | 57.64 °C | Asymptotes to 22.00 °C | | Time to Cool to 57 °C (Halfway) | -LN((B6 - B3)/(B2 - B3)) / B4 | 15.40 minutes (LN(2)/k) | No finite target time | | Thermal Half-Life t_1/2 | LN(2) / B4 | 15.40 minutes per 50% gap | 15.40 minutes | - **Formula (Transient Temperature T(t) = T_amb + (T_0 - T_amb) * EXP(-k * t))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<=0,B5<0),"Invalid inputs",ROUND(B3 + (B2 - B3) * EXP(-B4 * B5), 2)))` - **Formula (Target time for cooling or warming)**: `=IF(COUNT(B2:B4,B6)<>4,"Invalid inputs",IF(B4<=0,"Invalid inputs",IF(B6=B2,0,IF(OR(B2=B3,B6<=MIN(B2,B3),B6>=MAX(B2,B3)),"No finite target time",ROUND(-LN((B6-B3)/(B2-B3))/B4,2)))))` - **Formula (Half-life of the temperature difference)**: `=IF(NOT(ISNUMBER(B4)),"Invalid inputs",IF(B4<=0,"Invalid inputs",ROUND(LN(2)/B4,2)))` ### Next & Previous Working Day: Strict Step vs. Same-or-Next Business Day Roll - **URL**: https://sheets.arte-soft.com/en/learn/next-and-previous-working-day-roll-forward-backward-workday/ - **Summary**: Calculate strictly next/previous working days and roll-forward/roll-backward settlement dates that preserve valid business days while skipping weekends and holidays via WORKDAY. *Table — Strict +1/-1 business-day step vs banking Following / Preceding conventions:* | Rule | Formula Pattern | Saturday 2026-07-04 (Fri Jul 3 Holiday) | Tuesday 2026-07-07 | | --- | --- | --- | --- | | Strictly Next Working Day | WORKDAY(A2, 1, $F$2:$F$3) | 2026-07-06 (Mon) | 2026-07-08 (Wed) | | Strictly Previous Working Day | WORKDAY(A2, -1, $F$2:$F$3) | 2026-07-02 (Thu) | 2026-07-06 (Mon) | | Roll-Forward (Same or Next) | WORKDAY(A2 - 1, 1, $F$2:$F$3) | 2026-07-06 (Mon) | 2026-07-07 (Tue) | | Roll-Backward (Same or Prev) | WORKDAY(A2 + 1, -1, $F$2:$F$3) | 2026-07-02 (Thu) | 2026-07-07 (Tue) | - **Formula (Same-or-Next Business Day Roll-Forward Formula)**: `=TEXT(WORKDAY(A2 - 1, 1, $F$2:$F$3), "yyyy-mm-dd")` - **Formula (Same-or-Previous Business Day Roll-Backward Formula)**: `=TEXT(WORKDAY(A2 + 1, -1, $F$2:$F$3), "yyyy-mm-dd")` ### Next work anniversary date and completed years of service - **URL**: https://sheets.arte-soft.com/en/learn/next-anniversary-date-and-years-of-service/ - **Summary**: Calculate completed employee tenure, exact upcoming anniversary date (leap-day safe), and 5-year service award milestones. *Table — Use one consistent anniversary policy:* | HireDate (A) | AsOfDate (B) | Completed Yrs | Upcoming Anniversary | 5-Yr Award? | | --- | --- | --- | --- | --- | | 2021-08-15 | 2026-05-01 | 4 | 2026-08-15 (5th) | TRUE | | 2021-08-15 | 2026-08-15 | 5 | 2027-08-15 (6th) | FALSE | - **Formula (Upcoming anniversary date and milestone award check)**: `=LET(y, YEAR(B2)-YEAR(A2), anniversary, EDATE(A2, y*12), TEXT(EDATE(A2, (y+IF(anniversary<=INT(B2), 1, 0))*12), "yyyy-mm-dd"))` - **Formula (Completed years of tenure and 5-year award flag)**: `=LET(y, YEAR(B2)-YEAR(A2), y-IF(EDATE(A2,y*12)>INT(B2),1,0))` ### Next Biweekly Payday from Any Date formula (14-Day Anchor + CEILING.MATH) - **URL**: https://sheets.arte-soft.com/en/learn/next-biweekly-payday-from-any-date-anchor-mod-ceiling/ - **Summary**: Find the next date on or after a query date in a fixed 14-day schedule anchored to a known date. *Table — A fixed 14-day cycle, not a twice-monthly schedule:* | Query Date (Col B3) | Days Since 2026-01-02 Anchor | Next Biweekly Payday | Days Remaining | | --- | --- | --- | --- | | 2026-01-07 (Wed) | +5 days (0.36 cycles) | 2026-01-16 (Fri) | 9 days | | 2026-01-30 (Exact Payday!) | +28 days (2.00 cycles) | 2026-01-30 (Today!) | 0 days | | 2026-01-31 (Sat after payday) | +29 days (2.07 cycles) | 2026-02-13 (Fri) | 13 days | - **Formula (Next Biweekly Payday On or After Query Date B3)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric dates",IF(OR(MIN(B2:B3)=DATE(9999,1,1)),"Date outside example range",TEXT(INT(B2)+CEILING.MATH((INT(B3)-INT(B2))/14,1)*14,"yyyy-mm-dd")))` - **Formula (Countdown Days Remaining Until Biweekly Payday (0 on Payday))**: `=IF(COUNT(B2:B3)<>2,"Enter numeric dates",IF(OR(MIN(B2:B3)=DATE(9999,1,1)),"Date outside example range",MOD(14-MOD(INT(B3)-INT(B2),14),14)))` - **Formula (Keep the result as a numeric date)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric dates",IF(OR(MIN(B2:B3)=DATE(9999,1,1)),"Date outside example range",INT(B2)+CEILING.MATH((INT(B3)-INT(B2))/14,1)*14))` ### Next business day N months in the future (EDATE + WORKDAY "-1, +1" trick) - **URL**: https://sheets.arte-soft.com/en/learn/next-business-day-n-months-in-future-edate-workday/ - **Summary**: Shift a date by whole months, then keep it if it is a working day or roll forward using a supplied holiday list and Saturday–Sunday weekends. *Table — Why WORKDAY(EDATE(Start, 6), 1) overshoots weekday anniversaries—and "-1, +1" fixes it!:* | Start Date (A) | Months Ahead (B) | Raw EDATE(A, B) | Following Business Day | | --- | --- | --- | --- | | 2026-01-04 | 6 months | 2026-07-04 (Saturday) | 2026-07-06 (Monday!) | | 2026-03-02 | 6 months | 2026-09-02 (Wednesday) | 2026-09-02 (Kept exact!) | | 2026-03-07 | 6 months | 2026-09-07 (listed holiday) | 2026-09-08 (Tuesday!) | - **Formula (Following working day using the supplied calendar)**: `=TEXT(WORKDAY(EDATE(A2, B2) - 1, 1, $D$2:$D$3), "yyyy-mm-dd")` - **Formula (Preceding Business Day convention (roll weekends backward to Friday))**: `=TEXT(WORKDAY(EDATE(A2, B2) + 1, -1, $D$2:$D$3), "yyyy-mm-dd")` ### Find the exact or next-larger capacity tier with XLOOKUP - **URL**: https://sheets.arte-soft.com/en/learn/next-largest-bracket-lookup-xlookup-mode-1-vs-match/ - **Summary**: Select the smallest listed capacity meeting a requested quantity and return a clear message when none qualifies. *Table — Choose the direction of approximate matching deliberately:* | Capacity | Package | Example selection | | --- | --- | --- | | 15 | Package15 | Request0 through15 | | 20 | Package20 | Exact20 | | 30 | Package30 | Request24 | | 50 | Package50 | Request65 exceeds available capacities | - **Formula (Select an exact or next-larger package)**: `=IF(OR(NOT(ISNUMBER(D2)),COUNT(A2:A5)<>4),"Invalid inputs",IF(OR(D2<0,MIN(A2:A5)<=0),"Invalid inputs",XLOOKUP(D2,A2:A5,B2:B5,"Exceeds maximum",1)))` - **Formula (Unused capacity in the chosen package)**: `=IF(OR(NOT(ISNUMBER(D2)),COUNT(A2:A5)<>4),"Invalid inputs",IF(OR(D2<0,MIN(A2:A5)<=0),"Invalid inputs",IF(D2>MAX(A2:A5),"Exceeds maximum",XLOOKUP(D2,A2:A5,A2:A5,0,1)-D2)))` ### NEXUS Cervical-Spine Trauma Clearance Criteria (5-Item NSAID Rule) - **URL**: https://sheets.arte-soft.com/en/learn/nexus-cervical-spine-trauma-clearance-criteria-formula/ - **Summary**: Evaluate Hoffman's 34,069-patient National Emergency X-Radiography Utilization Study (NEXUS) 5-item criteria to safely clear blunt trauma cervical-spine imaging with 99.6% sensitivity. *Table — Clear low-risk blunt trauma C-spines clinically only when ALL FIVE NEXUS criteria are absent!:* | Trauma Presentation | NEXUS Risk Flags (B2:B6) | Positive Flag Sum | Clinical Clearance Decision | | --- | --- | --- | --- | | Alert Sober Rear-End MVC | All 5 flags = 0 | 0 of 5 | NEXUS Cleared: No C-Spine Imaging Needed | | Midline Neck Tenderness Only | Midline Tenderness = 1 | 1 of 5 | Not Cleared: C-Spine Imaging Indicated | | Femur Fracture (Distracting Injury) | Distracting Injury = 1 | 1 of 5 | Not Cleared: C-Spine Imaging Indicated | - **Formula (NEXUS Positive Risk Flag Count (0 to 5 Flags))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Invalid Binary Flag (0 or 1)", SUM(B2:B6))` - **Formula (NEXUS Clinical C-Spine Clearance Verdict)**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1), "Invalid Binary Flag (0 or 1)", IF(SUM(B2:B6) = 0, "NEXUS Cleared: C-Spine Imaging Not Required", "Not Cleared: C-Spine Imaging Indicated"))` ### NFL Quarterback Passer Rating formula (0 to 158.3 Official Scale) - **URL**: https://sheets.arte-soft.com/en/learn/nfl-passer-rating-quarterback-efficiency-formula/ - **Summary**: Calculate NFL passer rating with four clamped components and compare it with adjusted yards per attempt (AY/A). *Table — Why the maximum displays as 158.3:* | Passer Component | Clamped Formula [0, 2.375] | 25/35, 315 Yds, 3 TD, 1 INT | Perfect Game (16/20, 260, 3, 0) | | --- | --- | --- | --- | | a: Completion % | MIN(2.375, MAX(0, ((B3/B2)-0.3)*5)) | 2.0714 (71.4% CMP) | 2.3750 (80.0% >= 77.5%) | | b: Yards / Attempt | MIN(2.375, MAX(0, ((B4/B2)-3)*0.25)) | 1.5000 (9.0 YPA) | 2.3750 (13.0 >= 12.5 YPA) | | c: Touchdown % | MIN(2.375, MAX(0, (B5/B2)*20)) | 1.7143 (8.57% TD) | 2.3750 (15.0% >= 11.88%) | | d: Interception % | MIN(2.375, MAX(0, 2.375 - (B6/B2)*25)) | 1.6607 (2.86% INT) | 2.3750 (0.0% INT) | | Official NFL Rating | ROUND(((a + b + c + d) / 6) * 100, 1) | 115.8 Rating | 158.3 Perfect Rating! | - **Formula (Complete Official NFL Passer Rating Formula (0.0 to 158.3))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<0,B3<0,B5<0,B6<0,B2<>INT(B2),B3<>INT(B3),B5<>INT(B5),B6<>INT(B6),B3+B6>B2,B5>B3),"Invalid inputs",IF(B2=0,"N/A",ROUND(((MIN(2.375, MAX(0, ((B3 / B2) - 0.3) * 5)) + MIN(2.375, MAX(0, ((B4 / B2) - 3) * 0.25)) + MIN(2.375, MAX(0, (B5 / B2) * 20)) + MIN(2.375, MAX(0, 2.375 - ((B6 / B2) * 25)))) / 6) * 100, 1))))` - **Formula (Adjusted yards per attempt (AY/A))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<0,B3<0,B5<0,B6<0,B2<>INT(B2),B3<>INT(B3),B5<>INT(B5),B6<>INT(B6),B3+B6>B2,B5>B3),"Invalid inputs",IF(B2=0,"N/A",ROUND((B4 + 20 * B5 - 45 * B6) / B2, 2))))` ### NFPA 13 Fire Sprinkler K-Factor Discharge & Pressure Formula - **URL**: https://sheets.arte-soft.com/en/learn/nfpa-13-fire-sprinkler-k-factor-orifice-discharge-and-branch-pressure-formula/ - **Summary**: Calculate Minimum Head Flow Q_min (GPM), NFPA 13 Minimum End-Head Residual Pressure P_req (psi, enforcing >= 7.0 psi code floor), Actual Orifice Discharge Q = K*SQRT(P) (GPM), and Hydraulic Over-Discharge (%). *Table — Why NFPA 13 enforces BOTH Density * Area flow AND a hard 7.0 psi minimum end-head pressure floor!:* | NFPA 13 Sprinkler Head KPI (K=5.6, Area=130 ft², Density=0.15, Pact=16 psi) | Formula | Verified Output | | --- | --- | --- | | Minimum Required Flow Qmin (GPM) | Coverage_Area_ft2 * Design_Density | 19.50 GPM (26.00 @ 0.20 Extra Haz) | | Minimum Code Pressure Preq (psi) | MAX(7.0, (Q_min / K_Factor)^2) | 12.13 psi (10.56 psi @ K = 8.0) | | Actual Nozzle Flow Qact (GPM) | K_Factor * SQRT(Actual_Branch_psi) | 22.40 GPM (32.00 GPM @ K = 8.0) | | Hydraulic Over-Discharge (%) | ((Q_act - Q_min) / Q_min) * 100 | +14.87% (+23.08% @ K = 8.0) | - **Formula (NFPA 13 K-Factor Orifice Discharge & 7-psi Minimum Pressure Formula)**: `=LET(kf_c, B2, ar_s, B3, dn_s, B4, pa_c, B5, IF(OR(kf_c < 2.8, ar_s < 20, ar_s > 400, dn_s < 0.05, dn_s > 0.6, pa_c < 7), "Invalid NFPA 13 Input", LET(qm_n, ar_s * dn_s, pr_q, MAX(7, (qm_n / kf_c) ^ 2), IF(pa_c < pr_q, "PRESSURE BELOW NFPA REQ", LET(qa_c, kf_c * SQRT(pa_c), ROUND(((qa_c - qm_n) / qm_n) * 100, 2))))))` - **Formula (K-8.0 Large-Orifice Ordinary Hazard Group 2 Upgrade Check (Set K = 8.0 & Density = 0.20))**: `=IF(ISTEXT(E5), E5, ROUND(MAX(7, ((B3 * B4) / B2) ^ 2), 2))` ### NGI Barton Tunneling Q-System & Roof Support Formula - **URL**: https://sheets.arte-soft.com/en/learn/ngi-barton-tunneling-q-system-equivalent-dimension-and-bolt-shotcrete-support/ - **Summary**: Calculate Logarithmic NGI Rock Mass Quality Q (0.001–1,000), Equivalent Excavation Dimension De (m), Maximum Permanent Unsupported Span (m), and Crown Support Pressure (kPa). *Table — Clay-coated slickensided joints drop Barton’s Q-index across six orders of magnitude—multiplying permanent cavern roof support pressure 10x!:* | NGI Barton Q-System KPI (Span B=9.60 m, ESR=1.0: Good Gneiss vs Swelling Clay Fault) | Formula | Verified Output | | --- | --- | --- | | NGI Rock Mass Quality Index Q | (RQD / Jn) * (Jr / Ja) * Jw_Over_SRF | 6.336 Fair/Good (0.046 Extremely Poor!) | | Equivalent Excavation Dim De (m) | Tunnel_Span_B_m / Support_Ratio_ESR | 9.60 m | | Max Unsupported Span Smax (m) | 2 * ESR * (Q ^ 0.4) | 4.19 m (0.58 m immediate face collapse!) | | Permanent Roof Support Load (kPa) | (200 / Roughness_Jr) * (Q ^ (-1/3)) | 54.0 kPa (558.9 kPa cast concrete arch!) | - **Formula (Barton, Lien & Lunde (1974) Three-Quotient Q-Index & Crown Support Formula)**: `=LET(rq_d, B2, jn_s, B3, jr_n, B4, ja_n, B5, jw_s, B6, bs_m, B7, es_r, B8, qv_l, (rq_d / jn_s) * (jr_n / ja_n) * jw_s, IF(OR(rq_d < 10, rq_d > 100, jn_s < 0.5, jn_s > 20, jr_n < 0.5, jr_n > 4, ja_n < 0.75, ja_n > 20, jw_s < 0.005, jw_s > 2, bs_m < 1.5, bs_m > 60, es_r < 0.5, es_r > 5), "Invalid Barton Q Input", ROUND((200 / jr_n) * (qv_l ^ (-1 / 3)), 1)))` - **Formula (Crushed Clay-Gouge Fault Zone (`Q = 0.046` Extremely Poor Rock) 559 kPa Load Check)**: `=IF(ISTEXT(E5), E5, LET(qv_l, (B2 / B3) * (B4 / B5) * B6, ROUND(2 * B8 * (qv_l ^ 0.4), 2)))` ### Nickel Electroforming Wall Rate & Haring-Blum Throwing Power - **URL**: https://sheets.arte-soft.com/en/learn/nickel-sulfamate-mandrel-electroforming-wall-buildup-and-haring-blum-throwing-power/ - **Summary**: Calculate Faraday Nickel Deposition Rate (um/h), Electroformed Mandrel Shell Thickness (um and mm), and Field-Modified Haring-Blum Throwing Power (%). *Table — Negative throwing power (-10.1%) in an un-shielded sulfamate bath starves deep optical mandrel recesses while growing thick "dog-bone" nodules on outer corners!:* | Nickel Sulfamate Electroforming KPI (J=4.5 A/dm², Eff=98%, t=6.5 h, K=3.0) | Formula | Verified Output | | --- | --- | --- | | Faraday Deposition Rate (um/h) | (((J / 100) * 3600 * 58.6934 * Eff) / (2 * F * 8.908)) * 1e4 | 54.21 um/h | | Electroformed Shell Wall (um) | Plating_Rate_um_hr * Duration_hr | 352.3 um | | Finished Shell Wall (mm) | Shell_Wall_um / 1000 | 0.352 mm precision shim | | Field Haring-Blum Throwing Power (%) | ((Dist_Ratio_K - Mass_Ratio_M) / (K + M - 2)) * 100 | +26.98% (-10.11% corner dog-boning!) | - **Formula (Faraday Nickel Sulfamate Growth & Field-Modified Haring-Blum Throwing Power Formula)**: `=LET(jd_a, B2, ce_p, B3, tm_h, B4, kr_d, B5, mr_w, B6, IF(OR(jd_a < 0.5, jd_a > 30, ce_p < 50, ce_p > 100, tm_h < 0.1, tm_h > 500, kr_d < 1.5, kr_d > 10, mr_w < 1, mr_w > 20), "Invalid Electroform Input", ROUND(((kr_d - mr_w) / (kr_d + mr_w - 2)) * 100, 2)))` - **Formula (Chloride-Contaminated High-Current Bath (`M = 3.45 > K = 3.0`) Dog-Bone Corner Check)**: `=IF(ISTEXT(E5), E5, ROUND((((B2 / 100) * 3600 * 58.6934 * (B3 / 100)) / (2 * 96485.332 * 8.908)) * 10000, 2))` ### Nickell Dynamic Panel Fixed-Effects Bias Formula (Short-T Audit) - **URL**: https://sheets.arte-soft.com/en/learn/nickell-dynamic-panel-hurwicz-within-fe-bias-and-arellano-bond/ - **Summary**: Quantify exact Nickell (1981) downward Fixed-Effects bias in dynamic AR(1) panels y_it = alpha_i + rho*y_{i,t-1} + u_it to decide when Arellano-Bond GMM is required. *Table — Why Fixed-Effects demeaning biases lagged dependent variables downward in short-T panels:* | Panel Horizon & True rho | Exact Nickell Bias | Expected Biased plim(rho_FE) | | --- | --- | --- | | Short Panel (T = 5, rho = 0.50) | -0.3311 (-49 / 148) | 0.1689 (Loses 66% of Persistence!) | | White-Noise Hurwicz Case (T = 5, rho = 0) | -0.2000 (-1 / T) | -0.2000 (Spurious Mean Reversion) | | Long Macro Panel (T = 50, rho = 0.50) | -0.0306 | 0.4694 (Small O(1/T) Distortion) | - **Formula (Exact Finite-T Nickell (1981) Fixed-Effects Bias Formula)**: `=LET(rho_0, B2, t_per, B3, IF(OR(t_per < 2, ABS(rho_0) >= 1), "Require T>=2 and |rho|<1", IF(ABS(rho_0) < 1E-12, ROUND(-1 / t_per, 4), LET(a_fac, 1 - (1 - POWER(rho_0, t_per)) / (t_per * (1 - rho_0)), num_b, -((1 + rho_0) / (t_per - 1)) * a_fac, den_b, 1 - ((2 * rho_0) / ((1 - rho_0) * (t_per - 1))) * a_fac, ROUND(num_b / den_b, 4)))))` - **Formula (Expected Biased Within-FE Coefficient plim(rho_FE) = rho + Bias Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B2 + E3, 4))` ### Hotel and rental stay cost: split Sun–Thu weekday vs Fri–Sat weekend nights - **URL**: https://sheets.arte-soft.com/en/learn/nightly-hotel-or-rental-weekday-weekend-rate/ - **Summary**: Count exact off-peak (Sun–Thu) and peak (Fri–Sat) stay nights between Check-In and Check-Out dates using a +1 shifted NETWORKDAYS trick. *Table — Why shifting NETWORKDAYS(CheckIn + 1, CheckOut) isolates Fri–Sat nights:* | CheckIn (A) | CheckOut (B) | Total Nights | Sun–Thu ($150) | Fri–Sat ($240) | Stay Total | | --- | --- | --- | --- | --- | --- | | 2026-05-07 (Thu) | 2026-05-11 (Mon) | 4 (Thu,Fri,Sat,Sun) | 2 (Thu, Sun) | 2 (Fri, Sat) | $780 | | 2026-05-08 (Fri) | 2026-05-10 (Sun) | 2 (Fri, Sat) | 0 | 2 (Fri, Sat) | $480 | - **Formula (Total stay cost and peak/off-peak night split formulas)**: `=IF(B2= 6!) | | 16 – 20 points | Moderate-to-Severe Stroke | High probability of proximal LVO (ICA / M1) | | 21 – 42 points | Severe Stroke | Critical neuro-ICU airway & malignant edema surveillance | - **Formula (Total NIH Stroke Scale (NIHSS) Deficit Score (0 to 42 Points))**: `=IF(OR(MIN(B2:B8) < 0, SUM(B2:B8) > 42), "Invalid NIHSS Subscore", SUM(B2:B8))` - **Formula (AHA/ASA NIHSS Stroke Severity Classification)**: `=IF(OR(MIN(B2:B8) < 0, SUM(B2:B8) > 42), "Invalid NIHSS Subscore", IF(SUM(B2:B8) = 0, "0: No Stroke Symptoms", IF(SUM(B2:B8) <= 4, "1-4: Minor Stroke", IF(SUM(B2:B8) <= 15, "5-15: Moderate Stroke (Check LVO >=6)", IF(SUM(B2:B8) <= 20, "16-20: Moderate-to-Severe Stroke", "21-42: Severe Stroke")))))` ### NIOSH Lifting Equation: Recommended Weight Limit (RWL) & Lifting Index - **URL**: https://sheets.arte-soft.com/en/learn/niosh-recommended-weight-limit-rwl-and-lifting-index-ergonomics/ - **Summary**: Use supplied task multipliers to calculate a NIOSH recommended weight limit and numerical lifting index. Validate inputs and preserve precision without presenting a personal safe-lifting guarantee. - **Formula (Calculate the recommended weight limit)**: `=IF(COUNT(B2:B8)<>7,"Complete numeric inputs",IF(B2<>23,"Use the 23 kg load constant",IF(OR(MIN(B3:B8)<0,MAX(B3:B8)>1),"Multipliers must be between 0 and 1",PRODUCT(B2:B8))))` - **Formula (Calculate the lifting index)**: `=IF(COUNT(B2:B9)<>8,"Complete numeric inputs",IF(B2<>23,"Use the 23 kg load constant",IF(OR(MIN(B3:B8)<0,MAX(B3:B8)>1),"Multipliers must be between 0 and 1",IF(B9<0,"Load must be nonnegative",IF(PRODUCT(B2:B8)=0,"LI undefined: zero RWL",B9/PRODUCT(B2:B8))))))` ### NOMINAL function: convert effective APY back to a stated annual rate (APR) - **URL**: https://sheets.arte-soft.com/en/learn/nominal-function-annual-interest-rate/ - **Summary**: Find the stated nominal APR needed to hit a target effective annual yield under monthly or quarterly compounding using NOMINAL. *Table — Reverse-engineer the Periodic Rate for PMT and FV:* | Product (A) | EffectiveAPY (B) | Compounding (C) | NominalAPR | | --- | --- | --- | --- | | Savings APY | 0.12682503 | 12 | 0.1200 (12.00%) | | Bond Yield | 0.08243216 | 4 | 0.0800 (8.00%) | - **Formula (Convert APY to APR and verify round-trip with EFFECT)**: `=ROUND(NOMINAL(B2, C2), 4)` - **Formula (Domain boundaries (#NUM!))**: `=NOMINAL(0, 12)` ### Non-Volatile Dynamic N-Period Sum & Average Without OFFSET (SUMIFS & AVERAGEIFS) - **URL**: https://sheets.arte-soft.com/en/learn/non-volatile-dynamic-range-sum-and-average-without-offset/ - **Summary**: Replace slow volatile SUM(OFFSET(B2,0,0,N,1)) rolling windows with dependency-tracked SUMIFS(B2:B7, A2:A7, "<=" & E2) and AVERAGEIFS for instant multi-sheet recalculation. *Table — Why volatile OFFSET and INDIRECT bottleneck large financial models—and how period-index SUMIFS fixes it!:* | YTD Horizon E2 (Months 1..6) | Non-Volatile SUMIFS YTD Total | Non-Volatile AVERAGEIFS Monthly Mean | Recalculation Dependency Graph | | --- | --- | --- | --- | | First E2 = 3 Months (Q1 YTD) | $435,000 | $145,000.00 | Direct range graph (non-volatile) | | First E2 = 5 Months | $785,000 | $157,000.00 | Direct range graph (non-volatile) | | Invalid E2 = 0 or E2 > 6 Months | Out of Horizon Bounds | "Invalid YTD Period Window" | 1 <= E2 <= COUNT(A2:A7) Guard | - **Formula (Non-Volatile First-N-Periods YTD Sum via SUMIFS(Revenue, Period_Idx, "<=" & N))**: `=IF(OR(E2 < 1, E2 > COUNT(A2:A7)), "Invalid YTD Period Window", SUMIFS(B2:B7, A2:A7, "<=" & E2))` - **Formula (Non-Volatile First-N-Periods Average via AVERAGEIFS(Revenue, Period_Idx, "<=" & N))**: `=IF(OR(E2 < 1, E2 > COUNT(A2:A7)), "Invalid YTD Period Window", ROUND(AVERAGEIFS(B2:B7, A2:A7, "<=" & E2), 2))` ### Ramsey Social Cost of Carbon (SCC) Discounting Formula - **URL**: https://sheets.arte-soft.com/en/learn/nordhaus-ramsey-social-cost-of-carbon-discounting-formula/ - **Summary**: Calculate the closed-form Social Cost of Carbon SCC = D_0 / (rho + (eta - 1)*g + phi) and quantify why Nordhaus (rho = 1.5%) vs Stern (rho = 0.1%) discounting shifts carbon prices 2.5x! *Table — Demystify the Nordhaus vs Stern climate-policy debate with the Ramsey SCC formula!:* | Climate Discounting Benchmark (D_0=3.60, g=2.0%, phi=1.5%) | Ramsey r & Net Effective r_net | Social Cost of Carbon ($/tCO2) | | --- | --- | --- | | Nordhaus DICE Calibration (rho=1.5%, eta=1.5) | r = 4.50% \| r_net = 4.00% | 90.00 $/tCO2 | | U.S. EPA Near-Term ~2.0% Ramsey Benchmark (rho=0.5%, eta=1.25) | r = 3.00% \| r_net = 2.50% | 144.00 $/tCO2 | | Stern Review Calibration (rho=0.1%, eta=1.0) | r = 2.10% \| r_net = 1.60% | 225.00 $/tCO2 (2.5x Nordhaus!) | - **Formula (Ramsey Consumption Discount Rate r_Ramsey = rho + eta * g Formula)**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0, B5 < 0, B6 < 0), "Invalid SCC Input", ROUND(B3 + B4 * B5, 4))` - **Formula (Closed-Form Growth-Adjusted Social Cost of Carbon SCC Formula)**: `=LET(d_0, B2, rh_t, B3, et_u, B4, g_pc, B5, ph_d, B6, IF(OR(d_0 <= 0, rh_t < 0, et_u <= 0, g_pc < 0, ph_d < 0), "Invalid SCC Input", LET(r_nt, rh_t + (et_u - 1) * g_pc + ph_d, IF(r_nt <= 0, "Non-Convergent SCC (r_net <= 0)", ROUND(d_0 / r_nt, 2)))))` ### Standard Normal Cumulative Probability, GAUSS Band & Inverse Quantile (NORM.S.DIST & NORM.INV) - **URL**: https://sheets.arte-soft.com/en/learn/normal-cumulative-probability-and-z-quantile-normsdist-norminv/ - **Summary**: Compute left-tail normal probabilities Phi(z), center-to-z GAUSS intervals Phi(z) - 0.5, and inverse normal quantile cutoffs x = mu + z_p * sigma using portable rational polynomials. *Table — Connecting cumulative Phi(z), GAUSS(z), and inverse probit cutoffs:* | Metric | Input | Formula Relationship | Value | | --- | --- | --- | --- | | Cumulative Phi(z) | z = 1.96 | 1 - phi(z) * P5(t) | 0.9750 | | GAUSS(z) (0 to z) | z = 1.96 | Phi(z) - 0.5 | 0.4750 | | Standard Probit z_p | p = 0.975 | tau - R(tau) | 1.960 | | Scaled Cutoff x_p | mu=100, sd=15, p=0.975 | mu + sd * z_p | 129.40 | - **Formula (Cumulative Normal Probability Phi(z))**: `=LET(z_val, B2, z_abs, ABS(z_val), poly_t, 1 / (1 + 0.2316419 * z_abs), pdf_z, EXP(-0.5 * z_abs ^ 2) / SQRT(2 * PI()), tail_p, pdf_z * poly_t * (0.31938153 + poly_t * (-0.356563782 + poly_t * (1.781477937 + poly_t * (-1.821255978 + 1.330274429 * poly_t)))), ROUND(IF(z_val >= 0, 1 - tail_p, tail_p), 4))` - **Formula (Inverse Normal Quantile Cutoff (NORM.S.INV & NORM.INV))**: `=LET(prob, B5, p_low, IF(prob <= 0.5, prob, 1 - prob), tau, SQRT(-2 * LN(p_low)), z_mag, tau - (2.515517 + 0.802853 * tau + 0.010328 * tau ^ 2) / (1 + 1.432788 * tau + 0.189269 * tau ^ 2 + 0.001308 * tau ^ 3), IF(prob = 0.5, 0, ROUND(IF(prob < 0.5, -z_mag, z_mag), 3)))` ### Normal Distribution Bell Curve Formula: Exact Gaussian PDF Ordinate & Sigma Grid - **URL**: https://sheets.arte-soft.com/en/learn/normal-distribution-bell-curve-ordinate-and-sigma-grid-formula/ - **Summary**: Generate smooth XY Scatter Bell Curve coordinates for any mean mu and standard deviation sigma using the universal closed-form Gaussian density formula (1 / (sigma * SQRT(2*PI()))) * EXP(-0.5 * z^2). *Table — Plot smooth Gaussian curves across [mu - 4*sigma, mu + 4*sigma] in any spreadsheet!:* | Grid Coordinate x (mu = 100, sigma = 15) | Standard Score z | Gaussian Density f(x) | Relative Peak Height | | --- | --- | --- | --- | | x = 100 (Mean Apex) | 0.0000 | 0.026596 | 100.00% | | x = 115 (+1 Sigma Inflection) | +1.0000 | 0.016131 | 60.65% (= e^-0.5) | | x = 130 (+2 Sigma Tail) | +2.0000 | 0.003599 | 13.53% (= e^-2) | - **Formula (Closed-Form Gaussian Bell Curve Density Ordinate f(x))**: `=IF(B4 <= 0, "Sigma Must Be Positive", ROUND((1 / (B4 * SQRT(2 * PI()))) * EXP(-0.5 * ((B2 - B3) / B4) ^ 2), 6))` - **Formula (Standardized Z-Score Distance from Mean)**: `=IF(B4 <= 0, 0, ROUND((B2 - B3) / B4, 4))` ### Normal Q-Q & Probability Plot Formula: Blom Plotting Position & Theoretical Z-Quantile - **URL**: https://sheets.arte-soft.com/en/learn/normal-q-q-plot-blom-plotting-position-and-tukey-z-quantile/ - **Summary**: Build a Normal Q-Q (Quantile-Quantile) and Normal Probability Plot table from sorted sample data: compute Blom’s unbiased plotting position p_r = (r - 0.375) / (n + 0.25) and Tukey’s closed-form standard normal quantile z_r. *Table — Why naive r / n plotting positions blow up at r = n — and how Blom + Tukey Lambda solve Q-Q plots universally!:* | Sorted Rank r (n = 5) | Sample Value X_(r) | Blom Position p_r = (r - 0.375) / 5.25 | Tukey Normal Quantile z_r | Exact Gaussian z (Comparison) | | --- | --- | --- | --- | --- | | r = 1 (Minimum) | 12.4 | 0.1190 | -1.1788 | -1.1798 | | r = 2 | 15.1 | 0.3095 | -0.4963 | -0.4972 | | r = 3 (Median) | 16.0 | 0.5000 | 0.0000 | 0.0000 | | r = 4 | 17.2 | 0.6905 | +0.4963 | +0.4972 | | r = 5 (Maximum) | 19.8 | 0.8810 | +1.1788 | +1.1798 | - **Formula (Blom (1958) Normal Order-Statistic Plotting Position p_r)**: `=IF(OR(A6 < 1, A6 > COUNT(B2:B6)), "Rank Out of Sample Bounds", ROUND((A6 - 0.375) / (COUNT(B2:B6) + 0.25), 4))` - **Formula (Universal Closed-Form Theoretical Z-Quantile z_r (Tukey Lambda Formula))**: `=IF(OR(A6 < 1, A6 > COUNT(B2:B6)), "Rank Out of Sample Bounds", ROUND(4.91 * (((A6 - 0.375) / (COUNT(B2:B6) + 0.25)) ^ 0.14 - (1 - (A6 - 0.375) / (COUNT(B2:B6) + 0.25)) ^ 0.14), 4))` ### Supersonic Normal Shock Wave: Downstream Mach & Rankine-Hugoniot Jumps - **URL**: https://sheets.arte-soft.com/en/learn/normal-shock-rankine-hugoniot-mach-and-pressure-ratios/ - **Summary**: Calculate supersonic normal shock downstream Mach number M_2 = SQRT((1 + ((g-1)/2)*M1^2) / (g*M1^2 - (g-1)/2)) and static pressure jump P2/P1 = 1 + (2*g/(g+1))*(M1^2 - 1) for compressible gas flows. *Table — Size supersonic jet inlets, Pitot tubes, and rocket nozzle overexpansion shocks!:* | Upstream Mach M_1 (Air gamma = 1.40) | Downstream Subsonic M_2 | Static Pressure Jump P_2 / P_1 | Density Jump rho_2 / rho_1 | | --- | --- | --- | --- | | Sonic Limit (M_1 = 1.00) | 1.0000 | 1.00x (Acoustic Wave) | 1.000x | | Supersonic Cruise (M_1 = 2.00) | 0.5774 | 4.50x | 2.667x | | High Supersonic (M_1 = 3.00) | 0.4752 | 10.33x | 3.857x | - **Formula (Downstream Subsonic Mach Number M_2 Across a Normal Shock)**: `=IF(B2 < 1, "Subsonic Flow (Normal Shock Requires M1 >= 1)", IF(B3 <= 1, "Invalid Gamma <= 1", ROUND(SQRT((1 + ((B3 - 1) / 2) * (B2 ^ 2)) / ((B3 * (B2 ^ 2)) - ((B3 - 1) / 2))), 4)))` - **Formula (Rankine-Hugoniot Static Pressure Ratio P_2 / P_1)**: `=IF(B2 < 1, "Subsonic Flow (No Normal Shock)", ROUND(1 + ((2 * B3) / (B3 + 1)) * ((B2 ^ 2) - 1), 2))` ### Normal Zeeman Effect: Bohr Magneton Energy & Spectral Wavelength Splitting - **URL**: https://sheets.arte-soft.com/en/learn/normal-zeeman-effect-magnetic-splitting-bohr-magneton/ - **Summary**: Calculate Zeeman magnetic sublevel energy splitting delta_E = mu_B * B (in micro-electronvolts, mu_B = 57.8838 ueV/T) and Lorentz triplet wavelength shift delta_lambda = 4.66864e-5 * B * lambda_0^2 (in picometers). *Table — Measure solar sunspot and laboratory magnetic fields directly from spectral line splitting!:* | Magnetic Field Scenario (Cd Red Singlet 643.847 nm) | Zeeman Energy Shift muB * B (ueV) | Single-Wing Shift d_lambda (pm) | Spectroscopic Resolution | | --- | --- | --- | --- | | Lab Electromagnet (B = 1.50 T) | 86.83 ueV | 29.03 pm | Resolved by Fabry-Pérot Etalon | | Solar Sunspot Umbra (B = 0.30 T) | 17.37 ueV | 5.81 pm | Magnetogram Stokes-V Splitting | | Invalid Negative Field or Wavelength | Guarded Input Error | "Invalid Zeeman Inputs" | Requires B >= 0 and lambda0 > 0 | - **Formula (Normal Zeeman Energy Splitting delta_E (ueV) = 57.8838 * B)**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Zeeman Inputs", ROUND(57.8838 * B2, 2))` - **Formula (Normal Zeeman Spectral Triplet Wing Shift delta_lambda (pm) = 0.0000466864 * B * lambda_0^2)**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Zeeman Inputs", ROUND(0.0000466864 * B2 * (B3 ^ 2), 2))` ### Normalize Dirty Text Keys: Strip CHAR(160), Control Codes & Case (CLEAN & TRIM) - **URL**: https://sheets.arte-soft.com/en/learn/normalize-dirty-text-keys-strip-char160-and-control-codes-clean/ - **Summary**: Sanitize web-scraped and ERP-exported lookup keys via LOWER(TRIM(CLEAN(SUBSTITUTE(A2, CHAR(160), " ")))) so invisible HTML non-breaking spaces and line breaks stop breaking XLOOKUP and VLOOKUP. *Table — Why TRIM(CLEAN(A2)) STILL misses HTML non-breaking spaces CHAR(160)!:* | Dirty Raw Input Character Defect | TRIM(CLEAN(A2)) Alone | Full SUBSTITUTE(CHAR(160)) Pipeline | Lookup Match Outcome | | --- | --- | --- | --- | | Leading/Trailing ASCII 32 Spaces | Removed | Removed | Matches Clean Key | | Embedded Line Break CHAR(10) / Tab CHAR(9) | Removed by CLEAN | Removed by CLEAN | Matches Clean Key | | HTML Non-Breaking Space CHAR(160) | MISSED (Stays 160!) | Converted to " " & Trimmed! | Fixes Silent #N/A Bug! | - **Formula (Full Canonical Text Key Normalizer (CHAR(160) + Control Codes + Case))**: `=LOWER(TRIM(CLEAN(SUBSTITUTE(A2, CHAR(160), " "))))` - **Formula (Hidden Junk Character Count Stripped During Normalization)**: `=LEN(A2) - LEN(LOWER(TRIM(CLEAN(SUBSTITUTE(A2, CHAR(160), " ")))))` ### Normalize Noisy Vendor & Bank-Feed Strings via Keyword Mapping (SEARCH & IFS) - **URL**: https://sheets.arte-soft.com/en/learn/normalize-noisy-vendor-names-keyword-mapping-lookup/ - **Summary**: Map messy corporate card and bank-feed descriptions containing terminal IDs, asterisks, and city suffixes to canonical vendor names using ordered ISNUMBER(SEARCH(...)) rules and SUMIF spend rollups. *Table — Deterministic token matching vs opaque probabilistic fuzzy joins:* | Raw Bank Description | Matched Keyword | Canonical Vendor | Amount | | --- | --- | --- | --- | | ACH DEBIT AWS EMEA #4491 | AWS | Amazon Web Services | $420 | | POS STRIPE*CLOUDFLARE | CLOUDFLARE | Cloudflare Inc. | $95 | | WIRE DHL EXPRESS FRA | DHL | DHL Logistics | $180 | | CARD AWS US-EAST #8812 | AWS | Amazon Web Services | $310 | | POS LOCAL BAKERY 09 | (None) | Unclassified | $35 | - **Formula (Keyword-Driven Canonical Vendor Classifier)**: `=IFS(ISNUMBER(SEARCH($D$2, A2)), $E$2, ISNUMBER(SEARCH($D$3, A2)), $E$3, ISNUMBER(SEARCH($D$4, A2)), $E$4, TRUE, "Unclassified")` - **Formula (Normalized Vendor Spend Rollup & Unclassified Audit)**: `=SUMIF(C2:C6, "Amazon Web Services", B2:B6)` ### Normalize storage units: binary KiB/MiB/GiB/TiB versus decimal GB - **URL**: https://sheets.arte-soft.com/en/learn/normalize-storage-units-kb-mb-gb-tb/ - **Summary**: Use powers of 1024 for IEC binary units and powers of 1000 for decimal SI units; keep the two conventions distinct. *Table — Replace nested IF unit multipliers with XMATCH exponent math:* | SizeVal (A) | Unit (B) | Scale Index | 1024^(idx - 3) | Normalized GiB | | --- | --- | --- | --- | --- | | 512 | MiB | 2 | 1 / 1024 | 0.5 | | 2.5 | TiB | 4 | 1024 | 2560 | | 1048576 | KiB | 1 | 1 / 1048576 | 1 | - **Formula (Binary (1024) gibibyte normalization formula)**: `=LET(idx, XMATCH(UPPER(B2), {"KiB","MiB","GiB","TiB"}), IF(ISNA(idx), "Unknown unit", ROUND(A2 * 1024^(idx - 3), 4)))` - **Formula (Decimal SI variant: kB, MB, GB and TB)**: `=LET(idx, XMATCH(UPPER(B2), {"KB","MB","GB","TB"}), IF(ISNA(idx), "Unknown unit", ROUND(A2 * 1000^(idx - 3), 4)))` ### Norris-Landzberg BGA Solder Thermal Acceleration Formula - **URL**: https://sheets.arte-soft.com/en/learn/norris-landzberg-lead-free-solder-joint-thermal-cycling-acceleration-factor-formula/ - **Summary**: Calculate CTE Strain-Range Multiplier (dT_test/dT_field)^1.9, Creep Frequency-Arrhenius Factor, Total Acceleration Factor AF, and Equivalent Field Service Life (years). *Table — How 1,200 chamber cycles (-40 to +125 °C) certify 13.1 years of server BGA life—yet only 2.36 years under an automotive hood!:* | IPC-9701 Norris-Landzberg SAC305 KPI (1,200 Cycles @ -40/+125 °C: Telecom vs Auto Under-Hood) | Formula | Verified Output | | --- | --- | --- | | CTE Strain Multiplier (dTt/dTf)^1.9 | (Chamber_dT_K / Field_dT_K) ^ 1.9 | 11.81x (4.47x @ 75 K automotive swing) | | Creep Freq x Arrhenius Factor | (ff/ft)^(1/3) * EXP(1414*(1/Tk_f - 1/Tk_t)) | 0.674 (0.642 @ 4/day, 95 °C peak) | | Total Acceleration Factor AF | Strain_Multiplier * Creep_Arrhenius_Factor | 7.96x (2.87x @ automotive under-hood) | | Equivalent Field Service Life (yr) | (AF * Chamber_Cycles) / (365.25 * f_field) | 13.08 years (2.36 years FAIL under-hood!) | - **Formula (IPC-9701 / JEDEC Norris-Landzberg SAC305 Creep-Fatigue Acceleration Formula)**: `=LET(dt_t, B2, dt_f, B3, ff_d, B4, ft_d, B5, tf_k, B6 + 273.15, tt_k, B7 + 273.15, nc_h, B8, st_m, (dt_t / dt_f) ^ 1.9, ca_m, ((ff_d / ft_d) ^ (1 / 3)) * EXP(1414 * ((1 / tf_k) - (1 / tt_k))), af_t, st_m * ca_m, IF(OR(dt_f <= 0, dt_t <= dt_f, ff_d <= 0, ft_d < ff_d, B6 <= -40, B7 < B6, B7 > 180, nc_h < 10), "Invalid Reliability Input", ROUND((af_t * nc_h) / (365.25 * ff_d), 2)))` - **Formula (Harsh Automotive Under-Hood (75 K Swing, 4 Cycles/Day, 95 °C Peak) Warranty Failure Check)**: `=IF(ISTEXT(E5), E5, LET(st_m, (B2 / B3) ^ 1.9, ca_m, ((B4 / B5) ^ (1 / 3)) * EXP(1414 * ((1 / (B6 + 273.15)) - (1 / (B7 + 273.15)))), ROUND(st_m * ca_m, 2)))` ### Norton Scale Pressure-Ulcer Risk Calculator (5–20 Geriatric Nursing Score) - **URL**: https://sheets.arte-soft.com/en/learn/norton-scale-pressure-ulcer-risk-geriatric-nursing-formula/ - **Summary**: Calculate Doreen Norton’s pioneering 5-domain geriatric pressure-ulcer risk score (5–20 points across Physical Condition, Mental State, Activity, Mobility, and Incontinence; <= 14 High Risk). *Table — Remember the inverse Norton Scale direction: lower scores mean HIGHER pressure-injury risk!:* | Total Norton Score (5–20) | Pressure-Injury Risk Tier | Geriatric Nursing Prevention Bundle | | --- | --- | --- | | Norton 19–20 / 15–18 | Low Risk / Medium Risk | Daily Skin Inspection & Early Mobilization | | Norton 11–14 (e.g., 12) | High Pressure-Ulcer Risk | 2-Hourly Repositioning + Pressure-Redistributing Mattress | | Norton 5–10 | Very High Pressure-Ulcer Risk | Active Alternating-Air Surface + Heel Offloading + Moisture Protocol | - **Formula (Total 5-Domain Norton Pressure-Ulcer Score (5–20))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 1, MAX(B2:B6) > 4), "Invalid Norton Subscore (1-4)", SUM(B2:B6))` - **Formula (Norton Pressure-Injury Risk Stratification & Nursing Prevention Protocol)**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 1, MAX(B2:B6) > 4), "Invalid Norton Subscore (1-4)", IF(SUM(B2:B6) <= 10, "Very High Pressure-Ulcer Risk (Norton 5-10) — Active Air Surface & Heel Offloading", IF(SUM(B2:B6) <= 14, "High Pressure-Ulcer Risk (Norton 11-14) — 2-Hourly Repositioning & Pressure-Redistributing Mattress", IF(SUM(B2:B6) <= 18, "Medium Pressure-Ulcer Risk (Norton 15-18) — Daily Skin Audit & Mobilization", "Low Pressure-Ulcer Risk (Norton 19-20) — Routine Preventive Care"))))` ### NOT function: invert TRUE/FALSE and exclude blocked statuses cleanly - **URL**: https://sheets.arte-soft.com/en/learn/not-function-exclude-condition/ - **Summary**: Negate logical tests and multi-value exclusion lists with NOT(OR(...)) so dispatch and approval rules stay easy to audit. *Table — Make exclusion rules easier to read with NOT(OR(...)):* | Order Amount (B) | Status (C) | OR(Hold, Cancelled) | Release Decision | | --- | --- | --- | --- | | 250 | Approved | FALSE -> NOT = TRUE | Release | | 250 | Hold | TRUE -> NOT = FALSE | Hold | | 250 | Cancelled | TRUE -> NOT = FALSE | Hold | | 95 | Approved | Amount < 100 | Hold | - **Formula (Combine AND with NOT(OR(...)))**: `=IF(AND(B2>=100, NOT(OR(C2="Hold", C2="Cancelled"))), "Release", "Hold")` - **Formula (Numeric coercion inside NOT)**: `=NOT(B2=0)` ### NOW function: compare live timestamps and add hours to the current time - **URL**: https://sheets.arte-soft.com/en/learn/now-function-current-date-time-stamp/ - **Summary**: Understand how NOW stores the current date and time as a serial number + decimal fraction, how it differs from TODAY, and why it recalculates on edit. *Table — How NOW combines integer date and fractional time:* | Expression | Meaning | Behavior | | --- | --- | --- | | =NOW() | Current date + current time | Decimal serial >= TODAY() | | =INT(NOW()) | Date part stripped of time | Equals TODAY() | | =NOW() - INT(NOW()) | Time-of-day fraction only | Always >= 0 and < 1 | | =NOW() + 6/24 | 6 hours ahead of current time | Adds 0.25 days | - **Formula (Add hours and test live SLA deadlines)**: `=IF(NOW() > A2, "Overdue", "Active")` - **Formula (Volatile warning: NOW is not a static log stamp)**: `=LET(t, NOW(), ROUND((t + 6/24) - t, 4))` ### NPER function: calculate how many months it takes to pay off a loan - **URL**: https://sheets.arte-soft.com/en/learn/nper-function-loan-payoff-periods/ - **Summary**: Find the number of payment periods needed to clear a balance with NPER, match monthly rate and cash-flow signs, and guard payments below monthly interest. *Table — Match periodic interest rate and cash-flow sign convention:* | Loan PV (A) | Annual Rate (B) | Monthly Pmt (C) | Exact NPER Months | | --- | --- | --- | --- | | 10000 | 0.06 (0.5%/mo) | -250 | 44.74 months (~45 payments) | | 10000 | 0.06 (0.5%/mo) | -300 | 36.56 months (~37 payments) | | 10000 | 0.00 (0%/mo) | -250 | 40.00 months | | 10000 | 0.06 ($50/mo interest) | -40 | Never amortizes (payment < interest) | - **Formula (Calculate exact and whole-month payoff length)**: `=ROUND(NPER(B2 / 12, C2, A2), 2)` - **Formula (Guard monthly payments that do not cover accrued interest)**: `=IF(-C2 <= A2 * (B2 / 12), "Payment below interest", ROUND(NPER(B2 / 12, C2, A2), 2))` ### NPV function: keep the day-zero investment outside NPV - **URL**: https://sheets.arte-soft.com/en/learn/npv-function-period-zero-cash-flow/ - **Summary**: NPV discounts its first cash-flow argument by one full period. Add the initial day-zero outlay outside NPV(rate, Year1:YearN) so present value is never misstated. *Table — An immediate outlay followed by three annual inflows:* | Period | Cell | Cash flow | | --- | --- | --- | | Year 0 (today) | B2 | -1000 | | Year 1 | B3 | 400 | | Year 2 | B4 | 400 | | Year 3 | B5 | 400 | - **Formula (Add B2 outside NPV(E2, B3:B5))**: `=ROUND(B2+NPV(E2,B3:B5),2)` - **Formula (Cross-check with IRR and test a higher Year 3 inflow)**: `=ROUND(IRR(B2:B5),4)` ### NRS-2002 Calculator: ESPEN Hospital Nutritional Risk Screening (Kondrup Score) - **URL**: https://sheets.arte-soft.com/en/learn/nrs-2002-nutritional-risk-screening-kondrup-hospital-score/ - **Summary**: Calculate Jens Kondrup et al.’s (2003, ESPEN) NRS-2002 inpatient nutrition risk score (0–7 points) combining Impaired Nutritional Status (0–3), Disease Severity / Stress Metabolism (0–3), and Age >= 70 adjustment (+1). *Table — Why ESPEN’s NRS-2002 pairs current nutritional depletion WITH catabolic disease stress!:* | NRS-2002 Domain | Score Range | Clinical Thresholds | | --- | --- | --- | | Impaired Nutritional Status | 0 to 3 pts | 0 Normal \| 1 Mild \| 2 Moderate \| 3 Severe depletion | | Severity of Disease (Stress Metabolism) | 0 to 3 pts | 0 Normal \| 1 Chronic/Hip Fx \| 2 Major Abd/Stroke \| 3 ICU/BMT/TBI | | Age Adjustment | 0 or +1 pt | +1 point if Patient Age >= 70 years | | Action Threshold (0–7 Total) | >= 3 pts | Nutritionally At-Risk -> Start Nutrition Care Plan | - **Formula (Total ESPEN NRS-2002 Final Score (0 to 7 Points))**: `=IF(OR(B2 < 0, B2 > 3, INT(B2) <> B2, B3 < 0, B3 > 3, INT(B3) <> B3, B4 < 18, B4 > 120), "Invalid NRS-2002 Subscores or Age", B2 + B3 + IF(B4 >= 70, 1, 0))` - **Formula (ESPEN NRS-2002 Clinical Nutrition Care Plan Trigger (>= 3 Threshold))**: `=IF(OR(B2 < 0, B2 > 3, INT(B2) <> B2, B3 < 0, B3 > 3, INT(B3) <> B3, B4 < 18, B4 > 120), "Invalid NRS-2002 Subscores or Age", IF(B2 + B3 + IF(B4 >= 70, 1, 0) >= 3, "NRS-2002 >= 3: Nutritionally At-Risk — Initiate Nutrition Care Plan", "NRS-2002 < 3: Not Currently At-Risk — Re-Screen Weekly"))` ### NRTL (Non-Random Two-Liquid) VLE & LLE Activity Coefficients - **URL**: https://sheets.arte-soft.com/en/learn/nrtl-non-random-two-liquid-activity-coefficient-vle-formula/ - **Summary**: Calculate Henri Renon and John Prausnitz’s 3-parameter NRTL activity coefficients gamma_1 and gamma_2 using energy parameters tau_12, tau_21 and non-randomness factor alpha_12 for partially miscible liquid-liquid and azeotropic VLE mixtures. *Table — Why NRTL handles liquid-liquid phase splitting where Wilson’s equation fails!:* | Liquid Mole Fraction x1 (tau12 = 1.35, tau21 = 0.65, alpha = 0.30) | NRTL Activity gamma1 | NRTL Activity gamma2 | Phase Equilibrium Behavior | | --- | --- | --- | --- | | Infinite Dilution of 1 (x1 = 0.00) | 4.7134 | 1.0000 | High Organic Stripping Factor | | Operating Tray / Decanter Feed (x1 = 0.25) | 2.5393 | 1.0932 | Strong Positive Deviation (VLE/LLE) | | Invalid Composition (x1 < 0 or x1 > 1) | Mole-Fraction Guard | "Invalid NRTL Inputs" | Requires 0 <= x1 <= 1, alpha >= 0 | - **Formula (NRTL Component 1 Activity Coefficient gamma_1)**: `=IF(OR(B2 < 0, B2 > 1, B5 < 0), "Invalid NRTL Inputs", ROUND(EXP(((1 - B2) ^ 2) * (B4 * ((EXP(-B5 * B4) / (B2 + (1 - B2) * EXP(-B5 * B4))) ^ 2) + (B3 * EXP(-B5 * B3)) / (((1 - B2) + B2 * EXP(-B5 * B3)) ^ 2))), 4))` - **Formula (NRTL Component 2 Activity Coefficient gamma_2)**: `=IF(OR(B2 < 0, B2 > 1, B5 < 0), "Invalid NRTL Inputs", ROUND(EXP((B2 ^ 2) * (B3 * ((EXP(-B5 * B3) / ((1 - B2) + B2 * EXP(-B5 * B3))) ^ 2) + (B4 * EXP(-B5 * B4)) / ((B2 + (1 - B2) * EXP(-B5 * B4)) ^ 2))), 4))` ### Nth largest value without duplicates: dense Gold, Silver, Bronze tiers - **URL**: https://sheets.arte-soft.com/en/learn/nth-largest-distinct-value-without-duplicates/ - **Summary**: Wrap UNIQUE inside LARGE(UNIQUE(Range), N) so tied top scores do not swallow 2nd and 3rd place prize tiers. *Table — Why plain LARGE([500, 500, 420], 2) returns 500 instead of 420!:* | Tier k | Raw LARGE(B2:B6, k) on [500, 500, 420, 420, 310] | Dense LARGE(UNIQUE(B2:B6), k) | | --- | --- | --- | | 1st (Gold) | 500 | 500 | | 2nd (Silver) | 500 (Duplicate tie!) | 420 (True 2nd distinct score!) | | 3rd (Bronze) | 420 | 310 (True 3rd distinct score!) | - **Formula (Nth-largest distinct value)**: `=IFERROR(LARGE(UNIQUE(B2:B6), D2), "Fewer Distinct Tiers")` - **Formula (List all winners tied at the Nth distinct score tier)**: `=IFERROR(TEXTJOIN(", ", TRUE, FILTER(A2:A6, B2:B6 = LARGE(UNIQUE(B2:B6), D2), "None")), "Fewer Distinct Tiers")` ### Get nth largest or smallest value—and matching name—with criteria (LARGE, SORT & FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/nth-largest-value-and-name-with-criteria-filter/ - **Summary**: Extract the 2nd, 3rd, or kth highest (or lowest) booking inside a specific team along with the rep's name using LARGE(FILTER(...), k) and INDEX(SORT(FILTER(...))). *Table — MAXIFS only gives #1—use FILTER + LARGE / SORT to get #2, #3, and who won it!:* | Rep (A) | Segment (B) | Bookings (C) | Enterprise Standing | | --- | --- | --- | --- | | Mia | Enterprise | $290k | #1 Enterprise | | Sam | Enterprise | $210k | #2 Enterprise (k=2 Largest -> "Sam", 210) | | Eli | Enterprise | $175k | #3 Enterprise (k=2 Smallest -> 175) | | Ava | Enterprise | $140k | #4 Enterprise | | Leo / Nia | SMB | $65k / $88k | Excluded by B2:B7 = "Enterprise" | - **Formula (nth Largest Value matching criteria (guarded with IFERROR))**: `=IF(OR(COUNT(C2:C7)<>6,NOT(ISNUMBER(F2)),NOT(ISTEXT(E2)),COUNTBLANK(E2)>0,NOT(ISTEXT(B2)),COUNTBLANK(B2)>0,NOT(ISTEXT(B3)),COUNTBLANK(B3)>0,NOT(ISTEXT(B4)),COUNTBLANK(B4)>0,NOT(ISTEXT(B5)),COUNTBLANK(B5)>0,NOT(ISTEXT(B6)),COUNTBLANK(B6)>0,NOT(ISTEXT(B7)),COUNTBLANK(B7)>0),"Invalid inputs",IF(OR(F2<1,F2<>INT(F2)),"Invalid inputs",IFERROR(LARGE(FILTER(C2:C7,B2:B7=E2),F2),"Rank Exceeds Group Size")))` - **Formula (Name of the nth Largest Winner matching criteria)**: `=IF(OR(COUNT(C2:C7)<>6,NOT(ISNUMBER(F2)),NOT(ISTEXT(E2)),COUNTBLANK(E2)>0,NOT(ISTEXT(B2)),COUNTBLANK(B2)>0,NOT(ISTEXT(B3)),COUNTBLANK(B3)>0,NOT(ISTEXT(B4)),COUNTBLANK(B4)>0,NOT(ISTEXT(B5)),COUNTBLANK(B5)>0,NOT(ISTEXT(B6)),COUNTBLANK(B6)>0,NOT(ISTEXT(B7)),COUNTBLANK(B7)>0),"Invalid inputs",IF(OR(F2<1,F2<>INT(F2)),"Invalid inputs",IFERROR(INDEX(SORTBY(FILTER(A2:A7,B2:B7=E2),FILTER(C2:C7,B2:B7=E2),-1,FILTER(SEQUENCE(6),B2:B7=E2),1),F2),"Rank Exceeds Group Size")))` - **Formula (The k-th smallest booking)**: `=IF(OR(COUNT(C2:C7)<>6,NOT(ISNUMBER(F2)),NOT(ISTEXT(E2)),COUNTBLANK(E2)>0,NOT(ISTEXT(B2)),COUNTBLANK(B2)>0,NOT(ISTEXT(B3)),COUNTBLANK(B3)>0,NOT(ISTEXT(B4)),COUNTBLANK(B4)>0,NOT(ISTEXT(B5)),COUNTBLANK(B5)>0,NOT(ISTEXT(B6)),COUNTBLANK(B6)>0,NOT(ISTEXT(B7)),COUNTBLANK(B7)>0),"Invalid inputs",IF(OR(F2<1,F2<>INT(F2)),"Invalid inputs",IFERROR(SMALL(FILTER(C2:C7,B2:B7=E2),F2),"Rank Exceeds Group Size")))` ### Calculate the Nth or last weekday of a month - **URL**: https://sheets.arte-soft.com/en/learn/nth-weekday-of-month-thanksgiving-mlk-schedule/ - **Summary**: Build a recurring monthly schedule and detect when a requested fifth weekday does not exist. *Table — Monthly weekday scheduling with a missing-occurrence check:* | 2026 Floating Event | Inputs (Year, Month, N, ISODay) | Computed 2026 Date | | --- | --- | --- | | US Thanksgiving (4th Thu of Nov) | 2026, 11, N=4, Thu=4 | 2026-11-26 | | MLK Jr. Day (3rd Mon of Jan) | 2026, 1, N=3, Mon=1 | 2026-01-19 | | Third Friday of June (unadjusted calendar date) | 2026, 6, N=3, Fri=5 | 2026-06-19 | | Memorial Day (Last Mon of May) | EOMONTH(2026-05-01, 0) back to Mon | 2026-05-25 | - **Formula (Exact Nth weekday of any Year (A2) and Month (B2))**: `=IF(OR(OR(NOT(ISNUMBER(A2)),A2<>INT(A2),A2<1901,A2>9998,NOT(ISNUMBER(B2)),B2<>INT(B2),B2<1,B2>12,NOT(ISNUMBER(D2)),D2<>INT(D2),D2<1,D2>7),NOT(ISNUMBER(C2)),C2<>INT(C2),C2<1,C2>5),"Invalid inputs",LET(monthStart,DATE(A2,B2,1),targetDate,monthStart+MOD(D2-WEEKDAY(monthStart,2),7)+(C2-1)*7,IF(MONTH(targetDate)<>B2,"No occurrence",TEXT(targetDate,"yyyy-mm-dd"))))` - **Formula (Last occurrence of weekday D2 in the month (e.g., Memorial Day = Last Monday of May))**: `=IF(OR(NOT(ISNUMBER(A2)),A2<>INT(A2),A2<1901,A2>9998,NOT(ISNUMBER(B2)),B2<>INT(B2),B2<1,B2>12,NOT(ISNUMBER(D2)),D2<>INT(D2),D2<1,D2>7),"Invalid inputs",LET(monthEnd,EOMONTH(DATE(A2,B2,1),0),TEXT(monthEnd-MOD(WEEKDAY(monthEnd,2)-D2,7),"yyyy-mm-dd")))` ### Nusselt Laminar Film Condensation Coefficient on a Vertical Wall (h̄) - **URL**: https://sheets.arte-soft.com/en/learn/nusselt-laminar-film-condensation-vertical-plate-heat-transfer/ - **Summary**: Calculate the mean condensing heat-transfer coefficient h̄ = 0.943 * ((ρ_l * (ρ_l - ρ_v) * g * h_fg * k_l^3) / (μ_l * L * ΔT))^0.25 (W/(m^2·K)) for vertical condenser tubes. *Table — Counterintuitive condenser physics: why DOUBLING ΔT actually REDUCES the heat-transfer coefficient h̄!:* | Vertical Steam Condenser Case (L = 1.20 m) | Wall Subcooling ΔT (K) | Mean Condensing h̄ (W/m^2·K) | Heat Flux q″ = h̄ * ΔT (kW/m^2) | | --- | --- | --- | --- | | Moderate Subcooling (Twall = 90 °C) | 10.0 K | 6,126.7 W/(m^2·K) | 61.27 kW/m^2 | | Deep Subcooling (Twall = 80 °C) | 20.0 K | 5,152.0 W/(m^2·K) (-15.9%) | 103.04 kW/m^2 (+68.2%) | | Invalid ΔT <= 0 or ρ_l <= ρ_v | No Condensation | "Invalid Condenser Inputs" | Subcooling Guard | - **Formula (Nusselt Mean Vertical-Wall Film Condensation Coefficient h̄ (W/(m^2·K)))**: `=IF(OR(B2 <= B3, B3 < 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Condenser Inputs", ROUND(0.943 * (((B2 * (B2 - B3) * 9.80665 * B4 * (B5 ^ 3)) / (B6 * B7 * B8)) ^ 0.25), 1))` - **Formula (Condenser Wall Heat Flux q″ = h̄ * ΔT / 1000 (kW/m^2))**: `=IF(OR(B2 <= B3, B3 < 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Condenser Inputs", ROUND(0.000943 * (((B2 * (B2 - B3) * 9.80665 * B4 * (B5 ^ 3)) / (B6 * B7 * B8)) ^ 0.25) * B8, 2))` ### Biot (Bi), Prandtl (Pr) & Nusselt (Nu) Heat Transfer Dimensionless Numbers - **URL**: https://sheets.arte-soft.com/en/learn/nusselt-prandtl-and-biot-convective-heat-transfer-numbers/ - **Summary**: Calculate Biot, Prandtl and Nusselt numbers with distinct solid/fluid conductivities and an illustrative small-Biot screening check. *Table — Never confuse Biot Number (k_solid!) with Nusselt Number (k_fluid!)!:* | Thermal Dimensionless Group | Formula | Water Cooling + Aluminum Part | Calculated Value | | --- | --- | --- | --- | | Biot Number (Bi) | (B2 * B3) / B4 (uses k_solid!) | h=80, Lc=0.01m, k_Al=200 | 0.0040 (below screening threshold) | | Ceramic Part Check | k_solid set to 1.6 W/(m*K) | (80 * 0.01) / 1.6 | 0.5000 (not below screening threshold) | | Fluid Prandtl Number (Pr) | (B5 * B6) / B7 | Cp=4180, mu=8.9E-4, k_w=0.60 | 6.20 (Water at ~25°C) | | Pipe Nusselt Number (Nu) | (B2 * B8) / B7 (uses k_fluid!) | h=80, D=0.05m, k_w=0.60 | 6.67 | - **Formula (Biot Number Bi = (h * L_c) / k_solid & Lumped Capacitance (< 0.1) Test)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0),"Invalid inputs",ROUND((B2 * B3) / B4, 4)))` - **Formula (Prandtl Number Pr = (Cp * mu) / k_fluid and Nusselt Number Nu = (h * D) / k_fluid)**: `=IF(COUNT(B5:B7)<>3,"Invalid inputs",IF(OR(B5<=0,B6<=0,B7<=0),"Invalid inputs",ROUND((B5 * B6) / B7, 2)))` - **Formula (Nusselt number using fluid conductivity)**: `=IF(OR(COUNT(B2)<>1,COUNT(B7:B8)<>2),"Invalid inputs",IF(OR(B2<0,B8<=0,B7<=0),"Invalid inputs",ROUND((B2 * B8) / B7, 2)))` - **Formula (Small-Biot screening comparison)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0),"Invalid inputs",IF((B2 * B3) / B4 < 0.1, "Below small-Biot screen", "Not below small-Biot screen")))` ### Nyquist Sampling Rate, Folded Alias Frequency & ADC SNR / ENOB formulas - **URL**: https://sheets.arte-soft.com/en/learn/nyquist-sampling-rate-aliasing-frequency-and-quantization-snr/ - **Summary**: Calculate a single-tone folded frequency, the twice-bandwidth Nyquist boundary, ideal full-scale sine quantization SNR and SINAD-derived ENOB. *Table — Prevent phantom aliased tones and size A/D converter bit depth!:* | DSP / Data Converter Metric | Formula | f_sig = 1,400 Hz, f_s = 4,000 Hz, 12-bit | Undersampled f_sig = 2,600 Hz! | | --- | --- | --- | --- | | Baseband Folded Frequency | ABS(B2 - B3 * ROUND(B2/B3, 0)) | 1,400 Hz (True Tone < 2,000 Hz) | 1,400 Hz Phantom Alias! | | Ideal 12-Bit Quantization SNR | 6.02 * B4 + 1.76 | 74.00 dB ideal sine-wave SNR | 74.00 dB | | Effective Bits (SINAD = 68 dB) | (B5 - 1.76) / 6.02 | 11.00 Effective Bits (ENOB) | 11.00 bits | - **Formula (Exact Nyquist-Zone Folded Alias Frequency (Hz))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<0,B3<=0),"Invalid inputs",ABS(B2 - B3 * ROUND(B2 / B3, 0))))` - **Formula (Ideal N-Bit ADC SNR (dB) & Real-World ENOB)**: `=IF(NOT(ISNUMBER(B4)),"Invalid inputs",IF(OR(B4<1,B4<>INT(B4)),"Invalid inputs",ROUND(6.02 * B4 + 1.76, 2)))` - **Formula (ENOB from full-scale referenced SINAD)**: `=IF(NOT(ISNUMBER(B5)),"Invalid inputs",ROUND((B5 - 1.76) / 6.02, 2))` - **Formula (Twice-bandwidth Nyquist boundary)**: `=IF(NOT(ISNUMBER(B6)),"Invalid inputs",IF(B6<0,"Invalid inputs",2*B6))` ### O’Connell Tray Efficiency Correlation Formula: Actual vs. Theoretical Distillation Plates - **URL**: https://sheets.arte-soft.com/en/learn/o-connell-distillation-and-absorber-overall-tray-efficiency/ - **Summary**: Convert equilibrium McCabe-Thiele / Fenske-Underwood-Gilliland distillation stages N_eq into actual column trays N_actual = ROUNDUP(N_eq / E_o, 0) using H. E. O’Connell’s correlation E_o (%) = 50.3 * (mu_L * alpha)^(-0.226). *Table — Why viscous feeds and wide-boiling mixtures slash real sieve/valve tray efficiency!:* | Fractionator Feed Property (mu_L cP, alpha) | Product mu_L * alpha | O’Connell Overall Efficiency E_o (%) | Actual Trays for N_eq = 18 | | --- | --- | --- | --- | | Debutanizer: mu_L = 0.35 cP, alpha = 2.40 | 0.84 cP | 52.32% | 35 Actual Sieve/Valve Trays | | Viscous Heavy Cut: mu_L = 1.20 cP, alpha = 3.50 | 4.20 cP | 36.37% | 50 Actual Sieve/Valve Trays | | Invalid Pinch alpha <= 1.00 or mu_L <= 0 | Non-Separable | "Invalid O’Connell Distillation Inputs" | alpha > 1 Physical Guard | - **Formula (O’Connell Overall Column Tray Efficiency E_o (%) = 50.3 * (mu_L_cP * alpha)^(-0.226))**: `=IF(OR(B2 <= 0, B3 <= 1, B4 <= 0), "Invalid O’Connell Distillation Inputs", ROUND(50.3 * ((B2 * B3) ^ (-0.226)), 2))` - **Formula (Required Actual Column Trays N_actual = ROUNDUP(N_theoretical / (E_o / 100), 0))**: `=IF(OR(B2 <= 0, B3 <= 1, B4 <= 0), "Invalid O’Connell Distillation Inputs", ROUNDUP(B4 / (0.503 * ((B2 * B3) ^ (-0.226))), 0))` ### OABSS (Overactive Bladder Symptom Score — Homma 0–15 Scale) - **URL**: https://sheets.arte-soft.com/en/learn/oabss-overactive-bladder-symptom-score-homma-urgency-scale/ - **Summary**: Calculate Yukio Homma’s 4-item Overactive Bladder Symptom Score (0–15) and enforce the mandatory Q3 urinary urgency >= 2 gate required for diagnostic OAB classification. *Table — Why polyuria or nocturia alone cannot diagnose OAB unless Homma’s Q3 urgency gate (>= 2) is met!:* | Q3 Urgency Score (0–5) | Total OABSS (0–15) | Homma (2006) Diagnostic & Severity Tier | | --- | --- | --- | | Q3 < 2 OR Total < 3 | Any (e.g., 1+2+1+2 = 6) | Non-Diagnostic for OAB (Requires Urgency Q3 >= 2 & Total >= 3) | | Q3 >= 2 | 3 – 5 Points | Diagnostic OAB — Mild (3–5) | | Q3 >= 2 (e.g., Q3 = 4) | 6 – 11 Points (Total = 9) | Diagnostic OAB — Moderate (6–11) | | Q3 >= 2 | 12 – 15 Points | Diagnostic OAB — Severe (12–15) | - **Formula (Total OABSS Symptom Score (0–15 Points))**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, B4 < 0, B4 > 5, B5 < 0, B5 > 5), "Invalid OABSS Item Score", SUM(B2:B5))` - **Formula (Homma Dual-Gate OAB Diagnosis & Severity Classification)**: `=IF(OR(B2 < 0, B2 > 2, B3 < 0, B3 > 3, B4 < 0, B4 > 5, B5 < 0, B5 > 5), "Invalid OABSS Item Score", IF(OR(B4 < 2, SUM(B2:B5) < 3), "Non-Diagnostic for OAB (Requires Urgency Q3 >= 2 & Total >= 3)", IF(SUM(B2:B5) <= 5, "Diagnostic OAB — Mild (3–5)", IF(SUM(B2:B5) <= 11, "Diagnostic OAB — Moderate (6–11)", "Diagnostic OAB — Severe (12–15)"))))` ### Oakland Score for Safe ED Discharge in Acute Lower GI Bleeding - **URL**: https://sheets.arte-soft.com/en/learn/oakland-score-acute-lower-gastrointestinal-bleeding-discharge/ - **Summary**: Calculate Kathryn Oakland’s BSG/ACG-endorsed 0–35 score across Age, Sex, Prior Lower GI Bleed, Digital Rectal Exam Blood, Heart Rate, Systolic BP, and Hemoglobin (g/dL) to identify Oakland <= 8 patients with >= 95% safe outpatient discharge probability. *Table — Identify self-limiting diverticular/hemorrhoidal bleeds safe for outpatient colonoscopy!:* | Total Oakland Score (0–35 Points) | Safe Discharge Probability | BSG / ACG LGIB Triage | Clinical Management | | --- | --- | --- | --- | | Oakland <= 8 Points (e.g., 8) | >= 95% Event-Free Survival | Safe Outpatient Discharge | Direct ED Discharge + Outpatient Colonoscopy | | Oakland 9–10 Points | ~93% Event-Free | Borderline Low Risk | Observation vs. Discharge per Comorbidities | | Oakland > 10 Points (e.g., 19) | Elevated Transfusion / Bleed Risk | Inpatient Admission Required | Admit, Crossmatch & Inpatient Colonoscopy/CTA | - **Formula (Total 7-Variable Oakland Lower GI Bleeding Score (0–35 Points))**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Oakland Input", IF(B2 < 40, 0, IF(B2 < 70, 1, 2)) + B3 + B4 + B5 + IF(B6 < 70, 0, IF(B6 < 90, 1, IF(B6 < 110, 2, 3))) + IF(B7 < 90, 5, IF(B7 < 120, 4, IF(B7 < 130, 3, IF(B7 < 160, 2, 0)))) + IF(B8 < 7, 22, IF(B8 < 9, 17, IF(B8 < 11, 13, IF(B8 < 13, 8, IF(B8 < 16, 4, 0))))))` - **Formula (BSG / ACG Lower GI Bleed Safe ED Discharge Decision (Oakland <= 8))**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 <= 0, B7 <= 0, B8 <= 0), "Invalid Oakland Input", IF((IF(B2 < 40, 0, IF(B2 < 70, 1, 2)) + B3 + B4 + B5 + IF(B6 < 70, 0, IF(B6 < 90, 1, IF(B6 < 110, 2, 3))) + IF(B7 < 90, 5, IF(B7 < 120, 4, IF(B7 < 130, 3, IF(B7 < 160, 2, 0)))) + IF(B8 < 7, 22, IF(B8 < 9, 17, IF(B8 < 11, 13, IF(B8 < 13, 8, IF(B8 < 16, 4, 0)))))) <= 8, "Safe ED Discharge Candidate (Oakland <= 8: >= 95% Safe) — Outpatient Colonoscopy", "Inpatient Admission Required (Oakland > 8) — Monitor Hgb & Inpatient Evaluation"))` ### Fiscal Equalization Grant & Flypaper Effect Formula - **URL**: https://sheets.arte-soft.com/en/learn/oates-fiscal-equalization-grant-and-flypaper-effect-spending-formula/ - **Summary**: Calculate Representative Tax System (RTS) fiscal equalization transfers G_i = t_std * MAX(0, B_std - B_i) and model Arthur Okun’s "money sticks where it hits" Flypaper Effect. *Table — Why $1 of unconditional federal grant stimulates 4x–10x more municipal spending than $1 of private voter income!:* | Fiscal Federalism Metric (B_i=30k, B_std=42k, t_std=5%, m_Y=0.08, m_G=0.65) | Formula | Verified Output | | --- | --- | --- | | Per-Capita Equalization Grant (G_i) | t_std * MAX(0, B_std - B_i) | 600.00 / resident | | Textbook Voter-Equivalence Lift | m_Y * G_i = 0.08 * 600 | 48.00 / resident | | Observed Municipal Spending Lift | m_G * G_i = 0.65 * 600 | 390.00 / resident | | Flypaper Excess Spending Wedge | (m_G - m_Y) * G_i | 342.00 / resident | - **Formula (Representative Revenue System (RTS) Per-Capita Equalization Grant Formula)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B4 >= 1), "Invalid Fiscal Input", ROUND(B4 * MAX(0, B3 - B2), 2))` - **Formula (Hines-Thaler Flypaper Excess Spending Wedge Formula)**: `=LET(b_lc, B2, b_st, B3, t_st, B4, m_yn, B5, m_gr, B6, IF(OR(b_lc < 0, b_st <= 0, t_st <= 0, t_st >= 1, m_yn < 0, m_yn > 1, m_gr < 0, m_gr > 1), "Invalid Fiscal Input", LET(g_eq, t_st * MAX(0, b_st - b_lc), ROUND((m_gr - m_yn) * g_eq, 2))))` ### Oaxaca-Blinder Decomposition Formula: Explained Endowment vs. Unexplained Pay Gap - **URL**: https://sheets.arte-soft.com/en/learn/oaxaca-blinder-twofold-wage-gap-endowment-vs-coefficient-formula/ - **Summary**: Decompose mean log-wage differentials (Y_A - Y_B) into Explained Endowment differences (X_A - X_B) * beta_A and Unexplained Coefficient/Return differences using Ronald Oaxaca & Alan Blinder’s 1973 counterfactual identity. *Table — Separating observable qualification differences (Endowments) from unequal returns (Coefficients) in pay-equity audits!:* | Pay-Equity Decomposition Component | Formula (Group A Reference Coefficients) | Log-Point Value & Share of 0.2400 Gap | | --- | --- | --- | | Total Mean Log-Wage Gap (Y_A - Y_B) | 2.62 - 2.38 | 0.2400 log points (100.0%) | | Explained Endowment Effect (X_A - X_B)*beta_A | (16.2 - 14.4) * 0.095 | 0.1710 log points (71.25% Explained) | | Unexplained Return/Intercept Gap (Delta_Y - E) | 0.2400 - 0.1710 | 0.0690 log points (28.75% Unexplained) | - **Formula (Oaxaca-Blinder Explained Endowment Component E = (X_bar_A - X_bar_B) * beta_A)**: `=IF(B6 = B7, "Zero Total Mean Gap", ROUND((B2 - B3) * B4, 4))` - **Formula (Explained Share of Total Raw Differential (%) = E / (Y_bar_A - Y_bar_B) * 100)**: `=IF(B6 = B7, "Zero Total Mean Gap", ROUND(((B2 - B3) * B4) / (B6 - B7) * 100, 2))` ### Oblique Shock Theta-Beta-Mach Wedge Deflection & Normal Mach Formula - **URL**: https://sheets.arte-soft.com/en/learn/oblique-shock-theta-beta-mach-deflection-angle-formula/ - **Summary**: Calculate supersonic wedge deflection angle theta (degrees) from upstream Mach M_1 and shock wave angle beta using the exact Theta-Beta-Mach relation, plus normal Mach component M_n1 = M_1 * SIN(beta). *Table — Analyze supersonic intake ramps and wedge shock waves via Theta-Beta-Mach!:* | Shock Wave Angle beta (Air M_1 = 2.5, gamma = 1.4, mu = 23.58 deg) | Normal Mach M_n1 = M_1*SIN(beta) | Wedge Deflection theta (Deg) | Shock Regime | | --- | --- | --- | --- | | Mach Angle Limit (beta = 23.58 deg) | 1.0000 | 0.00 deg | Infinitesimal Mach wave | | Attached Weak Shock (beta = 35.0 deg) | 1.4339 | 13.17 deg | Supersonic downstream | | Steeper Ramp Shock (beta = 45.0 deg) | 1.7678 | 21.57 deg | Stronger compression | - **Formula (Exact Theta-Beta-Mach Wedge Deflection Angle theta (Degrees))**: `=IF(B2 <= 1, "Requires Supersonic M1 > 1", IF((B2 * SIN(RADIANS(B3))) < 1, "Wave Angle Beta Below Mach Angle", ROUND(DEGREES(ATAN(2 * (1 / TAN(RADIANS(B3))) * ((((B2 ^ 2) * (SIN(RADIANS(B3)) ^ 2)) - 1) / (((B2 ^ 2) * (B4 + COS(2 * RADIANS(B3)))) + 2)))), 2)))` - **Formula (Shock-Normal Upstream Mach Component M_n1 = M_1 * SIN(beta))**: `=ROUND(B2 * SIN(RADIANS(B3)), 4)` ### O’Brien-Fleming vs Pocock Group-Sequential Interim Boundary Formula - **URL**: https://sheets.arte-soft.com/en/learn/obrien-fleming-and-pocock-group-sequential-interim-stopping-boundary/ - **Summary**: Compute O’Brien-Fleming information-scaled critical Z boundaries and Lan-DeMets cumulative alpha spending alpha*(t) across interim Data Monitoring Committee looks. *Table — Protect final analysis alpha by demanding high Z hurdles at early interim looks:* | Information Fraction t_k = d_k / D_max | O’Brien-Fleming Z_OBF | Lan-DeMets Cumulative 2-Sided Alpha Spent | | --- | --- | --- | | Interim Look 1 (t = 0.25, 100/400) | 2.0243 / SQRT(0.25) = 4.0486 | 0.0001 (Ultra-conservative early bar) | | Interim Look 2 (t = 0.50, 200/400) | 2.0243 / SQRT(0.50) = 2.8628 | 0.0031 (vs Pocock flat Z = 2.361) | | Interim Look 3 (t = 0.75, 300/400) | 2.0243 / SQRT(0.75) = 2.3375 | 0.0193 | | Final Analysis (t = 1.00, 400/400) | 2.0243 / SQRT(1.00) = 2.0243 | 0.0500 (Full two-sided 5% exhausted) | - **Formula (O’Brien-Fleming Interim Critical Z Boundary Formula)**: `=LET(d_obs, B2, d_max, B3, c_obf, B4, IF(OR(d_obs <= 0, d_max <= 0, d_obs > d_max), "Invalid Information Fraction", ROUND(c_obf / SQRT(d_obs / d_max), 4)))` - **Formula (Lan-DeMets O’Brien-Fleming Cumulative Two-Sided Alpha Spending Formula)**: `=LET(d_obs, B2, d_max, B3, IF(OR(d_obs <= 0, d_max <= 0, d_obs > d_max), "Invalid Information Fraction", LET(t_inf, d_obs / d_max, z_arg, 2.2414027 / SQRT(t_inf), u_1, 1 / (1 + 0.2316419 * z_arg), ph_1, 0.3989422804014327 * EXP(-0.5 * z_arg^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), ROUND(4 * ph_1, 5))))` ### O’Connell Overall Distillation Tray Efficiency Formula & Actual Tray Count N_act - **URL**: https://sheets.arte-soft.com/en/learn/oconnell-overall-distillation-and-absorber-tray-efficiency-formula/ - **Summary**: Convert theoretical equilibrium stages into actual sieve/valve trays using H. E. O’Connell’s (1946, AIChE) Overall Column Efficiency correlation E_0 (%) = 50.3 * (alpha * mu_L)^(-0.226) and Actual Tray Count -INT(-N_th / (E_0 / 100)). *Table — Bridge the gap between McCabe-Thiele / Gilliland ideal stages and real industrial trays!:* | System Property (alpha = 2.50, Feed Liquid Viscosity mu_L = 0.32 cP, N_th = 18 Stages) | Formula | Evaluated Result | | --- | --- | --- | | O’Connell Volatility-Viscosity Product alpha * mu_L | =B2 * B3 | 0.800 cP | | Overall Column Plate Efficiency E_0 (%) | 50.3 * (alpha * mu_L)^(-0.226) | 52.90% | | Exact Fractional Actual Trays N_th / (E_0 / 100) | =B4 / (E_0 / 100) | 34.02 trays | | Rounded-Up Installed Sieve Trays N_actual | -INT(-N_th / (E_0 / 100)) | 35 actual trays | - **Formula (O’Connell Overall Distillation Column Efficiency E_0 (%))**: `=IF(OR(B2 <= 1, B3 <= 0), "Requires Relative Volatility alpha > 1.0 and Viscosity mu_L > 0 cP", ROUND(50.3 * ((B2 * B3) ^ (-0.226)), 2))` - **Formula (Rounded-Up Actual Installed Column Tray Count N_actual)**: `=IF(OR(B2 <= 1, B3 <= 0, B4 <= 0), "Invalid Volatility, Viscosity, or Theoretical Stage Count", -INT(-(B4 / ((50.3 * ((B2 * B3) ^ (-0.226))) / 100))))` ### Odd Stub-Period Bond Clean Price and Implied Yield (ODDFPRICE & ODDLPRICE Valuation) - **URL**: https://sheets.arte-soft.com/en/learn/odd-short-and-long-first-or-last-coupon-bond-stub-valuation-oddfprice-oddlprice/ - **Summary**: Value bonds with irregular short or long final/initial coupon periods using money-market stub discounting, accrued-interest deduction, and inverse stub yield. *Table — Pricing irregular stub coupon periods transparently:* | Bond Stub Parameter | Input Cell | Example Value | Financial Meaning | | --- | --- | --- | --- | | Redemption per $100 par | B2 | 100 | Principal repaid at maturity | | Annual Coupon Rate / Freq | B3 / B4 | 6% / 2 | $3.00 per standard half-year | | Stub Coupon Factor (DFC/E) | B6 | 0.75 | $2.25 odd final coupon | | Remaining Stub (DSC/E) | B7 | 0.50 | Half of a semiannual period to maturity | | Accrued Stub (A/E) | B8 | 0.25 | $0.75 accrued interest -> Clean = 100.2377 | - **Formula (Odd Last-Coupon Clean Price Formula (ODDLPRICE))**: `=LET(std_cpn, 100 * (B3 / B4), mat_cf, B2 + std_cpn * B6, disc_fac, 1 + (B5 / B4) * B7, accr_int, std_cpn * B8, ROUND((mat_cf / disc_fac) - accr_int, 4))` - **Formula (Implied Odd-Stub Annual Yield Formula (ODDLYIELD))**: `=LET(std_cpn, 100 * (B3 / B4), mat_cf, B2 + std_cpn * B6, accr_int, std_cpn * B8, dirty_p, 100.2377 + accr_int, ROUND(((mat_cf / dirty_p) - 1) * (B4 / B7), 4))` ### Odometer gas mileage log: calculate MPG, L/100 km, and cost per mile - **URL**: https://sheets.arte-soft.com/en/learn/odometer-fuel-economy-mpg-l100km/ - **Summary**: Compute trip distance from consecutive odometer readings, fuel efficiency in MPG and metric L/100 km, and fuel cost per mile. *Table — Turn consecutive odometer fill-ups into fleet efficiency metrics:* | PrevOdo (A) | CurrOdo (B) | Gallons (C) | Cost (D) | MPG / Cost per Mile | | --- | --- | --- | --- | --- | | 42150 | 42510 | 12 | 43.2 | 30.0 MPG / 0.12 per mi / 7.84 L/100km | - **Formula (MPG formula with odometer typo protection)**: `=IF(OR(C2<=0, B2<=A2), "Invalid", ROUND((B2 - A2) / C2, 1))` - **Formula (Cost per mile and metric L/100 km conversion)**: `=ROUND(D2 / (B2 - A2), 2)` ### Murray-Davies Halftone Dot Area & Dot Gain (TVI) Formula - **URL**: https://sheets.arte-soft.com/en/learn/offset-lithography-murray-davies-apparent-dot-area-and-dot-gain-tv-increase/ - **Summary**: Calculate Tint Patch Paper-Relative Reflectance R_t (%), Solid-Ink Patch Reflectance R_s (%), Murray-Davies Apparent Printed Dot Area (%A), and Tone Value Increase / Dot Gain TVI (%). *Table — Why a 50% digital CTP plate screen prints as 66% apparent dot area—from BOTH blanket ink squeeze AND optical paper light trapping!:* | ISO 12647 Press Densitometry KPI (50% Plate Tint, Dt=0.44, Solid Ds=1.45) | Formula | Verified Output | | --- | --- | --- | | Tint Patch Reflectance Rt (%) | (10 ^ (-Tint_Density_Dt)) * 100 | 36.31% (28.84% @ over-inked Dt=0.54) | | Solid Ink Reflectance Rs (%) | (10 ^ (-Solid_Density_Ds)) * 100 | 3.55% | | Murray-Davies Dot Area (%A) | ((1 - 10^(-Dt)) / (1 - 10^(-Ds))) * 100 | 66.04% (73.78% @ Dt = 0.54!) | | Tone Value Increase / Dot Gain | Murray_Davies_Dot_Pct - Nominal_Tint_Pct | +16.04% (+23.78% muddy midtones!) | - **Formula (ISO 12647 Murray-Davies Apparent Dot Area & TVI Dot-Gain Formula)**: `=LET(pl_t, B2, dt_n, B3, ds_l, B4, IF(OR(pl_t <= 0, pl_t >= 100, dt_n < 0, ds_l < 0.5, ds_l > 3, dt_n > ds_l), "Invalid Densitometer Input", LET(md_a, ((1 - (10 ^ (-dt_n))) / (1 - (10 ^ (-ds_l)))) * 100, ROUND(md_a - pl_t, 2))))` - **Formula (Excess Blanket Packing / Over-Emulsified Ink Muddy Midtone Check (Set D_t = 0.54))**: `=IF(ISTEXT(E5), E5, ROUND(((1 - (10 ^ (-B3))) / (1 - (10 ^ (-B4)))) * 100, 2))` ### OFFSET function: sum a dynamic trailing N-month window - **URL**: https://sheets.arte-soft.com/en/learn/offset-function-rolling-window-sum/ - **Summary**: Build a resizable range reference from an anchor cell with OFFSET(ref, rows, cols, height, width), and avoid out-of-bounds #REF! errors. *Table — How OFFSET shifts and resizes a starting anchor:* | Cell | Month (A) | Shipments (B) | Rolling Formula Check | | --- | --- | --- | --- | | Row 2 | M1 | 110 | Anchor header B1 + row offset 1 | | Row 3 | M2 | 125 | | | Row 4 | M3 | 140 | | | Row 5 | M4 | 160 | Trailing 3 as of M4 (B3:B5) = 425 | | Row 6 | M5 | 175 | | | Row 7 | M6 | 190 | Trailing 3 as of M6 (B5:B7) = 525 | - **Formula (Trailing window total formula)**: `=SUM(OFFSET(B1, D2 - E2 + 1, 0, E2, 1))` - **Formula (Out-of-bounds and zero-size #REF! boundaries)**: `=OFFSET(B2, -5, 0)` ### OCIMF Vessel Mooring Wind, Current & Hawser %MBL Formula - **URL**: https://sheets.arte-soft.com/en/learn/offshore-vessel-mooring-hawser-wind-and-current-ocimf-environmental-surge-load-formula/ - **Summary**: Calculate Aerodynamic Wind Load (kN), Seawater Tidal Current Drag (kN), Combined Environmental Surge/Sway Force (kN), and Hawser Tension as % of Ship Design MBL. *Table — A 1.6 m/s (~3.1 knot) tidal current pushes harder on a loaded tanker hull than a 22 m/s (43 knot) gale—because seawater is 837x denser than air!:* | OCIMF MEG4 Berth Mooring KPI (MBL=1,150 kN: Normal 22 m/s, 1.6 m/s, 4 Lines vs Squall 32/2.2, 2 Lines) | Formula | Verified Output | | --- | --- | --- | | Aerodynamic Wind Load Fw (kN) | (0.5 * 1.225 * Cw * Aw * Vw^2) / 1000 | 352.5 kN (745.7 kN @ 32 m/s squall) | | Tidal Current Drag Fc (kN) | (0.5 * 1025 * Cc * Ac * Vc^2) / 1000 | 443.5 kN (838.4 kN @ 2.2 m/s spring ebb) | | Total Environmental Load (kN) | Wind_Force_kN + Current_Force_kN | 795.9 kN (1,584.1 kN @ squall) | | Peak Hawser Tension (% MBL) | (((1.15 * F_tot) / N_lines) / MBL) * 100 | 19.90% (79.21% > 60% BRAKE RENDER!) | - **Formula (OCIMF MEG4 Wind + Shallow-Water Current Drag & Hawser %MBL Formula)**: `=LET(vw_m, B2, aw_m, B3, cw_d, B4, vc_m, B5, ac_m, B6, cc_d, B7, nl_c, B8, mb_k, B9, fw_k, (0.5 * 1.225 * cw_d * aw_m * (vw_m ^ 2)) / 1000, fc_k, (0.5 * 1025 * cc_d * ac_m * (vc_m ^ 2)) / 1000, IF(OR(vw_m < 0, aw_m <= 10, cw_d < 0.2, cw_d > 2, vc_m < 0, ac_m <= 10, cc_d < 0.1, cc_d > 3, nl_c < 1, mb_k <= 50), "Invalid Mooring Input", ROUND((((1.15 * (fw_k + fc_k)) / nl_c) / mb_k) * 100, 2)))` - **Formula (32 m/s Squall + 2.2 m/s Spring Tide on 2 Slack-Mismanaged Lines Brake-Render Check)**: `=IF(ISTEXT(E5), E5, LET(fw_k, (0.5 * 1.225 * B4 * B3 * (B2 ^ 2)) / 1000, fc_k, (0.5 * 1025 * B7 * B6 * (B5 ^ 2)) / 1000, ROUND(fw_k + fc_k, 1)))` ### Ogive Graph Formula: Cumulative Frequency %, Upper Class Boundaries & Grouped Median - **URL**: https://sheets.arte-soft.com/en/learn/ogive-cumulative-frequency-and-interpolated-percentile-formula/ - **Summary**: Build a "Less-Than" Ogive cumulative frequency curve: plot Cumulative % against Upper Class Boundaries (starting at 0% at the first Lower Boundary) and compute the linearly interpolated Grouped Percentile / Median. *Table — Plot Ogive vertices at UPPER class boundaries (never midpoints!) so percentiles read off exactly!:* | Ogive Vertex / Class | Upper Boundary U_k | Bin Count f_k | Cumulative Count F_k | Ogive Cumulative % | | --- | --- | --- | --- | --- | | Origin Anchor (Below Bin 1) | 10 | 0 | 0 | 0.00% | | Bin 1: [10, 20) | 20 | 12 | 12 | 24.00% | | Bin 2: [20, 30) (Contains Median N/2 = 25) | 30 | 20 | 32 | 64.00% | | Bin 3: [30, 40] | 40 | 18 | 50 | 100.00% | - **Formula (Cumulative Relative Frequency (%) at Upper Boundary U_k)**: `=IF(OR(MIN(C2:C5) < 0, SUM(C2:C5) <= 0), "Requires Positive Total Sample N", ROUND(100 * SUMIFS(C2:C5, B2:B5, "<=" & B4) / SUM(C2:C5), 2))` - **Formula (Linearly Interpolated Grouped Median from the Median Ogive Segment)**: `=IF(OR(C4 <= 0, B4 <= A4, SUM(C2:C5) <= 0), "Invalid Median Class Parameters", ROUND(A4 + ((0.5 * SUM(C2:C5) - (C2 + C3)) / C4) * (B4 - A4), 2))` ### Ohlson Linear Information Dynamics Valuation Formula - **URL**: https://sheets.arte-soft.com/en/learn/ohlson-feltham-linear-information-dynamics-abnormal-earnings-valuation/ - **Summary**: Calculate James Ohlson’s (1995) closed-form equity value P_t = B_t + alpha_1 * x_t^a + alpha_2 * v_t combining clean-surplus book value, abnormal earnings persistence omega, and forward information v_t. *Table — Bridge dividend discounting, clean-surplus book value, and analyst forward surprises!:* | Ohlson (1995) LID Valuation Metric (B_t=$50, x_t^a=$5, r=10%, om=0.6, gm=0.55) | Formula | Verified Output | | --- | --- | --- | | Current Abnormal Earnings (x_t^a) | NI_t - r * B_{t-1} | $5.00 / share | | Abnormal Earnings Multiplier (alpha_1) | omega / (1 + r - omega) | 1.2000x (+$6.00 Goodwill) | | Other-Information Multiplier (alpha_2) | (1 + r) / ((1 + r - omega) * (1 + r - gamma)) | 4.0000x (+$6.00 Forward Value) | | Intrinsic Share Price (P_t) | B_t + alpha_1 * x_t^a + alpha_2 * v_t | $62.00 / share (P/B = 1.24x) | - **Formula (Ohlson (1995) Closed-Form Intrinsic Equity Price P_t Formula)**: `=LET(bt_cr, B2, bt_pr, B3, ni_ps, B4, r_eq, B5, om_ae, B6, vt_fw, B7, gm_fw, B8, IF(OR(bt_cr <= 0, bt_pr <= 0, r_eq <= 0, om_ae < 0, om_ae >= 1, gm_fw < 0, gm_fw >= 1), "Invalid Ohlson LID Input", LET(xa_t, ni_ps - r_eq * bt_pr, al_1, om_ae / (1 + r_eq - om_ae), al_2, (1 + r_eq) / ((1 + r_eq - om_ae) * (1 + r_eq - gm_fw)), ROUND(bt_cr + al_1 * xa_t + al_2 * vt_fw, 2))))` - **Formula (Multiplier alpha_1 & alpha_2 Verification Formula)**: `=IF(ISTEXT(E5), E5, ROUND((1 + B5) / ((1 + B5 - B6) * (1 + B5 - B8)), 4))` ### Ohlson O-Score: Nine-Factor Logit Calculation in a Spreadsheet - **URL**: https://sheets.arte-soft.com/en/learn/ohlson-o-score-probabilistic-bankruptcy-logit-formula/ - **Summary**: Calculate a commonly reproduced Ohlson nine-factor linear score and its logistic transform, while distinguishing historical model output from a calibrated current bankruptcy forecast. - **Formula (Unrounded linear score in D2)**: `=IF(COUNT(B2:B10)<>9,"Enter all nine numeric factors",IF(OR(B3<=0,B5<0,ABS(B10)>1),"Check leverage, liquidity and income-change domains",IF(OR(AND(B6<>0,B6<>1),AND(B9<>0,B9<>1)),"Indicators must be 0 or 1",IF(OR(B6<>IF(B3>1,1,0),AND(B9=1,B7>=0)),"Indicators conflict with supplied ratios",-1.32-0.407*B2+6.03*B3-1.43*B4+0.0757*B5-1.72*B6-2.37*B7-1.83*B8+0.285*B9-0.521*B10))))` - **Formula (Stable logistic transform in D3)**: `=IF(NOT(ISNUMBER(D2)),D2,IF(D2>=0,1/(1+EXP(-D2)),EXP(D2)/(1+EXP(D2))))` ### Ohm's Law, electrical power (Watts), and parallel resistance formulas - **URL**: https://sheets.arte-soft.com/en/learn/ohms-law-voltage-current-resistance-and-power-watts/ - **Summary**: Calculate Current (V / R), Power dissipation (V^2 / R and I^2 * R), and Series vs Parallel equivalent resistance 1 / SUM(1 / R_range). *Table — Ohm's Law, Joule power, and reciprocal parallel resistance:* | Circuit Calculation (V = 24V, R = [12, 6, 4] ohms) | Formula | Result | | --- | --- | --- | | Series Resistance | =SUM(A2:A4) = 12 + 6 + 4 | 22.0 ohms | | Parallel Resistance | =1 / SUM(1 / A2:A4) | 2.0 ohms (< 4 ohms!) | | Total Current (Parallel @ 24V) | =24 / 2.0 | 12.0 Amps | | Total Power Dissipated | =24^2 / 2.0 (= 24 * 12) | 288.0 Watts | - **Formula (Parallel equivalent resistance and circuit power formulas)**: `=ROUND(1 / SUM(1 / A2:A4), 4)` - **Formula (Total power dissipated across parallel bank at Voltage B2)**: `=ROUND((B2 ^ 2) / (1 / SUM(1 / A2:A4)), 2)` ### Drilling Annular Velocity, Cuttings Transport & ECD Formula - **URL**: https://sheets.arte-soft.com/en/learn/oilwell-drilling-annular-mud-velocity-cuttings-slip-transport-ratio-and-ecd-formula/ - **Summary**: Calculate Open-Hole Annular Mud Velocity Va (m/min), Net Upward Cuttings Rise Velocity (m/min), Sifferman Cuttings Transport Ratio Ft (%), and Equivalent Circulating Density ECD (SG). *Table — Wash out an 8.5-inch shale borehole to 12.25 inches on one mud pump and cuttings fall BACKWARD onto your BHA—sticking the drillstring!:* | API Hole-Cleaning & ECD KPI (Dp=127 mm, Vs=18.5 m/min, SG=1.32, TVD=2,850 m) | Formula | Verified Output | | --- | --- | --- | | Annular Mud Velocity Va (m/min) | (Flow_L_min / 1000) / ((PI()/4)*(Dh^2 - Dp^2)) | 100.24 m/min (18.14 m/min @ washout!) | | Net Cuttings Rise Velocity (m/min) | Annular_Vel_Va - Cuttings_Slip_Vs | 81.74 m/min (-0.36 m/min SINKING!) | | Cuttings Transport Ratio Ft (%) | ((Va - Vs) / Va) * 100 (>= 55% clean hole) | 81.54% (-1.98% PACK-OFF STUCK PIPE!) | | Equivalent Circulating Density (SG) | Static_SG + Annular_dP_kPa / (9.80665 * TVD_m) | 1.386 SG (+0.066 SG dynamic friction) | - **Formula (API RP 13D Annular Hole-Cleaning Transport Ratio & Dynamic ECD Formula)**: `=LET(qm_l, B2, dh_m, B3, dp_m, B4, vs_m, B5, sg_m, B6, fp_k, B7, tv_m, B8, IF(OR(qm_l <= 50, dp_m < 40, dh_m < dp_m + 20, vs_m < 0, sg_m < 0.8, sg_m > 2.6, fp_k < 0, tv_m < 100), "Invalid Annular Input", ROUND(sg_m + (fp_k / (9.80665 * tv_m)), 3)))` - **Formula (12.25-Inch Shale Washout on Single Triplex Pump (`Q = 1,150` L/min, `D_h = 311.2` mm) Pack-Off Check)**: `=IF(ISTEXT(E5), E5, LET(aa_m, (PI() / 4) * (((B3 / 1000) ^ 2) - ((B4 / 1000) ^ 2)), va_m, (B2 / 1000) / aa_m, ROUND(((va_m - B5) / va_m) * 100, 2)))` ### Oilwell Primary Cementing Slurry Yield & Sack Count Formula - **URL**: https://sheets.arte-soft.com/en/learn/oilwell-primary-cementing-slurry-yield-mix-water-absolute-volume-and-sack-count/ - **Summary**: Calculate API Absolute-Volume Slurry Yield (ft³/sack), Mixed Slurry Density (ppg), Required Bulk Cement Sacks Including Open-Hole Washout Excess, and Total Mix Water (bbl). *Table — Confusing a 94-lb bulk cement sack’s 1.00 ft³ aerated silo volume with its 0.480 ft³ absolute grain volume leaves primary cement tops 600 feet below the freshwater shoe!:* | API 10A Primary Cementing KPI (94 lb Sack, SG=3.14, Gauge=680 ft³) | Formula | Verified Output | | --- | --- | --- | | Absolute Slurry Yield (ft³/sk) | ((Sack_lb / (SG * 8.33)) + Water_gal) / 7.48052 | 1.149 ft³/sk tail (1.577 ft³/sk extended lead) | | Mixed Slurry Density (ppg) | (Sack_lb + Water_gal * 8.33) / (Abs_gal + Water_gal) | 15.78 ppg tail (13.76 ppg bentonite lead) | | Bulk Cement Sacks Required (sk) | ROUNDUP((Gauge_ft3 * (1 + Excess_Pct/100)) / Yield, 0) | 740 sk @ 25% excess (626 sk @ 45% lead) | | Total Mix Water Required (bbl) | (Required_Sacks * Mix_Water_gal_sk) / 42 | 88.10 bbl (122.22 bbl mix tank volume) | - **Formula (API Spec 10A Absolute-Volume Slurry Yield, Density & Barrel Water Formula)**: `=LET(ws_l, B2, sg_c, B3, mw_g, B4, av_f, B5, ex_p, B6, yl_f, ((ws_l / (sg_c * 8.33)) + mw_g) / 7.48052, IF(OR(ws_l < 50, ws_l > 120, sg_c < 2.6, sg_c > 3.3, mw_g < 3, mw_g > 18, av_f < 20, av_f > 25000, ex_p < 0, ex_p > 150), "Invalid Cement Input", ROUND((ROUNDUP((av_f * (1 + ex_p / 100)) / yl_f, 0) * mw_g) / 42, 2)))` - **Formula (Bentonite-Extended Light Lead Slurry (`8.2` gal/sk Water, `45%` Washout Excess) Fracture-Gradient Check)**: `=IF(ISTEXT(E5), E5, LET(yl_f, ((B2 / (B3 * 8.33)) + B4) / 7.48052, ROUNDUP((B5 * (1 + B6 / 100)) / yl_f, 0)))` ### Okumura-Hata Urban Macro-Cell Path Loss Formula - **URL**: https://sheets.arte-soft.com/en/learn/okumura-hata-urban-suburban-cellular-path-loss-propagation-formula/ - **Summary**: Calculate Masaharu Hata’s Empirical Urban Macro-Cell Mobile Height Correction a(h_m), Distance Path-Loss Slope 44.9 - 6.55*LOG10(h_b), Total Median Path Loss L_urban (dB), and Cell-Edge Received Signal Power (dBm). *Table — Replace optimistic 20*LOG10(d) free-space loss with Okumura-Hata’s ~32–38 dB/decade urban clutter slope!:* | Okumura-Hata RF Metric (f=1,000 MHz, h_b=100 m, h_m=1.5 m, d=10 km, EIRP=60 dBm) | Formula | Verified Output | | --- | --- | --- | | Mobile Antenna Factor a(h_m) | (1.1*LOG10(f)-0.7)*hm - (1.56*LOG10(f)-0.8) | 0.02 dB | | Distance Slope (dB / decade) | 44.9 - 6.55 * LOG10(h_b_m) | 31.80 dB/dec (n = 3.18 Clutter) | | Median Urban Path Loss (dB) | 69.55 + 26.16*lg(f) - 13.82*lg(hb) - a + Slope*lg(d) | 152.17 dB (120.37 dB @ d=1 km) | | Cell-Edge Rx Power (dBm) | Sector_EIRP_dBm - L_urban_dB | -92.17 dBm (-60.37 dBm @ d=1 km) | - **Formula (Okumura-Hata Urban Macro-Cell Path Loss (dB) Formula)**: `=LET(fr_m, B2, hb_m, B3, hm_m, B4, ds_k, B5, IF(OR(fr_m < 150, fr_m > 1500, hb_m < 30, hb_m > 200, hm_m < 1, hm_m > 10, ds_k < 1, ds_k > 20), "Out of Hata Empirical Bounds", LET(lg_f, LOG10(fr_m), lg_b, LOG10(hb_m), a_hm, (1.1 * lg_f - 0.7) * hm_m - (1.56 * lg_f - 0.8), sl_d, 44.9 - 6.55 * lg_b, ROUND(69.55 + 26.16 * lg_f - 13.82 * lg_b - a_hm + sl_d * LOG10(ds_k), 2))))` - **Formula (1-Kilometer Reference Ring Check & COST-231 Frequency Guard)**: `=IF(ISTEXT(E4), E4, ROUND(B6 - E4, 2))` ### Okun’s Law Output Gap & Unemployment Change Formula - **URL**: https://sheets.arte-soft.com/en/learn/okun-law-output-gap-and-cyclical-unemployment-coefficient/ - **Summary**: Calculate the Okun’s Law percentage GDP output gap -beta * (u - u*), lost dollar GDP, and growth-rate unemployment change Delta_u = -(1/beta) * (g_Y - g_Y*). *Table — Translate cyclical unemployment points into lost real GDP and speed-limit growth:* | Okun’s Law Metric (Y*=25k, u*=4.5%, u=6.5%, beta=2.0) | Formula | Verified Output | | --- | --- | --- | | Cyclical Unemployment Gap | u - u* | +0.0200 (+2.00 pp) | | Percentage GDP Output Gap | -beta_Okun * (u - u*) | -0.0400 (-4.00%) | | Implied Actual Real GDP (Y) | Y* * (1 - beta_Okun * (u - u*)) | 24,000.00 | | Forecast Unemployment Change | -(1 / beta_Okun) * (g_Y - g_Y*) | -0.0075 (-0.75 pp at g_Y=3.5%) | - **Formula (Okun’s Law Percentage Output Gap -beta_Okun * (u - u*) Formula)**: `=LET(y_pot, B2, u_nat, B3, u_act, B4, bt_ok, B5, IF(OR(y_pot <= 0, u_nat <= 0, u_nat >= 1, u_act <= 0, u_act >= 1, bt_ok <= 0), "Invalid Okun Input", ROUND(-bt_ok * (u_act - u_nat), 4)))` - **Formula (Difference-Version Forecast Unemployment Rate Change Delta_u Formula)**: `=LET(bt_ok, B5, gy_pt, B6, gy_ac, B7, IF(bt_ok <= 0, "Invalid Okun Input", ROUND(-(1 / bt_ok) * (gy_ac - gy_pt), 4)))` ### Line of Best Fit & Equation Formula: Exact OLS Slope, Intercept & R² via SUMPRODUCT - **URL**: https://sheets.arte-soft.com/en/learn/ols-best-fit-trendline-slope-intercept-and-r-squared-sumproduct/ - **Summary**: Extract the exact Scatter-Chart Line of Best Fit equation y = m*x + b and R-Squared directly into cells using closed-form SUMPRODUCT moments — so downstream forecasts reference live trendline coefficients. *Table — Pull chart trendline equations into live cells instead of retyping chart labels!:* | Ad Spend X ($k) | Revenue Y ($k) | OLS Fitted Y_hat = 2.34*X + 24.80 | Residual (Y - Y_hat) | | --- | --- | --- | --- | | 10 | 48 | 48.20 | -0.20 | | 20 | 72 | 71.60 | +0.40 | | 30 | 95 | 95.00 (Centroid) | 0.00 | | 40 / 50 | 118 / 142 | 118.40 / 141.80 | -0.40 / +0.20 (R² = 0.9999) | - **Formula (Exact OLS Best-Fit Slope m via SUMPRODUCT Cross-Moments)**: `=IF(SUMPRODUCT(A2:A6, A2:A6) - COUNT(A2:A6) * AVERAGE(A2:A6) ^ 2 <= 0, "Zero X Variance", ROUND((SUMPRODUCT(A2:A6, B2:B6) - COUNT(A2:A6) * AVERAGE(A2:A6) * AVERAGE(B2:B6)) / (SUMPRODUCT(A2:A6, A2:A6) - COUNT(A2:A6) * AVERAGE(A2:A6) ^ 2), 4))` - **Formula (OLS Y-Intercept b = Mean(Y) - m * Mean(X))**: `=ROUND(AVERAGE(B2:B6) - ((SUMPRODUCT(A2:A6, B2:B6) - COUNT(A2:A6) * AVERAGE(A2:A6) * AVERAGE(B2:B6)) / (SUMPRODUCT(A2:A6, A2:A6) - COUNT(A2:A6) * AVERAGE(A2:A6) ^ 2)) * AVERAGE(A2:A6), 2)` ### Olson Collective Action Free-Rider Threshold Formula - **URL**: https://sheets.arte-soft.com/en/learn/olson-collective-action-public-good-free-rider-provision-threshold/ - **Summary**: Calculate Mancur Olson’s Privileged-Group Critical Benefit Share v_crit = C_pub / V_tot, Anchor Stakeholder Unilateral Net Surplus, Selective-Incentive Dues Gap, and Privileged vs Latent Group regime. *Table — Explain why small asymmetric groups organize while large symmetric groups free-ride!:* | Collective Action Metric (V_tot=$100k, C_pub=$30k, N=50, v_max=0.35, s_inc=$400) | Formula | Verified Output | | --- | --- | --- | | Privileged-Group Threshold v_crit | C_pub / V_tot | 0.3000 (30.00% Min Share) | | Anchor Unilateral Net Payoff ($) | v_max * V_tot - C_pub | +$5,000.00 (Voluntary Provision) | | Selective-Incentive Dues Gap ($) | MAX(0, C_pub / N - s_inc) | $200.00 ($600 Dues vs $400 Perk) | | Olson Group Classification | v_max >= C_pub / V_tot ? | Privileged Group: Anchor Provides | - **Formula (Anchor Unilateral Payoff & Privileged Threshold Formula)**: `=LET(v_tt, B2, c_pb, B3, n_mb, B4, v_mx, B5, s_in, B6, IF(OR(v_tt <= 0, c_pb <= 0, n_mb < 2, v_mx < 1 / n_mb, v_mx > 1, s_in < 0), "Invalid Group Parameters", ROUND(v_mx * v_tt - c_pb, 2)))` - **Formula (Selective By-Product Incentive Gap & Group Regime Formula)**: `=IF(ISTEXT(E3), E3, IF(E3 >= 0, "Privileged Group: Anchor Provides", IF(E4 = 0, "Mobilized Latent Group (Selective Perks)", "Latent Group: Free-Rider Trap")))` ### Omega Ratio & Ulcer Index drawdown risk formulas for skewed portfolios - **URL**: https://sheets.arte-soft.com/en/learn/omega-ratio-and-ulcer-index-drawdown-risk-formulas/ - **Summary**: Evaluate non-normal return distributions via Keating-Shadwick Omega Ratio SUM(MAX(0, R - MAR)) / SUM(MAX(0, MAR - R)) and Martin's RMS drawdown Ulcer Index. *Table — Two descriptive measures with different inputs:* | Observation (independent sample series) | Return vs MAR=1% (A:C) | NAV Curve (D) | Drawdown % Squared (E) | | --- | --- | --- | --- | | Month 1 | +6% -> Gain +0.05, Loss 0 | 100 (Peak 100) | 0% -> 0 | | Month 2 | -2% -> Gain 0, Loss 0.03 | 96 (Peak 100) | -4% -> 16 | | Month 3 | +4% -> Gain +0.03, Loss 0 | 98 (Still below 100!) | -2% -> 4 | | Month 4 | -3% -> Gain 0, Loss 0.04 | 92 (Peak 100) | -8% -> 64 (UI = SQRT(21) = 4.5826) | - **Formula (Discrete sample Omega Ratio at threshold MAR (F2))**: `=IF(OR(COUNT(A2:A5)<>4,COUNT(F2)<>1),"Invalid inputs",IF(SUM(C2:C5)=0,IF(SUM(B2:B5)=0,"Undefined (all at threshold)","No Downside"),ROUND(SUM(B2:B5)/SUM(C2:C5),4)))` - **Formula (Peter Martin's Ulcer Index = SQRT(AVERAGE(DrawdownPctSq)))**: `=IF(COUNT(E2:E5)<>4,"Invalid inputs",ROUND(SQRT(AVERAGE(E2:E5)),4))` ### Onda (1968) Packed-Column Wetted Surface Area (a_w) Formula: Surface Tension & HTU - **URL**: https://sheets.arte-soft.com/en/learn/onda-packed-column-wetted-interfacial-area-and-mass-transfer-formula/ - **Summary**: Calculate effective liquid-wetted interfacial area a_w (m^2/m^3) in random-packed gas absorbers and air strippers using Kakusaburo Onda, Hiroshi Takeuchi & Yoshio Okumoto’s (1968) dimensionless Reynolds-Froude-Weber-Capillary correlation. *Table — Why plastic packing wets poorly in water — and how Onda’s sigma_c / sigma term predicts active mass-transfer area!:* | Packing Material (a_t = 205 m^2/m^3, Water L_m = 12 kg/(m^2·s), sigma = 0.072 N/m) | Critical Surface Tension sigma_c | Wetted Fraction a_w / a_t | Effective Wetted Area a_w | | --- | --- | --- | --- | | Polypropylene Plastic Pall Rings | 0.033 N/m (Hydrophobic) | 0.4741 (47.4% Wetted) | 97.2 m^2/m^3 | | Glazed Ceramic Saddles | 0.061 N/m (Hydrophilic) | 0.6380 (63.8% Wetted) | 130.8 m^2/m^3 | | 316 Stainless Steel Rings | 0.075 N/m (High Energy) | 0.6957 (69.6% Wetted) | 142.6 m^2/m^3 (+47% more area!) | - **Formula (Onda (1968) Fractional Wetted Packing Surface Area a_w / a_t (0 to 1))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Onda Packing or Liquid Property Inputs", ROUND(1 - EXP(-1.45 * ((B7 / B6) ^ 0.75) * ((B3 / (B2 * B5)) ^ 0.1) * ((((B3 ^ 2) * B2) / ((B4 ^ 2) * 9.80665)) ^ -0.05) * (((B3 ^ 2) / (B4 * B6 * B2)) ^ 0.2)), 4))` - **Formula (Effective Interfacial Mass-Transfer Area a_w (m^2 / m^3))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Onda Packing or Liquid Property Inputs", ROUND(B2 * (1 - EXP(-1.45 * ((B7 / B6) ^ 0.75) * ((B3 / (B2 * B5)) ^ 0.1) * ((((B3 ^ 2) * B2) / ((B4 ^ 2) * 9.80665)) ^ -0.05) * (((B3 ^ 2) / (B4 * B6 * B2)) ^ 0.2))), 2))` ### One-Compartment IV Bolus PK: k_el, V_d & Clearance Formula - **URL**: https://sheets.arte-soft.com/en/learn/one-compartment-iv-bolus-pharmacokinetic-kel-vd-and-clearance-formula/ - **Summary**: Calculate first-order elimination rate constant k_el, biological half-life t_1/2, back-extrapolated C_0, apparent volume of distribution V_d, and systemic clearance CL from two plasma draws. *Table — Derive full clinical pharmacokinetic parameters from two timed plasma concentrations!:* | IV Bolus PK Parameter (Dose=500 mg, C(3h)=10, C(9h)=2.5 mg/L) | Formula | Verified Output | | --- | --- | --- | | Elimination Rate Constant (k_el) | LN(C_1 / C_2) / (t_2 - t_1) | 0.2310 hr^-1 | | Biological Half-Life (t_1/2) | LN(2) / k_el | 3.0000 hr | | Extrapolated Initial Conc & V_d | C_0 = C_1 * EXP(k_el * t_1); V_d = Dose / C_0 | C_0 = 20.00 mg/L; V_d = 25.00 L | | Total Systemic Clearance (CL) | k_el * V_d = Dose / AUC_0_inf | 5.7762 L/hr | - **Formula (Exact Unrounded-Chain V_d & Systemic Clearance Formula)**: `=LET(ds_mg, B2, t_on, B3, c_on, B4, t_tw, B5, c_tw, B6, IF(OR(ds_mg <= 0, t_on < 0, t_tw <= t_on, c_on <= 0, c_tw <= 0, c_tw >= c_on), "Invalid TDM Sample Pair", LET(k_el, LN(c_on / c_tw) / (t_tw - t_on), c_zr, c_on * EXP(k_el * t_on), v_ds, ds_mg / c_zr, ROUND(k_el * v_ds, 4))))` - **Formula (Elimination Half-Life & Apparent Volume of Distribution Formula)**: `=LET(ds_mg, B2, t_on, B3, c_on, B4, t_tw, B5, c_tw, B6, IF(OR(ds_mg <= 0, t_on < 0, t_tw <= t_on, c_on <= 0, c_tw <= 0, c_tw >= c_on), "Invalid TDM Sample Pair", LET(k_el, LN(c_on / c_tw) / (t_tw - t_on), ROUND(ds_mg / (c_on * EXP(k_el * t_on)), 2))))` ### One-Rep Max (1RM) Epley & Brzycki strength formulas + 2.5 kg plate rounding - **URL**: https://sheets.arte-soft.com/en/learn/one-rep-max-1rm-epley-brzycki-strength-formulas/ - **Summary**: Estimate 1-Rep Max from submaximal sets using Epley W*(1 + Reps/30) and Brzycki W*36/(37 - Reps), plus nearest-2.5-kg training load rounding. *Table — Compare two estimated lifting-load formulas with fictional inputs:* | Lift Input / Formula | Cell | 100 kg x 5 Reps Example | Result | | --- | --- | --- | --- | | Barbell Weight & Reps | B2 = 100 kg, B3 = 5 | 5-rep top set | One-repetition branch returns recorded 100 kg | | Guarded Epley 1RM | IF(B3=1, B2, B2*(1+B3/30)) | 100 * (1 + 5/30) | 116.67 kg | | Brzycki 1RM | B2 * 36 / (37 - B3) | 3,600 / 32 | 112.50 kg (more conservative) | | 85% Working Load (2.5 kg step) | B4 = 0.85 | 112.50 * 0.85 = 95.625 kg | 95 kg rounded arithmetic result | - **Formula (Guarded Epley 1RM formula)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<1,B3>10,B3<>INT(B3),B4<=0,B4>1),"Invalid inputs",IF(B3 = 1, B2, ROUND(B2 * (1 + B3 / 30), 2))))` - **Formula (Brzycki 1RM & nearest-2.5-kg barbell working load)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<1,B3>10,B3<>INT(B3),B4<=0,B4>1),"Invalid inputs",ROUND(((B2 * 36 / (37 - B3)) * B4) / 2.5, 0) * 2.5))` ### Sensitivity analysis table with formulas: mixed references ($A3 and B$1) - **URL**: https://sheets.arte-soft.com/en/learn/one-variable-sensitivity-table-mixed-references/ - **Summary**: Build live 1-variable and 2-variable financial sensitivity grids (e.g., Interest Rate x Loan Term) with mixed $ references that recalculate instantly anywhere. *Table — Build a sensitivity grid with mixed references:* | Loan $300k ($A$1) | 15 Years (B$1) | 30 Years (C$1) | | --- | --- | --- | | 5.0% nominal annual rate ($A2) | $2,372.38 / mo | $1,610.46 / mo | | 6.0% nominal annual rate ($A3) | $2,531.57 / mo | $1,798.65 / mo | | 7.0% nominal annual rate ($A4) | $2,696.48 / mo | $1,995.91 / mo | - **Formula (Two-way PMT sensitivity grid formula)**: `=ROUND(-PMT($A3 / 12, B$1 * 12, $A$1), 2)` - **Formula (Compare 30-year monthly payment at 6% nominal annual rate)**: `=ROUND(-PMT($A3 / 12, C$1 * 12, $A$1), 2)` ### One-Way ANOVA formula: Between-Group vs Within-Group F-statistic - **URL**: https://sheets.arte-soft.com/en/learn/one-way-anova-f-statistic-between-within-groups/ - **Summary**: Test whether three or more group means differ significantly by computing SS_Between, SS_Within, Mean Squares, and the One-Way ANOVA F-ratio directly in cells. *Table — Decompose variance into signal (Between) vs noise (Within):* | ANOVA Source | Sum of Squares (SS) | df | Mean Square (MS) | F-Ratio | | --- | --- | --- | --- | --- | | Between Groups (k=3) | 3*(25 + 0 + 25) = 150 | k - 1 = 2 | 150 / 2 = 75.00 | 75 / 4 = 18.75 | | Within Groups (N=9) | 8 + 8 + 8 = 24 | N - k = 6 | 24 / 6 = 4.00 | (Crit F_05 = 5.14) | | Total | 174 | N - 1 = 8 | — | Reject Equal Means | - **Formula (Three-group One-Way ANOVA F-statistic formula)**: `=LET(gm, AVERAGE(A2:C4), sampleCountA, COUNT(A2:A4), sampleCountB, COUNT(B2:B4), sampleCountC, COUNT(C2:C4), ssb, sampleCountA*(AVERAGE(A2:A4)-gm)^2 + sampleCountB*(AVERAGE(B2:B4)-gm)^2 + sampleCountC*(AVERAGE(C2:C4)-gm)^2, ssw, (sampleCountA-1)*VAR.S(A2:A4) + (sampleCountB-1)*VAR.S(B2:B4) + (sampleCountC-1)*VAR.S(C2:C4), ROUND((ssb / 2) / (ssw / (sampleCountA+sampleCountB+sampleCountC - 3)), 2))` - **Formula (Within-Group Mean Square (pooled error variance))**: `=LET(sampleCountA, COUNT(A2:A4), sampleCountB, COUNT(B2:B4), sampleCountC, COUNT(C2:C4), ((sampleCountA-1)*VAR.S(A2:A4) + (sampleCountB-1)*VAR.S(B2:B4) + (sampleCountC-1)*VAR.S(C2:C4)) / (sampleCountA+sampleCountB+sampleCountC - 3))` ### Only Calculate If Input Cells Are Not Blank (COUNTA & ISBLANK Gate) - **URL**: https://sheets.arte-soft.com/en/learn/only-calculate-if-all-inputs-are-not-blank-counta/ - **Summary**: Suppress premature $0.00 totals, negative margins, or #DIV/0! errors on partially entered invoice and quote rows using IF(COUNTA(B2:D2) < 3, "", ...) so formulas stay blank until every required input is entered. *Table — Keep pre-copied invoice & quote templates clean until all required cells are filled!:* | Row Entry State (B2: Qty, C2: Price, D2: Discount) | COUNTA(B2:D2) | Guarded Formula Output | | --- | --- | --- | | All 3 Populated (Qty = 24, Price = $45, Disc = 0.10) | 3 (Complete) | 972 ($972.00 Net Line Total) | | Zero Discount Explicitly Entered (24, $45, 0) | 3 (0 Counts as Filled!) | 1080 ($1,080.00 Net Total) | | Partially Filled Row (Qty = 24, Price = $45, Disc = blank) | 2 (< 3 Incomplete) | "" (Clean Blank Cell) | - **Formula (Multi-Cell Completeness Gate: Only Calculate When All 3 Inputs Are Non-Blank)**: `=IF(COUNTA(B2:D2) < 3, "", ROUND(B2 * C2 * (1 - D2), 2))` - **Formula (Single-Cell Blank Gate With Division-by-Zero Guard for Gross Margin (%))**: `=IF(OR(ISBLANK(C2), ISBLANK(E2)), "", IF(C2 <= 0, "Invalid Price", ROUND(100 * (C2 - E2) / C2, 2)))` ### Onodera Prognostic Nutritional Index (PNI) Formula: Albumin & Lymphocyte Surgical Cutoff - **URL**: https://sheets.arte-soft.com/en/learn/onodera-prognostic-nutritional-index-pni-albumin-and-lymphocytes/ - **Summary**: Calculate Tokiro Onodera et al.’s (1984) Prognostic Nutritional Index PNI = 10 * Albumin_gdL + 0.005 * Total_Lymphocyte_Count_per_uL to stratify gastrointestinal surgical anastomosis safety (PNI < 40 contraindicated / high fistula risk) and immuno-oncology prognosis. *Table — Two routine preoperative blood tests—Serum Albumin & Total Lymphocytes—predict anastomotic leak and immunotherapy survival!:* | Onodera PNI Value | Surgical & Oncology Risk Stratification | Perioperative Recommendation | | --- | --- | --- | | PNI >= 45.0 | Normal / Low Immunonutritional Risk | Proceed with resection & primary anastomosis | | 40.0 <= PNI < 45.0 | Moderate Immunonutritional Risk | Perioperative immunonutrition & leak vigilance | | PNI < 40.0 (Onodera Critical Cutoff!) | Severe Risk (High Anastomotic Leak / Mortality) | Preoperative nutrition support; caution with primary anastomosis | - **Formula (Onodera (1984) Prognostic Nutritional Index PNI = 10 * Albumin_gdL + 0.005 * Lymphocytes_uL)**: `=IF(OR(B2 <= 0, B2 > 8, B3 <= 0), "Invalid Lab Units (Enter Albumin in g/dL <= 8 & TLC in cells/uL)", ROUND(10 * B2 + 0.005 * B3, 2))` - **Formula (Onodera Surgical Anastomosis & Oncology Risk Classifier (< 40 / 40–<45 / >= 45))**: `=IF(OR(B2 <= 0, B2 > 8, B3 <= 0), "Invalid Lab Units", IF(10 * B2 + 0.005 * B3 < 40, "Severe Risk (PNI < 40 — High Anastomotic Leak / Post-Op Complication Risk)", IF(10 * B2 + 0.005 * B3 < 45, "Moderate Risk (40 <= PNI < 45 — Prehab Recommended)", "Low Risk (PNI >= 45 — Standard Surgical Clearance)")))` ### Op-Amp Gain, Closed-Loop Bandwidth (GBWP) & Slew-Rate Limit formulas - **URL**: https://sheets.arte-soft.com/en/learn/op-amp-inverting-non-inverting-gain-and-gain-bandwidth-product/ - **Summary**: Explore ideal resistor-set gains, a single-pole noise-gain bandwidth estimate and the sine-wave slew-rate boundary. *Table — Separate ideal gain, small-signal bandwidth and slew rate:* | Op-Amp Stage Parameter | Formula | R_in=2k, R_f=18k, GBWP=1MHz, SR=0.5V/us, Vp=5V | Non-inverting follower limit (Rf=0) | | --- | --- | --- | --- | | Non-Inverting Gain (V/V) | 1 + (B3 / B2) | +10.0 V/V (+20 dB) | +1.0 V/V (Follower) | | Inverting Gain (V/V) | -(B3 / B2) | -9.0 V/V | Not a useful inverting stage | | Closed-Loop -3dB BW (kHz) | B4 / (1 + (B3 / B2)) | 1,000 / 10 = 100.00 kHz | 1,000.00 kHz | | Full-Power Slew BW (kHz) | ((B5 * 1e6) / (2 * PI() * B6)) / 1000 | 15.92 kHz slew boundary | 15.92 kHz at 5 Vp | - **Formula (Closed-Loop -3dB Small-Signal Bandwidth (kHz) = GBWP / (1 + R_f / R_in))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B5<=0,B6<=0),"Invalid inputs",ROUND(B4 / (1 + (B3 / B2)), 2)))` - **Formula (Slew-Rate-Limited Full-Power Sine Bandwidth (kHz))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B5<=0,B6<=0),"Invalid inputs",ROUND(((B5 * 1000000) / (2 * PI() * B6)) / 1000, 2)))` - **Formula (Ideal non-inverting voltage gain)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B5<=0,B6<=0),"Invalid inputs",1 + (B3 / B2)))` - **Formula (Ideal inverting voltage gain)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B5<=0,B6<=0),"Invalid inputs",IF(B3=0,"Not an inverting stage",-B3/B2)))` ### Open-Die Upset Forging Friction-Hill & Tonnage Formula - **URL**: https://sheets.arte-soft.com/en/learn/open-die-upset-forging-siebel-barreling-friction-hill-force-and-true-strain/ - **Summary**: Calculate Compressive Logarithmic True Strain, Constant-Volume Upsetted Diameter Df (mm), Siebel Friction-Hill Shape Multiplier C_f, and Peak Forging Press Force (kN). *Table — As a forged pancake gets thinner, radial platen friction builds a conical "friction hill" that pushes press tonnage far above Yf * Area!:* | Open-Die Upset Forging KPI (D0=90 mm, h0=135 -> hf=54 mm, Yf=165 MPa, mu=0.24) | Formula | Verified Output | | --- | --- | --- | | Compressive True Strain epsilon | LN(Initial_h0_mm / Final_hf_mm) | 0.916 | | Upsetted Final Diameter Df (mm) | D0_mm * SQRT(h0_mm / hf_mm) | 142.30 mm | | Siebel Friction-Hill Factor Cf | 1 + (mu * Df_mm) / (3 * hf_mm) | 1.211 (1.395 @ dry unlubricated 0.45!) | | Peak Forging Press Force (kN) | (Yf_MPa * Cf * ((PI()/4)*Df^2)) / 1000 | 3,177.4 kN (3,661.5 kN @ dry die!) | - **Formula (Incompressible Area Expansion & Siebel Friction-Hill Upset Forging Formula)**: `=LET(dz_m, B2, hz_m, B3, hf_m, B4, yf_m, B5, mu_d, B6, IF(OR(dz_m <= 0, hf_m <= 0, hz_m <= hf_m, (hz_m / dz_m) > 3, yf_m <= 0, mu_d < 0, mu_d > 0.577), "Invalid Forging Input", LET(df_m, dz_m * SQRT(hz_m / hf_m), af_m, (PI() / 4) * (df_m ^ 2), cf_s, 1 + (mu_d * df_m) / (3 * hf_m), ROUND((yf_m * cf_s * af_m) / 1000, 1))))` - **Formula (Dry Scale-Covered Die Lubricant Breakdown Check (Set Friction mu B6 = 0.45))**: `=IF(ISTEXT(E5), E5, LET(df_m, B2 * SQRT(B3 / B4), ROUND(1 + (B6 * df_m) / (3 * B4), 3)))` ### Open-Pit Cutoff Grade & Stripping Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/open-pit-mining-breakeven-stripping-ratio-and-cutoff-grade-formula/ - **Summary**: Distinguish Marginal Milling Cutoff Grade (sunk mining cost) from Pit-Shell Full Mining Cutoff Grade and calculate Maximum Breakeven Waste-to-Ore Stripping Ratio SR_max. *Table — Never confuse in-pit Marginal Milling Cutoff with Ultimate-Pit Mining Cutoff Grade!:* | Open-Pit Gold Economics ($80/g Net, 90% Rec, $3.60 Ore / $3.00 Waste / $18.00 Mill, g=0.75 g/t) | Formula | Verified Output | | --- | --- | --- | | Marginal In-Pit Milling Cutoff (g/t) | C_proc / (P_net * Rec) | 0.2500 g/t Au | | Unstripped Mining Cutoff Grade (g/t) | (C_mine_ore + C_proc) / (P_net * Rec) | 0.3000 g/t Au | | Unstripped Net Ore Margin ($/t ore) | g * P_net * Rec - (C_mine_ore + C_proc) | $32.40 / t ore | | Max Breakeven Stripping Ratio (W:O) | Net_Ore_Margin / C_mine_waste | 10.8000 : 1 (t waste / t ore) | - **Formula (Maximum Breakeven Stripping Ratio (SR_max) Formula)**: `=LET(p_nt, B2, rc_m, B3, c_mo, B4, c_mw, B5, c_pr, B6, gr_o, B7, IF(OR(p_nt <= 0, rc_m <= 0, rc_m > 1, c_mo <= 0, c_mw <= 0, c_pr <= 0, gr_o < 0), "Invalid Pit Economics", ROUND((gr_o * p_nt * rc_m - (c_mo + c_pr)) / c_mw, 4)))` - **Formula (Marginal Milling vs Full Mining Cutoff Grade Formula)**: `=IF(ISTEXT(E5), E5, ROUND((B4 + B6) / (B2 * B3), 4))` ### EUV Lithography Rayleigh CD & Depth of Focus Formula - **URL**: https://sheets.arte-soft.com/en/learn/optical-euv-lithography-rayleigh-critical-dimension-and-depth-of-focus/ - **Summary**: Calculate Photolithography Minimum Printable Half-Pitch CD = k_1 * (lambda / NA), Rayleigh Depth of Focus DOF = k_2 * (lambda / NA^2), Minimum Pitch 2 * CD, and Transistor Area Scaling. *Table — Master the fundamental EUV vs High-NA EUV resolution-focus tradeoff!:* | Scanner Lithography Metric (lambda=13.5 nm EUV, k1=0.33, k2=0.50) | Formula | 0.33-NA EUV (vs 0.55 High-NA) | | --- | --- | --- | | Critical Dimension Half-Pitch CD | k_1 * (lambda_nm / NA) | 13.50 nm (8.10 nm @ 0.55 NA) | | Minimum Single-Exposure Pitch | 2 * k_1 * (lambda_nm / NA) | 27.00 nm (16.20 nm @ 0.55 NA) | | Rayleigh Depth of Focus DOF | k_2 * (lambda_nm / NA^2) | 61.98 nm (22.31 nm @ 0.55 NA) | | DOF-to-CD Process Latitude Ratio | DOF / CD = (k_2 / k_1) / NA | 4.5914x (2.7548x @ 0.55 NA) | - **Formula (Abbe-Guarded Rayleigh Critical Dimension & Depth of Focus Formula)**: `=LET(wl_n, B2, na_l, B3, k_1p, B4, k_2f, B5, IF(OR(wl_n <= 0, na_l <= 0, na_l > 1.5, k_1p < 0.25, k_2f <= 0), "Below Abbe Limit or Invalid Optics", ROUND(k_2f * (wl_n / (na_l ^ 2)), 2)))` - **Formula (DOF-to-CD Aspect Latitude Ratio Formula)**: `=IF(ISTEXT(E4), E4, ROUND((B5 / B4) / B3, 4))` ### Optical Kerr Effect Nonlinear Refractive Index & Laser B-Integral - **URL**: https://sheets.arte-soft.com/en/learn/optical-kerr-effect-nonlinear-refractive-index-b-integral/ - **Summary**: Calculate intensity-dependent Kerr refractive index shift delta_n = n_2 * I and accumulated ultrafast laser amplifier B-integral = (2 * PI() / lambda_0) * n_2 * I * L_eff (radians) to prevent catastrophic filamentation breakup. *Table — Keep ultrafast chirped-pulse amplifiers below the B-integral < 2–3 radian breakup limit!:* | Ultrafast Pulse Intensity (lambda = 1.053 um, n2 = 2.7e-20 m^2/W, L = 8 cm) | B-Integral (radians) | Laser Damage & Beam-Quality Regime | | --- | --- | --- | | 15 GW/cm^2 Stretched Pulse (1.5e14 W/m^2) | 1.933 rad | Safe Amplifier Window (B <= 2.0 rad) | | 30 GW/cm^2 Unstretched Spike (3.0e14 W/m^2) | 3.867 rad | Filamentation Danger (B > 3.0 rad)! | | Invalid Wavelength or Optical Path <= 0 | Guarded Optical Error | "Invalid Kerr Inputs" | - **Formula (Accumulated Nonlinear Phase Shift B-Integral (radians))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid Kerr Inputs", ROUND((2 * PI() / (B2 * 0.000001)) * (B3 * B4 * 0.0000001) * B5, 3))` - **Formula (CPA Small-Scale Self-Focusing Breakup Safety Status)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0), "Invalid Kerr Inputs", IF(((2 * PI() / (B2 * 0.000001)) * (B3 * B4 * 0.0000001) * B5) > 3, "Danger: Filamentation Risk (B > 3 rad)", IF(((2 * PI() / (B2 * 0.000001)) * (B3 * B4 * 0.0000001) * B5) > 2, "Caution: Marginal CPA Phase (2-3 rad)", "Safe CPA Regime (B <= 2 rad)")))` ### Telescope Rayleigh Diffraction Limit, Dawes' Limit & Focal Ratio formulas - **URL**: https://sheets.arte-soft.com/en/learn/optical-telescope-angular-resolution-rayleigh-diffraction-limit/ - **Summary**: Calculate Airy-disk angular resolution in arcseconds theta = DEGREES(1.22 * lambda / D) * 3600, Dawes' empirical double-star limit 116 / D_mm, f-number, and magnification. *Table — Ideal aperture resolution and visual magnification:* | Optical Instrument Metric | Formula | 200 mm f/10 Scope (550 nm, 25 mm Eyepiece) | Ideal 2,400-mm aperture at 550nm | | --- | --- | --- | --- | | Rayleigh Limit (arcsec) | DEGREES(1.22 * (B2*1e-6 / B3)) * 3600 | 0.692 arcseconds | 0.058 arcsec (ideal model) | | Dawes' Binary Limit (arcsec) | 116 / B3 | 0.580 arcseconds | 0.048 arcseconds | | Focal Ratio & Magnification | B4 / B3 & B4 / B5 | f/10 \| 80x magnification | Requires focal lengths | - **Formula (Rayleigh Diffraction-Limited Angular Resolution (Arcseconds))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(MIN(B2:B5)<=0,"Positive dimensions required",ROUND(DEGREES(1.22 * ((B2 * 0.000001) / B3)) * 3600, 3)))` - **Formula (Dawes’ empirical double-star limit)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(MIN(B2:B5)<=0,"Positive dimensions required",ROUND(116 / B3, 3)))` - **Formula (Focal ratio)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(MIN(B2:B5)<=0,"Positive dimensions required",B4/B3))` - **Formula (Visual magnification)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(MIN(B2:B5)<=0,"Positive dimensions required",B4 / B5))` ### Optical DWDM EDFA Noise Figure & Cascaded OSNR Formula - **URL**: https://sheets.arte-soft.com/en/learn/optical-wdm-edfa-amplifier-ase-noise-figure-and-cascaded-osnr-formula/ - **Summary**: Calculate 1550 nm C-Band Single-Span Optical Signal-to-Noise Ratio (0.1 nm reference bandwidth), Multi-Span ASE Accumulation Penalty 10*LOG10(N), Cascaded End-to-End OSNR_dB = 58 + P_in_dBm - NF_dB - 10*LOG10(N), and Coherent FEC Margin. *Table — Track Amplified Spontaneous Emission (ASE) across N identical EDFA fiber spans!:* | DWDM 1550nm Link Metric (Pin=-20 dBm, NF=5.0 dB, N=10 Spans, FEC=18.0 dB) | Formula | Verified Output | | --- | --- | --- | | Single-Span OSNR (0.1 nm BW) | 58 + P_in_dBm - NF_dB | 33.00 dB | | Multi-Span ASE Penalty (dB) | 10 * LOG10(N_spans) | 10.00 dB (20.00 dB @ N=100) | | End-to-End Cascaded OSNR (dB) | 58 + P_in_dBm - NF_dB - 10*LOG10(N) | 23.00 dB (13.00 dB @ N=100) | | Coherent Pre-FEC Margin (dB) | Cascaded_OSNR_dB - FEC_Limit_dB | +5.00 dB (-5.00 dB @ N=100) | - **Formula (ITU-T C-Band Cascaded EDFA OSNR Formula)**: `=LET(p_in, B2, nf_d, B3, n_sp, B4, fc_t, B5, IF(OR(nf_d < 3, n_sp < 1, fc_t <= 0), "Invalid EDFA Link Budget", ROUND(58 + p_in - nf_d - 10 * LOG10(n_sp), 2)))` - **Formula (100-Span Transoceanic Cascade Check & 3 dB Quantum Floor Guard)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - B5, 2))` ### Option Put-Call Parity, Intrinsic Value, and Time Value formulas - **URL**: https://sheets.arte-soft.com/en/learn/option-put-call-parity-intrinsic-and-time-value/ - **Summary**: Use a no-dividend European option parity model to infer a put value, then calculate the sample call premium minus intrinsic value. *Table — European put-call parity under explicit assumptions:* | Option Metric (S=$105, K=$100, r=5%, T=0.5y, C=$9.20) | Formula | Result | | --- | --- | --- | | PV of Strike K * EXP(-r*T) | 100 * EXP(-0.05 * 0.5) | $97.53 | | Parity-implied put value under the model | 9.20 - 105 + 97.53099 | $1.73 | | Call Intrinsic vs. Time Value | MAX(0, 105-100) = $5.00 | Time Value = $9.20 - $5.00 = $4.20 | - **Formula (Implied European Put price from Put-Call Parity)**: `=IF(OR(COUNT(A2:E2)<>5,A2<=0,B2<=0,D2<0,E2<0),"Invalid inputs",LET(putValue,E2-A2+B2*EXP(-C2*D2),IF(OR(putValue<0,E2>A2,AND(D2=0,E2<>MAX(0,A2-B2))),"Inconsistent prices",ROUND(putValue,2))))` - **Formula (Decompose Call Intrinsic Value and Extrinsic Time Value)**: `=IF(OR(COUNT(A2:E2)<>5,A2<=0,B2<=0,D2<0,E2<0),"Invalid inputs",ROUND(E2 - MAX(0, A2 - B2), 2))` ### OR function: flag a support ticket when either trigger applies - **URL**: https://sheets.arte-soft.com/en/learn/or-function-flag-priority/ - **Summary**: Escalate a ticket if a service is down or if its response age exceeds 24 hours. Check all four truth-table cases and exact threshold equality. *Table — Two independent reasons to escalate a ticket:* | Ticket (A) | Service down (B) | Age hours (C) | | --- | --- | --- | | TK-1 | Yes | 6 | | TK-2 | No | 30 | | TK-3 | Yes | 36 | | TK-4 | No | 24 | - **Formula (Write the OR test and check the boundary)**: `=OR(B2="Yes",C2>$E$2)` - **Formula (Both conditions true still produces one flag)**: `=IF(OR(B5="Yes",C5>$E$2),"Escalate","Standard")` ### Oral Bateman PK: t_max, C_max & Bioavailability Formula - **URL**: https://sheets.arte-soft.com/en/learn/oral-bateman-pharmacokinetic-tmax-cmax-and-absolute-bioavailability/ - **Summary**: Calculate dose-normalized Absolute Bioavailability F, Harry Bateman’s oral peak time t_max = LN(k_a / k_el) / (k_a - k_el), peak plasma concentration C_max, and flip-flop kinetics flags. *Table — Model extravascular oral absorption, peak exposure, and flip-flop kinetics!:* | Extravascular Oral PK Metric (D_po=400, D_iv=200, k_a=1.0, k_el=0.25) | Formula | Verified Output | | --- | --- | --- | | Absolute Bioavailability (F) | (AUC_po * Dose_iv) / (AUC_iv * Dose_po) | 0.7500 (75.00%) | | Time to Peak Concentration (t_max) | LN(k_a / k_el) / (k_a - k_el) | 1.8484 hr | | Peak Plasma Concentration (C_max) | (F * D_po / V_d) * EXP(-k_el * t_max) | 6.2996 mg/L | | Kinetic Regime Check | IF(k_a < k_el, "Flip-Flop...", "Standard...") | Standard Absorption (k_a > k_el) | - **Formula (Bateman Time-to-Peak t_max With Equal-Rate Limit (k_a = k_el) Guard Formula)**: `=LET(ka_r, B7, ke_r, B8, IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, ka_r <= 0, ke_r <= 0), "Invalid Oral PK Input", ROUND(IF(ka_r = ke_r, 1 / ke_r, LN(ka_r / ke_r) / (ka_r - ke_r)), 4)))` - **Formula (Peak Plasma Concentration C_max & Flip-Flop Regime Formula)**: `=LET(f_ba, (B3 * B4) / (B5 * B2), ka_r, B7, ke_r, B8, IF(ISTEXT(E3), E3, LET(t_mx, IF(ka_r = ke_r, 1 / ke_r, LN(ka_r / ke_r) / (ka_r - ke_r)), ROUND((f_ba * B2 / B6) * EXP(-ke_r * t_mx), 4))))` ### ORBIT Bleeding Risk Score for Atrial Fibrillation Anticoagulation - **URL**: https://sheets.arte-soft.com/en/learn/orbit-bleeding-risk-score-atrial-fibrillation-anticoagulation/ - **Summary**: Calculate Emily O’Brien’s 5-factor ORBIT-AF major bleeding score (0–7: Anemia +2, Bleeding history +2, Age >=75 +1, eGFR <60 +1, Antiplatelet therapy +1) across DOAC and warfarin anticoagulation. *Table — Why NICE endorsed 5-item ORBIT over labile-INR scores for modern DOAC patients!:* | ORBIT Bleeding Score (0–7) | Risk Category | Annualized Major Bleeds & Action | | --- | --- | --- | | 0 – 2 Points (e.g., Age 78 + eGFR 52 = 2 pts) | Low Bleeding Risk (0–2) | ~2.4 / 100 patient-years; Standard Follow-Up | | 3 Points (e.g., Anemia +2, Age >=75 +1) | Medium Bleeding Risk (3) | ~4.7 / 100 patient-years; Monitor Hb & Renal | | 4 – 7 Points (e.g., Anemia +2, Age +1, eGFR +1, ASA +1 = 5) | High Bleeding Risk (4–7) | ~8.1 / 100 py; Stop Unneeded Antiplatelets & PPI Review | - **Formula (Weighted 5-Item ORBIT Major Bleeding Score (0–7))**: `=IF(OR(COUNTA(B2:B6) < 5, SUMPRODUCT((B2:B6 <> 0) * (B2:B6 <> 1)) > 0), "Invalid Binary ORBIT Flag", 2 * B2 + 2 * B3 + B4 + B5 + B6)` - **Formula (ORBIT Bleeding Risk Tier (Low 0–2, Medium 3, High 4–7))**: `=IF(OR(COUNTA(B2:B6) < 5, SUMPRODUCT((B2:B6 <> 0) * (B2:B6 <> 1)) > 0), "Invalid Binary ORBIT Flag", IF(2 * B2 + 2 * B3 + B4 + B5 + B6 >= 4, "High Bleeding Risk (4-7: ~8.1/100 py)", IF(2 * B2 + 2 * B3 + B4 + B5 + B6 = 3, "Medium Bleeding Risk (3: ~4.7/100 py)", "Low Bleeding Risk (0-2: ~2.4/100 py)")))` ### Orbital velocity, escape velocity & Kepler's 3rd Law satellite period formulas - **URL**: https://sheets.arte-soft.com/en/learn/orbital-velocity-escape-velocity-and-kepler-period/ - **Summary**: Calculate circular orbital speed SQRT(mu/r), local escape speed SQRT(2*mu/r), and orbital period in minutes from gravitational parameter mu and altitude. *Table — Always add planetary radius R to altitude h before computing orbital mechanics!:* | Astrodynamics Quantity (400 km LEO, r = 6,778 km) | Formula (mu = 398,600 km^3/s^2) | Value | | --- | --- | --- | | Circular Orbital Velocity (v_orb) | SQRT(398600 / 6778) | 7.67 km/s | | Local Escape Velocity (v_esc) | SQRT(2 * 398600 / 6778) | 10.85 km/s | | Kepler Orbital Period (Minutes) | 2 * PI() * SQRT(6778^3 / 398600) / 60 | 92.56 min | | Surface Escape Velocity (h = 0, r = 6,378 km) | SQRT(2 * 398600 / 6378) | 11.18 km/s | - **Formula (Circular orbital velocity (km/s) at altitude h)**: `=IF(OR(COUNT(A2:C2)<>3,A2<=0,B2<=0,C2<0),"Invalid inputs",ROUND(SQRT(A2 / (B2 + C2)), 2))` - **Formula (Kepler's 3rd Law orbital period in minutes)**: `=IF(OR(COUNT(A2:C2)<>3,A2<=0,B2<=0,C2<0),"Invalid inputs",LET(orbitalRadius, B2 + C2, ROUND((2 * PI() * SQRT((orbitalRadius ^ 3) / A2)) / 60, 2)))` ### Format numbers as ordinals: 1st, 2nd, 3rd, 4th (including 11th–13th) - **URL**: https://sheets.arte-soft.com/en/learn/ordinal-number-suffix-1st-2nd-3rd-nth/ - **Summary**: Append accurate English ordinal suffixes ("st", "nd", "rd", "th") to ranks and day numbers while handling the 11th/12th/13th teen exception. *Table — Handle both last-digit rules and the 11–13 teen exception:* | Number (A) | MOD 100 | MOD 10 | Formatted Ordinal | | --- | --- | --- | --- | | 1 | 1 | 1 | 1st | | 12 | 12 (teen) | 2 | 12th | | 22 | 22 | 2 | 22nd | | 30 | 30 | 0 | 30th | - **Formula (Universal positive-integer ordinal formula)**: `=A2 & IF(AND(MOD(A2, 100)>=11, MOD(A2, 100)<=13), "th", CHOOSE(MIN(4, MOD(A2, 10) + IF(MOD(A2, 10)=0, 4, 0)), "st", "nd", "rd", "th"))` - **Formula (Combine directly with RANK.EQ)**: `=LET(n, A2, n & IF(AND(MOD(n, 100)>=11, MOD(n, 100)<=13), "th", CHOOSE(MIN(4, MOD(n, 10) + IF(MOD(n, 10)=0, 4, 0)), "st", "nd", "rd", "th")))` ### Organic Rankine Cycle (ORC) Back-Work & Net Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/organic-rankine-cycle-orc-geothermal-waste-heat-pinch-and-net-power/ - **Summary**: Calculate Organic Rankine Cycle (ORC) Working-Fluid Mass Flow (kg/s), Organic Feed-Pump Back-Work Ratio (%), Net Electrical Output (kWe), and Net Thermal Efficiency (%). *Table — Never ignore feed-pump back-work in an Organic Rankine Cycle—it consumes 10%–18% of turbine output!:* | ORC Plant Metric (10,000 kWth, 250 kJ/kg Evap, 40 kJ/kg Turb, 5 kJ/kg Pump) | Formula | Verified Output | | --- | --- | --- | | Organic Mass Flow Rate (kg/s) | Evap_Heat_kW / Evap_Enthalpy_Rise | 40.00 kg/s | | Feed-Pump Back-Work Ratio (%) | (Pump_Work_kJ_kg / Turbine_Drop_kJ_kg) * 100 | 12.50% (0.00% Idealized) | | Net Electrical Power (kWe) | Mass_Flow * (Turbine_Drop - Pump_Work) * Gen_Eff | 1,330.00 kWe (1,520.00 Naive) | | Net ORC Thermal Efficiency (%) | (Net_Electrical_kWe / Evap_Heat_kW) * 100 | 13.30% (15.20% Naive) | - **Formula (ORC Net Electrical Power & Back-Work Deduction Formula)**: `=LET(q_in, B2, dh_e, B3, dh_t, B4, dh_p, B5, gn_e, B6, IF(OR(q_in <= 0, dh_e <= dh_t, dh_t <= dh_p, dh_p < 0, gn_e <= 0, gn_e > 1), "Invalid ORC Cycle Input", LET(m_wf, q_in / dh_e, ROUND(m_wf * (dh_t - dh_p) * gn_e, 2))))` - **Formula (Zero-Pump-Work Overestimation Check (Set Feed-Pump Work = 0 kJ/kg))**: `=IF(ISTEXT(E4), E4, ROUND((E4 / B2) * 100, 2))` ### Reverse discount formula: find original price before a percentage discount - **URL**: https://sheets.arte-soft.com/en/learn/original-price-before-percentage-discount/ - **Summary**: Divide SalePrice by (1 - DiscountPct) to recover exact list price—avoiding the common mistake of multiplying SalePrice by (1 + DiscountPct). *Table — Why $68 after 15% off came from $80.00—not $78.20:* | SalePrice (A) | DiscPct (B) | Wrong A*(1+B) | Exact List A/(1-B) | | --- | --- | --- | --- | | 68 | 0.15 | 78.20 (wrong) | 80.00 | | 150 | 0.25 | 187.50 (wrong) | 200.00 | - **Formula (Reverse list-price, forward sale-price, and implied discount %)**: `=IF(OR(B2<0,B2>=1), "Cannot infer price", ROUND(A2 / (1 - B2), 2))` - **Formula (Implied discount percentage from List and Sale)**: `=ROUND(1 - (A2 / C2), 4)` ### Ornstein-Uhlenbeck AR(1) Half-Life & Spread Z-Score - **URL**: https://sheets.arte-soft.com/en/learn/ornstein-uhlenbeck-ar1-mean-reversion-half-life-and-spread-variance/ - **Summary**: Convert discrete AR(1) persistence phi in (0, 1) into continuous Ornstein-Uhlenbeck speed kappa = -LN(phi), exact half-life -LN(2) / LN(phi), and stationary spread volatility sigma_e / SQRT(1 - phi^2). *Table — Stop using linearized 1 / (1 - phi) or innovation SD sigma_e when sizing mean-reverting trades!:* | OU / AR(1) Spread Metric (phi=0.80, mu=10, sigma_e=1.20, S_t=14) | Formula | Verified Output | | --- | --- | --- | | Continuous OU Reversion Speed (kappa) | -LN(phi) | 0.2231 / period | | Exact Mean-Reversion Half-Life | -LN(2) / LN(phi) | 3.1063 periods | | Stationary Unconditional Spread SD | sigma_e / SQRT(1 - phi^2) | 2.0000 (1.20 / 0.60) | | Stationary Equilibrium Z-Score | (S_t - mu) / sigma_stat | +2.0000 sigma | - **Formula (Exact Ornstein-Uhlenbeck Mean-Reversion Half-Life Formula)**: `=IF(OR(B2 <= 0, B2 >= 1), "Non-Stationary or Oscillatory (Require 0 < phi < 1)", ROUND(-LN(2) / LN(B2), 4))` - **Formula (Stationary Spread SD & Equilibrium Z-Score Formula)**: `=LET(ph_ar, B2, m_eq, B3, sg_ep, B4, s_nw, B5, IF(OR(ph_ar <= 0, ph_ar >= 1, sg_ep <= 0), "Non-Stationary or Invalid Volatility", LET(sg_st, sg_ep / SQRT(1 - (ph_ar ^ 2)), ROUND((s_nw - m_eq) / sg_st, 4))))` ### Oster Coefficient Stability Delta and Bias-Adjusted Beta Formula - **URL**: https://sheets.arte-soft.com/en/learn/oster-coefficient-stability-delta-and-bias-adjusted-beta-bound/ - **Summary**: Audit omitted-variable bias in Excel and Arte Sheets using Emily Oster’s (2019) R-squared-scaled bias-adjusted beta_star and breakdown proportionality delta_zero. *Table — Understand why stable coefficients mean nothing when controls barely move R-squared!:* | Oster (2019) Diagnostic | Formula Expression | Sample Output | | --- | --- | --- | | Oster R-Squared Ceiling R_max | MIN(1, 1.3 * R_tilde) | 0.3900 | | Unexplained-to-Explained R^2 Ratio | (R_max - R_tilde) / (R_tilde - R_dot) | 0.3600 (0.09 / 0.25) | | Bias-Adjusted Slope beta_star (delta=1) | beta_tilde - delta*(beta_dot - beta_tilde)*Ratio | 0.1820 (Excludes 0) | | Breakdown Selection Ratio delta_zero | beta_tilde / ((beta_dot - beta_tilde) * Ratio) | 11.1111 (> 1.0 robust hurdle) | - **Formula (Oster Bias-Adjusted Coefficient beta_star(delta, R_max) Formula)**: `=LET(b_dot, B2, r_dot, B3, b_til, B4, r_til, B5, del_s, B6, r_max, MIN(1, 1.3 * r_til), IF(OR(r_dot < 0, r_til <= r_dot, r_til > 1), "Controls Add Zero R2", ROUND(b_til - del_s * (b_dot - b_til) * ((r_max - r_til) / (r_til - r_dot)), 4)))` - **Formula (Breakdown Proportionality delta_zero & Noisy-Control Trap Check)**: `=LET(b_dot, B2, r_dot, B3, b_til, B4, r_til, B5, r_max, MIN(1, 1.3 * r_til), denom_v, (b_dot - b_til) * (r_max - r_til), IF(OR(r_til <= r_dot, ABS(denom_v) < 0.000001), "Zero Attenuation", ROUND((b_til * (r_til - r_dot)) / denom_v, 4)))` ### Ostwald Nitric Acid Pt-Rh Gauze Selectivity & Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/ostwald-process-nitric-acid-ammonia-oxidation-gauze-selectivity-and-yield/ - **Summary**: Calculate 100%-Basis Pure HNO3 Produced (t/d), Commercial Weak Nitric Acid Output (t/d), Effective Acid-to-Ammonia Mass Gain Ratio, and Unselective N2/N2O Nitrogen Loss (kmol N/d). *Table — 1 ton of NH3 theoretically yields 3.706 tons of pure HNO3—provided millisecond Pt-Rh gauze contact beats N2/N2O degradation!:* | Ostwald Nitric Acid KPI (170 t/d NH3, 96% Gauze, 99% Abs, 60 wt% Acid) | Formula | Verified Output | | --- | --- | --- | | 100%-Basis Pure HNO3 (t/d) | (NH3_t_d / 17) * S_gauze * R_abs * 63 | 598.75 t/d (573.80 @ 92% gauze) | | Commercial 60 wt% Acid (t/d) | Pure_100Pct_HNO3_t_d / Acid_WtFrac | 997.92 t/d (956.34 @ 92% gauze) | | Pure HNO3 / NH3 Mass Ratio | Pure_100Pct_HNO3_t_d / NH3_Feed_t_d | 3.522 (3.375 @ 92% gauze) | | Gauze N2/N2O Loss (kmol N/d) | (NH3_t_d * 1000 / 17) * (1 - S_gauze) | 400.00 kmol/d (800.00 @ 92% gauze!) | - **Formula (Ostwald Commercial Nitric Acid Output & Gauze Selectivity Formula)**: `=LET(nh_t, B2, sg_z, B3, ra_b, B4, ac_w, B5, IF(OR(nh_t <= 0, sg_z < 0.8, sg_z > 0.995, ra_b < 0.9, ra_b > 0.9999, ac_w < 0.5, ac_w > 1), "Invalid Ostwald Input", ROUND(((nh_t / 17) * sg_z * ra_b * 63) / ac_w, 2)))` - **Formula (Aged End-of-Campaign Pt-Rh Gauze Selectivity Drop Check (Set Gauze Selectivity = 0.92))**: `=IF(ISTEXT(E3), E3, ROUND(((B2 * 1000) / 17) * (1 - B3), 2))` ### Ottawa Ankle & Foot Rules: Evidence-Based Radiograph (X-Ray) Triage Formula - **URL**: https://sheets.arte-soft.com/en/learn/ottawa-ankle-and-foot-radiograph-clinical-decision-rule/ - **Summary**: Determine whether ankle series and/or foot series radiographs are clinically indicated after acute blunt ankle trauma using Stiell's ~98–99% sensitive Ottawa Ankle and Midfoot Rules. *Table — Eliminate 30–40% of unnecessary ankle and foot X-rays with ~99% fracture sensitivity!:* | Anatomical Zone Pain | Focal Bone Tenderness OR 4-Step Inability | Ottawa Ankle Series | Ottawa Foot Series | | --- | --- | --- | --- | | Malleolar Pain = 1, Midfoot = 0 | Distal 6 cm Malleolar Tenderness = 1 | Ankle X-Ray Indicated | No Foot X-Ray Needed | | Malleolar = 1, Midfoot = 1 | Unable to Bear Weight 4 Steps = 1 | Ankle X-Ray Indicated | Foot X-Ray Indicated | | Malleolar Pain = 1, Midfoot = 0 | Ligament tenderness only (Bone = 0, Walks 4 steps) | No Ankle X-Ray Needed | No Foot X-Ray Needed | - **Formula (Ottawa Ankle X-Ray Series Decision Formula)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, B4 < 0, B4 > 1), "Invalid Binary Flag (0 or 1)", IF(AND(B2 = 1, OR(B3 = 1, B4 = 1)), "Ankle X-Ray Series Indicated", "No Ankle X-Ray Needed"))` - **Formula (Ottawa Midfoot X-Ray Series Decision Formula)**: `=IF(OR(B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid Binary Flag (0 or 1)", IF(AND(B5 = 1, OR(B6 = 1, B4 = 1)), "Foot X-Ray Series Indicated", "No Foot X-Ray Needed"))` ### Ottawa Knee Rule Acute Fracture X-Ray Decision Formula - **URL**: https://sheets.arte-soft.com/en/learn/ottawa-knee-rule-acute-knee-fracture-radiograph-formula/ - **Summary**: Apply Ian Stiell’s validated 5-item Ottawa Knee Rule (Age >= 55, isolated patellar tenderness, fibular head tenderness, inability to flex knee to 90°, inability to bear weight 4 steps) to rule out knee fracture without X-rays. *Table — Cut unnecessary acute knee X-rays by ~28% with near-100% sensitivity for clinically significant fracture!:* | Ottawa Knee Rule Criterion | Threshold Triggering Knee X-Ray | Clinical Rule Action | | --- | --- | --- | | 1. Patient Age | >= 55 years | +1 Positive Criterion | | 2–3. Focal Bony Palpation | Isolated Patella OR Fibular Head Tenderness | +1 Each if Present | | 4. Active Knee Flexion Range | < 90 degrees | +1 Positive Criterion | | 5. Weight-Bearing (4 Steps Injury & ED) | Unable to Transfer Weight Twice Each Foot | 0 Total Criteria -> Defer Knee X-Ray Safely | - **Formula (Count of Positive Ottawa Knee Rule Criteria (0 to 5))**: `=IF(B2 >= 55, 1, 0) + IF(B3 = 1, 1, 0) + IF(B4 = 1, 1, 0) + IF(B5 < 90, 1, 0) + IF(B6 = 1, 1, 0)` - **Formula (Ottawa Knee Rule Radiograph Recommendation)**: `=IF(OR(B2 <= 0, B5 < 0, B7 = 1), "Rule Excluded / Clinical Judgment", IF(OR(B2 >= 55, B3 = 1, B4 = 1, B5 < 90, B6 = 1), "Knee X-Ray Indicated (>= 1 Ottawa Criterion)", "No Knee X-Ray Required (Ottawa Knee Cleared)"))` ### Otto & Diesel Cycle Thermal Efficiency formulas (Compression & Cutoff Ratio) - **URL**: https://sheets.arte-soft.com/en/learn/otto-and-diesel-cycle-thermal-efficiency-compression-ratio/ - **Summary**: Calculate air-standard spark-ignition Otto efficiency 1 - 1 / r^(gamma - 1) and compression-ignition Diesel efficiency from compression ratio r, cutoff rc, and gamma. *Table — Compare idealized constant-specific-heat cycles:* | Engine Cycle Parameter | Cell | Gasoline Otto vs Diesel | Air-Standard Efficiency | | --- | --- | --- | --- | | Otto Compression Ratio (r_Otto) | B2 = 10 | gamma B5 = 1.4 -> 1 - 1/10^0.4 | 60.19% (0.6019) | | Diesel Compression Ratio (r_Diesel) | B3 = 18 | Illustrative higher compression ratio | Base 1 - 1/18^0.4 = 68.53% | | Diesel Cutoff Ratio (rc) | B4 = 2.0 | (2^1.4 - 1) / (1.4 * 1) = 1.1707 | Diesel Efficiency = 63.16% (0.6316) | | Mathematical limit rc →1 | rc approaches 1 | Bracket approaches 1.0000 | Diesel converges to Otto at r = 18! | - **Formula (Air-standard Otto Cycle thermal efficiency formula)**: `=IF(OR(COUNT(B2)<>1,COUNT(B5)<>1,B2<=1,B5<=1),"Invalid inputs",ROUND(1 - 1 / (B2 ^ (B5 - 1)), 4))` - **Formula (Air-standard Diesel Cycle thermal efficiency formula)**: `=IF(OR(COUNT(B3:B5)<>3,B3<=1,B4<1,B4>=B3,B5<=1),"Invalid inputs",LET(offset,B4-1,cutTerm,IF(ABS(offset)<0.000001,1+(B5-1)*offset/2,((B4^B5)-1)/(B5*offset)),ROUND(1-(1/(B3^(B5-1)))*cutTerm,4)))` ### Oudin (2005) Potential Evapotranspiration (PET) Formula: Extraterrestrial R_a & Temperature - **URL**: https://sheets.arte-soft.com/en/learn/oudin-extraterrestrial-radiation-potential-evapotranspiration-formula/ - **Summary**: Calculate daily watershed Potential Evapotranspiration PET (mm/day) for lumped and distributed rainfall-runoff models (GR4J, HBV, SWAT) using Ludovic Oudin et al.’s (2005) parsimonious 308-catchment radiation-temperature law. *Table — Why Oudin’s 2-input PET formula matched or beat complex 27-equation Penman-Monteith across 308 watersheds!:* | Seasonal Watershed Day (Mid-Latitude Catchment) | Extraterrestrial R_a (MJ/m^2/day) | Mean Air Temp T_mean (°C) | Oudin Daily PET (mm/day) | | --- | --- | --- | --- | | Deep Winter Frost (Jan 15) | 13.5 MJ/m^2/d | -6.5 °C (<= -5°C) | 0.00 mm/day (Dormant / Frozen) | | Cool Spring Snowmelt (Apr 10) | 31.8 MJ/m^2/d | 9.5 °C | 1.88 mm/day | | Peak Midsummer Solstice (Jun 25) | 41.4 MJ/m^2/d | 23.5 °C | 4.82 mm/day | - **Formula (Oudin et al. (2005) Daily Potential Evapotranspiration PET (mm/day))**: `=IF(OR(B2 < 0, B2 > 46, B3 < -60, B3 > 60), "Requires Extraterrestrial R_a in [0, 46] MJ/m^2/d and Valid Air Temp (°C)", ROUND(MAX(0, (B2 / 2.45) * ((B3 + 5) / 100)), 2))` - **Formula (Monthly Watershed Volumetric PET Demand (m^3 / km^2) over N Days)**: `=IF(OR(B2 < 0, B2 > 46, B3 < -60, B3 > 60, B4 < 1, B4 > 31), "Invalid Oudin Monthly Inputs", ROUND(1000 * B4 * MAX(0, (B2 / 2.45) * ((B3 + 5) / 100)), 0))` ### OEE formula: Availability x Performance x Quality (manufacturing KPI) - **URL**: https://sheets.arte-soft.com/en/learn/overall-equipment-effectiveness-oee-manufacturing/ - **Summary**: Calculate Overall Equipment Effectiveness (OEE) and reconcile the 3-factor loss breakdown against direct (GoodUnits * IdealCycleTime) / PlannedProductionTime. *Table — Decompose factory capacity losses into Availability, Performance, and Quality:* | OEE Pillar (500 Planned Min, 2.7s Ideal Cycle) | Formula | Factor | | --- | --- | --- | | Availability (450 Run Min) | =450 / 500 | 90.0% (0.90) | | Performance (9,500 Total Units) | =(2.7 * 9500) / (450 * 60) | 95.0% (0.95) | | Quality (9,310 Good Units) | =9310 / 9500 | 98.0% (0.98) | | Overall OEE (0.90 * 0.95 * 0.98) | =(9310 * 2.7) / (500 * 60) | 83.79% (0.8379) | - **Formula (Three-factor OEE and pillar-breakdown formulas)**: `=LET(avail, B2 / A2, perf, (C2 * D2) / (B2 * 60), qual, E2 / D2, ROUND(avail * perf * qual, 4))` - **Formula (Direct algebraic OEE audit check)**: `=ROUND((E2 * C2) / (A2 * 60), 4)` ### Delta-Sigma ADC Oversampling Ratio (OSR) & ENOB Gain Formula - **URL**: https://sheets.arte-soft.com/en/learn/oversampling-delta-sigma-adc-osr-process-gain-and-extra-enob-bits-formula/ - **Summary**: Calculate Mixed-Signal ADC Oversampling Ratio OSR = f_s / (2*BW), Plain Nyquist Oversampling Extra Bits (+0.5 bit/octave), First-Order Delta-Sigma Noise-Shaping SNR Improvement (dB), and Total Effective Resolution Bits (+1.5 bits/octave). *Table — Contrast +0.5 bit/octave plain oversampling against +1.5 bits/octave ΔΣ noise shaping!:* | ΔΣ Noise-Shaping Metric (f_s = 6.144 MHz, BW = 24 kHz -> OSR = 128, N = 4 Bits) | Formula | Verified Output | | --- | --- | --- | | Oversampling Ratio (OSR) | (f_s_MHz * 1000) / (2 * BW_kHz) | 128 (64 @ 3.072 MHz Clock) | | Plain White-Noise Extra Bits | 0.5 * (LN(OSR) / LN(2)) | 3.50 bits (3.00 bits @ OSR=64) | | 1st-Order ΔΣ SNR Gain (dB) | 10 * LOG10((3 * OSR^3) / PI()^2) | 58.04 dB (49.01 dB @ OSR=64) | | 1st-Order ΔΣ Total ENOB (bits) | N_bits + ΔSNR_ΔΣ1_dB / 6.02 | 13.64 bits (12.14 bits @ OSR=64) | - **Formula (First-Order Delta-Sigma Total Effective Bits Formula)**: `=LET(fs_m, B2, bw_k, B3, nb_q, B4, os_r, (fs_m * 1000) / (2 * bw_k), IF(OR(fs_m <= 0, bw_k <= 0, os_r < 4, nb_q < 1, nb_q > 16), "Invalid Delta-Sigma OSR Input", LET(gn_d, 10 * LOG10((3 * (os_r ^ 3)) / (PI() ^ 2)), ROUND(nb_q + gn_d / 6.02, 2))))` - **Formula (Half-Clock Power-Save Octave Check (Set Clock f_s = 3.072 MHz -> OSR = 64))**: `=IF(ISTEXT(E5), E5, ROUND(0.5 * (LN(E2) / LN(2)), 2))` ### Pad Week & Fiscal Period Numbers with Leading Zeros ("2026-W04") - **URL**: https://sheets.arte-soft.com/en/learn/pad-iso-week-and-period-codes-yyyy-w01-text/ - **Summary**: Build fixed-width week and fiscal-period codes with RIGHT, validate integers before padding, and distinguish ISO week-year labels from fiscal periods. - **Formula (Validated ISO week label in D2)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric year and week",IF(OR(B2<1901,B2>9998,B2<>INT(B2),B3<1,B3>53,B3<>INT(B3)),"Invalid year or week",IF(AND(B3=53,NOT(OR(WEEKDAY(DATE(B2,1,1),2)=4,AND(WEEKDAY(DATE(B2,1,1),2)=3,DAY(DATE(B2,3,0))=29)))),"Year has only 52 ISO weeks",B2&"-W"&RIGHT("00"&B3,2))))` - **Formula (Fiscal period label in D3)**: `=IF(COUNT(B2,B4,B5)<>3,"Enter numeric year, period and limit",IF(OR(B2<1901,B2>9998,B2<>INT(B2),B4<1,B4<>INT(B4),B5<1,B5>99,B5<>INT(B5),B4>B5),"Invalid fiscal period",B2&"-P"&RIGHT("00"&B4,2)))` - **Formula (Compare fixed-width labels)**: `="2026-W04"<"2026-W12"` ### Pad Text with Spaces or Zeros for Fixed-Width Exports (REPT + Overflow Guard) - **URL**: https://sheets.arte-soft.com/en/learn/pad-text-and-fixed-width-export-fields-with-rept/ - **Summary**: Build exact N-character fixed-width ACH, EDI, and banking record fields by right-padding text with spaces and left-padding numeric IDs with zeros—safely clamping strings that exceed field width. *Table — Preventing #VALUE! when input text is longer than the target width:* | Field Type | Alignment | Exact-Width Formula Pattern | | --- | --- | --- | | Alpha Name (10 chars) | Left-aligned, space-padded | LET(s, LEFT(TRIM(A2), 10), s & REPT(" ", 10 - LEN(s))) | | Numeric ID (8 chars) | Right-aligned, zero-padded | LET(s, RIGHT(TRIM(B2), 8), REPT("0", 8 - LEN(s)) & s) | | Full Record Line | Concatenated fixed block | Field1_10 & Field2_8 (always 18 chars) | - **Formula (Overflow-Safe Fixed-Width Record Builder)**: `=LET(v_clip, LEFT(TRIM(A2), 10), v_pad, v_clip & REPT(" ", MAX(0, 10 - LEN(v_clip))), amt_str, TEXT(ROUND(B2 * 100, 0), "0"), amt_pad, REPT("0", MAX(0, 8 - LEN(amt_str))) & RIGHT(amt_str, 8), v_pad & amt_pad)` ### Pad text and amounts into an illustrative fixed-width record - **URL**: https://sheets.arte-soft.com/en/learn/pad-text-to-fixed-width-columns-rept/ - **Summary**: Build a 12-character name and eight-digit cents field, with an explicit amount-overflow guard. *Table — Truncate AND pad simultaneously with LEFT(Text & REPT(...), Width):* | Payee (A) | Amount (B) | 12-Char Text Field | 8-Digit Cents | 20-Char Record | | --- | --- | --- | --- | --- | | Apex Labs | $142.50 | "APEX LABS " | "00014250" | "APEX LABS 00014250" | | Northwind Logistics Inc | $9.05 | "NORTHWIND LO" | "00000905" | "NORTHWIND LO00000905" | - **Formula (Fixed-width builder with amount validation)**: `=IF(OR(B2<0,ROUND(B2*100,0)>99999999),"Amount out of range",LEFT(UPPER(TRIM(A2)) & REPT(" ", 12), 12) & RIGHT(REPT("0", 8) & ROUND(B2 * 100, 0), 8))` - **Formula (Verify exact 20-character fixed record length)**: `=IF(OR(B2<0,ROUND(B2*100,0)>99999999),"Amount out of range",LEN(LEFT(UPPER(TRIM(A2)) & REPT(" ", 12), 12) & RIGHT(REPT("0", 8) & ROUND(B2 * 100, 0), 8)))` ### Padua Medical Inpatient VTE Score & Khorana Ambulatory Cancer VTE Score - **URL**: https://sheets.arte-soft.com/en/learn/padua-medical-inpatient-vte-and-khorana-cancer-vte-score/ - **Summary**: Calculate the Khorana Chemotherapy VTE Score (0–6 points across cancer site, platelets >= 350k, Hb < 10/ESA, WBC > 11k, BMI >= 35) and compare with the Padua >= 4 medical inpatient VTE threshold. *Table — Stratify thrombosis risk in ambulatory oncology clinics (Khorana) and medical wards (Padua)!:* | Oncology Presentation | Khorana Breakdown | Total Khorana Score | VTE Risk Tier | | --- | --- | --- | --- | | Pancreatic Cancer (+2), Plt 380 (+1), WBC 12.4 (+1) | 2 + 1 + 0 + 1 + 0 | 4 points (>= 3) | High VTE Risk (Prophylaxis Eligible) | | Breast Cancer (0), Plt 240, Hb 12.5, WBC 7.2, BMI 26 | 0 + 0 + 0 + 0 + 0 | 0 points | Low VTE Risk (~0.3%-0.8%) | | Lung Cancer (+1), Hb 9.4 (+1) | 1 + 0 + 1 + 0 + 0 | 2 points (>= 2) | Intermediate-High (ASCO Cutoff >= 2) | - **Formula (Total Khorana Ambulatory Chemotherapy VTE Score (0 to 6 Points))**: `=IF(OR(B2 < 0, B2 > 2, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Khorana Inputs", B2 + --(B3 >= 350) + --(B4 < 10) + --(B5 > 11) + --(B6 >= 35))` - **Formula (Khorana Oncology VTE Prophylaxis Stratum)**: `=IF((B2 + --(B3 >= 350) + --(B4 < 10) + --(B5 > 11) + --(B6 >= 35)) >= 3, "High Cancer VTE Risk (>= 3)", IF((B2 + --(B3 >= 350) + --(B4 < 10) + --(B5 > 11) + --(B6 >= 35)) = 2, "Intermediate-High Risk (Score = 2: ASCO DOAC/LMWH Cutoff)", IF((B2 + --(B3 >= 350) + --(B4 < 10) + --(B5 > 11) + --(B6 >= 35)) = 1, "Intermediate Risk (Score = 1)", "Low Cancer VTE Risk (Score = 0)")))` ### Page’s L Trend Test Formula for Ordered Treatments in Blocked Ranks - **URL**: https://sheets.arte-soft.com/en/learn/page-l-test-for-ordered-monotonic-alternatives-in-blocked-ranks/ - **Summary**: Detect monotonic dose-response or learning-curve trends across blocked repeated-measures ranks using Page’s (1963) weighted rank sum L = SUM(j * R_j) and directional Z_L score. *Table — See how Page’s directional L statistic captures order that omnibus Friedman ignores:* | Page Trend Metric (N = 6, k = 4) | Exact Formula | Sample Output | | --- | --- | --- | | Page Weighted Rank Sum L | SUMPRODUCT({1,2,3,4}, R1:R4) | 173 | | Null Expectation mu_L | N * k * (k + 1)^2 / 4 | 150 | | Null Variance var_L | N * k^2 * (k + 1) * (k^2 - 1) / 144 | 50 (SD = 7.0711) | | Standardized Directional Z_Page | (L - mu_L) / SQRT(var_L) | +3.2527 (Reversing order -> -3.2527) | - **Formula (Page’s L Statistic with Rank-Sum Integrity Check Formula)**: `=LET(n_blk, B5, k_ord, COLUMNS(B3:E3), chk_sum, n_blk * k_ord * (k_ord + 1) / 2, IF(ABS(SUM(B3:E3) - chk_sum) > 0.001, "Rank Sum Mismatch", SUMPRODUCT(B2:E2, B3:E3)))` - **Formula (Standardized Directional Z_Page Formula)**: `=LET(n_blk, B5, k_ord, COLUMNS(B3:E3), chk_sum, n_blk * k_ord * (k_ord + 1) / 2, IF(OR(n_blk < 2, k_ord < 3, ABS(SUM(B3:E3) - chk_sum) > 0.001), "Invalid Rank Table", LET(l_val, SUMPRODUCT(B2:E2, B3:E3), mu_l, n_blk * k_ord * ((k_ord + 1)^2) / 4, var_l, (n_blk * (k_ord^2) * (k_ord + 1) * (k_ord^2 - 1)) / 144, ROUND((l_val - mu_l) / SQRT(var_l), 4))))` ### Pain Index & Pain Ratio: Measuring Drawdown Depth AND Time Under Water - **URL**: https://sheets.arte-soft.com/en/learn/pain-index-and-zephyr-pain-ratio-continuous-drawdown-depth-duration/ - **Summary**: Compute the Zephyr Pain Index—the average percentage drawdown from running high-water mark across every period—and Pain Ratio (R_p - R_f) / Pain_Index to penalize stalled recoveries. *Table — Why Max Drawdown and Calmar ignore how long capital stays trapped underwater:* | Recovery Scenario (NAV Path) | Max Drawdown | Pain Index | Pain Ratio (Rp=12%, Rf=3%) | | --- | --- | --- | --- | | Fast Rebound [100, 120, 108, 114, 126] | 0.1000 (10.00%) | 0.0300 (3.00%) | 3.0000 | | Stalled Trough [100, 120, 108, 108, 126] | 0.1000 (Unchanged!) | 0.0400 (4.00%) | 2.2500 (Penalizes duration) | | Monotone Climb [100, 105, 110, 115, 120] | 0.0000 (0.00%) | 0.0000 (0.00%) | "ZERO_DRAWDOWN" | - **Formula (Running High-Water Mark & Percentage Underwater Formula)**: `=(MAX($B$2:B2) - B2) / MAX($B$2:B2)` - **Formula (Pain Index & Zephyr Pain Ratio Formula)**: `=IF(AVERAGE(D2:D6) = 0, "ZERO_DRAWDOWN", ROUND((F2 - F3) / AVERAGE(D2:D6), 4))` ### Paint calculator formula: net wall square footage, coats & whole gallons - **URL**: https://sheets.arte-soft.com/en/learn/paint-wall-coverage-gallons-and-coats-estimator/ - **Summary**: Estimate interior/exterior paint gallons by subtracting door and window openings from room perimeter × height, multiplying by coats, and rounding up. *Table — Use measured openings and product coverage:* | Paint Take-Off Step (56' Perim × 9' High) | Formula | Result | | --- | --- | --- | | Gross Wall Area | =A2 * B2 | 504 sq ft | | Opening Deductions (2 Doors, 3 Windows) | =C2 * 21 + D2 * 15 | 87 sq ft (42 + 45) | | Net Paintable Area × 2 Coats | =MAX(0, 504 - 87) * E2 | 834 coated sq ft | | Whole Gallons @ 350 sq ft/gal | =ROUNDUP(834 / F2, 0) | 3 gallons (exact 2.38 gal) | - **Formula (Whole paint gallons required (with opening deductions and coat multiplier))**: `=IF(OR(COUNT(A2:H2)<>8,MIN(A2:H2)<0,F2<=0,MOD(C2,1)<>0,MOD(D2,1)<>0,MOD(E2,1)<>0,A2*B28,MIN(A2:H2)<0,F2<=0,MOD(C2,1)<>0,MOD(D2,1)<>0,MOD(E2,1)<>0,A2*B2 mu_p=2.0) | Formula | Verified Output (S = 4) | | --- | --- | --- | | Pipeline Mean in Repair (mu_p) | lambda * T_rep | 2.0000 units | | Immediate Fill Rate P(X <= S - 1) | SUM_{x=0}^{S-1} (mu_p^x * EXP(-mu_p) / FACT(x)) | 0.8571 (85.71%) | | Expected On-Hand Spares E[OH] | SUM_{x=0}^{S-1} (S - x) * P(X = x) | 2.0751 units | | Exact Expected Backorders EBO(S) | (mu_p - S) + E[OH] | 0.0751 units | - **Formula (Palm’s Theorem Immediate Fill Rate P(X <= S - 1) Formula)**: `=IF(OR(G2 <= 0, G3 <= 0, G4 < 0, G4 > 6), "Require S in 0..6 and Positive Rates", IF(G4 = 0, 0, ROUND(SUMIF(A2:A7, "<=" & (G4 - 1), B2:B7), 4)))` - **Formula (Exact Finite-Sum Expected Backorders EBO(S) = (mu_p - S) + E[On-Hand] Formula)**: `=IF(OR(G2 <= 0, G3 <= 0, G4 < 0, G4 > 6), "Require S in 0..6 and Positive Rates", ROUND((G2 * G3 - G4) + SUM(C2:C7), 4))` ### Palma Ratio Formula: Top 10% to Bottom 40% National Income Share & Middle-50% Check - **URL**: https://sheets.arte-soft.com/en/learn/palma-ratio-top-10-to-bottom-40-income-share-inequality-formula/ - **Summary**: Calculate the OECD/UNDP Palma inequality ratio S_Top10 / S_Bottom40 and verify José Gabriel Palma’s "homogeneous middle" share S_Deciles_5_to_9 = 100 - S_Top10 - S_Bottom40 (~50% across nations). *Table — José Gabriel Palma’s striking empirical discovery: Deciles 5–9 almost always capture ~50% of national income!:* | National Decile Share Profile | Middle Deciles 5–9 Share (100 - Top10 - Bot40) | Palma Ratio (Top 10% / Bottom 40%) | | --- | --- | --- | | Top 10% = 31.5%, Bottom 40% = 17.5% | 51.00% (Classic ~50% Palma Middle) | 1.800 | | Egalitarian: Top 10% = 24.0%, Bottom 40% = 24.0% | 52.00% | 1.000 (Parity Benchmark) | | High Inequality: Top 10% = 44.0%, Bottom 40% = 11.0% | 45.00% | 4.000 | - **Formula (Palma Inequality Ratio = Top_10%_Income_Share / Bottom_40%_Income_Share)**: `=IF(OR(B2 <= 0, B3 <= 0, B2 + B3 >= 100), "Invalid Decile Income Shares", ROUND(B2 / B3, 3))` - **Formula (Implied Middle-50% (Deciles 5–9) Income Share = 100 - Top_10% - Bottom_40%)**: `=IF(OR(B2 <= 0, B3 <= 0, B2 + B3 >= 100), "Invalid Decile Income Shares", ROUND(100 - B2 - B3, 2))` ### Panel Chart (Small Multiples) Formula: Vertical Lane Offset & Base-100 Index - **URL**: https://sheets.arte-soft.com/en/learn/panel-small-multiples-chart-offset-and-normalized-index-formula/ - **Summary**: Separate tangled spaghetti line charts into clean Small-Multiples lanes by adding a fixed vertical Panel Span offset (k * Span + Value) or indexing every series to 100 at period t = 0. *Table — Untangle 6 overlapping regional lines into non-colliding trellis lanes!:* | Series / Lane Parameter | Input Value | Plotted Swimlane Result | | --- | --- | --- | | Current Period Metric (B2) | 68 | Fits cleanly inside [0, 120] lane height | | Zero-Based Lane Index k (B3) | 2 (3rd lane up) | Base floor at 2 * 120 = 240 | | Lane Height Span (B4) & t0 Base (B5) | Span = 120, Base = 50 | Plotted Y = 308 \| Base-100 Index = 136.00 | - **Formula (Vertical Swimlane Plotted Y-Coordinate (k * Span + Value))**: `=IF(OR(B3 < 0, B4 <= 0, B2 < 0, B2 > B4), "Value Exceeds Panel Span — Increase B4", ROUND(B3 * B4 + B2, 2))` - **Formula (Base-100 Normalized Trajectory Index Relative to Launch Period B5)**: `=IF(B5 <= 0, 0, ROUND(100 * B2 / B5, 2))` ### Paper GSM, US Basis Weight, PPI & Book Spine Formula - **URL**: https://sheets.arte-soft.com/en/learn/paper-grammage-gsm-us-basis-weight-caliper-and-book-spine-formula/ - **Summary**: Convert US 500-Sheet Basis Weight (lb) across Text (25x38") vs Cover (20x26") parent sheets into ISO Metric Grammage GSM = (Lb * 1406.5) / (W_in * L_in), Pages Per Inch PPI = 2000 / Caliper_mils, and Perfect-Bound Spine Width. *Table — Why 80 lb Cover stock (216 GSM) is nearly twice as heavy as 80 lb Text stock (118 GSM)!:* | Print Production Spec (80 lb Stock, 25x38" Text, 5.0 mil Leaf, 300 Pages) | Formula | Verified Output | | --- | --- | --- | | Uncut Parent Sheet Area (sq in) | Parent_W_in * Parent_L_in | 950 sq in (520 sq in Cover) | | ISO 536 Metric Grammage (GSM) | (US_Basis_lb * 1406.5) / Area_sq_in | 118.44 GSM (216.38 GSM Cover!) | | Pages Per Inch Bulk (PPI) | 2000 / Leaf_Caliper_mils | 400.00 PPI | | Perfect-Bound Spine Width (in) | (Pages / 2)*(Caliper / 1000) + Allow | 0.7700 in | - **Formula (TAPPI US Basis Weight to ISO Grammage (GSM) & Spine Formula)**: `=LET(lb_w, B2, wd_p, B3, ln_p, B4, cl_m, B5, pg_n, B6, al_c, B7, IF(OR(lb_w <= 0, wd_p <= 0, ln_p <= 0, cl_m <= 0, pg_n < 2, al_c < 0), "Invalid Print Stock Spec", ROUND((lb_w * 1406.5) / (wd_p * ln_p), 2)))` - **Formula (80 lb Cover Cardstock Comparison (Set Parent Size to 20" x 26"))**: `=IF(ISTEXT(E3), E3, ROUND((B6 / 2) * (B5 / 1000) + B7, 4))` ### Parabolic SAR Formula: Acceleration Factor Step & Prior Two-Bar Penetration Clamp - **URL**: https://sheets.arte-soft.com/en/learn/parabolic-sar-rising-and-falling-stop-reversal-step-formula/ - **Summary**: Implement J. Welles Wilder’s exact Parabolic Stop-and-Reverse (SAR) step SAR_next = SAR_curr + AF * (EP - SAR_curr) including the often-omitted prior two-lows non-penetration clamp. *Table — Do not forget Wilder’s prior-two-bars penetration clamp in Parabolic SAR!:* | SAR Scenario (SAR_t = 96.00, AF = 0.06, EP = 106.00) | Raw Step (96 + 0.60) | Prior Two Lows (B5, B6) | Clamped Next SAR | | --- | --- | --- | --- | | Unconstrained Advance | 96.60 | 98.50, 97.20 | 96.60 (Raw step governs) | | Pullback Consolidation Clamp | 96.60 | 96.20, 97.20 | 96.20 (Clamped at Low_{t-1}!) | - **Formula (Clamped Rising Parabolic SAR Step for Next Bar)**: `=IF(OR(B3 < 0.02, B3 > 0.2, B4 <= B2), "Invalid AF or EP <= Current SAR", ROUND(MIN(B2 + B3 * (B4 - B2), B5, B6), 2))` - **Formula (Updated Acceleration Factor AF Capped at 0.20 on New High (B7 > EP))**: `=IF(B7 > B4, ROUND(MIN(0.2, B3 + 0.02), 2), B3)` ### Parachute Terminal Velocity, Canopy Diameter & Impact KE - **URL**: https://sheets.arte-soft.com/en/learn/parachute-terminal-velocity-canopy-area-sizing-and-landing-ke-formula/ - **Summary**: Calculate Steady-State Canopy Drag Force m*g, Terminal Descent Rate Vt = SQRT((2*m*g)/(rho*Cd*S)), Equivalent Circular Canopy Diameter SQRT(4*S/PI()), and Touchdown Impact Kinetic Energy. *Table — Size recovery canopies for safe touchdown kinetic energy across thin high-altitude dropzones!:* | Recovery Parachute Metric (m=120 kg, rho=1.20 kg/m^3, Cd=1.60, S=25 m^2) | Formula | Verified Output | | --- | --- | --- | | Steady Canopy Drag Tension (N) | Total_Mass_kg * 9.81 | 1,177.20 N | | Terminal Descent Velocity (m/s) | SQRT((2 * m * 9.81) / (rho * Cd * S)) | 7.00 m/s (9.90 m/s @ rho=0.60) | | Circular Canopy Diameter (m) | SQRT((4 * Canopy_Area_m2) / PI()) | 5.64 m | | Touchdown Kinetic Energy (J) | (m^2 * 9.81) / (rho * Cd * S) | 2,943.00 J (5,886.00 J @ rho=0.60) | - **Formula (Parachute Terminal Velocity & Touchdown Kinetic Energy Formula)**: `=LET(ms_k, B2, rh_a, B3, cd_p, B4, ar_s, B5, IF(OR(ms_k <= 0, rh_a <= 0, cd_p <= 0, ar_s <= 0), "Invalid Recovery Canopy Input", ROUND(((ms_k ^ 2) * 9.81) / (rh_a * cd_p * ar_s), 2)))` - **Formula (High-Altitude Half-Density Dropzone Check (Set Air Density = 0.60 kg/m^3))**: `=IF(ISTEXT(E2), E2, ROUND(SQRT((2 * B2 * 9.81) / (B3 * B4 * B5)), 2))` ### Parallel Generator Speed-Droop Governor Load Sharing Formula - **URL**: https://sheets.arte-soft.com/en/learn/parallel-synchronous-generator-speed-droop-governor-mw-load-sharing-formula/ - **Summary**: Calculate Composite Island Frequency Stiffness K_tot (MW/Hz), Settling Bus Frequency f_bus (Hz), Unit 1 Active Load P_1 (MW), and Unit 2 Active Load P_2 (MW). *Table — Why two parallel generators NEVER fight each other under proportional speed droop—and stiffer (smaller R%) governors grab more MW!:* | Parallel Droop Governor KPI (200 MW @ 4% + 300 MW @ 5%, fnl=60 Hz, 330 MW Load) | Formula | Verified Output | | --- | --- | --- | | Composite Bus Stiffness Ktot (MW/Hz) | P1/(fnl*R1%) + P2/(fnl*R2%) | 183.33 MW/Hz (233.33 @ R1 = 2.5%) | | Settling Bus Frequency fbus (Hz) | fnl - (Total_Load_MW / Ktot) | 58.200 Hz (58.586 Hz @ R1 = 2.5%) | | Unit 1 Governor Pickup P1 (MW) | K1 * (fnl - fbus) | 150.00 MW (188.57 MW @ R1 = 2.5%!) | | Unit 2 Governor Pickup P2 (MW) | K2 * (fnl - fbus) | 180.00 MW (141.43 MW @ R1 = 2.5%) | - **Formula (Primary Speed-Droop Frequency Stiffness & Parallel MW Split Formula)**: `=LET(pr_a, B2, dr_a, B3, pr_b, B4, dr_b, B5, fn_l, B6, ld_t, B7, IF(OR(pr_a <= 0, dr_a < 0.5, dr_a > 12, pr_b <= 0, dr_b < 0.5, dr_b > 12, fn_l < 45, fn_l > 65, ld_t < 0, ld_t > pr_a + pr_b), "Invalid Governor Input", LET(ka_f, pr_a / (fn_l * (dr_a / 100)), kb_f, pr_b / (fn_l * (dr_b / 100)), df_h, ld_t / (ka_f + kb_f), pa_m, ka_f * df_h, pb_m, kb_f * df_h, IF(OR(pa_m > pr_a, pb_m > pr_b), "UNIT OVERLOAD SATURATION", ROUND(pb_m, 2)))))` - **Formula (Stiffer Gas-Turbine Droop Grab Check (Tighten Unit 1 Droop R_1 = 2.5%))**: `=IF(ISTEXT(E5), E5, LET(ka_f, B2 / (B6 * (B3 / 100)), kb_f, B4 / (B6 * (B5 / 100)), ROUND(ka_f * (B7 / (ka_f + kb_f)), 2)))` ### Value at Risk (VaR) formula: 95% / 99% Parametric VaR & √T horizon scaling - **URL**: https://sheets.arte-soft.com/en/learn/parametric-value-at-risk-var-portfolio-volatility/ - **Summary**: Illustrate a normal-return, zero-drift VaR estimate with daily volatility and square-root-of-time scaling. *Table — Why Value at Risk uses ONE-TAILED Z-scores (1.6449 for 95%, NOT 1.96!) and √T scaling:* | VaR Risk Horizon ($1M Portfolio, σ_daily = 1.50%) | One-Tailed Z | Formula | Dollar VaR | | --- | --- | --- | --- | | 1-Day 95% VaR (5% tail) | 1.6449 | =IF(OR(COUNT(A2:C2)<>3,A2<0,B2<0,C2<=0),"Invalid inputs",ROUND(A2*B2*C2,2)) | $24,673.50 | | 10-day 95% VaR (illustrative square-root scaling) | 1.6449 | =IF(OR(OR(COUNT(A2:C2)<>3,A2<0,B2<0,C2<=0),NOT(ISNUMBER(D2)),D2<1,D2<>INT(D2)),"Invalid inputs",ROUND(A2*B2*C2*SQRT(D2),2)) | $78,024.46 | | 1-Day 99% VaR (1% tail) | 2.3263 | =ROUND(A2 * B2 * 2.3263, 2) | $34,894.50 | - **Formula (1-Day and Multi-Day √T Parametric Dollar Value at Risk formulas)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<0,C2<=0),"Invalid inputs",ROUND(A2*B2*C2,2))` - **Formula (Multi-day horizon VaR scaled by the Square-Root-of-Time rule SQRT(D2))**: `=IF(OR(OR(COUNT(A2:C2)<>3,A2<0,B2<0,C2<=0),NOT(ISNUMBER(D2)),D2<1,D2<>INT(D2)),"Invalid inputs",ROUND(A2*B2*C2*SQRT(D2),2))` ### Pareto 80/20 cumulative percentage and ABC inventory classification - **URL**: https://sheets.arte-soft.com/en/learn/pareto-80-20-cumulative-percentage-abc/ - **Summary**: Calculate running cumulative share on descending revenue SKUs and classify items into A (top 80%), B (next 15%), and C (bottom 5%) tiers. *Table — Cumulative percentage requires descending order + anchored SUM:* | SKU (A) | AnnualSpend (B) | Cumulative % | ABC Class | | --- | --- | --- | --- | | SKU-1 | 50000 | 50.0% (50k / 100k) | A (<=80%) | | SKU-2 | 30000 | 80.0% (80k / 100k) | A (<=80%) | | SKU-3 | 15000 | 95.0% (95k / 100k) | B (80–95%) | | SKU-4 | 5000 | 100.0% (100k / 100k) | C (>95%) | - **Formula (Cumulative share and ABC tier formulas)**: `=ROUND(SUM($B$2:B3) / SUM($B$2:$B$5), 4)` - **Formula (Assign A / B / C Pareto tier)**: `=LET(cum, SUM($B$2:B4) / SUM($B$2:$B$5), IFS(cum<=0.8, "A", cum<=0.95, "B", TRUE, "C"))` ### Pareto Excess Layer Severity & ILF Pricing Formula - **URL**: https://sheets.arte-soft.com/en/learn/pareto-reinsurance-layer-expected-severity-and-ilf-formula/ - **Summary**: Price heavy-tailed casualty layers using Single-Parameter Pareto Limited Expected Value LEV(x), Excess Layer Severity LEV(D + L) - LEV(D), and Increased Limits Factor ILF(L_high, L_base). *Table — Price umbrella and excess layers when empirical loss data above $500k is sparse!:* | Pareto Excess Pricing Metric (alpha=2.0, theta=$100k, D=$200k, L=$300k) | Formula | Verified Output | | --- | --- | --- | | Basic Limit Expected Severity LEV(D) | theta + (theta/(alpha-1))*(1 - (theta/D)^(alpha-1)) | $150.00k | | Top Limit Expected Severity LEV(D + L) | theta + (theta/(alpha-1))*(1 - (theta/(D+L))^(alpha-1)) | $180.00k | | Excess Layer ($300k xs $200k) Severity | LEV(D + L) - LEV(D) | $30.00k / claim | | Increased Limits Factor ILF(500k, 200k) | LEV(D + L) / LEV(D) | 1.2000x | - **Formula (Universal Pareto Limited Expected Value LEV(x) Formula (Including alpha = 1))**: `=LET(al_p, B2, th_m, B3, d_bs, B4, IF(OR(al_p <= 0, th_m <= 0, d_bs < th_m, B5 <= 0), "Invalid Pareto Layer", ROUND(IF(al_p = 1, th_m * (1 + LN(d_bs / th_m)), th_m + (th_m / (al_p - 1)) * (1 - ((th_m / d_bs) ^ (al_p - 1)))), 4)))` - **Formula (Excess Layer Severity & Increased Limits Factor (ILF) Formula)**: `=IF(ISTEXT(E2), E2, ROUND(E3 / E2, 4))` ### Paris-Erdogan Fatigue Crack Growth Life Formula - **URL**: https://sheets.arte-soft.com/en/learn/paris-erdogan-fatigue-crack-growth-cycles-to-failure-formula/ - **Summary**: Calculate Critical Fracture Crack Size a_c = (1 / PI()) * (K_IC / (Y * Delta_sigma))^2 and exact Paris-Erdogan Fatigue Cycles to Failure N_f across both power-law (m != 2) and logarithmic (m = 2) exponents. *Table — Integrate subcritical crack propagation from NDT flaw size a_0 to fracture toughness K_IC!:* | Damage-Tolerance Fracture Metric (a_0=4mm, K_IC=50, dSigma=100 MPa, Y=1) | Formula | Verified Output | | --- | --- | --- | | Critical Crack Length a_c (mm) | 1000 * (1 / PI()) * (K_IC / (Y * dSigma))^2 | 79.58 mm (0.07958 m) | | Initial Stress Intensity dK_0 | Y * dSigma * SQRT(PI() * a_0) | 11.21 MPa*sqrt(m) (< 50 K_IC) | | Fatigue Life N_f (Steel m=3, C=1e-11) | (a_0^-0.5 - a_c^-0.5) / (0.5*C*(Y*dSig*SQRT(PI))^3) | 440,580 cycles | | Logarithmic Branch (m=2, C=1e-9) | LN(a_c / a_0) / (C * PI() * Y^2 * dSigma^2) | 95,189 cycles (No #DIV/0!) | - **Formula (Singularity-Safe Paris-Erdogan Cycles-to-Failure Formula)**: `=LET(a_in, B2, k_ic, B3, d_sg, B4, y_gm, B5, c_pr, B6, m_ex, B7, IF(OR(a_in <= 0, k_ic <= 0, d_sg <= 0, y_gm <= 0, c_pr <= 0, m_ex <= 0), "Invalid Fracture Input", LET(a_cr, (1 / PI()) * (k_ic / (y_gm * d_sg)) ^ 2, IF(a_in >= a_cr, "Immediate Unstable Fracture (a0 >= ac)", LET(gm_k, y_gm * d_sg * SQRT(PI()), ROUND(IF(m_ex = 2, LN(a_cr / a_in) / (c_pr * gm_k ^ 2), (a_in ^ (1 - m_ex / 2) - a_cr ^ (1 - m_ex / 2)) / (c_pr * (m_ex / 2 - 1) * gm_k ^ m_ex)), 0))))))` - **Formula (Critical Crack Size (mm) & Inspection Safety Margin Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Fracture Input", ROUND(1000 * (1 / PI()) * (B3 / (B5 * B4)) ^ 2, 2))` ### Paris' Law Crack Growth: Integrated Cycles and Critical Size - **URL**: https://sheets.arte-soft.com/en/learn/paris-law-fatigue-crack-growth-cycles-to-critical-fracture/ - **Summary**: Build a constant-amplitude Paris-law spreadsheet with separate maximum stress and stress range, a logarithmic m = 2 limit, and explicit model boundaries. - **Formula (Integrate without a singularity at m = 2)**: `=IF(OR(COUNT(B2:B8)<>7,MIN(B2:B8)<=0,B4>B8),"Use positive numeric inputs; stress range must not exceed maximum stress",LET(ac,(B5/(B3*B8))^2/PI(),IF(B2>=ac,"At or beyond model critical size",LET(powr,1-B7/2,logratio,LN(ac/B2),z,powr*logratio,ratio,IF(ABS(z)<0.0001,1+z/2+z^2/6+z^3/24+z^4/120,(EXP(z)-1)/z),B2^powr*logratio*ratio/(B6*(B3*B4*SQRT(PI()))^B7)))))` - **Formula (Critical size output)**: `=IF(OR(COUNT(B2:B8)<>7,MIN(B2:B8)<=0,B4>B8),"Use positive numeric inputs; stress range must not exceed maximum stress",(B5/(B3*B8))^2/PI())` ### Parkinson High-Low & Garman-Klass OHLC Volatility Formulas - **URL**: https://sheets.arte-soft.com/en/learn/parkinson-and-garman-klass-high-low-ohlc-volatility/ - **Summary**: Calculate Parkinson and Garman-Klass range-based volatility estimates from a valid OHLC bar, then apply an explicit periods-per-year assumption without rounding intermediate results. - **Formula (Parkinson estimate per observation interval)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric OHLC",IF(OR(MIN(B2:B5)<=0,B3B3,B5B3),"Invalid OHLC",SQRT((LN(B3/B4)^2)/(4*LN(2)))))` - **Formula (Garman-Klass estimate per observation interval)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric OHLC",IF(OR(MIN(B2:B5)<=0,B3B3,B5B3),"Invalid OHLC",SQRT(0.5*LN(B3/B4)^2-(2*LN(2)-1)*LN(B5/B2)^2)))` - **Formula (Annualize Parkinson with a declared frequency)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric OHLC",IF(OR(MIN(B2:B5)<=0,B3B3,B5B3),"Invalid OHLC",IF(NOT(ISNUMBER(B7)),"Invalid periods per year",IF(OR(B7<1,B7<>INT(B7)),"Invalid periods per year",SQRT(((LN(B3/B4)^2)/(4*LN(2)))*B7)))))` - **Formula (Annualize Garman-Klass)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric OHLC",IF(OR(MIN(B2:B5)<=0,B3B3,B5B3),"Invalid OHLC",IF(NOT(ISNUMBER(B7)),"Invalid periods per year",IF(OR(B7<1,B7<>INT(B7)),"Invalid periods per year",SQRT((0.5*LN(B3/B4)^2-(2*LN(2)-1)*LN(B5/B2)^2)*B7)))))` ### Historical Parkland and 4-2-1 formulas as spreadsheet arithmetic exercises - **URL**: https://sheets.arte-soft.com/en/learn/parkland-burn-fluid-resuscitation-and-holliday-segar-4-2-1/ - **Summary**: Practice multiplication, remaining-volume arithmetic and piecewise weight brackets using fictional inputs, not clinical dosing instructions. *Table — Historical formulas, not an infusion prescription:* | Historical arithmetic | Fictional input | Calculation | Numerical result | | --- | --- | --- | --- | | Parkland 24h Total (75 kg, 20%) | B2 = 75 kg, B3 = 20 (%TBSA) | 4 * 75 * 20 | 6000mL modeled total | | First-8h Rate (0h delay, B4 = 8) | (6000 / 2) / 8 hrs | 3,000 / 8 | 375 mL/hr (Next 16h = 187.5 mL/hr) | | Six hours remaining, none recorded given | 3,000 / 6 remaining hrs | Arithmetic quotient only | 500mL/hour, not a pump instruction | | Holliday-Segar 4-2-1 (B5 = 25 kg) | 10*4 + 10*2 + 5*1 | 40 + 20 + 5 | 65 mL/hr maintenance | - **Formula (Remaining historical first-interval volume divided by hours)**: `=IF(OR(COUNT(B2:B4)<>3,COUNT(B6)<>1,B2<=0,B3<=0,B3>100,B4<=0,B4>8,B6<0,B6>2*B2*B3),"Invalid inputs",ROUND((2*B2*B3-B6)/B4,2))` - **Formula (Piecewise4-2-1 arithmetic)**: `=IF(OR(COUNT(B5)<>1,B5<=0),"Invalid inputs",ROUND(MIN(B5, 10) * 4 + MAX(0, MIN(B5 - 10, 10)) * 2 + MAX(0, B5 - 20) * 1, 2))` ### Parse 4-digit military time ("0930", 1745, 15) into real Excel time and hours - **URL**: https://sheets.arte-soft.com/en/learn/parse-4-digit-military-time-string-to-excel-time/ - **Summary**: Convert numeric HHMM codes or numeric text to clock labels and elapsed hours for intervals shorter than one day. *Table — Why 1745 - 930 = 815 instead of 8.25 hours—and how INT + MOD fixes it:* | Raw HHMM Input | INT(n / 100) Hours | MOD(n, 100) Minutes | Formatted 24h & Decimal Hours | | --- | --- | --- | --- | | 930 (or "0930") | 9 | 30 | "09:30" (9.50 hrs from midnight) | | 1745 | 17 | 45 | "17:45" (8.25 hrs shift from 09:30) | | 15 (or "0015") | 0 | 15 | "00:15" (15 mins past midnight) | - **Formula (Convert 1-to-4 digit military input into formatted HH:MM text)**: `=IFERROR(IF(COUNTBLANK(A2)>0,"Invalid time",LET(code,VALUE(A2),IF(OR(code<0,code>2359,code<>INT(code),MOD(code,100)>59),"Invalid time",RIGHT("00"&INT(code/100),2)&":"&RIGHT("00"&MOD(code,100),2)))),"Invalid time")` - **Formula (Elapsed clock hours for an interval shorter than 24 hours)**: `=IFERROR(IF(COUNTBLANK(A2:B2)>0,"Invalid time",LET(startCode,VALUE(A2),endCode,VALUE(B2),IF(OR(OR(startCode<0,startCode>2359,startCode<>INT(startCode),MOD(startCode,100)>59),OR(endCode<0,endCode>2359,endCode<>INT(endCode),MOD(endCode,100)>59)),"Invalid time",LET(startTime,TIME(INT(startCode/100),MOD(startCode,100),0),endTime,TIME(INT(endCode/100),MOD(endCode,100),0),ROUND(MOD(endTime-startTime,1)*24,2))))),"Invalid time")` ### Parse European Comma-Decimal & Thousands-Separated Text (NUMBERVALUE Pattern) - **URL**: https://sheets.arte-soft.com/en/learn/parse-european-comma-decimal-and-space-thousands-strings/ - **Summary**: Convert locale-specific numeric strings such as "1.250,75", "4 820,50", and "12,5%" into true numbers regardless of system regional settings using SUBSTITUTE, TRIM, and VALUE. *Table — Why plain VALUE() fails on cross-locale ERP and bank CSV exports:* | Raw Imported Text | Decimal Sep | Group Sep | Normalized String | Numeric Output | | --- | --- | --- | --- | --- | | "1.250,75" | "," | "." | "1250.75" | 1250.75 | | "4 820,50" | "," | " " | "4820.50" | 4820.5 | | "12,5%" | "," | "." | "12.5%" -> / 100 | 0.125 | | "-980,25" | "," | "." | "-980.25" | -980.25 | - **Formula (Locale-Independent NUMBERVALUE Parser (With ISNUMBER Pre-Guard))**: `=IF(ISNUMBER(B2), B2, LET(cleanWs, SUBSTITUTE(SUBSTITUTE(TRIM(B2), CHAR(160), ""), " ", ""), noGrp, IF(LEN(D2) = 0, cleanWs, SUBSTITUTE(cleanWs, D2, "")), stdTxt, SUBSTITUTE(noGrp, C2, "."), IF(RIGHT(stdTxt, 1) = "%", VALUE(LEFT(stdTxt, LEN(stdTxt) - 1)) / 100, VALUE(stdTxt))))` - **Formula (Safe Fallback Wrapper for Blank or Text Header Cells)**: `=IFERROR(IF(ISNUMBER(B2), B2, LET(cleanWs, SUBSTITUTE(SUBSTITUTE(TRIM(B2), CHAR(160), ""), " ", ""), noGrp, IF(LEN(D2) = 0, cleanWs, SUBSTITUTE(cleanWs, D2, "")), stdTxt, SUBSTITUTE(noGrp, C2, "."), IF(RIGHT(stdTxt, 1) = "%", VALUE(LEFT(stdTxt, LEN(stdTxt) - 1)) / 100, VALUE(stdTxt)))), 0)` ### Parse a full address into Street, City, State, and ZIP code - **URL**: https://sheets.arte-soft.com/en/learn/parse-street-city-state-zip-address/ - **Summary**: Split comma-delimited US addresses ("742 Evergreen Ter, New Haven, CT 06510") cleanly even when street or city names contain multiple words. *Table — Anchor on commas from the right so Suite/Apt commas stay in Street:* | FullAddress (A) | Street | City | State | ZIP (Text) | | --- | --- | --- | --- | --- | | 742 Evergreen Ter, New Haven, CT 06510 | 742 Evergreen Ter | New Haven | CT | 06510 | | 500 Market St, Ste 200, San Jose, CA 95113 | 500 Market St, Ste 200 | San Jose | CA | 95113 | - **Formula (Suite-safe Street, City, State, and ZIP formulas)**: `=TRIM(TEXTBEFORE(TEXTAFTER(A2, ",", -2), ","))` - **Formula (Extract 2-letter State and ZIP from final segment)**: `=TEXTAFTER(TRIM(TEXTAFTER(A2, ",", -1)), " ")` ### Extract Workbook Filename, Folder Path & Sheet Tab Name from File Path (MID + FIND) - **URL**: https://sheets.arte-soft.com/en/learn/parse-workbook-path-filename-and-sheet-tab-mid-find/ - **Summary**: Split an Excel CELL("filename") path string like C:\Finance\[FY2026_Budget.xlsx]RevOps_Q4 into its workbook filename, folder directory, and active worksheet tab name. *Table — Why CELL("filename") brackets [Workbook.xlsx] make FIND("[") and FIND("]") the universal path splitter!:* | Full CELL("filename") Input B2 | Extracted Workbook Filename | Extracted Sheet Tab | Parent Folder Path | | --- | --- | --- | --- | | C:\Finance\[FY2026_Budget.xlsx]RevOps_Q4 | FY2026_Budget.xlsx | RevOps_Q4 | C:\Finance\ | | /Cloud/FP&A/[Q3_Forecast.xlsx]Cash_Flow | Q3_Forecast.xlsx | Cash_Flow | /Cloud/FP&A/ | | "" (Unsaved Workbook — Blank String) | "Unsaved Workbook" | "Unsaved Workbook" | "Unsaved Workbook" | - **Formula (Extract Workbook Filename Only Between "[" and "]")**: `=IF(OR(ISERROR(FIND("[", B2)), ISERROR(FIND("]", B2))), "Unsaved Workbook", MID(B2, FIND("[", B2) + 1, FIND("]", B2) - FIND("[", B2) - 1))` - **Formula (Extract Worksheet Tab Name After "]" & Parent Folder Path Before "[")**: `=IF(ISERROR(FIND("]", B2)), "Unsaved Workbook", MID(B2, FIND("]", B2) + 1, 255))` ### Parse XML tags and JSON webhook fields with formulas (TEXTAFTER & TEXTBEFORE) - **URL**: https://sheets.arte-soft.com/en/learn/parse-xml-and-json-key-values-with-text-formulas/ - **Summary**: Extract text from controlled XML-like tags and compact JSON string fields using delimiter formulas. These are not general parsers. *Table — Delimiter extraction for controlled inputs:* | Payload Format | Raw Log Cell | Target Tag / Key | Extracted Value | | --- | --- | --- | --- | | XML Element | ORD-904249.50 | "id" / "total" | "ORD-904" / "249.50" | | JSON String Field | {"id":"evt_88","status":"succeeded","plan":"pro"} | "status" | "succeeded" | | Missing Tag / Key | Same payload | "coupon" | "Not Found" | - **Formula (Extract between exact plain tags)**: `=IFERROR(TEXTBEFORE(TEXTAFTER(A2, "<" & B2 & ">"), ""), "Not Found")` - **Formula (Extract quoted string property from JSON log payloads)**: `=LET(q, CHAR(34), IFERROR(TEXTBEFORE(TEXTAFTER(C2, q & D2 & q & ":" & q), q), "Not Found"))` ### Part-Period Balancing (EPP) & Groff's Marginal Lot-Sizing Heuristic in MRP - **URL**: https://sheets.arte-soft.com/en/learn/part-period-balancing-and-groff-marginal-cost-lot-sizing/ - **Summary**: Determine discrete MRP production batch horizons under lumpy time-varying demand using Economic Part-Period EPP = S / h and Groff's marginal rule D_{t+n} * n * (n + 1) <= 2*S / h. *Table — Replace static EOQ when weekly MRP net requirements jump up and down!:* | Period Offset n | Net Demand D_{t+n} | Cumulative Part-Periods (EPP = 120) | Groff Test D*n*(n+1) <= 240 | | --- | --- | --- | --- | | Week 1 (n = 0, Setup Week) | 80 units | 0 part-periods | 0 <= 240 -> Include | | Week 2 (n = 1 week held) | 50 units | 50 * 1 = 50 | 50 * 1 * 2 = 100 <= 240 -> Include | | Week 3 (n = 2 weeks held) | 35 units | 50 + (35 * 2) = 120 (= EPP!) | 35 * 2 * 3 = 210 <= 240 -> Include | | Week 4 (n = 3 weeks held) | 40 units | 120 + (40 * 3) = 240 (> EPP) | 40 * 3 * 4 = 480 > 240 -> STOP (New Lot!) | - **Formula (Economic Part-Period Threshold EPP = S / h (Unit-Periods))**: `=IF(OR(F2 <= 0, F3 <= 0), "Invalid Cost Inputs", ROUND(F2 / F3, 2))` - **Formula (Groff Marginal Lot-Sizing Decision for Period Offset n)**: `=IF(B5 * A5 * (A5 + 1) <= (2 * $F$2) / $F$3, "Add to Current Lot", "Start New Setup")` ### Partial Substring Match on Numeric Cells (Why "*45*" Fails & SEARCH Fix) - **URL**: https://sheets.arte-soft.com/en/learn/partial-match-on-numeric-cells-with-wildcard-search-coercion/ - **Summary**: Match, count, sum, and look up numeric invoice IDs or part numbers by embedded digit pattern without converting numeric columns to text, overcoming COUNTIF and XLOOKUP wildcard failure on numbers. *Table — Why COUNTIF(A2:A6, "*45*") and wildcard XLOOKUP miss genuine numbers:* | Pattern Goal | Broken Wildcard Attempt | Type-Safe Numeric + Text Formula | | --- | --- | --- | | Count IDs containing 45 | COUNTIF(A2:A6, "*45*") -> misses numbers | SUMPRODUCT(--NOT(ISBLANK(A2:A6)), --ISNUMBER(SEARCH(E2, "" & A2:A6))) | | Sum amounts for IDs containing 45 | SUMIF(A2:A6, "*45*", C2:C6) -> 0 | SUMPRODUCT(--NOT(ISBLANK(A2:A6)), --ISNUMBER(SEARCH(E2, "" & A2:A6)), C2:C6) | | First matching description | XLOOKUP("*45*", A2:A6, B2:B6, , 2) | INDEX(B2:B6, MATCH(TRUE, ISNUMBER(SEARCH(E2, IF(ISBLANK(A2:A6), "", "" & A2:A6))), 0)) | - **Formula (Count & Sum Numeric or Mixed Codes Containing Digit Substring)**: `=COUNTIF(D2:D6, "*" & F2 & "*")` - **Formula (First Partial-Match Lookup Across Numeric IDs)**: `=XLOOKUP("*" & F2 & "*", D2:D6, B2:B6, "NO_MATCH", 2)` ### Paschen's Law: Gas Breakdown Voltage (Vb) & Minimum Paschen (p*d) Curve - **URL**: https://sheets.arte-soft.com/en/learn/paschen-law-gas-breakdown-voltage-and-minimum-pd-formula/ - **Summary**: Calculate Townsend DC gas breakdown voltage Vb = (B * p * d) / (LN(A * p * d) - LN(LN(1 + 1 / gamma_se))) and the minimum breakdown product (p * d)_min = (EXP(1) / A) * LN(1 + 1 / gamma_se). *Table — Prevent high-voltage spacecraft, vacuum-chamber, and switchgear arcing!:* | Argon Gap Regime (A=11.5, B=176, gamma=0.07) | Pressure * Gap (Torr*cm) | Breakdown Voltage Vb | Townsend Physics | | --- | --- | --- | --- | | Below Minimum (Vacuum Left Branch) | pd <= 0.237 Torr*cm | No Townsend Breakdown! | Denominators <= 0 -> Vacuum Holdoff | | Paschen Curve Minimum | pd_min = 0.645 Torr*cm | Vb_min = 113.52 V | Easiest Glow-Discharge Ignition | | Near-Minimum Plasma Chamber | pd = 1.500 Torr*cm | 143.12 V | Right-branch glow regime | | Higher Pressure Switch | pd = 10.00 Torr*cm | 470.37 V | Linear high-pd climb | - **Formula (Paschen DC Gas Breakdown Voltage Vb (Volts))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, LN(B2 * B5) <= LN(LN(1 + (1 / B4)))), "Below Vacuum Breakdown Asymptote", ROUND((B3 * B5) / (LN(B2 * B5) - LN(LN(1 + (1 / B4)))), 2))` - **Formula (Paschen Minimum Pressure-Distance Product (p * d)_min (Torr * cm))**: `=IF(OR(B2 <= 0, B4 <= 0), "Invalid Gas Constants", ROUND((EXP(1) / B2) * LN(1 + (1 / B4)), 3))` ### PASI (Psoriasis Area and Severity Index 0–72) & PASI-90 Response - **URL**: https://sheets.arte-soft.com/en/learn/pasi-psoriasis-area-and-severity-index-head-trunk-limbs-formula/ - **Summary**: Calculate Torsten Fredriksson and Ulf Pettersson’s 0.0–72.0 PASI score weighting Head (0.1), Upper Limbs (0.2), Trunk (0.3), and Lower Limbs (0.4) area grades (0–6) times plaque Erythema + Induration + Desquamation sums (0–12). *Table — Compute exact 0–72 PASI scores and IL-17 / IL-23 biologic PASI-75 / PASI-90 clearance!:* | Anatomical Region (Weight w_r) | Area Grade A_r (0–6) | Severity Sum E+I+D (0–12) | Weighted Regional PASI | | --- | --- | --- | --- | | Head (0.1) & Upper Limbs (0.2) | A_H = 2, A_U = 3 | S_H = 5, S_U = 7 | 1.0 + 4.2 = 5.2 | | Trunk (0.3) & Lower Limbs (0.4) | A_T = 4, A_L = 4 | S_T = 8, S_L = 7 | 9.6 + 11.2 = 20.8 | | Total Baseline PASI (0.0–72.0) | Sum of 4 Regions | >= 10 Biologic Threshold | 26.0 (Moderate-Severe Psoriasis) | - **Formula (Total 4-Region PASI Score (0.0 to 72.0))**: `=IF(OR(B2 < 0, B2 > 6, B3 < 0, B3 > 12, B4 < 0, B4 > 6, B5 < 0, B5 > 12, B6 < 0, B6 > 6, B7 < 0, B7 > 12, B8 < 0, B8 > 6, B9 < 0, B9 > 12), "Invalid PASI Grade", ROUND(0.1 * B2 * B3 + 0.2 * B4 * B5 + 0.3 * B6 * B7 + 0.4 * B8 * B9, 1))` - **Formula (Percentage PASI Improvement From Baseline (%) for PASI-75 / PASI-90)**: `=IF(B10 <= 0, "Invalid Baseline PASI", ROUND(100 * (B10 - (0.1 * B2 * B3 + 0.2 * B4 * B5 + 0.3 * B6 * B7 + 0.4 * B8 * B9)) / B10, 1))` ### Passing-Bablok Nonparametric Method-Comparison Regression (Median Slope & Intercept) - **URL**: https://sheets.arte-soft.com/en/learn/passing-bablok-nonparametric-method-comparison-median-slope/ - **Summary**: Fit outlier-proof clinical laboratory calibration lines via Heinrich Passing & Wolfgang Bablok’s (1983) pairwise slope median b = MEDIAN((Y_j - Y_i) / (X_j - X_i)) and intercept a = MEDIAN(Y_i - b * X_i). *Table — Why a single hemolyzed outlier ruins OLS and Deming—yet barely moves Passing-Bablok!:* | Assay Calibration Dataset (N = 5, 10 Pairwise Slopes) | Passing-Bablok Slope b | Passing-Bablok Intercept a | Outlier Breakdown Resistance | | --- | --- | --- | --- | | Clean Assay [11.0, 22.2, 33.1, 44.3, 55.5] | 1.1113 (+11.1% prop. bias) | -0.1125 | Zero Gaussian / homoscedastic assumption | | Contaminated C6 = 140.0 (2.5× Outlier!) | 1.1200 (+0.78% shift!) | -0.3800 | 4/10 affected slopes < 50% median breakdown | | Identical X Values (Zero X Spread) | "Distinct X Levels Required" | Error Guard | Prevents ΔX = 0 division | - **Formula (Passing-Bablok Pairwise Median Slope Estimator b)**: `=IF(MIN(B3 - B2, B4 - B3, B5 - B4, B6 - B5) <= 0, "Distinct Ascending X Levels Required", ROUND(MEDIAN(D2:D11), 4))` - **Formula (Passing-Bablok Nonparametric Median Intercept a = MEDIAN(Y_i - b * X_i))**: `=IF(MIN(B3 - B2, B4 - B3, B5 - B4, B6 - B5) <= 0, "Distinct Ascending X Levels Required", ROUND(MEDIAN(C2 - MEDIAN(D2:D11) * B2, C3 - MEDIAN(D2:D11) * B3, C4 - MEDIAN(D2:D11) * B4, C5 - MEDIAN(D2:D11) * B5, C6 - MEDIAN(D2:D11) * B6), 4))` ### Higgins I² & H² Meta-Analysis Heterogeneity Formula from Cochran’s Q - **URL**: https://sheets.arte-soft.com/en/learn/paule-mandel-and-higgins-i-squared-heterogeneity-meta-analysis/ - **Summary**: Quantify percentage between-study inconsistency I² = MAX(0, (Q - (k - 1)) / Q) * 100% and variance-inflation factor H² = MAX(1, Q / (k - 1)) in Cochrane meta-analyses. *Table — Why Cochran’s Q depends on trial count k—whereas Julian Higgins’s I² is scale-invariant!:* | Cochran’s Q & Study Count k | Higgins Inconsistency I² (%) | Dispersion Ratio H² = MAX(1, Q/df) | Cochrane Handbook Tier | | --- | --- | --- | --- | | Q = 18.6, k = 5 Studies (df = 4) | 78.49% | 4.650 (H = 2.156) | Considerable Heterogeneity (75%–100%) | | Q = 3.2, k = 5 Studies (Q < df) | 0.00% (Truncated at Zero) | 1.000 | Homogeneous / Sampling Noise Only | | Invalid k < 2 or Q <= 0 | Error Guard | "Requires k >= 2 Studies and Q > 0" | Meta-Analysis Bounds Guard | - **Formula (Higgins & Thompson Percentage Heterogeneity Index I² (%))**: `=IF(OR(B2 <= 0, B3 < 2), "Requires k >= 2 Studies and Q > 0", ROUND(MAX(0, (B2 - (B3 - 1)) / B2) * 100, 2))` - **Formula (Higgins Overdispersion Variance Ratio H² = MAX(1, Q / (k - 1)))**: `=IF(OR(B2 <= 0, B3 < 2), "Requires k >= 2 Studies and Q > 0", ROUND(MAX(1, B2 / (B3 - 1)), 3))` ### Payback Period formula: interpolated fractional years to break even on CapEx - **URL**: https://sheets.arte-soft.com/en/learn/payback-period-and-discounted-payback-formula/ - **Summary**: Calculate the estimated year and fraction when cumulative project cash flows recover an upfront capital investment—and check whether a project does not recover its cost within the forecast. *Table — Interpolate the crossover year from cumulative cash flows:* | Year (A) | Cash Flow (B) | Cumulative CF (C) | Payback Milestone | | --- | --- | --- | --- | | 0 | -100000 | -100000 | Initial CapEx | | 1 | 30000 | -70000 | Still negative (1) | | 2 | 45000 | -25000 | Last negative year (k = 2) | | 3 | 50000 | 25000 | +25k/50k = 2.50 years payback | | 4 | 40000 | 65000 | Cumulative cash surplus | - **Formula (Interpolated payback within the forecast horizon)**: `=IF(C6<0, "Not recovered in forecast", LET(k, COUNTIF(C3:C6, "<0"), ROUND(k + ABS(INDEX(C2:C6, k + 1)) / INDEX(B2:B6, k + 2), 2)))` - **Formula (Pair Payback with Net Present Value (NPV + Year 0))**: `=ROUND(B2 + NPV(0.1, B3:B6), 2)` ### PCB Thermal Via Array Resistance & Temperature Rise Formula - **URL**: https://sheets.arte-soft.com/en/learn/pcb-thermal-via-array-parallel-conduction-resistance-and-pad-temp-rise/ - **Summary**: Calculate Hollow Plated-Copper Barrel Ring Area (mm²), Single-Via Vertical Thermal Resistance (°C/W), Parallel N-Via Array Resistance (°C/W), and Exposed-Pad Board Delta_T (°C). *Table — Modeling a plated PCB via as a solid copper rod underpredicts thermal resistance by 3.3x—because the barrel is a hollow 25-micron cylinder!:* | PCB Thermal Via Grid KPI (0.30 mm Drill, 25 um Cu, 1.6 mm PCB, 16 Vias, 3.5 W) | Formula | Verified Output | | --- | --- | --- | | Plated Copper Ring Area (mm²) | PI() * ((D/2)^2 - (D/2 - t_um/1000)^2) | 0.0216 mm² | | Single-Via Resistance Rth,1 (°C/W) | (Board_H_m) / (k_Cu * Ring_Area_m2) | 192.41 °C/W | | N-Via Parallel Array Rth (°C/W) | R_th_Single / Via_Count_N | 12.03 °C/W (5.34 °C/W @ 6x6 = 36 vias) | | Through-Board Pad Delta_T (°C) | Power_W * R_th_Array | 42.09 °C (18.71 °C @ 36 vias!) | - **Formula (Hollow Plated-Barrel Fourier Thermal Resistance & Parallel Array Formula)**: `=LET(dd_m, B2, cu_u, B3, bh_m, B4, nv_c, B5, kc_u, B6, pd_w, B7, IF(OR(dd_m <= 0.1, cu_u <= 5, (2 * cu_u / 1000) >= dd_m, bh_m <= 0, nv_c < 1, kc_u <= 50, pd_w < 0), "Invalid Thermal Via Input", LET(ro_m, dd_m / 2, ri_m, ro_m - (cu_u / 1000), ar_g, PI() * ((ro_m ^ 2) - (ri_m ^ 2)), rs_v, (bh_m / 1000) / (kc_u * (ar_g * 0.000001)), ROUND(pd_w * (rs_v / nv_c), 2))))` - **Formula (Dense 6x6 (36-Via) Exposed-Pad Array Upgrade Check (Set Via Count N = 36))**: `=IF(ISTEXT(E5), E5, LET(ro_m, B2 / 2, ri_m, ro_m - (B3 / 1000), ar_g, PI() * ((ro_m ^ 2) - (ri_m ^ 2)), rs_v, (B4 / 1000) / (B6 * (ar_g * 0.000001)), ROUND(rs_v / B5, 2)))` ### PDURATION & RRI Formulas: Periods to Reach Target Value & Equivalent Return - **URL**: https://sheets.arte-soft.com/en/learn/pduration-and-rri-periods-to-reach-investment-target/ - **Summary**: Calculate the exact number of compounding periods required for an investment to grow from PV to FV (PDURATION) and the equivalent compound growth rate over N periods (RRI) using exact logarithmic and power identities. *Table — Exact closed-form identities behind PDURATION and RRI:* | Scenario | Present Value (PV) | Target Value (FV) | Rate / Horizon | Exact Result | | --- | --- | --- | --- | --- | | Double capital at 8% annual | $10,000 | $20,000 | r = 8.00% / yr | 9.0065 years (PDURATION) | | Grow 50% at 0.5% / month | $10,000 | $15,000 | r = 0.50% / mo | 81.2956 months (PDURATION) | | Double capital in 10 years | $10,000 | $20,000 | n = 10 years | 7.1773% / yr (RRI) | | Grow $10k to $18,509.30 in 8 yrs | $10,000 | $18,509.30 | n = 8 years | 8.0000% / yr (RRI) | - **Formula (Exact Periods to Reach Target Value (PDURATION Identity))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Input", ROUND(LN(B3 / B2) / LN(1 + B4), 4))` - **Formula (Equivalent Compound Growth Rate Over N Periods (RRI Identity))**: `=IF(OR(B2 <= 0, B3 < 0, B5 <= 0), "Invalid Input", ROUND((B3 / B2) ^ (1 / B5) - 1, 6))` ### PE American Deal-by-Deal Waterfall & GP Clawback Formula - **URL**: https://sheets.arte-soft.com/en/learn/pe-american-deal-by-deal-waterfall-gp-clawback-and-escrow-formula/ - **Summary**: Calculate Private Equity American (Deal-by-Deal) Early Carried Interest Paid, True Whole-Fund Earned Carry After Later Realized Write-Offs, Gross GP Clawback Liability, and Out-of-Pocket GP Cash Beyond Escrow. *Table — Protect Limited Partners from front-loaded American-waterfall carry overpayments with Escrow + Clawback!:* | LPA GP Clawback Metric ($50M Early Gains, $30M Late Losses, 20% Carry, 30% Escrow) | Formula | Verified Output | | --- | --- | --- | | Early Deal-by-Deal Carry ($M) | Early_Winner_Gains * Carry_Rate | $10.00M | | Whole-Fund Earned Carry ($M) | MAX(0, (Early_Gains - Late_Losses)*Carry) | $4.00M ($0.00M @ $60M Losses) | | Gross GP Clawback Owed ($M) | Early_Carry_Paid - Earned_Carry | $6.00M ($10.00M @ $60M Losses) | | Out-of-Pocket GP Clawback ($M) | MAX(0, Gross_Clawback - Early*Escrow%) | $3.00M ($7.00M @ $60M Losses) | - **Formula (American-Waterfall Out-of-Pocket GP Clawback Beyond Escrow Formula)**: `=LET(gn_e, B2, ls_l, B3, cr_r, B4, es_p, B5, IF(OR(gn_e <= 0, ls_l < 0, cr_r <= 0, cr_r >= 0.5, es_p < 0, es_p > 1), "Invalid LPA Clawback Input", LET(cr_0, gn_e * cr_r, cr_t, MAX(0, (gn_e - ls_l) * cr_r), cl_g, cr_0 - cr_t, ROUND(MAX(0, cl_g - cr_0 * es_p), 2))))` - **Formula (Net Fund Loss Full-Clawback Stress Check (Set Later Losses = $60.00M))**: `=IF(ISTEXT(E5), E5, ROUND(E2 - E3, 2))` ### PE European Waterfall, GP Catch-Up & Carried Interest Formula - **URL**: https://sheets.arte-soft.com/en/learn/pe-european-waterfall-preferred-return-gp-catch-up-and-carried-interest/ - **Summary**: Calculate Limited Partner and General Partner distributions across all four European Waterfall tiers: Return of Capital, Preferred Hurdle, 100% GP Catch-Up Tranche H * c / (1 - c), and 80/20 Carried Interest. *Table — Avoid the #1 fund-waterfall bug on the 100% GP Catch-Up tranche!:* | European Fund Waterfall Tier (I_0=$100M, H_pref=$24M, Carry=20%, W=$160M) | Formula | Verified Output | | --- | --- | --- | | GP Full Catch-Up Cap ($M) | (c_carry / (1 - c_carry)) * H_pref | $6.00M (Reached at W = $130M) | | Actual GP Catch-Up Paid ($M) | MIN(Cap, MAX(0, W_dist - I_0 - H_pref)) | $6.00M ($3.00M if W = $127M) | | Total GP Carried Interest ($M) | CatchUp_Paid + c_carry * MAX(0, W - I_0 - H/(1-c)) | $12.00M (20.0% of $60M Profit) | | LP Net Distribution & Net TVPI | W_dist - GP_Carry; LP_Dist / I_0 | $148.00M (1.4800x Net TVPI) | - **Formula (Four-Tier European GP Carried Interest Formula (100% Catch-Up))**: `=LET(in_0, B2, hr_p, B3, cr_g, B4, wd_t, B5, IF(OR(in_0 <= 0, hr_p < 0, cr_g < 0, cr_g >= 1, wd_t < 0), "Invalid Waterfall Terms", LET(cu_cp, (cr_g / (1 - cr_g)) * hr_p, cu_pd, MIN(cu_cp, MAX(0, wd_t - in_0 - hr_p)), rs_gp, cr_g * MAX(0, wd_t - in_0 - hr_p - cu_cp), ROUND(cu_pd + rs_gp, 2))))` - **Formula (LP Net Distribution & Net Multiple (TVPI) Formula)**: `=IF(ISTEXT(E3), E3, ROUND((B5 - E3) / B2, 4))` ### PE NAV Loan LTV Covenant, Drawdown Buffer & DPI Formula - **URL**: https://sheets.arte-soft.com/en/learn/pe-nav-loan-ltv-covenant-margin-call-buffer-and-dpi-recap-formula/ - **Summary**: Calculate Late-Life PE Portfolio NAV Facility Initial LTV (Debt / NAV), Hard Maintenance Covenant Minimum NAV (Debt / Max_LTV), Allowable Portfolio Valuation Drawdown Buffer, and Synthetic Recap DPI Uplift. *Table — Stress-test PE portfolio NAV-loan markdown cushions before borrowing to fund synthetic DPI!:* | PE NAV Facility Metric ($400M NAV, $80M Debt, 32% Max LTV, $250M PIC) | Formula | Verified Output | | --- | --- | --- | | Initial Portfolio LTV Ratio | Drawn_NAV_Debt / Eligible_NAV | 0.2000 (0.3000 @ $120M Draw) | | Covenant Breach Min NAV ($M) | Drawn_NAV_Debt / Max_Covenant_LTV | $250.00M ($375.00M @ $120M) | | Portfolio Markdown Buffer | 1 - (Covenant_Min_NAV / Eligible_NAV) | 0.3750 (0.0625 @ $120M Draw) | | Synthetic DPI Recap Uplift (x) | Drawn_NAV_Debt / Paid_In_Capital | 0.3200x | - **Formula (PE NAV Facility Allowable Valuation Markdown Buffer Formula)**: `=LET(nv_p, B2, db_n, B3, lt_m, B4, pi_c, B5, IF(OR(nv_p <= 0, db_n <= 0, lt_m <= 0, lt_m > 0.8, (db_n / nv_p) >= lt_m, pi_c <= 0), "Invalid or Breached NAV Facility", LET(mn_v, db_n / lt_m, ROUND(1 - (mn_v / nv_p), 4))))` - **Formula (Aggressive $120M Draw Thin-Cushion Stress Check)**: `=IF(ISTEXT(E4), E4, ROUND(B3 / B5, 4))` ### PE Subscription Line IRR Uplift vs TVPI Dilution Formula - **URL**: https://sheets.arte-soft.com/en/learn/pe-subscription-credit-line-irr-boost-vs-tvpi-dilution-formula/ - **Summary**: Compare Unlevered Day-1 Capital-Call IRR against Subscription-Credit-Facility ("Sub-Line") Deferred LP Capital-Call IRR, Financed LP Drawdown Including Interest, and Sub-Line Net TVPI Multiple Dilution. *Table — See mathematically why PE subscription lines boost LP IRR while trimming TVPI cash multiples!:* | ILPA Sub-Line Metric ($100M Deal, $216M Exit @ Yr 4, 1-Yr Bridge @ 8.0%) | Formula | Verified Output | | --- | --- | --- | | Unlevered 4-Yr Deal IRR | (Exit_Proceeds / Deal_Cost)^(1 / T_deal) - 1 | 0.2123 (21.23% Annualized) | | Deferred LP Capital Call ($M) | Deal_Cost * (1 + r_sub * T_bridge) | $108.00M ($100.00M @ 0 Bridge) | | Sub-Line Deferred LP IRR | (Exit / LP_Call)^(1 / (T_deal - T_bridge)) - 1 | 0.2599 (25.99%; +476 bps Boost) | | Sub-Line LP Cash Multiple (x) | Exit_Proceeds / Deferred_LP_Call | 2.0000x (vs 2.1600x Unlevered) | - **Formula (Sub-Line Deferred Capital-Call IRR Formula)**: `=LET(c_dl, B2, ex_p, B3, t_hl, B4, t_br, B5, r_sb, B6, IF(OR(c_dl <= 0, ex_p <= 0, t_hl < 1, t_br < 0, t_br >= t_hl, r_sb < 0, r_sb >= 0.3), "Invalid Sub-Line Schedule", LET(lp_c, c_dl * (1 + r_sb * t_br), ROUND((ex_p / lp_c) ^ (1 / (t_hl - t_br)) - 1, 4))))` - **Formula (Zero-Bridge Unlevered Parity Check (Set Sub-Line Deferral = 0 Years))**: `=IF(ISTEXT(E4), E4, ROUND(B3 / E3, 4))` ### Pearson Square Dairy Butterfat & Two-Stream Blend Formula - **URL**: https://sheets.arte-soft.com/en/learn/pearson-square-two-stream-dairy-butterfat-and-solution-blending-formula/ - **Summary**: Calculate Pearson Diagonal Parts of High-Concentration Stream, Diagonal Parts of Low-Concentration Stream, Exact High-Stream Mass (kg), and Exact Low-Stream Mass (kg). *Table — Raymond Pearson’s diagonal subtraction solves simultaneous two-stream mass + component balances in a single step!:* | Pearson Square Dairy KPI (38.0% Cream + 0.10% Skim -> 5,000 kg @ 3.50% Fat) | Formula | Verified Output | | --- | --- | --- | | Pearson High-Stream (Cream) Parts | Target_Fat_Pct - Low_Skim_Fat_Pct | 3.40 parts (1.90 parts @ 2.00% milk) | | Pearson Low-Stream (Skim) Parts | High_Cream_Fat_Pct - Target_Fat_Pct | 34.50 parts (36.00 parts @ 2.00% milk) | | Required 38% Cream Mass (kg) | Batch_kg * ((C_T - C_L) / (C_H - C_L)) | 448.55 kg (250.66 kg @ 2.00% milk) | | Required 0.10% Skim Mass (kg) | Batch_kg * ((C_H - C_T) / (C_H - C_L)) | 4,551.45 kg (4,749.34 kg @ 2.00% milk) | - **Formula (Exact Two-Stream Pearson Square Mass-Balance Standardization Formula)**: `=LET(ch_p, B2, cl_p, B3, ct_p, B4, mt_k, B5, IF(OR(cl_p < 0, ch_p <= cl_p, ch_p > 100, ct_p <= cl_p, ct_p >= ch_p, mt_k <= 0), "Invalid Blend Input", ROUND(mt_k * ((ch_p - ct_p) / (ch_p - cl_p)), 2)))` - **Formula (Reduced-Fat 2.00% Retail Milk Run Switchover Check (Set Target Fat C_T = 2.00%))**: `=IF(ISTEXT(E5), E5, ROUND(B5 * ((B4 - B3) / (B2 - B3)), 2))` ### PECARN Pediatric Head Injury / Trauma CT Algorithm (Children >= 2 Years) - **URL**: https://sheets.arte-soft.com/en/learn/pecarn-pediatric-blunt-head-trauma-ct-decision-rule/ - **Summary**: Apply Kuppermann's 42,412-child PECARN Pediatric Head Trauma Rule (children >= 2 years with GCS 14–15) to avoid unnecessary ionizing head CT radiation while catching clinically important TBI (ciTBI). *Table — Protect children from unnecessary ionizing cranial CT scans with >99.9% NPV!:* | PECARN >= 2 yr Presentation (GCS 14–15) | Tier 1 Flags (AMS / Basilar) | Tier 2 Flags (LOC/Vomit/Mech/HA) | PECARN Guidance | | --- | --- | --- | --- | | Minor Fall, Alert, Asymptomatic | 0 Tier-1 flags | 0 Tier-2 flags | Very Low Risk (<0.05% ciTBI): CT Not Recommended | | Brief Vomiting x1, Normal Exam | 0 Tier-1 flags | 1 Tier-2 flag | Intermediate (~0.9%): ED Observation vs CT | | Somnolent (GCS 14) or Battle Sign | >= 1 Tier-1 flag | Any | High Risk (~4.3% ciTBI): Head CT Recommended | - **Formula (PECARN Head CT Triage Recommendation (Children >= 2 Years, GCS 14–15))**: `=IF(OR(MIN(B2:B7) < 0, MAX(B2:B7) > 1), "Invalid Binary Flag (0 or 1)", IF(SUM(B2:B3) >= 1, "High Risk (~4.3% ciTBI): Head CT Recommended", IF(SUM(B4:B7) >= 1, "Intermediate Risk (~0.9%): Observation vs CT", "Very Low Risk (<0.05% ciTBI): CT Not Recommended")))` - **Formula (Total Intermediate Tier-2 Symptom Count (Helps Weigh Observation vs CT))**: `=SUM(B4:B7)` ### Pediatric Trauma Score (PTS) Tepas Field Triage Formula (-6 to +12) - **URL**: https://sheets.arte-soft.com/en/learn/pediatric-trauma-score-pts-tepas-prehospital-triage-formula/ - **Summary**: Calculate Joseph Tepas’s -6 to +12 Pediatric Trauma Score across Weight, Airway, Systolic BP, CNS Level, Cutaneous Wound, and Skeletal Fracture (scored +2, +1, or -1)—flagging PTS <= 8 for designated Pediatric Trauma Center transport. *Table — Account for infant body size and airway vulnerability in prehospital pediatric trauma triage!:* | PTS Component (No 0 Score Exists!) | +2 Points (Optimal) | +1 Point (Compromised) | -1 Point (Critical) | | --- | --- | --- | --- | | 1. Weight & 3. Systolic BP | > 20 kg & > 90 mmHg | 10–20 kg & 50–90 mmHg | < 10 kg & < 50 mmHg | | 2. Airway & 4. CNS Level | Normal & Awake | Maintainable & Obtunded/LOC | Unmaintainable & Coma | | 5. Wound & 6. Skeletal | None & None | Minor Cut & Closed Single Fx | Major/Penetrating & Open/Multi Fx (-> PTS <= 8 Transfer!) | - **Formula (Total Pediatric Trauma Score PTS (-6 to +12 Points))**: `=IF(OR(B2 <= 0, B4 < 0, B3 = 0, B5 = 0, B6 = 0, B7 = 0), "Invalid PTS Code (Use +2, +1, or -1)", IF(B2 > 20, 2, IF(B2 >= 10, 1, -1)) + B3 + IF(B4 > 90, 2, IF(B4 >= 50, 1, -1)) + B5 + B6 + B7)` - **Formula (Pediatric Trauma Center Field Triage Recommendation (PTS <= 8 Cutoff))**: `=IF((IF(B2 > 20, 2, IF(B2 >= 10, 1, -1)) + B3 + IF(B4 > 90, 2, IF(B4 >= 50, 1, -1)) + B5 + B6 + B7) <= 8, "PTS <= 8: Direct Transport to Designated Pediatric Trauma Center", "PTS 9-12: Low Mortality Risk — Standard Trauma Evaluation")` ### Practice mg/kg/day to mg per Dose and mL Conversions - **URL**: https://sheets.arte-soft.com/en/learn/pediatric-weight-mg-per-kg-suspension-dosing-and-max-cap/ - **Summary**: A fictional spreadsheet exercise for a supplied daily regimen, daily cap, dose count and liquid concentration. Distinguish daily amounts from per-dose quantities. *Table — Inputs and units:* | Cell | Meaning | | --- | --- | | B2 | Weight in kg | | B3 | Supplied total daily regimen in mg/kg/day | | B4 | Positive integer number of equal doses per day | | B5 | Supplied maximum daily amount in mg/day | | B6 | Amount in mg shown in the concentration ratio | | B7 | Volume in mL corresponding to B6 | - **Formula (Apply the supplied daily cap)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0,B7<=0,B4<>INT(B4)),"Require positive inputs and whole doses per day",MIN(B5,B2*B3)))` - **Formula (Divide into equal amounts)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0,B7<=0,B4<>INT(B4)),"Require positive inputs and whole doses per day",MIN(B5,B2*B3)/B4))` - **Formula (Convert mass to volume without premature rounding)**: `=IF(COUNT(B2:B7)<>6,"Complete numeric inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0,B7<=0,B4<>INT(B4)),"Require positive inputs and whole doses per day",(MIN(B5,B2*B3)/B4)*B7/B6))` ### Peer review a spreadsheet answer: value, formula and explanation - **URL**: https://sheets.arte-soft.com/en/learn/peer-review-a-formula-explanation/ - **Summary**: Use a two-person practice exercise to distinguish a correct number from a reusable formula. Discuss a cell, propose a correction and verify it before acceptance. ### PEG Ratio & Benjamin Graham Number SQRT(22.5 * EPS * BVPS) stock valuation - **URL**: https://sheets.arte-soft.com/en/learn/peg-ratio-and-benjamin-graham-number-intrinsic-value/ - **Summary**: Practice PEG and the Graham-number heuristic using consistent per-share inputs. Neither calculation establishes fair value or investment suitability. *Table — Compare two screening heuristics with explicit input conventions:* | Valuation Metric (Price=$54, EPS=$3.00, Growth=20%, BVPS=$24) | Formula | Result | | --- | --- | --- | | Trailing P/E Multiple | Price / EPS = $54 / $3.00 | 18.0x | | Peter Lynch PEG Ratio | (Price / EPS) / GrowthPct = 18 / 20 | 0.90 (screening ratio) | | Benjamin Graham Number ($) | SQRT(22.5 * 3.00 * 24.00) = SQRT(1620) | $40.25 | | Loss-Making Guard (EPS = -$2.00) | IF((EPS<=0)+(BVPS<=0)>0, "N/A", ...) | "N/A" (Prevents false SQRT!) | - **Formula (Calculate PEG Ratio (with decimal-vs-whole-percent normalization))**: `=IF(OR(COUNT(A2:C2)<>3,A2<=0),"Invalid inputs",IF((B2 <= 0) + (C2 <= 0) > 0, "N/A", ROUND((A2 / B2) / (C2 * 100), 2)))` - **Formula (Benjamin Graham Number with negative-EPS / negative-BVPS safety guard)**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER(D2))),"Invalid inputs",IF((B2 <= 0) + (D2 <= 0) > 0, "N/A", ROUND(SQRT(22.5 * B2 * D2), 2)))` ### PELD Score Calculator: Pediatric End-Stage Liver Disease Transplant Formula - **URL**: https://sheets.arte-soft.com/en/learn/peld-score-pediatric-end-stage-liver-disease-transplant-formula/ - **Summary**: Calculate the UNOS Pediatric End-Stage Liver Disease (PELD) score for children under 12 from bilirubin, INR, albumin, age < 1 year, and growth failure (< -2 SD) using floor-clamped natural logarithms. *Table — Why pediatric transplant allocation replaces creatinine with albumin, infant age, and growth failure!:* | Pediatric Liver Candidate (Bili=6.5, INR=1.8, Alb=2.6) | Age < 1 yr & Growth < -2 SD | Continuous PELD | Rounded Allocation Integer | | --- | --- | --- | --- | | 8-Month Infant with Growth Failure | Age<1 = 1, Growth = 1 | 24.4 | 24 (High Transplant Priority) | | 5-Year Child Without Growth Failure | Age<1 = 0, Growth = 0 | 13.3 | 13 (Moderate Priority) | | Compensated Labs (Bili=0.8, INR=1.0, Alb=4.0, 0, 0) | Clamped >= 1.0 | -9.5 | -10 (Low Waitlist Mortality) | - **Formula (Continuous UNOS PELD Score (1 Decimal))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid PELD Inputs", ROUND(10 * (0.48 * LN(MAX(B2, 1)) + 1.857 * LN(MAX(B3, 1)) - 0.687 * LN(MAX(B4, 1)) + 0.436 * B5 + 0.667 * B6), 1))` - **Formula (Whole-Integer PELD Score)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid PELD Inputs", ROUND(10 * (0.48 * LN(MAX(B2, 1)) + 1.857 * LN(MAX(B3, 1)) - 0.687 * LN(MAX(B4, 1)) + 0.436 * B5 + 0.667 * B6), 0))` ### PELOD-2 (Pediatric Logistic Organ Dysfunction-2) Score & Mortality - **URL**: https://sheets.arte-soft.com/en/learn/pelod-2-pediatric-logistic-organ-dysfunction-picu-score/ - **Summary**: Sum 5 pediatric organ-system dysfunction subscores (Neurologic, Cardiovascular, Renal, Respiratory, Hematologic; 0–33) and compute Leteurtre et al.’s (2013) PICU mortality probability = 100 / (1 + EXP(6.61 - 0.47 * PELOD-2)). *Table — Continuous integer organ scoring—replacing PELOD-1’s bimodal gaps in pediatric sepsis and MODS!:* | 5-Organ Subscore Vector [Neuro, CV, Renal, Resp, Heme] | PELOD-2 Score (0–33) | Log-Odds (-6.61 + 0.47*S) | Predicted PICU Mortality (%) | | --- | --- | --- | --- | | [1, 1, 1, 1, 0] — Mild Resolving MODS | 4 pts | -4.73 | 0.87% | | [2, 3, 2, 2, 2] — Active Multi-Organ Sepsis | 11 pts | -1.44 | 19.15% | | Negative Subscore (< 0) | Invalid | Undefined | "Organ Subscores Cannot Be Negative" | - **Formula (PELOD-2 Predicted PICU Mortality Probability (%))**: `=IF(MIN(B2:B6) < 0, "Organ Subscores Cannot Be Negative", ROUND(100 / (1 + EXP(6.61 - 0.47 * SUM(B2:B6))), 2))` - **Formula (Total PELOD-2 Organ Dysfunction Score (0–33))**: `=IF(MIN(B2:B6) < 0, "Organ Subscores Cannot Be Negative", SUM(B2:B6))` ### Peltier Thermoelectric Cooler (TEC) Net Cooling Power (Qc) & Optimal Current (Imax) - **URL**: https://sheets.arte-soft.com/en/learn/peltier-thermoelectric-cooler-heat-pumping-and-joule-balance/ - **Summary**: Model solid-state Peltier laser/CCD cooling modules via the 3-term cold-plate energy balance Q_c = S_m * T_c * I - 0.5 * I^2 * R_m - K_m * (T_h - T_c) (Watts) and maximum-cooling current I_max = (S_m * T_c) / R_m. *Table — Why cranking DC current too high turns a Peltier cooler into a heater!:* | TEC Drive Current Scenario (Tc = 273.15 K, Th = 313.15 K) | Peltier Pump - Half Joule - Leak | Net Cooling Power Qc (W) | Thermal Operating Regime | | --- | --- | --- | --- | | Efficient COP Operating Point (I = 3.50 A) | 49.71 - 14.70 - 18.00 W | +17.01 W | High-Efficiency Laser/CCD Cooling | | Peak Cooling Current I_max = Sm*Tc / Rm (5.92 A) | 84.08 - 42.04 - 18.00 W | +24.04 W (Peak Qc) | Maximum Heat Lift Limit | | Overdriven Current Runaway (I = 12.00 A) | 170.45 - 172.80 - 18.00 W | -20.35 W (< 0 W) | Joule Runaway — Heating Cold Plate! | - **Formula (Net Cold-Side Peltier Heat Pumping Capacity Q_c (Watts))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 <= 0, B6 <= 0, B7 < 0), "Invalid TEC Inputs", ROUND(B2 * B5 * B7 - 0.5 * (B7 ^ 2) * B3 - B4 * (B6 - B5), 2))` - **Formula (Optimal Maximum-Cooling Current I_max (Amps) = (S_m * T_c) / R_m)**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid TEC Inputs", ROUND((B2 * B5) / B3, 2))` ### PEM Fuel Cell Polarization, LHV Efficiency & Heat Formula - **URL**: https://sheets.arte-soft.com/en/learn/pem-fuel-cell-nernst-activation-ohmic-polarization-and-stack-efficiency/ - **Summary**: Calculate Hydrogen PEM Fuel Cell Operating Voltage V_cell (V) After Activation and Area-Specific Ohmic Losses, Power Density (W/cm²), Anode-Utilization-Adjusted LHV Electrical Efficiency, and Coolant Radiator Waste-Heat Density (W/cm²). *Table — Model why PEM fuel cells peak in efficiency at part load—while sizing truck radiators for full-load heat!:* | PEM Fuel-Cell Polarization Metric (E_rev=1.20 V, V_act=0.36 V, j=1.2 A/cm², ASR=0.10) | Formula | Verified Output | | --- | --- | --- | | Operating Cell Voltage V_cell (V) | E_rev - V_act - j * ASR_ohm | 0.7200 V (0.8300 V @ Part Load) | | Active Power Density (W/cm²) | Current_Density_j * V_cell | 0.8640 W/cm² (0.4150 @ Part Load) | | Net LHV Stack Efficiency | (V_cell / 1.253) * Fuel_Utilization | 0.5631 (0.6492 @ Part Load) | | Waste-Heat Density (W/cm²) | (1.253 - V_cell) * Current_Density_j | 0.6396 W/cm² (0.2115 @ Part Load) | - **Formula (PEM Fuel-Cell LHV Efficiency Formula)**: `=LET(er_v, B2, va_c, B3, jd_a, B4, as_r, B5, uf_a, B6, vc_l, er_v - va_c - jd_a * as_r, IF(OR(er_v <= 0.9, er_v > 1.3, va_c < 0, jd_a <= 0, as_r <= 0, uf_a <= 0.5, uf_a > 1, vc_l <= 0), "Invalid or Shorted Fuel-Cell State", ROUND((vc_l / 1.253) * uf_a, 4)))` - **Formula (Highway Part-Load Efficiency Rise Check (Set V_act = 0.32 V, j = 0.50 A/cm²))**: `=IF(ISTEXT(E4), E4, ROUND((1.253 - (B2 - B3 - B4 * B5)) * B4, 4))` ### PEM Electrolyzer Faradaic H2 Rate & LHV Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/pem-water-electrolyzer-faradaic-hydrogen-rate-and-lhv-efficiency-formula/ - **Summary**: Calculate Multi-Cell PEM / Alkaline Electrolyzer Stack DC Input Power (MW), Faradaic Hydrogen Mass Production Rate (kg H2/hr), Specific Stack Energy Consumption (kWh/kg H2), and Lower Heating Value (33.33 kWh/kg) Efficiency. *Table — Link Faraday’s 2-electron law directly to kWh/kg green-hydrogen stack efficiency!:* | PEM Electrolyzer Stack Metric (400 Cells, 5,000 A, V_cell = 1.85 V, η_F = 99%) | Formula | Verified Output | | --- | --- | --- | | Stack DC Power Input (MW) | (N_cells * I_Amps * V_cell) / 1,000,000 | 3.7000 MW (4.2000 MW @ 2.10 V) | | Faradaic H2 Output (kg/hr) | (N * I * η_F * 3600 * 0.002016) / (2 * 96485) | 74.47 kg/hr | | Specific Stack Energy (kWh/kg) | Stack_Power_kW / H2_Rate_kg_hr | 49.69 kWh/kg (56.40 @ 2.10 V) | | Stack LHV Efficiency | 33.33 / Specific_Energy_kWh_kg | 0.6708 (0.5910 @ 2.10 V EOL) | - **Formula (PEM Electrolyzer Stack LHV Efficiency Formula)**: `=LET(nc_s, B2, ia_s, B3, vc_v, B4, ef_f, B5, IF(OR(nc_s < 1, ia_s <= 0, vc_v < 1.23, vc_v > 3.5, ef_f <= 0.5, ef_f > 1), "Invalid Electrolyzer Stack Input", LET(pw_k, (nc_s * ia_s * vc_v) / 1000, mh_2, (nc_s * ia_s * ef_f * 3600 * 0.002016) / (2 * 96485), sc_e, pw_k / mh_2, ROUND(33.33 / sc_e, 4))))` - **Formula (End-of-Life Catalyst Degradation Check (Set Cell Voltage = 2.10 V))**: `=IF(ISTEXT(E5), E5, ROUND(((B2 * B3 * B4) / 1000) / ((B2 * B3 * B5 * 3600 * 0.002016) / (2 * 96485)), 2))` ### Net Reclassification Improvement (NRI) & Integrated Discrimination Improvement (IDI) - **URL**: https://sheets.arte-soft.com/en/learn/pencina-net-reclassification-improvement-nri-and-idi-formula/ - **Summary**: Evaluate Michael Pencina’s biomarker incremental value metrics: additive Event + Non-Event NRI and probability-slope separation gain IDI = (IS_new - IS_old). *Table — Why a clinically decisive biomarker like coronary calcium or hs-Troponin barely nudges ΔAUC by 0.01—yet moves patients across statin thresholds!:* | Biomarker Reclassification Component | Formula Definition | Cohort Result (200 Events / 800 Controls) | Clinical Interpretation | | --- | --- | --- | --- | | Event NRI_e = (54 - 22) / 200 | Net cases moved to higher tier | +0.1600 (+16.0%) | More future MI cases treated | | Non-Event NRI_ne = (168 - 96) / 800 | Net controls moved to lower tier | +0.0900 (+9.0%) | Fewer healthy controls overtreated | | Total Additive NRI & IDI | NRI_e + NRI_ne ; ΔSlope | NRI = +0.2500 / IDI = +0.0750 | Strong net reclassification gain | - **Formula (Pencina Overall Net Reclassification Improvement (NRI = NRI_events + NRI_nonevents))**: `=IF(OR(B2 <= 0, B5 <= 0, B3 + B4 > B2, B6 + B7 > B5), "Invalid Reclassification Counts", ROUND((B3 - B4) / B2 + (B6 - B7) / B5, 4))` - **Formula (Integrated Discrimination Improvement IDI = (p̄_new,ev - p̄_old,ev) - (p̄_new,ne - p̄_old,ne))**: `=IF(OR(B2 <= 0, B5 <= 0), "Invalid Reclassification Counts", ROUND((B8 - B9) - (B10 - B11), 4))` ### Peng-Robinson EOS: Acentric Kappa & Alpha(T) Cohesion Function - **URL**: https://sheets.arte-soft.com/en/learn/peng-robinson-acentric-factor-kappa-and-alpha-cohesion/ - **Summary**: Calculate Peng–Robinson kappa, reduced temperature and alpha with unrounded helper cells, validated inputs and an explicit choice of acentric-factor correlation. - **Formula (Calculate kappa in B6)**: `=IF(ISNUMBER(B2),IF(B2>0.491,"Choose a high-acentric-factor correlation",0.37464+1.54226*B2-0.26992*B2^2),"Enter numeric acentric factor")` - **Formula (Calculate reduced temperature in B7)**: `=IF(COUNT(B3:B4)<>2,"Enter numeric temperatures",IF(OR(B3<=0,B4<=0),"Temperatures must be positive kelvin",B4/B3))` - **Formula (Calculate alpha in B8)**: `=IF(ISNUMBER(B6),IF(ISNUMBER(B7),(1+B6*(1-SQRT(B7)))^2,B7),B6)` ### Penman Combination Equation Formula: Reservoir & Open-Water Evaporation (mm/day) - **URL**: https://sheets.arte-soft.com/en/learn/penman-combination-open-water-evaporation-psychrometric-formula/ - **Summary**: Combine net solar radiation energy balance E_rad and aerodynamic wind-vapor deficit drying power E_aero without needing surface water temperature via Howard L. Penman’s 1948 equation E_0 = (Delta * E_rad + gamma * E_aero) / (Delta + gamma). *Table — How Howard Penman’s 1948 combination trick eliminated unmeasured water-surface skin temperature!:* | Hydrometeorological Regime (Delta=0.185, gamma=0.066 kPa/°C) | Radiation Weight Delta/(Delta+gamma) | Penman Evaporation E_0 (mm/day) | | --- | --- | --- | | Moderate Wind: E_rad = 6.2, E_aero = 3.8 mm/d | 0.7371 (73.71% Energy-Driven) | 5.569 mm/day | | Dry Advective Wind: E_rad = 6.2, E_aero = 7.5 mm/d | 0.7371 | 6.542 mm/day | | Invalid Psychrometric Constant gamma <= 0 | Error Guard | "Invalid Penman Hydrometeorology Inputs" | - **Formula (Penman Open-Water Combination Evaporation Rate E_0 (mm/day) = (Delta*E_rad + gamma*E_aero)/(Delta + gamma))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 < 0), "Invalid Penman Hydrometeorology Inputs", ROUND((B2 * B4 + B3 * B5) / (B2 + B3), 3))` - **Formula (Priestley-Taylor Energy-Term Share = Delta / (Delta + gamma))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B5 < 0), "Invalid Penman Hydrometeorology Inputs", ROUND(B2 / (B2 + B3), 4))` ### Penn State 2003b & Modified 2010 ICU Ventilator Calorie Formula: Mifflin + T_max + V_E - **URL**: https://sheets.arte-soft.com/en/learn/penn-state-2003b-and-2010-mechanically-ventilated-icu-calorie-formula/ - **Summary**: Estimate Resting Energy Expenditure in mechanically ventilated ICU patients when indirect calorimetry is unavailable using David Frankenfield’s ASPEN-recommended Penn State 2003b and Modified 2010 (Age >= 60 & BMI >= 30) equations. *Table — Why ASPEN endorses Penn State 2003b / 2010 over static kcal/kg guesses in ventilated ICU patients!:* | ICU Patient Subgroup | Active Penn State Equation (kcal/day) | Validation Accuracy (Within +-10% of IC) | | --- | --- | --- | | Non-Obese Adults OR Obese Age < 60 yr | PSU 2003b = Mifflin * 0.96 + T_max_C * 167 + V_E * 31 - 6212 | ~67%–72% unbiased agreement | | Older Obese Adults (Age >= 60 AND BMI >= 30) | PSU 2010 = Mifflin * 0.71 + T_max_C * 85 + V_E * 64 - 3085 | ~74% agreement in elderly obesity | - **Formula (Auto-Switching Penn State ICU Resting Energy Expenditure (2003b vs 2010, kcal/day))**: `=IF(OR(B2 < 600, B2 > 4000, B3 < 18, B3 > 120, B4 < 12, B4 > 90, B5 < 34, B5 > 43, B6 <= 0, B6 > 35), "Invalid ICU Ventilator or Anthropometric Inputs", ROUND(IF(AND(B3 >= 60, B4 >= 30), B2 * 0.71 + B5 * 85 + B6 * 64 - 3085, B2 * 0.96 + B5 * 167 + B6 * 31 - 6212), 0))` - **Formula (Selected Penn State Equation Label)**: `=IF(AND(B3 >= 60, B4 >= 30), "Modified Penn State 2010 (Age >= 60 & BMI >= 30)", "Penn State 2003b (Standard Ventilated Adult)")` ### Pension Lump-Sum Buyout vs Annuity Breakeven Formula - **URL**: https://sheets.arte-soft.com/en/learn/pension-lump-sum-buyout-vs-single-life-annuity-implied-rate-and-breakeven/ - **Summary**: Compare a Corporate Pension Lump-Sum Buyout Offer against a Guaranteed Annuity by contrasting Naive Undiscounted Payback (Lump / Pmt) with True Discounted Breakeven Longevity -LN(1 - Lump*r/Pmt)/LN(1 + r) and Present-Value Advantage. *Table — Never evaluate a pension buyout offer using undiscounted Lump_Sum / Annual_Pension!:* | Pension Buyout Metric ($300,000 Lump vs $24,000/yr Annuity, r=5.0%, T=20 Yrs) | Formula | Verified Output | | --- | --- | --- | | Naive 0%-Return Payback (Yrs) | Lump_Sum / Annual_Pmt | 12.50 yrs (Ignores IRA Yield!) | | Horizon Annuity Present Value | Pmt * (1 - (1 + r)^(-T)) / r | $299,093.05 | | True Discounted Breakeven T* | -LN(1 - Lump*r/Pmt) / LN(1 + r) | 20.10 yrs ("Perpetual" @ r>=8%!) | | Net Lump-Sum PV Advantage ($) | Lump_Sum - Annuity_PV | +$906.95 | - **Formula (Discounted Pension Buyout Breakeven Horizon Formula)**: `=LET(lm_p, B2, pm_t, B3, rt_r, B4, hr_t, B5, IF(OR(lm_p <= 0, pm_t <= 0, rt_r <= 0, hr_t < 1), "Invalid Buyout Comparison", IF(lm_p * rt_r >= pm_t, "Perpetual: Lump Sum Never Depletes", ROUND(-LN(1 - (lm_p * rt_r) / pm_t) / LN(1 + rt_r), 2))))` - **Formula (Self-Sustaining Endowment Threshold Check (Set r = 8.0%))**: `=IF(ISTEXT(E3), E3, ROUND(B2 - E3, 2))` ### Excess-of-Loss (XL) Layer & Rate-on-Line Formula - **URL**: https://sheets.arte-soft.com/en/learn/per-risk-excess-of-loss-reinsurance-layer-and-rate-on-line-formula/ - **Summary**: Calculate per-occurrence Excess-of-Loss reinsurance recovery MIN(Limit, MAX(0, Loss - Retention)), Burning-Cost Rate, Loaded Treaty Rate-on-Line (ROL = Premium / Limit), and Payback Years. *Table — Clip individual catastrophe and large-property claims cleanly to an XL treaty layer!:* | XL Treaty Metric ($3,000k xs $1,000k; Claims 600, 1250, 1200, 900) | Formula | Verified Output | | --- | --- | --- | | Total Ceded Layer Recovery ($k) | SUM of MIN(Limit, MAX(0, Loss_i - Retention)) | 450.00 (0 + 250 + 200 + 0) | | Historical Burning-Cost Rate | Total_Ceded / Subject_Premium ($15,000k) | 0.0300 (3.00% of Subject Prem) | | Loaded Treaty Premium ($k, 1.20x Load) | Total_Ceded * Loading_Factor | 540.00 | | Rate-on-Line (ROL) & Payback Period | Treaty_Premium / Limit; 1 / ROL | 0.1800 (18.0% ROL; 5.5556 yr) | - **Formula (Per-Occurrence Excess-of-Loss Layer Recovery Formula)**: `=IF(OR($B$7 < 0, $B$8 <= 0), "Invalid XL Layer", MIN($B$8, MAX(0, B2 - $B$7)))` - **Formula (Loaded Treaty Rate-on-Line (ROL) Formula)**: `=IF(OR(B7 < 0, B8 <= 0, B9 <= 0, B10 < 1), "Invalid XL Layer", ROUND((SUM(C2:C5) * B10) / B8, 4))` ### PERC Rule-Out Criteria & Revised Geneva Score for Pulmonary Embolism - **URL**: https://sheets.arte-soft.com/en/learn/perc-rule-and-revised-geneva-pulmonary-embolism-score/ - **Summary**: Evaluate Jeffrey Kline's 8-item Pulmonary Embolism Rule-Out Criteria (PERC = 0 rules out PE without D-dimer in low-pretest patients) alongside the objective Revised Geneva PE Score. *Table — Stratify pretest pulmonary embolism probability and avoid unnecessary CT angiograms!:* | PE Clinical Decision Rule | Point / Trigger Structure | Low-Risk Example | Triggered / High-Risk Example | | --- | --- | --- | --- | | PERC 8-Criterion Rule | 8 binary 0/1 flags (Low Gestalt only) | 0 / 8 -> PERC Negative (No D-Dimer) | >= 1 / 8 -> PERC Positive (Order D-Dimer) | | Revised Geneva (0–3 Low) | Objective Age, HR, History & Exam | Age 45, HR 72, no flags -> 0 pts | Low PE Probability (0–3) | | Revised Geneva (>= 11 High) | HR >= 95 (+5), Prior DVT (+3), Edema (+4) | — | 12 pts -> High PE Probability (>= 11) | - **Formula (PERC 8-Criterion Rule-Out Decision (Low-Pretest Patients))**: `=IF(SUM(B2:B9) = 0, "PERC Negative (<2% Risk - No D-Dimer)", "PERC Positive (Proceed to D-Dimer)")` - **Formula (Revised Geneva Objective PE Pretest Score & Risk Tier)**: `=--(D2 > 65) + IF(D3 >= 95, 5, IF(D3 >= 75, 3, 0)) + (3 * D4) + (2 * D5) + (2 * D6) + (3 * D7) + (2 * D8) + (4 * D9)` ### Percent of goal and budget variance formulas (Revenue vs Expense sign rules) - **URL**: https://sheets.arte-soft.com/en/learn/percent-of-goal-and-budget-variance-tracker/ - **Summary**: Calculate quota attainment %, remaining amount to goal, and favorable vs unfavorable FP&A variances for both revenue and cost centers. *Table — Why Revenue variance and Expense variance have opposite favorable signs:* | Line Item (A) | Type (B) | Budget (C) | Actual (D) | % of Budget | Favorable Variance | | --- | --- | --- | --- | --- | --- | | Subscriptions | Revenue | 50000 | 42500 | 85.0% | -7,500 (Unfavorable) | | Cloud Hosting | Expense | 12000 | 10500 | 87.5% | +1,500 (Favorable savings) | - **Formula (Percent of goal and profit-directional variance formulas)**: `=IF(C2=0, "No target", ROUND(D2 / C2, 4))` - **Formula (Profit-favorable variance (positive = good for both Revenue & Expense))**: `=IF(B3="Expense", C3-D3, IF(B3="Revenue", D3-C3, "Unknown type"))` ### Percent Sold, Remaining Allocation & Portfolio Weighted Completion Formula - **URL**: https://sheets.arte-soft.com/en/learn/percent-sold-allocation-completion-and-remaining-quota-formula/ - **Summary**: Calculate SKU or event-tier percent sold (Sold / Allocation) with zero-allocation protection, oversold waitlist detection, and true volume-weighted portfolio percent sold. *Table — Guarding zero-capacity holdbacks and avoiding unweighted averages of percentages:* | Tier | Allocated | Sold | Pct Sold & Status | | --- | --- | --- | --- | | VIP Pass | 200 | 170 | 0.8500 (85.0% -> SELLING) | | General Tier | 500 | 500 | 1.0000 (100.0% -> SOLD_OUT) | | Early Bird | 100 | 112 | 1.1200 (112.0% -> OVERSOLD_WAITLIST) | | Holdback Lot | 0 | 0 | 0.0000 (UNRELEASED — guarded) | - **Formula (Zero-Safe Row Percent Sold & Inventory Status Formula)**: `=IF(B2 <= 0, 0, ROUND(C2 / B2, 4))` - **Formula (True Volume-Weighted Portfolio Percent Sold)**: `=IF(SUM(B2:B5) <= 0, 0, ROUND(SUM(C2:C5) / SUM(B2:B5), 4))` ### Percentage change in Excel: increases, decreases and a zero starting value - **URL**: https://sheets.arte-soft.com/en/learn/percentage-change-increase-decrease-zero-base/ - **Summary**: Compare monthly workshop bookings using the original month as the base. Distinguish a percentage change from an absolute difference and show an explicit result when the starting value is zero. *Table — Choose the starting value before calculating:* | Period comparison (A) | Original bookings (B) | New bookings (C) | | --- | --- | --- | | April to May | 80 | 100 | | May to June | 100 | 80 | | New workshop | 0 | 20 | - **Formula (Subtract the original, then divide by the original)**: `=(C2-B2)/B2` - **Formula (Handle a zero starting value explicitly)**: `=IF(B4=0,"No percentage base",(C4-B4)/B4)` ### PERCENTILE.INC function: calculate P50 and P90 service-level thresholds - **URL**: https://sheets.arte-soft.com/en/learn/percentile-inc-p50-p90-thresholds/ - **Summary**: Report 50th and 90th percentile latency or delivery times using a 0-to-1 k fraction, understand linear interpolation between points, and catch #NUM! errors. *Table — Five ordered delivery durations:* | k input | Meaning | Result on 10..50 | | --- | --- | --- | | 0 | Minimum (0th percentile) | 10 | | 0.5 | Median / P50 | 30 | | 0.9 | 90th percentile / P90 | 46 | | 1 | Maximum (100th percentile) | 50 | - **Formula (Pass k as a decimal between 0 and 1)**: `=PERCENTILE.INC(A2:A6,C2)` ### Salary benchmarking formulas: Compa-Ratio, Range Penetration, and Percentile Rank - **URL**: https://sheets.arte-soft.com/en/learn/percentile-rank-and-salary-compa-ratio/ - **Summary**: Compare salary with a defined band midpoint and range, and calculate a rank within the example peer set. *Table — Three distinct HR compensation metrics every analyst needs:* | Employee | Salary (B) | Band $80k–$100k ($90k Mid) | Compa-Ratio | Range Penetration | | --- | --- | --- | --- | --- | | P1 | 78000 | Below Min | 0.8667 | -10.0% | | P2 | 86000 | Lower Half | 0.9556 | 30.0% | | P3 | 94500 | Upper Half | 1.0500 (105%) | 72.5% (Peer P50) | | P4 | 102000 | Above Max | 1.1333 | 110.0% | | P5 | 110000 | Above Max | 1.2222 | 150.0% | - **Formula (Compa-Ratio, Range Penetration, and Peer Percentile Rank formulas)**: `=ROUND(B4 / D4, 4)` - **Formula (Band Range Penetration and Peer Percentile Rank)**: `=ROUND((B4 - C4) / (E4 - C4), 4)` - **Formula (Peer rank for the demonstrated distinct observations)**: `=ROUND(COUNTIF($B$2:$B$6, "<" & B4) / (COUNT($B$2:$B$6) - 1), 4)` ### Interpolated Percentile Rank: PERCENTRANK.INC vs PERCENTRANK.EXC Formulas - **URL**: https://sheets.arte-soft.com/en/learn/percentrank-inc-and-exc-interpolated-percentile-rank/ - **Summary**: Compute exact inclusive [0, 1] and exclusive (0, 1) percentile ranks with linear interpolation between bracketing observations using COUNTIF, MAXIFS, and MINIFS. *Table — How linear interpolation works between bracketing sample values:* | Target Value (x) | Brackets [lo, hi] | Interpolation frac | PERCENTRANK.INC | PERCENTRANK.EXC | | --- | --- | --- | --- | --- | | 20 (Sample Min) | [20, 20] | 0.00 | 0 / 4 = 0.0000 | 1 / 6 = 0.1667 | | 50 (Median) | [50, 50] | 0.00 | 2 / 4 = 0.5000 | 3 / 6 = 0.5000 | | 65 (Interpolated) | [50, 80] | 0.50 | 2.5 / 4 = 0.6250 | 3.5 / 6 = 0.5833 | | 100 (Sample Max) | [100, 100] | 0.00 | 4 / 4 = 1.0000 | 5 / 6 = 0.8333 | - **Formula (Exact Inclusive Percentile Rank (PERCENTRANK.INC))**: `=IF(OR(E2 < MIN(B2:B6), E2 > MAX(B2:B6)), "Out of Sample Bounds", LET(lo, MAXIFS(B2:B6, B2:B6, "<=" & E2), hi, MINIFS(B2:B6, B2:B6, ">=" & E2), kLo, COUNTIF(B2:B6, "<" & lo), frac, IF(hi = lo, 0, (E2 - lo) / (hi - lo)), ROUND((kLo + frac) / (COUNT(B2:B6) - 1), 4)))` - **Formula (Exact Exclusive Percentile Rank (PERCENTRANK.EXC))**: `=IF(OR(E2 < MIN(B2:B6), E2 > MAX(B2:B6)), "Out of Sample Bounds", LET(lo, MAXIFS(B2:B6, B2:B6, "<=" & E2), hi, MINIFS(B2:B6, B2:B6, ">=" & E2), kLo, COUNTIF(B2:B6, "<" & lo), frac, IF(hi = lo, 0, (E2 - lo) / (hi - lo)), ROUND((kLo + 1 + frac) / (COUNT(B2:B6) + 1), 4)))` ### Perforated Acoustic Panel Porosity & Peak Hz Formula - **URL**: https://sheets.arte-soft.com/en/learn/perforated-acoustic-panel-absorber-open-area-porosity-end-correction-and-peak-hz/ - **Summary**: Calculate Square-Grid Perforation Open-Area Porosity (%), Ingard-Fok Hole-Interaction Effective Neck Length teff (mm), Resonant Peak Absorption Frequency f0 (Hz), and Wavelength (m). *Table — Ignoring Ingard-Fok hole-to-hole radiation end correction over-predicts perforated wood auditorium wall resonant frequency by 12%!:* | Ingard-Fok Perforated Absorber KPI (Panel t=12 mm, Sound Speed c=343 m/s) | Formula | Verified Output | | --- | --- | --- | | Open-Area Porosity epsilon (%) | ((PI() * d_mm^2) / (4 * Pitch_b_mm^2)) * 100 | 4.91% low-mid tune (19.63% transparent) | | Effective Neck Length teff (mm) | t + 0.8*d*(1 - 1.47*SQRT(eps) + 0.47*eps^1.5) | 15.26 mm (14.49 mm @ dense pitch) | | Resonant Peak Frequency f0 (Hz) | (c / (2*PI())) * SQRT(eps / ((teff/1000)*(D/1000))) | 384.0 Hz warm speech (1,074.0 Hz @ 19.6%) | | Resonant Acoustic Wavelength (m) | Speed_Of_Sound_c_m_s / Peak_Freq_f0_Hz | 0.893 m (0.319 m @ 1,074 Hz) | - **Formula (Ingard-Fok Coupled-Aperture End Correction & Distributed Helmholtz f0 Formula)**: `=LET(dm_h, B2, bp_m, B3, tp_m, B4, dc_m, B5, cs_m, B6, ep_s, (PI() * (dm_h ^ 2)) / (4 * (bp_m ^ 2)), te_f, tp_m + 0.8 * dm_h * (1 - 1.47 * SQRT(ep_s) + 0.47 * (ep_s ^ 1.5)), f0_h, (cs_m / (2 * PI())) * SQRT(ep_s / ((te_f / 1000) * (dc_m / 1000))), IF(OR(dm_h < 0.3, dm_h > 30, bp_m < 1.5 * dm_h, tp_m < 0.5, tp_m > 50, dc_m < 10, dc_m > 600, cs_m < 310, cs_m > 370), "Invalid Panel Input", ROUND(cs_m / f0_h, 3)))` - **Formula (High-Porosity 19.6% Grille + Shallow 35 mm Furring (`d = 8` mm, `b = 16` mm, `D = 35` mm) Check)**: `=IF(ISTEXT(E5), E5, LET(ep_s, (PI() * (B2 ^ 2)) / (4 * (B3 ^ 2)), te_f, B4 + 0.8 * B2 * (1 - 1.47 * SQRT(ep_s) + 0.47 * (ep_s ^ 1.5)), ROUND((B6 / (2 * PI())) * SQRT(ep_s / ((te_f / 1000) * (B5 / 1000))), 1)))` ### Periodic Order Quantity (POQ) Time-Supply Interval & Discrete MRP Lot Sizing - **URL**: https://sheets.arte-soft.com/en/learn/periodic-order-quantity-poq-time-supply-interval-and-holding-cost/ - **Summary**: Convert fractional Wilson EOQ into an integer MRP order cycle T_POQ = MAX(1, ROUND(EOQ / D_period, 0)) and evaluate discrete Periodic Order Quantity lot size and cycle cost. *Table — Why MRP planners convert continuous EOQ into an integer number of periods (POQ):* | Lot-Sizing Metric (D=250/wk, S=400, h=0.50/wk) | Formula | Result | | --- | --- | --- | | Continuous Wilson EOQ | SQRT(2 * 250 * 400 / 0.50) | 632.46 units (2.53 weeks) | | Integer POQ Cycle T_POQ | MAX(1, ROUND(EOQ / D_wk, 0)) | 3 weeks | | POQ Release Quantity Q_POQ | T_POQ * D_wk | 750 units | | Weekly Setup + Holding Cost | (S / T_POQ) + 0.5 * Q_POQ * h_wk | 320.83 (+1.45% vs EOQ optimum 316.23) | - **Formula (Integer POQ Order Interval T_POQ Formula (Periods))**: `=LET(eoq_u, SQRT((2 * B2 * B3) / B4), MAX(1, ROUND(eoq_u / B2, 0)))` - **Formula (POQ Lot Size & Weekly Total Relevant Cost Formula)**: `=ROUND((B3 / E4) + 0.5 * E5 * B4, 2)` ### Permutations Without and With Repetition (PERMUT & PERMUTATIONA Formulas) - **URL**: https://sheets.arte-soft.com/en/learn/permut-and-permutationa-ordered-arrangements-with-and-without-repetition/ - **Summary**: Count ordered sequences without replacement using FACT(n) / FACT(n - k) and with replacement using POWER(n, k), plus compute no-repeat collision probabilities. *Table — Ordered sequences: without replacement vs. with replacement:* | Pool Size (n) | Positions (k) | Without Repetition n!/(n-k)! | With Repetition n^k | Distinct-Only Share | | --- | --- | --- | --- | --- | | 10 digits | 3 slots | 720 | 1,000 | 0.7200 | | 10 digits | 4 slots | 5,040 | 10,000 | 0.5040 | | 8 runners | 3 medals | 336 | 512 | 0.6563 | | 5 symbols | 5 slots | 120 | 3,125 | 0.0384 | - **Formula (Permutations Without Repetition (PERMUT Equivalent))**: `=IF(OR(B2 < 0, B2 > A2), "#NUM!", FACT(A2) / FACT(A2 - B2))` - **Formula (Permutations With Repetition (PERMUTATIONA) & No-Repeat Share)**: `=POWER(A2, B2)` ### Pesaran CD Test for Cross-Sectional Dependence in Panels - **URL**: https://sheets.arte-soft.com/en/learn/pesaran-cd-cross-sectional-dependence-panel-correlation-test/ - **Summary**: Compute Pesaran’s (2004) cross-sectional dependence statistic CD = SQRT(2*T / (N*(N-1))) * SUM(rho_ij) and compare it against Breusch-Pagan LM across panel residual columns. *Table — Detect common shocks in short-T panels where Breusch-Pagan LM over-rejects:* | Panel Dependence Diagnostic | Formula Structure (N = 4, T = 6) | Sample Result | | --- | --- | --- | | Sum of M = 6 Pairwise Correlations | r_12 + r_13 + r_14 + r_23 + r_24 + r_34 | 3.5000 (Mean = 0.5833) | | Pesaran CD Z-Statistic | SQRT(2*T / (N*(N - 1))) * SUM(r_ij) | 3.5000 (Reject H_0 at 5%) | | Breusch-Pagan LM Chi-Square (df = 6) | T * SUM(r_ij^2) | 16.2600 | - **Formula (Pesaran CD Statistic Across Panel Residual Columns Formula)**: `=LET(u_1, B2:B7, u_2, C2:C7, u_3, D2:D7, u_4, E2:E7, t_len, ROWS(u_1), n_units, 4, IF(t_len < 3, "Insufficient Time Periods", LET(r_12, CORREL(u_1, u_2), r_13, CORREL(u_1, u_3), r_14, CORREL(u_1, u_4), r_23, CORREL(u_2, u_3), r_24, CORREL(u_2, u_4), r_34, CORREL(u_3, u_4), sum_r, r_12 + r_13 + r_14 + r_23 + r_24 + r_34, ROUND(SQRT((2 * t_len) / (n_units * (n_units - 1))) * sum_r, 4))))` - **Formula (Breusch-Pagan Panel LM = T * SUM(rho_ij^2) Comparison Formula)**: `=LET(u_1, B2:B7, u_2, C2:C7, u_3, D2:D7, u_4, E2:E7, t_len, ROWS(u_1), r_12, CORREL(u_1, u_2), r_13, CORREL(u_1, u_3), r_14, CORREL(u_1, u_4), r_23, CORREL(u_2, u_3), r_24, CORREL(u_2, u_4), r_34, CORREL(u_3, u_4), ROUND(t_len * (r_12^2 + r_13^2 + r_14^2 + r_23^2 + r_24^2 + r_34^2), 4))` ### Simplified PESI (sPESI) Pulmonary Embolism 30-Day Mortality & Outpatient Score - **URL**: https://sheets.arte-soft.com/en/learn/pesi-and-simplified-spesi-pulmonary-embolism-severity-index/ - **Summary**: Calculate David Jiménez’s ESC-recommended 0–6 Simplified Pulmonary Embolism Severity Index (sPESI) across Age > 80, Cancer, Chronic Cardiopulmonary Disease, HR >= 110, SBP < 100, and SpO2 < 90% to identify Low-Risk PE (sPESI = 0) for direct DOAC outpatient treatment. *Table — Identify confirmed acute pulmonary embolism patients safe for direct ED home DOAC discharge!:* | Simplified PESI Score (0–6 Points) | Validated 30-Day Mortality | ESC Risk Class | Disposition & Anticoagulation | | --- | --- | --- | --- | | sPESI = 0 Points (All 6 Criteria Negative) | 1.0% (95% CI 0.0–2.1%) | Low-Risk Acute PE | Candidate for Direct Outpatient DOAC Discharge | | sPESI >= 1 Point (e.g., Tachycardia + Cancer = 2) | 10.9% (95% CI 8.5–13.2%) | Intermediate / High-Risk PE | Inpatient Admission + Check RV Strain & Troponin | | Invalid Vital Sign (SBP <= 0 or SpO2 > 100) | Clinical Guard | "Invalid Vital / History Input" | Verifies Realistic Vitals & Binary Flags | - **Formula (Total 6-Item Simplified PESI (sPESI) Score (0–6 Points))**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 <= 0, B6 <= 0, B7 <= 0, B7 > 100), "Invalid Vital / History Input", IF(B2 > 80, 1, 0) + B3 + B4 + IF(B5 >= 110, 1, 0) + IF(B6 < 100, 1, 0) + IF(B7 < 90, 1, 0))` - **Formula (ESC Acute Pulmonary Embolism Outpatient vs. Inpatient Triage)**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 <= 0, B6 <= 0, B7 <= 0, B7 > 100), "Invalid Vital / History Input", IF((IF(B2 > 80, 1, 0) + B3 + B4 + IF(B5 >= 110, 1, 0) + IF(B6 < 100, 1, 0) + IF(B7 < 90, 1, 0)) = 0, "Low-Risk PE (sPESI = 0: ~1.0% 30-Day Mortality) — Eligible for Outpatient DOAC Check", "Elevated-Risk PE (sPESI >= 1: ~10.9% 30-Day Mortality) — Inpatient Admission & RV/Troponin Stratification"))` ### Fatigue Notch Sensitivity (q) and Factor K_f (Peterson Formula) - **URL**: https://sheets.arte-soft.com/en/learn/peterson-neuber-fatigue-notch-sensitivity-q-and-kf-factor/ - **Summary**: Convert static elastic stress concentration K_t into reduced cyclic fatigue concentration K_f = 1 + q * (K_t - 1) using Peterson’s notch-sensitivity formula q = 1 / (1 + a_pet / r_notch). *Table — Why ductile shafts survive cyclic stress peaks below static elastic K_t:* | Material & Fillet Regime (K_t = 2.50, r = 1.50 mm) | Notch Sensitivity q | Fatigue Factor K_f | | --- | --- | --- | | Normalized Ductile Steel (a_pet = 0.50 mm) | 0.7500 | 2.1250 (< K_t = 2.50) | | Quenched High-Strength Steel (a_pet = 0.06 mm) | 0.9615 | 2.4423 (Near Full K_t) | | Unnotched Smooth Shaft (K_t = 1.00) | 0.7500 | 1.0000 (No Concentration) | - **Formula (Peterson Notch Sensitivity q = 1 / (1 + a_pet / r_notch) Formula)**: `=LET(kt_st, B2, r_nt, B3, a_pt, B4, IF(OR(kt_st < 1, r_nt <= 0, a_pt < 0), "Invalid Notch Input", ROUND(1 / (1 + a_pt / r_nt), 4)))` - **Formula (Reduced Fatigue Stress-Concentration Factor K_f = 1 + q * (K_t - 1) Formula)**: `=LET(kt_st, B2, r_nt, B3, a_pt, B4, IF(OR(kt_st < 1, r_nt <= 0, a_pt < 0), "Invalid Notch Input", LET(q_sen, 1 / (1 + a_pt / r_nt), ROUND(1 + q_sen * (kt_st - 1), 4))))` ### Peterson-Silver Variability Coefficient (V): EOQ vs. Dynamic Lot Sizing - **URL**: https://sheets.arte-soft.com/en/learn/peterson-silver-demand-variability-coefficient-lot-sizing-rule/ - **Summary**: Calculate Rein Peterson and Edward Silver’s squared-CV demand variability index V = (N * SUM(D^2)) / (SUM(D)^2) - 1 to decide when steady Economic Order Quantity (V < 0.25) beats Silver-Meal or Wagner-Whitin dynamic lot sizing (V >= 0.25). *Table — Stop applying constant-demand EOQ to lumpy seasonal or MRP demand schedules!:* | 4-Period MRP Demand Schedule (Total = 400 Units) | Sum of Squared Demands | Variability Index V | Recommended Lot-Sizing Policy | | --- | --- | --- | --- | | Smooth Demand [110, 95, 105, 90] | 40,250 | 0.0063 (< 0.25) | Stationary EOQ / Fixed Order Quantity | | Lumpy Promotional [20, 260, 40, 80] | 76,000 | 0.9000 (>= 0.25) | Dynamic Lot Sizing (Silver-Meal / Wagner-Whitin) | | Zero Total Demand Across Horizon | 0 | Division Guard | "Zero Demand Horizon" | - **Formula (Peterson-Silver Demand Variability Coefficient V = (N * SUM(D^2)) / (SUM(D)^2) - 1)**: `=IF(SUM(B2:B5) <= 0, "Zero Demand Horizon", ROUND((ROWS(B2:B5) * SUMPRODUCT(B2:B5, B2:B5)) / (SUM(B2:B5) ^ 2) - 1, 4))` - **Formula (Automated EOQ vs. Dynamic Lot-Sizing Policy Selector (V = 0.25 Cutoff))**: `=IF(SUM(B2:B5) <= 0, "Zero Demand Horizon", IF(((ROWS(B2:B5) * SUMPRODUCT(B2:B5, B2:B5)) / (SUM(B2:B5) ^ 2) - 1) < 0.25, "Use Stationary EOQ (V < 0.25)", "Use Dynamic Lot Sizing: Silver-Meal / Wagner-Whitin (V >= 0.25)"))` ### Peto One-Step Pooled Odds Ratio Formula for Rare-Event Clinical Trials - **URL**: https://sheets.arte-soft.com/en/learn/peto-one-step-odds-ratio-rare-event-meta-analysis-formula/ - **Summary**: Pool rare-event and zero-cell randomized trials without arbitrary 0.5 continuity corrections using Richard Peto’s O - E score and hypergeometric variance V: OR_Peto = EXP(Σ(O - E) / ΣV). *Table — Why Cochrane recommends Peto’s O - E method when event rates are < 1% and standard log-OR divides by zero!:* | Rare-Event RCT Evidence Set | Pooled Σ(O - E) & ΣV | Peto Pooled Odds Ratio OR_Peto | Pooled Z-Score | | --- | --- | --- | --- | | 3 RCTs (6/470 Treated vs 25/470 Control) | Σ(O - E) = -9.50 / ΣV = 7.503 | 0.2821 (71.8% Odds Reduction) | Z = -3.467 (p < 0.001) | | Null Identical Event Counts Across Arms | Σ(O - E) = 0.00 | 1.0000 (Exact Null) | Z = 0.000 | | Zero Total Events Across All Studies (ΣV = 0) | Undefined 0 / 0 | "No Informative Events Across Trials" | Zero-Information Guard | - **Formula (Peto One-Step Pooled Odds Ratio OR_Peto = EXP(Σ(O - E) / ΣV))**: `=IF(SUM(G2:G4) <= 0, "No Informative Events Across Trials", ROUND(EXP(SUM(F2:F4) / SUM(G2:G4)), 4))` - **Formula (Peto Pooled Two-Sided Score Test Statistic Z = Σ(O - E) / SQRT(ΣV))**: `=IF(SUM(G2:G4) <= 0, "No Informative Events Across Trials", ROUND(SUM(F2:F4) / SQRT(SUM(G2:G4)), 3))` ### Petukhov Smooth-Pipe Darcy Friction Factor & Turbulent Nusselt Formula - **URL**: https://sheets.arte-soft.com/en/learn/petukhov-kirillov-smooth-pipe-turbulent-friction-and-nusselt/ - **Summary**: Cut turbulent heat-exchanger tube error from ±25% (Dittus-Boelter) down to ±5% using Boris Petukhov’s (1970) momentum-heat analogy Nu_D and explicit Darcy friction factor f = (0.790 * LN(Re) - 1.64)^(-2). *Table — Why modern heat-transfer textbooks replace Dittus-Boelter with Petukhov’s friction-coupled analogy!:* | Tube Reynolds Number Re_D (Water Pr = 4.34) | Petukhov Darcy Friction f | Petukhov Nusselt Nu_D | Regime Check | | --- | --- | --- | --- | | Re_D = 50,000 (Standard Exchanger Tube) | 0.02096 | 264.47 | Fully Turbulent (Re >= 10,000) | | Re_D = 100,000 (High-Velocity Pass) | 0.01799 | 471.49 | +78.3% Convective Conductance | | Re_D < 10,000 or Pr < 0.5 | Out of Range | "Outside Petukhov Turbulent Range" | Validity Guard | - **Formula (Petukhov Fully Turbulent Smooth-Tube Nusselt Number Nu_D)**: `=IF(OR(B2 < 10000, B3 < 0.5), "Outside Petukhov Turbulent Range", ROUND((((((0.79 * LN(B2) - 1.64) ^ (-2)) / 8) * B2 * B3) / (1.07 + 12.7 * SQRT(((0.79 * LN(B2) - 1.64) ^ (-2)) / 8) * ((B3 ^ (2 / 3)) - 1))), 2))` - **Formula (Petukhov Explicit Smooth-Pipe Darcy Friction Factor f)**: `=IF(B2 < 10000, "Outside Petukhov Turbulent Range", ROUND((0.79 * LN(B2) - 1.64) ^ (-2), 5))` ### Peukert Battery Discharge Runtime and Effective Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/peukert-battery-discharge-capacity-exponent-and-effective-runtime/ - **Summary**: Calculate high-current battery discharge runtime t = H * (C_H / (I * H))^k and effective delivered amp-hours C_eff = I * t using the dimensionally balanced Peukert law. *Table — Use the dimensionally balanced H-hour Peukert equation — not raw C / I^k!:* | Discharge Scenario (C_20 = 100 Ah) | Peukert Runtime t_hrs | Effective Capacity C_eff | | --- | --- | --- | | Rated C/20 Load (I = 5 A, k = 1.20) | 20.0000 hours | 100.0000 Ah (100% Rated) | | Heavy 4x Load (I = 20 A, k = 1.20) | 3.7893 hours (vs Naive 5.0 h) | 75.7858 Ah (-24.21% Loss) | | Ideal LiFePO4 Limit (I = 20 A, k = 1.00) | 5.0000 hours | 100.0000 Ah (Zero Derating) | - **Formula (Dimensionally Balanced Peukert Runtime t_hrs = H * (C_H / (I * H))^k Formula)**: `=LET(c_nom, B2, h_ref, B3, k_pk, B4, i_cur, B5, IF(OR(c_nom <= 0, h_ref <= 0, k_pk < 1, i_cur <= 0), "Invalid Peukert Input", ROUND(h_ref * POWER(c_nom / (i_cur * h_ref), k_pk), 4)))` - **Formula (Effective High-Rate Delivered Capacity C_eff = I * t_hrs (Ah) Formula)**: `=LET(c_nom, B2, h_ref, B3, k_pk, B4, i_cur, B5, IF(OR(c_nom <= 0, h_ref <= 0, k_pk < 1, i_cur <= 0), "Invalid Peukert Input", ROUND(i_cur * h_ref * POWER(c_nom / (i_cur * h_ref), k_pk), 4)))` ### Brighton Pediatric Early Warning Score (PEWS) Ward Escalation Formula - **URL**: https://sheets.arte-soft.com/en/learn/pews-monaghan-brighton-pediatric-early-warning-score-formula/ - **Summary**: Calculate Alan Monaghan’s Brighton Pediatric Early Warning Score (0 to 13 points) summing Behavior (0–3), Cardiovascular (0–3), and Respiratory (0–3) domains plus +2 each for Q15-minute nebulizers and persistent post-operative vomiting. *Table — Catch pediatric respiratory fatigue & compensated shock hours before cardiopulmonary arrest!:* | Brighton PEWS Score / Trigger | Monitoring Frequency | Pediatric Ward Escalation Pathway | | --- | --- | --- | | 0 to 2 Points (All Domains < 3) | Q4-Hour Routine Assessments | Green — Routine Pediatric Ward Care | | 3 to 4 Points (No Domain = 3) | Q1-to-2-Hour Assessments + Charge RN | Amber — Bedside Resident Review | | PEWS >= 5 OR Any Single Domain = 3 | Continuous Cardiorespiratory Monitoring | Red — Urgent Pediatric Rapid Response / PICU Consult | - **Formula (Total Brighton Pediatric Early Warning Score (0 to 13 Points))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 3), "Invalid PEWS Domain (0-3)", B2 + B3 + B4 + IF(B5 = 1, 2, 0) + IF(B6 = 1, 2, 0))` - **Formula (Pediatric Rapid Response Escalation Tier (Total >= 5 OR Any Domain = 3))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 3), "Invalid PEWS Domain (0-3)", IF(OR((B2 + B3 + B4 + IF(B5 = 1, 2, 0) + IF(B6 = 1, 2, 0)) >= 5, MAX(B2:B4) = 3), "Red Alert: Immediate Pediatric RRT / PICU Review", IF((B2 + B3 + B4 + IF(B5 = 1, 2, 0) + IF(B6 = 1, 2, 0)) >= 3, "Amber Alert: Charge Nurse & Pediatrician Bedside Review", "Green: Routine Q4h Pediatric Ward Monitoring")))` ### pH conversion and the logarithm of mean estimated hydrogen concentration - **URL**: https://sheets.arte-soft.com/en/learn/ph-and-poh-hydrogen-ion-concentration-chemistry/ - **Summary**: Compare arithmetic mean pH with the pH-scale value of a mean concentration under a dilute-solution approximation. *Table — Two different summaries of logarithmic measurements:* | Water / Lab Calculation | Formula | Result | | --- | --- | --- | | pH from [H+] = 0.0001 M | =-LOG10(0.0001) | 4.00 (Acidic) | | pOH at 25°C (Kw = 10^-14) | =14 - pH | 10.00 | | Arithmetic mean pH | =AVERAGE(4,6) | 5.00 | | Negative log of mean estimated concentration | =-LOG10(AVERAGE(10^(-B2:B3))) | 4.2967 | - **Formula (Transform, average, then return to the pH scale)**: `=ROUND(-LOG10(AVERAGE(10 ^ (-B2:B3))), 4)` - **Formula (Convert [H+] molar concentration (mol/L) to pH)**: `=ROUND(-LOG10(A2), 2)` ### Lyophilization Primary Drying Vial Sublimation & Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/pharmaceutical-lyophilization-primary-drying-ice-sublimation-vial-flux-formula/ - **Summary**: Calculate Single-Vial Shelf Heat Transfer Input Q_v (W), Ice Sublimation Rate dm/dt (g/hr), Nominal Primary Drying Duration (hr), and Cake Collapse Safety Margin (K). *Table — Every 1°C rise in product ice temperature risks cake meltback above T_collapse—coupling vial Kv directly to sublimation hours!:* | Lyophilizer Vial KPI (Av=3.8 cm², Kv=18 W/m²K, Ts=-10°C, Tp=-32°C, 3 g Ice) | Formula | Verified Output | | --- | --- | --- | | Vial Shelf Heat Transfer Qv (W) | (Av_cm2 / 10000) * Kv * (Ts - Tp) | 0.1505 W (0.2531 W @ Ts = +5°C) | | Ice Sublimation Rate (g/hr) | (Vial_Heat_W * 3600) / Sublimation_J_g | 0.1909 g/hr (0.3210 @ Ts = +5°C) | | Primary Drying Time (hours) | Frozen_Ice_Mass_g / Sublimation_g_hr | 15.72 hr (9.34 hr @ Ts = +5°C) | | Collapse Safety Margin Tc - Tp (K) | Collapse_Temp_Tc - Product_Temp_Tp | 4.00 K | - **Formula (Coupled Vial Kv Sublimation Rate & Collapse-Guarded Primary Drying Formula)**: `=LET(av_c, B2, kv_w, B3, ts_c, B4, tp_c, B5, mi_g, B6, dh_s, B7, tc_c, B8, IF(OR(av_c <= 0, kv_w <= 0, tp_c >= ts_c, mi_g <= 0, dh_s < 2600, dh_s > 3000), "Invalid Lyo Cycle Input", IF(tp_c >= tc_c, "CAKE COLLAPSE RISK", LET(qv_w, (av_c / 10000) * kv_w * (ts_c - tp_c), sb_r, (qv_w * 3600) / dh_s, ROUND(mi_g / sb_r, 2)))))` - **Formula (Aggressive Shelf-Ramp Cycle Shortening Check (Raise Shelf Temp T_s from -10°C to +5°C))**: `=IF(ISTEXT(E4), E4, ROUND(B8 - B5, 2))` ### 2x2 Association Coefficients: Pearson Phi, Yule’s Q & Yule’s Y Colligation - **URL**: https://sheets.arte-soft.com/en/learn/phi-coefficient-and-yules-q-collapsibility-2x2-association-formula/ - **Summary**: Measure binary 2x2 contingency association on [-1, +1] with Pearson’s Phi coefficient and marginal-prevalence-invariant Yule’s Q and Yule’s Y formulas. *Table — Why Phi depends on base-rate prevalence while Yule’s Q and Y stay invariant:* | Measure | Formula on [[a,b],[c,d]] | Original [[36,12],[9,48]] | 2x Case Oversampled [[72,24],[9,48]] | | --- | --- | --- | --- | | Odds Ratio (OR) | (a * d) / (b * c) | 16.0000 | 16.0000 (Invariant) | | Pearson Phi | (ad - bc) / SQRT(R1*R2*C1*C2) | 0.5960 | 0.5735 (Shifts with marginals) | | Yule’s Q | (ad - bc) / (ad + bc) | 0.8824 | 0.8824 (Invariant) | | Yule’s Y (Colligation) | (SQRT(ad) - SQRT(bc)) / (SQRT(ad) + SQRT(bc)) | 0.6000 | 0.6000 (Invariant) | - **Formula (2x2 Pearson Phi Coefficient Formula)**: `=LET(ad, B2 * C3, bc, C2 * B3, denom, SQRT((B2 + C2) * (B3 + C3) * (B2 + B3) * (C2 + C3)), IF(denom = 0, 0, ROUND((ad - bc) / denom, 4)))` - **Formula (Yule’s Q & Yule’s Y Formulas)**: `=LET(ad, B2 * C3, bc, C2 * B3, IF(ad + bc = 0, 0, ROUND((SQRT(ad) - SQRT(bc)) / (SQRT(ad) + SQRT(bc)), 4)))` ### Philip Two-Term Soil Infiltration Formula: Sorptivity S, Gravity Factor A & Rate i(t) - **URL**: https://sheets.arte-soft.com/en/learn/philip-two-term-sorptivity-soil-infiltration-equation/ - **Summary**: Calculate cumulative rainfall/irrigation infiltration I(t) = S * SQRT(t) + A * t and instantaneous infiltration capacity i(t) = 0.5 * S / SQRT(t) + A using John R. Philip’s (1957) analytical solution of Richards’ unsaturated flow equation. *Table — Separate early capillary suction (S * t^0.5) from late gravitational drainage (A * t)!:* | Storm Elapsed Time t (S = 3.6 cm/hr^0.5, A = 0.80 cm/hr) | Capillary Term S * SQRT(t) | Gravity Term A * t | Cumulative I(t) (cm) | Instantaneous Rate i(t) (cm/hr) | | --- | --- | --- | --- | --- | | t = 0.25 hr (15 min) | 1.80 cm | 0.20 cm | 2.00 cm | 4.40 cm/hr | | t = 1.00 hr (60 min) | 3.60 cm | 0.80 cm | 4.40 cm | 2.60 cm/hr | | t = 4.00 hr (240 min) | 7.20 cm | 3.20 cm | 10.40 cm | 1.70 cm/hr | - **Formula (Philip Cumulative Infiltration Depth I(t) = S * SQRT(t) + A * t)**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0), "Requires S >= 0, A >= 0, and Time t > 0", ROUND(B2 * SQRT(B4) + B3 * B4, 4))` - **Formula (Philip Instantaneous Infiltration Capacity i(t) = 0.5 * S / SQRT(t) + A)**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0), "Requires S >= 0, A >= 0, and Time t > 0", ROUND(0.5 * B2 / SQRT(B4) + B3, 4))` ### Photoelectric Effect Kinetic Energy & Compton X-Ray Wavelength Shift - **URL**: https://sheets.arte-soft.com/en/learn/photoelectric-effect-work-function-and-compton-wavelength-shift/ - **Summary**: Calculate a single-photon photoelectric energy threshold and maximum kinetic energy, and separately explore the ideal free-electron Compton wavelength shift. - **Formula (Maximum photoelectron energy in eV, D2)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric wavelength and work function",IF(OR(B2<=0,B3<=0),"Wavelength and work function must be positive",IF(1239.84/B21,"Enter numeric work function",IF(B3<=0,"Work function must be positive",1239.84/B3))` - **Formula (Compton wavelength shift in pm, D4)**: `=IF(COUNT(B4)<>1,"Enter numeric angle",IF(OR(B4<0,B4>180),"Angle must be between 0 and 180 degrees",2.4263*(1-COS(RADIANS(B4)))))` ### PHQ-9 Depression Severity Score (0–27) & Item-9 Safety Alert Formula - **URL**: https://sheets.arte-soft.com/en/learn/phq-9-patient-health-questionnaire-depression-score-formula/ - **Summary**: Calculate Kurt Kroenke & Robert Spitzer's 9-item Patient Health Questionnaire (PHQ-9, 0 to 27 points), classify depression severity into Minimal (0–4), Mild (5–9), Moderate (10–14), Moderately Severe (15–19), and Severe (20–27), and flag any positive Item 9 safety response. *Table — Score DSM-criteria depression severity AND never miss a positive Item 9 safety screen!:* | Total PHQ-9 Score (0–27) | Depression Severity Band | Standard Measurement-Based Care Action | | --- | --- | --- | | 0 – 4 points | Minimal / None | Remission target (< 5); routine follow-up | | 5 – 9 points | Mild Depression | Watchful waiting, psychoeducation, repeat PHQ-9 | | 10 – 14 points (>= 10 Cutoff!) | Moderate Depression | Psychotherapy (CBT) and/or pharmacotherapy plan | | 15 – 19 points | Moderately Severe Depression | Active pharmacotherapy and/or psychotherapy | | 20 – 27 points | Severe Depression | Immediate pharmacotherapy + specialty mental health | - **Formula (Total PHQ-9 Depression Score (0 to 27 Points))**: `=IF(OR(MIN(B2:B10) < 0, MAX(B2:B10) > 3), "Invalid PHQ-9 Item (0 to 3)", SUM(B2:B10))` - **Formula (PHQ-9 Severity Tier with Independent Item-9 Safety Flag)**: `=IF(OR(MIN(B2:B10) < 0, MAX(B2:B10) > 3), "Invalid PHQ-9 Item (0 to 3)", IF(B10 >= 1, "ALERT: Item 9 Positive — Immediate Safety Assessment", IF(SUM(B2:B10) <= 4, "Minimal Depression (0-4)", IF(SUM(B2:B10) <= 9, "Mild Depression (5-9)", IF(SUM(B2:B10) <= 14, "Moderate Depression (10-14)", IF(SUM(B2:B10) <= 19, "Moderately Severe Depression (15-19)", "Severe Depression (20-27)"))))))` ### PI function: calculate circle area, pipe circumference, and tank volume - **URL**: https://sheets.arte-soft.com/en/learn/pi-function-circle-cylinder-math/ - **Summary**: Use full 15-digit precision PI() instead of hardcoded 3.14 for engineering areas, circumferences, and cylindrical volumes. *Table — Avoid rounding drift from hardcoded 3.14:* | RadiusM (A) | HeightM (B) | Floor Area (m²) | Volume (m³) | | --- | --- | --- | --- | | 2.5 | 4 | 19.635 | 78.54 | - **Formula (Compute tank volume and circumference)**: `=ROUND(PI() * A2^2 * B2, 2)` - **Formula (Zero radius boundary)**: `=ROUND(2 * PI() * A2, 4)` ### Pie & Doughnut Chart Percentage Share & Small-Slice "Other" Rollup Formula - **URL**: https://sheets.arte-soft.com/en/learn/pie-and-doughnut-chart-percentage-share-and-other-slice-rollup/ - **Summary**: Compute exact category percentage shares ROUND(B2 / SUM($B$2:$B$6) * 100, 2) and consolidate unreadable < 5% tail categories into a single "Other" slice using SUMIFS(B2:B6, B2:B6, "<" & (0.05 * SUM(B2:B6))). *Table — Preventing unreadable Pie & Doughnut label collisions by rolling < 5% tail slices into "Other"!:* | Acquisition Channel & Leads (Total = 920) | Exact Pie Share % | 5% Tail Cutoff (< 46 Leads) | Chart Grouping | | --- | --- | --- | --- | | Organic Search (420 Leads) | 45.65% | >= 46 Leads | Standalone Primary Slice | | Paid Social (260) & Direct (180) | 28.26% & 19.57% | >= 46 Leads | Standalone Slices | | Referral (35) + Affiliates (25) | 3.80% + 2.72% = 6.52% | < 46 Leads -> Rollup = 60 | Combined "Other" Slice (60) | - **Formula (Zero-Guarded Pie / Doughnut Slice Percentage Share = ROUND(B2 / SUM($B$2:$B$6) * 100, 2))**: `=IF(OR(MIN(B2:B6) < 0, SUM(B2:B6) <= 0), "Pie Slices Require Positive Total", ROUND(B2 / SUM(B2:B6) * 100, 2))` - **Formula (Dynamic "< 5% of Total" Tail Rollup ("Other" Slice Sum via SUMIFS))**: `=IF(OR(MIN(B2:B6) < 0, SUM(B2:B6) <= 0), "Pie Slices Require Positive Total", SUMIFS(B2:B6, B2:B6, "<" & (0.05 * SUM(B2:B6))))` ### Rotate Pie Chart Formula: Exact First-Slice Angle to Center Callout at 3 O’Clock - **URL**: https://sheets.arte-soft.com/en/learn/pie-chart-first-slice-rotation-angle-centering-formula/ - **Summary**: Calculate the exact Angle of First Slice in degrees MOD(90 - 180 * Share + 360, 360) so a highlighted pie wedge or Bar-of-Pie connector centers symmetrically on the 3 o’clock horizontal axis. *Table — Stop eyeballing Pie rotation sliders — compute exact 3 o’clock symmetry!:* | Focal Slice Share p | Slice Span (360*p) | Exact First-Slice Rotation | Resulting Wedge Bounds | | --- | --- | --- | --- | | 15.0% ($150 / $1,000) | 54.0° | 63.0° | 63° to 117° -> Bisector at 90° (3 o’clock) | | 60.0% ($600 / $1,000) | 216.0° | 342.0° | 342° clockwise by 216° -> Bisector at 90° | - **Formula (First-Slice Rotation Angle (°) to Center Wedge at 3 O’Clock (90°))**: `=IF(OR(B2 <= 0, SUM(B2:B5) <= 0), "Focal Slice Must Be Positive", ROUND(MOD(90 - 180 * (B2 / SUM(B2:B5)) + 360, 360), 1))` - **Formula (Focal Wedge Angular Span in Degrees)**: `=IF(SUM(B2:B5) <= 0, 0, ROUND(360 * B2 / SUM(B2:B5), 1))` ### PIK-Toggle Mezzanine Note Balloon Accretion & Cash-Save Formula - **URL**: https://sheets.arte-soft.com/en/learn/pik-toggle-mezzanine-note-compounding-principal-and-cash-save-formula/ - **Summary**: Calculate Payment-in-Kind (PIK) Toggle Mezzanine Annual Cash Liquidity Preserved, Compounded Balloon Redemption Principal P0*(1 + r_cash + r_stepup)^T, Cumulative PIK Accretion, and Excess Compounding Cost vs Cash Pay. *Table — Quantify the exponential balloon penalty of electing PIK-Toggle interest relief!:* | PIK-Toggle Debt Metric ($100M Note, 10% Cash + 2% Toggle Step-Up, 3 PIK Yrs) | Formula | Verified Output | | --- | --- | --- | | Year-1 Cash Liquidity Saved ($M) | IF(T=0, 0, P0 * r_cash) | $10.00M ($0 @ 0 PIK Yrs) | | Compounded Balloon Principal ($M) | P0 * (1 + r_cash + r_stepup)^T | $140.4928M ($100M @ 0 Yrs) | | Cumulative PIK Accretion ($M) | Balloon_Principal - P0 | $40.4928M | | Compounding & Step-Up Penalty ($M) | PIK_Accretion - (P0 * r_cash * T) | $10.4928M ($0 @ 0 Yrs) | - **Formula (PIK-Toggle Excess Compounding & Step-Up Penalty Formula)**: `=LET(pr_0, B2, r_cs, B3, r_su, B4, n_yr, B5, IF(OR(pr_0 <= 0, r_cs <= 0, r_cs >= 0.5, r_su < 0, r_su >= 0.2, n_yr < 0, n_yr > 20), "Invalid PIK Toggle Terms", LET(bl_n, pr_0 * ((1 + r_cs + r_su) ^ n_yr), pk_i, bl_n - pr_0, cs_i, pr_0 * r_cs * n_yr, ROUND(pk_i - cs_i, 4))))` - **Formula (Pure Cash-Pay Baseline Check (Set PIK Election Years = 0))**: `=IF(ISTEXT(E2), E2, ROUND(B2 * ((1 + B3 + B4) ^ B5), 4))` ### PIM-3 (Pediatric Index of Mortality 3) PICU Admission Risk Formula - **URL**: https://sheets.arte-soft.com/en/learn/pim-3-pediatric-index-of-mortality-3-picu-admission-logit/ - **Summary**: Calculate first-hour PICU standardized mortality probability from Straney et al.’s (2013) PIM-3 logistic model incorporating pupillary reaction, mechanical ventilation, base excess, and diagnosis risk tier. *Table — First-hour PICU risk-adjusted benchmarking across 53,112 pediatric intensive-care admissions!:* | First-Hour PICU Presentation | PIM-3 Logit z | Predicted PICU Mortality (%) | Quality Audit Tier | | --- | --- | --- | --- | | Ventilated, Reactive Pupils, BE -8.5, Adj +0.85 | -2.9535 | 4.96% | Moderate Acuity PICU Admission | | Same Child + Fixed Dilated Pupils > 3 mm (B2 = 1) | +0.8698 | 70.47% | Critical Neurologic Catastrophe | | Invalid Binary Flag (< 0 or > 1) | Undefined | "Binary Flags Must Be 0 or 1" | Input Validation Guard | - **Formula (PIM-3 Predicted PICU Mortality Probability (%))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1), "Binary Flags Must Be 0 or 1", ROUND(100 / (1 + EXP(-(-5.3501 + 3.8233 * B2 + 0.9763 * B3 + 0.0671 * ABS(B4) + B5))), 2))` - **Formula (PIM-3 Linear Log-Odds Score z)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1), "Binary Flags Must Be 0 or 1", ROUND(-5.3501 + 3.8233 * B2 + 0.9763 * B3 + 0.0671 * ABS(B4) + B5, 4))` ### PIN Photodiode Responsivity & Shot-Noise SNR Formula - **URL**: https://sheets.arte-soft.com/en/learn/pin-photodiode-quantum-efficiency-responsivity-and-shot-noise-snr-formula/ - **Summary**: Convert Photodiode Quantum Efficiency eta and Wavelength lambda (um) into Responsivity R = (eta * lambda_um)/1.24 (A/W), Signal Photocurrent (uA), Combined Poisson Shot + TIA Thermal RMS Noise, and Electrical SNR (dB). *Table — Combine Poisson photon shot noise and transimpedance thermal noise in quadrature!:* | PIN Receiver Metric (eta=80%, 1.55 um, P_opt=50 uW, BW=10 GHz, I_th=0.30 uA) | Formula | Verified Output | | --- | --- | --- | | Photodiode Responsivity (A/W) | (eta * lambda_um) / 1.24 | 1.0000 A/W | | DC Signal Photocurrent (uA) | Responsivity_A_W * P_opt_uW | 50.00 uA | | Total Shot + Thermal Noise (uA) | SQRT(0.00032 * I_p * BW_GHz + I_th^2) | 0.5000 uA (0.4000 uA Quantum Limit) | | Electrical Receiver SNR (dB) | 10 * LOG10((I_p / I_noise_rms) ^ 2) | 40.00 dB (41.94 dB @ I_th=0) | - **Formula (PIN Photodiode Shot-Plus-Thermal Electrical SNR (dB) Formula)**: `=LET(et_q, B2, lm_u, B3, p_uw, B4, bw_g, B5, th_n, B6, IF(OR(et_q <= 0, et_q > 1, lm_u <= 0, p_uw <= 0, bw_g <= 0, th_n < 0), "Invalid Photodiode Spec", LET(rs_p, (et_q * lm_u) / 1.24, i_ph, rs_p * p_uw, vr_n, 0.00032 * i_ph * bw_g + (th_n ^ 2), ROUND(10 * LOG10((i_ph ^ 2) / vr_n), 2))))` - **Formula (Quantum Shot-Noise-Limited Ceiling Check (Set TIA Thermal Noise = 0 uA))**: `=IF(ISTEXT(E5), E5, ROUND(SQRT(0.00032 * E3 * B5 + (B6 ^ 2)), 4))` ### Pinball Quantile Loss & Winkler Interval Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/pinball-quantile-loss-and-winkler-interval-score-formula/ - **Summary**: Evaluate probabilistic quantile forecasts via asymmetric Pinball Loss MAX(tau*(y - q), (tau - 1)*(y - q)) and audit (1 - alpha) prediction intervals with Robert Winkler’s (1972) Interval Score. *Table — Stop grading P90 safety-stock quantiles or 90% prediction intervals with symmetric RMSE!:* | Probabilistic Forecast Metric (y=135, q_0.90=120, [L=80, U=125], alpha=0.10) | Formula | Verified Output | | --- | --- | --- | | P90 Pinball Loss (Under-Forecast y=135) | MAX(0.90*(135-120), -0.10*(135-120)) | 13.50 (9x Over-Forecast Cost!) | | P90 Pinball Loss if Over-Forecast (y=105) | 0.10 * (120 - 105) | 1.50 | | Winkler Score (Breach y=135 > U=125) | (125 - 80) + (2/0.10)*(135 - 125) | 245.00 (45 Width + 200 Miss) | | Winkler Score Inside Interval (y=110) | (125 - 80) + 0 | 45.00 (Pure Sharpness Width) | - **Formula (Strictly Proper Asymmetric Pinball Quantile Loss Formula)**: `=LET(y_ac, B2, q_fc, B3, t_qt, B4, IF(OR(t_qt <= 0, t_qt >= 1), "Require 0 < tau < 1", ROUND(MAX(t_qt * (y_ac - q_fc), (t_qt - 1) * (y_ac - q_fc)), 4)))` - **Formula (Winkler (1972) Central (1 - alpha) Prediction-Interval Score Formula)**: `=LET(y_ac, B2, l_bd, B5, u_bd, B6, al_ms, B7, IF(OR(l_bd > u_bd, al_ms <= 0, al_ms >= 1), "Invalid Interval Input", ROUND((u_bd - l_bd) + (2 / al_ms) * MAX(0, l_bd - y_ac) + (2 / al_ms) * MAX(0, y_ac - u_bd), 4)))` ### Pinch Analysis Minimum Hot & Cold Utility (Delta Tmin) Formula - **URL**: https://sheets.arte-soft.com/en/learn/pinch-analysis-minimum-hot-and-cold-utility-delta-t-min-heat-recovery-formula/ - **Summary**: Calculate Hot-Stream Cooling Duty (kW), Maximum Process-to-Process Heat Recovery (kW), Minimum Cooling-Water Utility Q_C,min (kW), and Minimum Steam Hot Utility Q_H,min (kW). *Table — Equal 3,000 kW hot and cold enthalpy duties DO NOT mean zero steam utility—Second-Law Delta_T_min blocks low-grade heat!:* | 2-Stream Pinch Target KPI (Hot 200->50°C @20, Cold 60->180°C @25, dTmin=20 K) | Formula | Verified Output | | --- | --- | --- | | Total Hot Stream Enthalpy (kW) | CP_h * (T_h,in - T_h,out) | 3,000.00 kW | | Max Feasible Heat Recovery (kW) | Second-Law Interval Pinch Envelope | 2,400.00 kW (2,600 @ dTmin = 10 K) | | Minimum Cold Utility Q_C,min (kW) | Q_hot_total - Max_Heat_Recovery | 600.00 kW (400.00 @ dTmin = 10 K) | | Minimum Hot Utility Q_H,min (kW) | Q_cold_total - Max_Heat_Recovery | 600.00 kW (400.00 @ dTmin = 10 K) | - **Formula (Exact Two-Stream Pinch Maximum Heat Recovery Formula)**: `=LET(cp_h, B2, th_i, B3, th_o, B4, cp_c, B5, tc_i, B6, tc_o, B7, dt_m, B8, IF(OR(cp_h <= 0, cp_c <= 0, th_i <= th_o, tc_o <= tc_i, dt_m <= 0), "Invalid Pinch Input", LET(qh_t, cp_h * (th_i - th_o), qc_t, cp_c * (tc_o - tc_i), q_hi, cp_h * MAX(0, th_i - (tc_i + dt_m)), q_co, cp_c * MAX(0, (th_i - dt_m) - tc_i), ROUND(MIN(qh_t, qc_t, q_hi, q_co), 2))))` - **Formula (Plate-Exchanger Tighter Approach Savings Check (Set Delta_T_min = 10 K))**: `=IF(ISTEXT(E3), E3, ROUND(B5 * (B7 - B6) - E3, 2))` ### Piotroski F-Score formula: 9-point fundamental value investing checklist - **URL**: https://sheets.arte-soft.com/en/learn/piotroski-f-score-9-point-value-investing-formula/ - **Summary**: Practice a nine-signal accounting screen using explicitly prepared financial metrics. A high score is not a recommendation or a guaranteed return. *Table — Turn Joseph Piotroski's 9 accounting signals into a 0–9 binary score:* | Piotroski Pillar | Binary Tests (1 pt each) | Healthy Turnaround Example | | --- | --- | --- | | Profitability (4 pts) | ROA>0, CFO>0, dROA>0, CFO>NI | 1 + 1 + 1 + 1 = 4 / 4 | | Leverage & Liquidity (3 pts) | dDebt<0, dCurrRatio>0, GrossEquityIssued=0 | 1 + 1 + 1 = 3 / 3 | | Efficiency (2 pts) | dGrossMargin>0, dTurnover>0 | 1 + 0 = 1 / 2 -> Total F-Score = 8 / 9! | - **Formula (Compute total 0–9 Piotroski F-Score from financial metrics)**: `=IF(OR(COUNT(A2:I2)<>9,G2<0),"Invalid inputs",(A2 > 0) + (B2 > 0) + (C2 > 0) + (B2 > D2) + (E2 < 0) + (F2 > 0) + (G2 = 0) + (H2 > 0) + (I2 > 0))` - **Formula (Display descriptive score bands)**: `=IF(OR(COUNT(A2:I2)<>9,G2<0),"Invalid inputs",LET(f, (A2 > 0) + (B2 > 0) + (C2 > 0) + (B2 > D2) + (E2 < 0) + (F2 > 0) + (G2 = 0) + (H2 > 0) + (I2 > 0), IFS(f >= 8, "High score", f >= 3, "Middle score", TRUE, "Low score")))` ### Pirani Vacuum Gauge Heat Loss & Gas Calibration Formula - **URL**: https://sheets.arte-soft.com/en/learn/pirani-thermal-conductivity-vacuum-gauge-filament-heat-loss-and-gas-correction-formula/ - **Summary**: Calculate Nitrogen-Equivalent Indicated Pirani Pressure (mbar), Gas-Conductive Filament Heat Loss (mW), Total Wheatstone Bridge Power (mW), and Gas Signal Share (%). *Table — Venting a vacuum load-lock with Argon or Helium on an un-corrected N2-calibrated Pirani gauge blows viewport O-rings right off their clamps!:* | Pirani Vacuum Gauge KPI (Tw=395 K, T0=295 K, K0=0.48 mW/mbar·K, Qrad=4.2 mW) | Formula | Verified Output | | --- | --- | --- | | N2-Indicated Gauge Pressure (mbar) | True_Pressure_mbar / Gas_Cal_Factor_Cf | 0.850 mbar N2 (0.741 mbar @ 1.20 mbar Ar!) | | Gas Conductive Heat Loss (mW) | Indicated_P_mbar * K0 * (Wire_Tw - Wall_T0) | 40.80 mW (35.56 mW @ Argon) | | Total Bridge Filament Power (mW) | Gas_Heat_Loss_mW + Radiation_End_Loss_mW | 45.00 mW (39.76 mW @ Argon) | | Active Gas Signal Fraction (%) | (Gas_Heat_Loss_mW / Total_Power_mW) * 100 | 90.7% (<10% below 1e-3 mbar floor!) | - **Formula (Pirani Wheatstone Filament Heat Balance & Gas Calibration Factor Formula)**: `=LET(pt_m, B2, cf_g, B3, tw_k, B4, tz_k, B5, kz_s, B6, qr_m, B7, qg_m, (pt_m / cf_g) * kz_s * (tw_k - tz_k), IF(OR(pt_m < 0.0005, pt_m > 50, cf_g < 0.3, cf_g > 3, tz_k < 250, tz_k > 350, tw_k < tz_k + 30, tw_k > 550, kz_s <= 0.05, qr_m <= 0.2), "Invalid Pirani Input", ROUND((qg_m / (qg_m + qr_m)) * 100, 1)))` - **Formula (Argon Sputter-Gas Backfill (`P_true = 1.20` mbar, `C_f = 1.62`) Under-Reading Trap Check)**: `=IF(ISTEXT(E5), E5, ROUND(B2 / B3, 3))` ### Pitot-Static Tube Velocity: Equivalent Airspeed (EAS) vs True Airspeed (TAS) - **URL**: https://sheets.arte-soft.com/en/learn/pitot-static-tube-dynamic-pressure-indicated-and-true-airspeed-formula/ - **Summary**: Convert Pitot-static differential pressure dP = P_total - P_static into sea-level calibrated Equivalent Airspeed and altitude-density-corrected True Airspeed V_TAS = SQRT(2 * dP / rho). *Table — Why sea-level Pitot gauges systematically under-read true flow velocity at altitude or high temperature:* | Pitot Anemometry Quantity (dP = 1,500 Pa) | Formula | Result (rho = 0.75 kg/m3) | | --- | --- | --- | | Sea-Level Equivalent Speed V_EAS | SQRT(2 * dP / 1.225) | 49.49 m/s | | Density-Corrected True Speed V_TAS | SQRT(2 * dP / rho_local) | 63.25 m/s (122.95 knots) | | Density Correction Factor | SQRT(rho_0 / rho_local) | 1.2780 (+27.80% over EAS) | - **Formula (Local-Density True Airspeed / Duct Velocity V_TAS Formula (m/s))**: `=IF(B3 <= 0, "INVALID_DENSITY", ROUND(SQRT((2 * MAX(0, B2)) / B3), 2))` - **Formula (Sea-Level Equivalent Speed V_EAS & TAS/EAS Ratio)**: `=ROUND(SQRT(B4 / B3), 4)` ### Pitt Bacteremia Score (PBS) for Bloodstream Infection Acute Mortality - **URL**: https://sheets.arte-soft.com/en/learn/pitt-bacteremia-score-pbs-gram-negative-bloodstream-mortality/ - **Summary**: Calculate the 0–14 Pitt Bacteremia Score on the day of positive blood culture draw across Temperature, Hypotension, Mechanical Ventilation, Cardiac Arrest, and Mental Status (PBS >= 4 Critical Illness). *Table — Stratify Pseudomonas, Enterobacterales, and Candida bloodstream mortality without ICU lab panels!:* | Pitt Bacteremia Score (0–14) | 14-Day Bacteremia Risk Tier | Clinical & Antimicrobial Stewardship Action | | --- | --- | --- | | PBS 0–1 Points | Low Acute Mortality (< 5%) | Eligible for Early Oral Step-Down Once Susceptibilities Known | | PBS 2–3 Points | Moderate Acuity | Close Inpatient Hemodynamic & Source-Control Monitoring | | PBS >= 4 Points (e.g., 6) | Critically Ill Bacteremia (> 25% Mortality) | Aggressive ICU Resuscitation, Source Control & Rapid ID Consult | - **Formula (Total 5-Variable Pitt Bacteremia Score (0–14 Points))**: `=IF(OR(B2 < 25, B2 > 45, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B5 > 1, NOT(OR(B6 = 0, B6 = 1, B6 = 2, B6 = 4))), "Invalid PBS Input", IF(OR(B2 <= 35, B2 >= 40), 2, IF(OR(B2 <= 36, B2 >= 39), 1, 0)) + 2 * B3 + 2 * B4 + 4 * B5 + B6)` - **Formula (Pitt Bacteremia Critical Illness Triage (PBS < 4 vs. >= 4))**: `=IF(OR(B2 < 25, B2 > 45, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B5 > 1, NOT(OR(B6 = 0, B6 = 1, B6 = 2, B6 = 4))), "Invalid PBS Input", IF((IF(OR(B2 <= 35, B2 >= 40), 2, IF(OR(B2 <= 36, B2 >= 39), 1, 0)) + 2 * B3 + 2 * B4 + 4 * B5 + B6) >= 4, "Critical Bacteremia (PBS >= 4) — High Acute Mortality Risk", IF((IF(OR(B2 <= 35, B2 >= 40), 2, IF(OR(B2 <= 36, B2 >= 39), 1, 0)) + 2 * B3 + 2 * B4 + 4 * B5 + B6) >= 2, "Moderate Acuity Bacteremia (PBS 2-3)", "Non-Severe Bacteremia (PBS 0-1) — Low Acute Mortality")))` ### Pittsburgh Knee Rule Acute Knee Fracture X-Ray Decision Formula - **URL**: https://sheets.arte-soft.com/en/learn/pittsburgh-knee-rule-blunt-trauma-radiograph-decision-formula/ - **Summary**: Evaluate David Seaberg and Dan Tandberg’s validated Pittsburgh Knee Rule—ordering knee radiographs after blunt trauma or fall ONLY when Age < 12, Age > 50, or inability to walk 4 full weight-bearing steps in the ED. *Table — Higher specificity (60% vs. 28%) than the Ottawa Knee Rule across pediatric & adult blunt falls!:* | Pittsburgh Knee Rule Step | Clinical Criterion | Radiograph Decision | | --- | --- | --- | | Eligibility Gate | Mechanism NOT Blunt Trauma / Fall, or > 6 Days / Prior Surgery | "Rule Not Applicable (Use Clinical Exam)" | | Age Extremes (Pediatric Physeal or > 50) | Age < 12 years OR Age > 50 years | "Knee X-Ray Indicated (Age < 12 or > 50)" | | ED Ambulation Test (Ages 12 to 50) | Unable to Walk 4 Full Weight-Bearing Steps in ED | "Knee X-Ray Indicated" (Else Cleared!) | - **Formula (Complete Pittsburgh Knee Rule Triage Recommendation)**: `=IF(OR(B3 <= 0, B2 <> 1, B5 = 1), "Rule Not Applicable (Exclusion / Non-Blunt Mechanism)", IF(OR(B3 < 12, B3 > 50, B4 = 1), "Knee X-Ray Indicated (Pittsburgh Rule Positive)", "No Knee X-Ray Required (Pittsburgh Rule Cleared)"))` - **Formula (Count of Positive Risk Triggers Among Eligible Blunt-Fall Patients (0 to 2))**: `=IF(OR(B3 < 12, B3 > 50), 1, 0) + IF(B4 = 1, 1, 0)` ### Pitzer Acentric Factor (ω) from Reduced Vapor Pressure at Tr = 0.7 - **URL**: https://sheets.arte-soft.com/en/learn/pitzer-acentric-factor-omega-from-reduced-vapor-pressure-formula/ - **Summary**: Calculate Kenneth Pitzer’s acentric factor ω = -1.000 - LOG10(P_sat(0.7 * T_c) / P_c) and invert it to estimate saturation vapor pressure at T_r = 0.7 for cubic equations of state. *Table — Why Pitzer anchored ω = 0 to spherical noble gases at T_r = 0.70!:* | Pure Fluid Class | Psat at T = 0.7 Tc / Pc | Pitzer Acentric Factor ω | Molecular Force Symmetry | | --- | --- | --- | --- | | Argon Noble Gas (4.864 / 48.98 bar) | Pr = 0.0993 | 0.0030 (~0.00) | Spherical Lennard-Jones Core | | Propane Alkane (2.992 / 42.48 bar) | Pr = 0.0704 | 0.1522 | Elongated Non-Spherical Chain | | Water Polar Fluid (10.02 / 220.64 bar) | Pr = 0.0454 | 0.3428 | Strong Hydrogen-Bond Dipoles | - **Formula (Pitzer Acentric Factor ω = -1 - LOG10(P_sat,0.7 / P_c))**: `=IF(OR(B2 <= 0, B3 <= B2), "Invalid Vapor Pressure Inputs", ROUND(-1 - LOG10(B2 / B3), 4))` - **Formula (Reduced Saturation Pressure P_r^sat at T_r = 0.70)**: `=IF(OR(B2 <= 0, B3 <= B2), "Invalid Vapor Pressure Inputs", ROUND(B2 / B3, 4))` ### Planck Photon Energy (1239.84 / lambda_nm) & Bragg X-Ray Diffraction Law - **URL**: https://sheets.arte-soft.com/en/learn/planck-photon-energy-bragg-diffraction-and-de-broglie/ - **Summary**: Convert optical/LED wavelength in nanometers directly to photon energy in electron-volts (eV) and solve Bragg's Law d = n*lambda / (2*sin(theta)) for crystal d-spacing. *Table — Two indispensable spectroscopy & semiconductor physics formulas in spreadsheet units!:* | Quantum / XRD Calculation | Formula / Inputs | Lab Measurement | Calculated Output | | --- | --- | --- | --- | | 500 nm Green Photon Energy | B3 / B2 (1239.84 / 500) | hc = 1239.84 eV*nm | 2.4797 eV | | 250 nm Deep-UV Photon | B2 set to 250 nm | Half wavelength -> 2x energy | 4.9594 eV | | Bragg XRD Lattice Spacing d | (B5 * B4) / (2 * SIN(RADIANS(B6))) | n=1, Cu Ka=0.154 nm, theta=15 deg | 0.2975 nm (2.975 Angstroms) | | Normal Backscatter (90 deg) | B6 set to 90 deg | SIN(90 deg) = 1 -> lambda / 2 | 0.0770 nm minimum d-spacing | - **Formula (Planck-Einstein Photon Energy E (eV) = 1239.84 / Wavelength_nm)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(B3 / B2, 4)))` - **Formula (Bragg X-Ray Diffraction Crystal d-Spacing d = (n * lambda) / (2 * SIN(RADIANS(theta))))**: `=IF(COUNT(B4:B6)<>3,"Invalid inputs",IF(OR(B4<=0,B5<1,B5<>INT(B5),B6<=0,B6>90),"Invalid inputs",ROUND((B5 * B4) / (2 * SIN(RADIANS(B6))), 4)))` ### Planetary Atmospheric Scale Height (H) & Barometric Altitude Pressure - **URL**: https://sheets.arte-soft.com/en/learn/planetary-atmospheric-pressure-scale-height-barometric-law/ - **Summary**: Calculate isothermal planetary atmospheric scale height H = (R * T) / (M * g) (km) and exponential barometric pressure P(z) = P_0 * EXP(-z / H) (kPa) across Earth, Mars, Venus, and Titan. *Table — Why Mars has a TALLER atmospheric scale height than Earth despite being freezing cold!:* | Planetary Atmosphere | Mean T (K) & Molar Mass M (kg/mol) | Gravity g (m/s^2) | Scale Height H (km) | | --- | --- | --- | --- | | Earth Mean Troposphere/Stratosphere | 255 K, M = 0.028964 (N2/O2) | 9.80665 m/s^2 | 7.46 km (P at 5.5 km = 48.50 kPa) | | Mars CO2 Atmosphere | 210 K, M = 0.043340 (CO2) | 3.72076 m/s^2 | 10.83 km (More Extended!) | | Invalid Gravity or Molar Mass <= 0 | Guarded Singularity | N/A | "Invalid Planetary Inputs" | - **Formula (Isothermal Atmospheric Scale Height H (km) = (8.31446 * T) / (M * g * 1000))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0), "Invalid Planetary Inputs", ROUND((8.31446 * B2) / (B3 * B4 * 1000), 2))` - **Formula (Barometric Pressure at Altitude z (km): P(z) = P_0 * EXP(-z / H) (kPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0), "Invalid Planetary Inputs", ROUND(B5 * EXP(-B6 / ((8.31446 * B2) / (B3 * B4 * 1000))), 2))` ### Plank’s Freezing Time Equation: Blast-Freezer & Biopharma Cryopreservation Slab Formula - **URL**: https://sheets.arte-soft.com/en/learn/plank-food-and-biopharma-slab-freezing-time-formula/ - **Summary**: Calculate phase-change freezing time for infinite slabs, cylinders, and spheres using Rudolf Plank’s moving-boundary equation t_f = (rho_f * L_f / (T_f - T_inf)) * (P * a / h + R * a² / k_f) alongside the freezing Biot number. *Table — Separating external convective resistance (P*a/h) from internal frozen-crust conduction (R*a²/k_f)!:* | Freezer Heat Transfer Coefficient h | Freezing Biot Number Bi = h*a/k_f | Plank Freezing Time t_f (Hours) | Controlling Thermal Bottleneck | | --- | --- | --- | --- | | Air-Blast Tunnel h = 45 W/(m²·K) | 1.091 | 1.481 hours (88.9 min) | Mixed Surface Convection + Ice Conduction | | Plate / Impingement h = 120 W/(m²·K) | 2.909 | 0.754 hours (45.2 min) | Internal Frozen-Shell Conduction Dominates | | Ambient T_inf >= T_f (deltaT <= 0) | No Freezing Drive | "Invalid Plank Freezing Inputs" | Sub-Freezing Medium Guard | - **Formula (Plank Phase-Change Freezing Time in Hours t_f = (rho_f*L_f / deltaT) * (P*a/h + R*a²/k_f) / 3600)**: `=IF(OR(MIN(B2:B9) <= 0), "Invalid Plank Freezing Inputs", ROUND(((B2 * B3) / B4) * ((B8 * B5) / B6 + (B9 * (B5 ^ 2)) / B7) / 3600, 3))` - **Formula (Freezing Biot Number Bi = (h * a) / k_f)**: `=IF(OR(MIN(B2:B9) <= 0), "Invalid Plank Freezing Inputs", ROUND((B6 * B5) / B7, 3))` ### PLASMIC Score Formula: Severe ADAMTS13 Deficiency & Emergent TTP Triage (0 to 7) - **URL**: https://sheets.arte-soft.com/en/learn/plasmic-score-adamts13-deficiency-thrombotic-thrombocytopenic-purpura/ - **Summary**: Identify immune Thrombotic Thrombocytopenic Purpura (ADAMTS13 <= 10%) within minutes of admission Labs using Pavan Bendapudi’s 7-point PLASMIC score for life-saving therapeutic plasma exchange (TPE) & caplacizumab. *Table — Why send-out ADAMTS13 assays take days—and how PLASMIC >= 6 guides immediate life-saving plasma exchange!:* | PLASMIC Score (0–7, Requires Schistocytic MAHA) | Probability of ADAMTS13 <= 10% | ISTH Emergent Management Pathway | | --- | --- | --- | | PLASMIC 0–4 (Low Risk) | 0%–4% Risk | Evaluate Alternative TMA (HUS, DIC, Drug/Transplant TMA) | | PLASMIC 5 (Intermediate Risk) | ~6%–24% Risk | Send STAT ADAMTS13; Clinical Judgment on Empiric TPE | | PLASMIC 6–7 (High Risk, e.g., 6) | 62%–82% Risk | Immediate Therapeutic Plasma Exchange + Steroids ± Caplacizumab | - **Formula (Bendapudi 7-Criterion PLASMIC Score (0 to 7, MAHA-Gated))**: `=IF(OR(MIN(B2:B9) < 0, MAX(B2:B9) > 1), "Flags Must Be 0 or 1", IF(B2 = 0, "Requires Schistocytic MAHA Prerequisite", SUM(B3:B9)))` - **Formula (ISTH TTP Guideline Emergent Plasma Exchange Stratification)**: `=IF(OR(MIN(B2:B9) < 0, MAX(B2:B9) > 1), "Flags Must Be 0 or 1", IF(B2 = 0, "Requires Schistocytic MAHA Prerequisite", IF(SUM(B3:B9) >= 6, "High TTP Risk (PLASMIC 6–7 — Emergent Plasma Exchange + Steroids)", IF(SUM(B3:B9) = 5, "Intermediate TTP Risk (PLASMIC 5 — Send STAT ADAMTS13)", "Low TTP Risk (PLASMIC 0–4 — Evaluate Non-TTP TMA)"))))` ### Plate Clutch & Disc Brake Uniform-Wear vs Pressure Torque Formula - **URL**: https://sheets.arte-soft.com/en/learn/plate-clutch-and-disc-brake-uniform-wear-vs-uniform-pressure-torque-formula/ - **Summary**: Calculate Uniform-Wear Effective Friction Radius (mm), Conservative Uniform-Wear Torque Capacity (N·m), Brand-New Uniform-Pressure Torque (N·m), and Max Inner-Edge Lining Pressure (kPa). *Table — Brand-new clutch discs follow Uniform Pressure—broken-in linings drop to conservative Uniform-Wear torque!:* | Annular Friction Clutch KPI (F = 8,000 N, mu = 0.35, Ro = 120, Ri = 60, Ns = 2) | Formula | Verified Output | | --- | --- | --- | | Uniform-Wear Radius R_uw (mm) | (Outer_Radius_Ro + Inner_Radius_Ri) / 2 | 90.00 mm | | Uniform-Wear Torque T_uw (N·m) | Ns * mu * F * ((Ro + Ri) / 2000) | 504.00 N·m (1,008.00 @ Ns = 4) | | Uniform-Pressure Torque T_up (N·m) | Ns * mu * F * (2/3)*(Ro^3-Ri^3)/(Ro^2-Ri^2)/1000 | 522.67 N·m (1,045.33 @ Ns = 4) | | Max Inner-Edge Pressure (kPa) | (F / (2 * PI() * (Ri/1000) * ((Ro-Ri)/1000))) / 1000 | 353.68 kPa | - **Formula (Conservative Uniform-Wear vs Uniform-Pressure Clutch Torque Formula)**: `=LET(cl_f, B2, mu_f, B3, ro_m, B4, ri_m, B5, ns_f, B6, IF(OR(cl_f <= 0, mu_f <= 0.05, mu_f > 0.8, ri_m <= 0, ro_m <= ri_m, ns_f < 1, INT(ns_f) <> ns_f), "Invalid Clutch Input", ROUND(ns_f * mu_f * cl_f * ((ro_m + ri_m) / 2000), 2)))` - **Formula (Twin-Disc Multi-Plate Clutch Upgrade Check (Set Friction Interfaces N_s = 4))**: `=IF(ISTEXT(E3), E3, ROUND((B2 / (2 * PI() * (B5 / 1000) * ((B4 - B5) / 1000))) / 1000, 2))` ### Plate Heat Exchanger (PHE) Velocity & Wall Shear Formula - **URL**: https://sheets.arte-soft.com/en/learn/plate-heat-exchanger-chevron-corrugation-channel-velocity-and-shear-stress-formula/ - **Summary**: Calculate Parallel Channels Per Fluid, Enlargement-Adjusted Hydraulic Diameter D_h (mm), Inter-Plate Channel Velocity (m/s), and Self-Cleaning Wall Shear Stress tau_w (Pa). *Table — Why PHE hydraulic diameter equals (2 * b) / Phi—and keeping chevron wall shear tau_w above 50 Pa prevents biofouling!:* | Chevron PHE Hydraulic KPI (72 m³/h, 41 Plates, W=0.5 m, b=3 mm, Phi=1.18, 60 kPa) | Formula | Verified Output | | --- | --- | --- | | Parallel Channels Per Fluid Nch | INT((Total_Plates_Np - 1) / 2) | 20 channels | | Chevron Hydraulic Diameter Dh | (2 * Gap_b_mm) / Enlargement_Phi | 5.085 mm | | Inter-Plate Channel Velocity (m/s) | (Flow_m3_h / 3600) / (Nch * W * (b/1000)) | 0.67 m/s (0.33 m/s @ 50% turndown) | | Wall Shear Stress tau_w (Pa) | (dP_Pa * Gap_b_m) / (2 * Phi * Length_m) | 63.56 Pa (21.19 Pa @ 20 kPa fouling!) | - **Formula (Chevron PHE Hydraulic Diameter, Velocity & Wall Shear Stress Formula)**: `=LET(qw_h, B2, np_t, B3, wp_m, B4, gb_m, B5, ph_i, B6, dp_k, B7, lp_m, B8, IF(OR(qw_h <= 0, np_t < 3, wp_m <= 0, gb_m <= 0.5, ph_i < 1, ph_i > 1.5, dp_k <= 0, lp_m <= 0), "Invalid PHE Input", ROUND(((dp_k * 1000) * (gb_m / 1000)) / (2 * ph_i * lp_m), 2)))` - **Formula (50% Pump Turndown Low-Shear Fouling Risk Check (Set Flow = 36 m³/h & dP = 20 kPa))**: `=IF(ISTEXT(E5), E5, ROUND((B2 / 3600) / (INT((B3 - 1) / 2) * B4 * (B5 / 1000)), 2))` ### PMT function: calculate a fixed monthly loan payment - **URL**: https://sheets.arte-soft.com/en/learn/pmt-monthly-loan-payment/ - **Summary**: Convert an annual interest rate and term into matching monthly units inside PMT, interpret the negative cash-outflow sign, and test zero-interest financing. *Table — Match the interest period to the payment frequency:* | Input | Cell | Value | | --- | --- | --- | | Principal (pv) | B2 | 12000 | | Annual rate | B3 | 0.06 | | Monthly periods (nper) | B4 | 36 | - **Formula (Why PMT returns a negative number)**: `=ROUND(PMT(B3/12,B4,B2),2)` - **Formula (Total interest and the 0% promotional check)**: `=ROUND(-PMT(B3/12,B4,B2)*B4-B2,2)` ### Pneumatic Conveying Gas Velocity & Saltation Margin Formula - **URL**: https://sheets.arte-soft.com/en/learn/pneumatic-conveying-rizk-saltation-velocity-and-pick-up-froude-formula/ - **Summary**: Calculate Required Conveying Air Mass Rate (kg/h), Line Volumetric Gas Flow at Pick-Up Pressure (m³/min), Superficial Pick-Up Gas Velocity U_gas (m/s), and Saltation Safety Margin U_gas / U_salt. *Table — Upsizing a pneumatic conveying pipe WITHOUT upsizing the blower drops gas velocity below saltation—plugging the horizontal line solid!:* | Dilute-Phase Conveying KPI (ID=102 mm, 7,200 kg/h, mu=6.0, rho_a=1.45 kg/m³) | Formula | Verified Output | | --- | --- | --- | | Required Air Mass Flow (kg/h) | Solids_Mass_kg_hr / Loading_Ratio_mu | 1,200.0 kg/h | | Actual Pick-Up Gas Flow (m³/min) | (Air_Mass_kg_hr / 60) / Air_Density_kg_m3 | 13.79 m³/min | | Superficial Pick-Up Velocity (m/s) | (Gas_m3_min / 60) / ((PI()/4)*(ID_m^2)) | 28.13 m/s (17.86 m/s @ 128 mm pipe!) | | Saltation Safety Ratio (U / Usalt) | PickUp_Velocity_m_s / Saltation_Vel_m_s | 1.94x (1.23x < 1.50x DANGER @ 128 mm!) | - **Formula (Pick-Up Point Superficial Conveying Gas Velocity & Saltation Margin Formula)**: `=LET(id_m, B2, ms_h, B3, mu_r, B4, ra_k, B5, us_v, B6, IF(OR(id_m <= 15, ms_h <= 0, mu_r <= 0, mu_r > 15, ra_k < 0.5, ra_k > 10, us_v <= 2), "Invalid Conveying Input", LET(ma_h, ms_h / mu_r, qa_s, (ma_h / 3600) / ra_k, ar_p, (PI() / 4) * ((id_m / 1000) ^ 2), ug_s, qa_s / ar_p, ROUND(ug_s / us_v, 2))))` - **Formula (Oversized 5-Inch (128 mm ID) Pipe Saltation Danger Check (Set Pipe ID B2 = 128.0 mm))**: `=IF(ISTEXT(E5), E5, LET(ma_h, B3 / B4, qa_s, (ma_h / 3600) / B5, ar_p, (PI() / 4) * ((B2 / 1000) ^ 2), ROUND(qa_s / ar_p, 2)))` ### Pockels Electro-Optic Modulator Half-Wave Voltage (Vpi) & Transmission - **URL**: https://sheets.arte-soft.com/en/learn/pockels-linear-electro-optic-half-wave-voltage-vpi/ - **Summary**: Calculate transverse lithium-niobate (LiNbO3) Pockels modulator half-wave voltage V_pi = (lambda_0 * d) / (2 * n_e^3 * r_33 * L) and crossed-polarizer optical transmission I / I_0 = SIN((PI()/2) * (V / V_pi))^2. *Table — See how waveguide electrode Aspect Ratio (d / L) drops Pockels V_pi from kilovolts to ~1 Volt!:* | Modulator Drive Bias (LiNbO3 Waveguide d = 10 um, L = 20 mm) | Half-Wave Voltage V_pi (V) | Applied Voltage V (V) | Crossed-Polarizer Transmission (%) | | --- | --- | --- | --- | | Quadrature Linear Bias (~V_pi / 2) | 1.284 V | 0.642 V | 50.02% (Max Linear Slope) | | Full Half-Wave ON State (V = V_pi) | 1.284 V | 1.284 V | 100.00% Peak Transmission | | Invalid Crystal Geometry (L <= 0 or n <= 0) | Guarded Optical Error | N/A | "Invalid Modulator Inputs" | - **Formula (Transverse Pockels Modulator Half-Wave Voltage V_pi (Volts))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Modulator Inputs", ROUND((B2 * B3) / (2 * (B4 ^ 3) * (B5 * 0.000000000001) * B6), 3))` - **Formula (Electro-Optic Amplitude Modulator Transmission (%) = 100 * SIN((PI()/2) * (V / V_pi))^2)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Modulator Inputs", ROUND(100 * (SIN((PI() / 2) * (B7 / ((B2 * B3) / (2 * (B4 ^ 3) * (B5 * 0.000000000001) * B6)))) ^ 2), 2))` ### Pocock Win Ratio, Win Odds, and Net Treatment Benefit Formula - **URL**: https://sheets.arte-soft.com/en/learn/pocock-win-ratio-matched-pairs-win-odds-and-net-benefit/ - **Summary**: Analyze hierarchical composite clinical endpoints (death before hospitalization before biomarker) using Pocock’s Win Ratio, Dong’s tie-adjusted Win Odds, and Buyse’s Net Benefit. *Table — Prioritize fatal events over non-fatal hospitalizations in composite endpoints:* | Hierarchical Composite Metric | Pairwise Formula | Sample Output (1,000 Pairs) | | --- | --- | --- | | Pocock Win Ratio (WR) | N_W / N_L (Ignores ties) | 1.5000 (360 / 240) | | Matched-Pair 95% Lower WR Bound | EXP(LN(N_W / N_L) - 1.959964 * SQRT((N_W + N_L)/(N_W*N_L))) | 1.2740 (> 1.00 null!) | | Dong Tie-Adjusted Win Odds (WO) | (N_W + 0.5 * N_T) / (N_L + 0.5 * N_T) | 1.2727 (Dampened by 40% ties) | | Buyse Net Treatment Benefit (NTB) | (N_W - N_L) / (N_W + N_L + N_T) | +0.1200 (+12.0% net win edge) | - **Formula (Pocock Hierarchical Win Ratio WR Formula)**: `=LET(n_win, SUM(B2:B4), n_los, SUM(C2:C4), IF(n_los <= 0, "Zero Treatment Losses", ROUND(n_win / n_los, 4)))` - **Formula (Dong Tie-Adjusted Win Odds (WO) vs Win Ratio Convergence Check)**: `=LET(n_win, SUM(B2:B4), n_los, SUM(C2:C4), n_tie, B5, IF(OR(n_tie < 0, n_los + 0.5 * n_tie <= 0), "Invalid Pair Counts", ROUND((n_win + 0.5 * n_tie) / (n_los + 0.5 * n_tie), 4)))` ### Point-Biserial Correlation (r_pb) for Binary Groups & Exam Item Discrimination - **URL**: https://sheets.arte-soft.com/en/learn/point-biserial-correlation-binary-group-to-continuous-score-formula/ - **Summary**: Compute Point-Biserial Correlation r_pb = ((M_1 - M_0) / SD_pop) * SQRT(p * q) from subgroup means and verify algebraic identity with CORREL on 0/1 binary indicators. *Table — Why using population STDEVP—not sample STDEV—matches Pearson CORREL identically:* | Diagnostic Quantity | Formula | 6-Examinee Sample ([88,92,90] vs [74,70,72]) | | --- | --- | --- | | Group 1 Mean M_1 / Group 0 Mean M_0 | AVERAGEIF(B2:B7, 1..0, C2:C7) | 90.00 vs 72.00 (Gap = +18.00) | | Population SD_n & Split SQRT(p*q) | STDEVP(C2:C7) & SQRT(0.5 * 0.5) | 9.1469 & 0.5000 | | Closed-Form Point-Biserial r_pb | ((90 - 72) / 9.1469) * 0.5 | 0.9839 (Matches CORREL = 0.9839) | - **Formula (Closed-Form Subgroup-Means Point-Biserial Formula)**: `=LET(p_one, AVERAGE(B2:B7), sd_all, STDEVP(C2:C7), IF(OR(p_one <= 0, p_one >= 1, sd_all = 0), "DEGENERATE_VARIANCE", LET(m_one, AVERAGEIF(B2:B7, 1, C2:C7), m_zero, AVERAGEIF(B2:B7, 0, C2:C7), ROUND(((m_one - m_zero) / sd_all) * SQRT(p_one * (1 - p_one)), 4))))` - **Formula (Direct CORREL Parity Check)**: `=ROUND(CORREL(B2:B7, C2:C7), 4)` ### Poisson probability formula: P(X = k) arrivals with EXP and FACT - **URL**: https://sheets.arte-soft.com/en/learn/poisson-probability-distribution-arrival-rate/ - **Summary**: Calculate the exact probability of k random arrivals, defects, or outages per interval given average rate lambda using (lambda^k * EXP(-lambda)) / FACT(k). *Table — Model independent arrival counts per hour, day, or square meter:* | Event Count k (at Rate lambda = 2.0 / hr) | Formula | Exact Probability | | --- | --- | --- | | k = 0 arrivals | =EXP(-2) | 13.53% (0.1353) | | k >= 1 arrival (at least one) | =1 - EXP(-2) | 86.47% (0.8647) | | k = 2 arrivals (equals mean) | =(2^2 * EXP(-2)) / FACT(2) | 27.07% (0.2707) | | k = 3 arrivals | =(2^3 * EXP(-2)) / FACT(3) | 18.04% (0.1804) | - **Formula (Exact Poisson PMF P(X = k) and P(X >= 1) formulas)**: `=IF(OR(A2<0,A2>100,B2<0,B2>100,B2<>INT(B2)),"Outside example domain",IF(A2=0,IF(B2=0,1,0),ROUND(((A2 ^ B2) * EXP(-A2)) / FACT(B2), 4)))` - **Formula (Probability of at least 1 event occurring in the window)**: `=ROUND(1 - EXP(-A2), 4)` ### Polar Plot Coordinate Formula: Convert Radius & Angle (r, theta) to XY Scatter - **URL**: https://sheets.arte-soft.com/en/learn/polar-plot-angle-radius-to-cartesian-xy-scatter-coordinates/ - **Summary**: Plot true continuous-angle Polar Charts (antenna radiation lobes, wind roses, acoustic microphone patterns) on an XY Scatter grid by converting Polar (r, theta_deg) into Cartesian X = r * COS(RADIANS(theta)) and Y = r * SIN(RADIANS(theta)). *Table — Why Radar Charts distort unequal angles — and how Polar-to-Cartesian XY Scatter fixes it!:* | Polar Point (Radius r = 10.0) | Math CCW X = r * COS(theta) | Math CCW Y = r * SIN(theta) | Compass CW (0° = North) (X, Y) | | --- | --- | --- | --- | | theta = 0° | X = 10.0000 | Y = 0.0000 | (0.0000, 10.0000) | | theta = 30° | X = 8.6603 | Y = 5.0000 | (5.0000, 8.6603) | | theta = 60° | X = 5.0000 | Y = 8.6603 | (8.6603, 5.0000) | | theta = 135° | X = -7.0711 | Y = 7.0711 | (7.0711, -7.0711) | - **Formula (Cartesian Abscissa X = r * COS(RADIANS(theta_deg)))**: `=IF(B2 < 0, "Requires Polar Radius r >= 0", ROUND(B2 * COS(RADIANS(B3)), 4))` - **Formula (Cartesian Ordinate Y = r * SIN(RADIANS(theta_deg)))**: `=IF(B2 < 0, "Requires Polar Radius r >= 0", ROUND(B2 * SIN(RADIANS(B3)), 4))` ### PRISM III Score Formula: Pollack Pediatric Risk of Mortality PICU Severity - **URL**: https://sheets.arte-soft.com/en/learn/pollack-prism-iii-pediatric-risk-of-mortality-picu-score/ - **Summary**: Calculate Murray Pollack’s 5-subscore PRISM III physiological severity score (0–74 points across Cardiovascular/Neurologic, Acid-Base/Blood Gas, Chemistry, and Hematology) for 12-hour and 24-hour PICU benchmarking. *Table — Decomposing PICU physiological derangement into PRISM III’s 4 organ-system subscores!:* | PRISM III Total Score (0–74) | Physiological Subscore Profile | PICU Acuity & Quality Benchmarking Tier | | --- | --- | --- | | PRISM III < 10 (e.g., 5 Points) | Isolated mild electrolyte/vital shift | Low Acuity (< 10 — Routine PICU Observation) | | PRISM III 10–19 | Single-organ respiratory or hemodynamic stress | Moderate Acuity (PRISM III 10–19) | | PRISM III >= 20 (e.g., 24 Points) | CV/Neuro 10 + Blood Gas 7 + Chem 3 + Heme 4 | High Acuity (PRISM III >= 20 — Multi-Organ Instability) | - **Formula (Total Pollack PRISM III Physiological Acuity Score (0 to 74))**: `=IF(OR(MIN(B2:B5) < 0, B2 > 30, B3 > 22, B4 > 10, B5 > 12), "Invalid PRISM III Subscore", SUM(B2:B5))` - **Formula (PRISM III PICU Physiological Severity Stratification)**: `=IF(OR(MIN(B2:B5) < 0, B2 > 30, B3 > 22, B4 > 10, B5 > 12), "Invalid PRISM III Subscore", IF(SUM(B2:B5) >= 20, "High Acuity (PRISM III >= 20 — Multi-Organ Instability)", IF(SUM(B2:B5) >= 10, "Moderate Acuity (PRISM III 10–19)", "Low Acuity (PRISM III < 10 — Routine PICU Observation)")))` ### Pollaczek-Khinchine M/G/1 Queue Waiting Time & Service Variance - **URL**: https://sheets.arte-soft.com/en/learn/pollaczek-khinchine-m-g-1-queue-waiting-time-and-variance/ - **Summary**: Calculate exact M/G/1 expected queue wait W_q = (lambda * (sigma_s^2 + (1/mu)^2)) / (2 * (1 - rho)) and queue length L_q = lambda * W_q across deterministic (M/D/1), exponential (M/M/1), and high-variance servers. *Table — Quantify why eliminating service-time variability cuts queue waits in half!:* | Single-Server Regime (lambda = 8/hr, mu = 10/hr, rho = 80%) | Service Std Dev sigma_s (hr) | Squared CV_s^2 | Mean Queue Wait W_q (Minutes) | | --- | --- | --- | --- | | Deterministic Automation (M/D/1) | 0.00 hr | 0.00 | 12.00 min (Half of M/M/1!) | | Exponential Service (M/M/1) | 0.10 hr (= 1/mu) | 1.00 | 24.00 min | | High-Variance Escalations (CV_s = 2) | 0.20 hr | 4.00 | 60.00 min (2.5x M/M/1!) | - **Formula (Pollaczek-Khinchine Expected Queue Wait W_q (Minutes))**: `=IF(OR(B2 < 0, B3 <= 0, B4 < 0), "Invalid Queue Rate", IF(B2 >= B3, "Unstable Queue (Utilization >= 100%)", ROUND(((B2 * ((B4 ^ 2) + ((1 / B3) ^ 2))) / (2 * (1 - (B2 / B3)))) * 60, 2)))` - **Formula (Little's Law Mean Customers Waiting in Queue L_q = lambda * W_q_hr)**: `=IF(B2 >= B3, "Unstable Queue", ROUND(B2 * ((B2 * ((B4 ^ 2) + ((1 / B3) ^ 2))) / (2 * (1 - (B2 / B3)))), 2))` ### Polymer Two-Roll Calendering Gaskell Nip Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/polymer-calendering-two-roll-nip-gaskell-hydrodynamic-separating-force-and-sheet-gauge/ - **Summary**: Calculate Post-Nip Exit Sheet Gauge 1.226*H0 (mm), Peak Hydrodynamic Nip Pressure (MPa), Gaskell Roll Separating Force (kN), and Two-Roll Viscous Drive Power (kW). *Table — Set a calender nip gap to 0.60 mm and the PVC sheet exits 22.6% THICKER—while generating 188 tonnes of roll-bending separating force!:* | Gaskell Calender Nip KPI (mu=4,200 Pa·s, R=0.30 m, U=0.45 m/s, W=1.60 m, H0=0.60 vs 0.35 mm) | Formula | Verified Output | | --- | --- | --- | | Post-Nip Sheet Gauge H_exit (mm) | 1.226 * Min_Nip_Gap_H0_mm | 0.736 mm (0.429 mm @ H0=0.35 mm) | | Peak Nip Pressure P_max (MPa) | (0.755 * mu * U * SQRT(R/h0)) / (h0 * 1e6) | 53.18 MPa (119.36 MPa @ H0=0.35 mm!) | | Roll Separating Force F_sep (kN) | (1.22 * mu * U * R * W) / (h0 * 1000) | 1,844.6 kN (3,162.2 kN roll bow @ 0.35 mm!) | | Two-Roll Viscous Power (kW) | (2.18 * mu * U^2 * SQRT(R/h0) * W) / 1000 | 66.33 kW (86.85 kW @ H0=0.35 mm) | - **Formula (Gaskell Flood-Fed Newtonian Calendering Pressure, Separating Load & Power Formula)**: `=LET(mu_p, B2, rr_m, B3, us_m, B4, hz_m, B5 / 1000, wf_m, B6, IF(OR(mu_p <= 10, rr_m <= 0.05, us_m <= 0.01, B5 <= 0.02, B5 > 20, wf_m <= 0.1), "Invalid Calender Nip", ROUND((2.18 * mu_p * (us_m ^ 2) * SQRT(rr_m / hz_m) * wf_m) / 1000, 2)))` - **Formula (Thin-Gauge 0.35 mm Nip Closing `h0^(-3/2)` Pressure Spike Check (Set Nip Gap B5 = 0.35 mm))**: `=IF(ISTEXT(E5), E5, LET(hz_m, B5 / 1000, ROUND((1.22 * B2 * B4 * B3 * B6) / (hz_m * 1000), 1)))` ### Mining Net Smelter Return (NSR) & TC/RC Formula - **URL**: https://sheets.arte-soft.com/en/learn/polymetallic-net-smelter-return-nsr-treatment-and-refining-charge-formula/ - **Summary**: Calculate Concentrate Mass Pull, Minimum-Unit-Deducted Payable Copper Grade, Smelter Value per Dry Metric Tonne of Concentrate after Treatment/Refining/Freight Charges, and Mine-Mouth NSR per Tonne Milled. *Table — Price sulfide concentrate offtake contracts accurately with unit deductions and TC/RCs!:* | Copper Concentrate Offtake Metric (1.0% Ore, 90% Rec, 25% Conc, 1% Ded, $9k/MT Cu) | Formula | Verified Output | | --- | --- | --- | | Concentrate Mass Pull Ratio | (g_ore * Rec_mill) / g_conc | 0.0360 dmt conc / t ore | | Net Value per dmt Concentrate ($) | g_pay * (P_mt - RC_mt) - TC_frt | $1,828.00 / dmt conc | | Mine-Mouth NSR per Tonne Ore ($/t) | Net_Conc_Value * Mass_Pull | $65.81 / t milled ore | | Net Smelter Realization Factor | NSR_ore / (g_ore * Rec_mill * P_mt) | 0.8124 (81.24% Realized) | - **Formula (Mine-Mouth Net Smelter Return (NSR $/t Ore) Formula)**: `=LET(g_or, B2, rc_m, B3, g_cn, B4, u_dd, B5, p_cu, B6, tc_f, B7, rc_u, B8, IF(OR(g_or <= 0, rc_m <= 0, rc_m > 1, g_cn <= g_or, g_cn > 1, u_dd < 0, u_dd >= g_cn, p_cu <= 0, tc_f < 0, rc_u < 0), "Invalid Smelter Schedule", LET(ms_p, (g_or * rc_m) / g_cn, g_py, g_cn - u_dd, nv_c, g_py * (p_cu - rc_u) - tc_f, ROUND(nv_c * ms_p, 2))))` - **Formula (Smelter Payable Realization Ratio Formula)**: `=LET(ms_p, (B2 * B3) / B4, nv_c, (B4 - B5) * (B6 - B8) - B7, IF(ISTEXT(E4), E4, ROUND((nv_c * ms_p) / (B2 * B3 * B6), 4)))` ### Polytropic Centrifugal Gas Compressor Temp & Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/polytropic-centrifugal-gas-compressor-head-discharge-temp-and-power/ - **Summary**: Calculate Centrifugal Gas Compressor Polytropic Temperature Exponent, Discharge Temperature T2 (K), Polytropic Specific Enthalpy Rise (kJ/kg), and Gas Compression Power (kW). *Table — Divide the isentropic exponent (k-1)/k by polytropic efficiency eta_p—or underpredict T2 seal limits!:* | ASME PTC 10 Polytropic Compressor KPI (300 K, PR = 3.0, k = 1.28, eta_p = 80%) | Formula | Verified Output | | --- | --- | --- | | Polytropic Temp Exponent (n-1)/n | ((k - 1) / k) / Polytropic_Efficiency | 0.2734 (0.2188 Isentropic) | | Discharge Temperature T2 (K) | T1_K * Pressure_Ratio ^ ((n - 1) / n) | 405.12 K (381.50 K Isentropic) | | Specific Enthalpy Rise (kJ/kg) | Cp_kJ_kgK * (T2_K - T1_K) | 236.52 kJ/kg | | Gas Compression Power (kW) | Mass_Flow_kg_s * Cp_kJ_kgK * (T2_K - T1_K) | 2,838.25 kW (2,200.43 Ideal) | - **Formula (Polytropic Discharge Temperature & Gas Power Formula)**: `=LET(t_in, B2, pr_r, B3, k_ga, B4, et_p, B5, cp_g, B6, m_fl, B7, IF(OR(t_in <= 100, pr_r <= 1, k_ga <= 1.01, k_ga > 1.67, et_p <= 0.4, et_p > 1, cp_g <= 0, m_fl <= 0), "Invalid Compressor Input", LET(ex_p, ((k_ga - 1) / k_ga) / et_p, t_ou, t_in * (pr_r ^ ex_p), ROUND(m_fl * cp_g * (t_ou - t_in), 2))))` - **Formula (Reversible Isentropic Lower-Bound Check (Set Polytropic Efficiency = 1.00))**: `=IF(ISTEXT(E5), E5, ROUND(B2 * (B3 ^ (((B4 - 1) / B4) / B5)), 2))` ### Poole-Frenkel Trap Barrier Lowering vs. Schottky Emission Formula - **URL**: https://sheets.arte-soft.com/en/learn/poole-frenkel-trap-assisted-conduction-barrier-lowering-formula/ - **Summary**: Calculate bulk dielectric Coulomb trap barrier lowering Delta_phi_PF = SQRT((e * E) / (PI() * eps_dyn * eps_0)) (eV) and compare directly against electrode-limited Schottky image-force lowering (0.5 * Delta_phi_PF). *Table — Distinguish bulk Poole-Frenkel dielectric leakage from interface Schottky emission by the exact factor of 2!:* | Dielectric Electric Field E (Si3N4 eps_dyn = 7.5) | Poole-Frenkel Lowering Delta_phi_PF (eV) | Schottky Lowering Delta_phi_S (eV) | Leakage Mechanism Slope Ratio | | --- | --- | --- | --- | | Moderate Gate Stress (1.0e8 V/m = 1 MV/cm) | 0.2771 eV | 0.1386 eV | beta_PF / beta_S = 2.000 | | High Gate Stress (4.0e8 V/m = 4 MV/cm) | 0.5542 eV (2x) | 0.2771 eV | Exponential Leakage Surge | | Invalid Permittivity (eps_dyn < 1 or E < 0) | Physical Guard | "Invalid Dielectric Inputs" | Requires eps_dyn >= 1, E >= 0 | - **Formula (Poole-Frenkel Bulk Trap Barrier Lowering Delta_phi_PF (eV))**: `=IF(OR(B2 < 1, B3 < 0), "Invalid Dielectric Inputs", ROUND(SQRT((0.0000000000000000001602176634 * B3) / (PI() * B2 * 0.0000000000088541878)), 4))` - **Formula (Corresponding Schottky Interface Image-Force Lowering Delta_phi_Schottky (eV))**: `=IF(OR(B2 < 1, B3 < 0), "Invalid Dielectric Inputs", ROUND(0.5 * SQRT((0.0000000000000000001602176634 * B3) / (PI() * B2 * 0.0000000000088541878)), 4))` ### Population Pyramid Chart Formula: Negated Male Share, Sex Ratio & Age Dependency - **URL**: https://sheets.arte-soft.com/en/learn/population-pyramid-chart-negative-male-bars-and-sex-ratio/ - **Summary**: Prepare an age-sex Population Pyramid bar chart: negate the left-side Male cohort share (-Male / Total_Pop * 100), compute Cohort Sex Ratio (Males per 100 Females), and Total Age-Dependency Ratio. *Table — Why stacked horizontal bar charts build clean back-to-back Population Pyramids via negated left series!:* | Age Bracket | Male_k | Female_k | Left Pyramid Bar (-Male %) | Right Pyramid Bar (+Female %) | Sex Ratio (M per 100 F) | | --- | --- | --- | --- | --- | --- | | 0–14 (Youth) | 420 | 400 | -10.00% | +9.52% | 105.00 | | 15–64 (Working Age) | 1,380 | 1,410 | -32.86% | +33.57% | 97.87 | | 65+ (Older Adults) | 260 | 330 | -6.19% | +7.86% | 78.79 | - **Formula (Negated Left-Side Male Cohort Share (%) of Total Population)**: `=IF(OR(MIN(B2:B4) < 0, MIN(C2:C4) < 0, SUM(B2:B4) + SUM(C2:C4) <= 0), "Invalid Cohort Counts", ROUND(-100 * B2 / (SUM(B2:B4) + SUM(C2:C4)), 2))` - **Formula (Cohort Sex Ratio (Males per 100 Females) & Total Age-Dependency Ratio (%))**: `=IF(C4 <= 0, "Requires Positive Female Cohort", ROUND(100 * B4 / C4, 2))` ### Historical beta, regression intercept and modeled CAPM return - **URL**: https://sheets.arte-soft.com/en/learn/portfolio-beta-and-capm-expected-return-slope/ - **Summary**: Estimate historical Beta = Cov(Ri, Rm) / Var(Rm) in one SLOPE(StockReturns, MarketReturns) call and compute CAPM Required Return Rf + Beta * (Rm - Rf). *Table — Estimate historical beta with an OLS slope:* | Period | Market Return X (A) | Stock Return Y (B) | CAPM Inputs | | --- | --- | --- | --- | | Q1 | -4.0% | -5.0% | Risk-Free (C2) = 4.0% | | Q2 | 0.0% | +1.0% | Market Return (D2) = 10.0% | | Q3 | +4.0% | +7.0% | Beta = SLOPE(B, A) = 1.50 | | Q4 | +8.0% | +13.0% | CAPM Ke = 4% + 1.5*(6%) = 13.0% | - **Formula (Historical Beta and CAPM Cost of Equity formulas)**: `=ROUND(C2 + SLOPE(B2:B5, A2:A5) * (D2 - C2), 4)` - **Formula (Direct Stock Beta formula)**: `=ROUND(SLOPE(B2:B5, A2:A5), 4)` - **Formula (Additional worked calculation)**: `=ROUND(INTERCEPT(B2:B5, A2:A5), 4)` ### Portland Cement Bogue Clinker Phases & LSF Formula - **URL**: https://sheets.arte-soft.com/en/learn/portland-cement-clinker-bogue-phase-composition-c3s-c2s-c3a-c4af-and-lsf-formula/ - **Summary**: Calculate ASTM C150 Bogue Potential Alite C_3S (%), Belite C_2S (%), Tricalcium Aluminate C_3A (%), and Raw-Mix Lime Saturation Factor LSF (%) from XRF Oxide Percentages. *Table — How a 1% CaO or Al2O3 shift swings early-strength Alite (C3S) by 4–7 points—and caps C3A <= 5% for marine sulfate resistance!:* | ASTM C150 Bogue Clinker KPI (CaO=65.2, SiO2=21.4, Al2O3=5.2, Fe2O3=3.2, SO3=0.6) | Formula | Verified Output | | --- | --- | --- | | Alite Tricalcium Silicate C3S (%) | 4.071*CaO - 7.6*SiO2 - 6.718*Al2O3 - 1.43*Fe2O3 - 2.852*SO3 | 61.57% (61.85% Type V marine) | | Belite Dicalcium Silicate C2S (%) | 2.867 * SiO2 - 0.7544 * C3S | 14.91% (16.42% Type V marine) | | Tricalcium Aluminate C3A (%) | 2.650 * Al2O3 - 1.692 * Fe2O3 | 8.37% (2.63% <= 5% Type V!) | | Lime Saturation Factor LSF (%) | (CaO / (2.8*SiO2 + 1.2*Al2O3 + 0.65*Fe2O3))*100 | 95.55% (93.45% Type V marine) | - **Formula (ASTM C150 Bogue Phase Matrix & Lime Saturation Factor Formula)**: `=LET(ca_o, B2, si_o, B3, al_o, B4, fe_o, B5, so_x, B6, IF(OR(ca_o < 55, ca_o > 72, si_o < 16, si_o > 28, al_o <= 0, fe_o <= 0, so_x < 0, (al_o / fe_o) < 0.64), "Invalid Bogue Oxide Assay", ROUND((ca_o / (2.8 * si_o + 1.2 * al_o + 0.65 * fe_o)) * 100, 2)))` - **Formula (ASTM Type V Sulfate-Resisting Marine Clinker Reformulation Check (Set CaO=64.5, SiO2=22.0, Al2O3=3.8, Fe2O3=4.4))**: `=IF(ISTEXT(E5), E5, ROUND(2.65 * B4 - 1.692 * B5, 2))` ### Position & Exact Cell Address of Max or Min Value (XMATCH & ADDRESS) - **URL**: https://sheets.arte-soft.com/en/learn/position-and-cell-address-of-max-or-min-value-xmatch/ - **Summary**: Find both the relative list position (1..N) and exact worksheet cell address (such as "B4") of the maximum or minimum value in a column using XMATCH(MAX(range), range, 0) and ADDRESS. *Table — Locate WHERE peak revenue or minimum pressure occurred—not just its magnitude!:* | Station ID (Col A) | Peak Output (Col B) | Relative Position in B2:B5 | Worksheet Cell Address | | --- | --- | --- | --- | | Line-North | 620 units | Position 1 | B2 | | Line-East | 810 units | Position 2 | B3 | | Line-South (MAX!) | 940 units | Position 3 (XMATCH = 3) | B4 (ROW(B2)+3-1 = 4) | | Line-West (MIN!) | 550 units | Position 4 (Min pos = 4) | B5 | - **Formula (1-Based Relative Position of the Maximum Value in List)**: `=IF(COUNT(B2:B5) = 0, "No Numeric Values", XMATCH(MAX(B2:B5), B2:B5, 0))` - **Formula (Exact Worksheet Cell Address (Relative A1 Style) of the Maximum Value)**: `=IF(COUNT(B2:B5) = 0, "No Numeric Values", ADDRESS(ROW(B2) + XMATCH(MAX(B2:B5), B2:B5, 0) - 1, COLUMN(B2), 4))` - **Formula (Exact Worksheet Cell Address of the Minimum Value)**: `=IF(COUNT(B2:B5) = 0, "No Numeric Values", ADDRESS(ROW(B2) + XMATCH(MIN(B2:B5), B2:B5, 0) - 1, COLUMN(B2), 4))` ### Find the first literal substring with XMATCH wildcard mode - **URL**: https://sheets.arte-soft.com/en/learn/position-of-first-partial-wildcard-match-xmatch/ - **Summary**: Escape wildcard characters in a search token, then find its first case-insensitive occurrence and return the matched text. *Table — Don't forget match_mode = 2 when using wildcards inside XMATCH!:* | Range Index | Invoice Code (A2:A6) | Contains "EU"? | XMATCH("*EU*", A2:A6, 2) | | --- | --- | --- | --- | | 1 (Row 2) | INV-100-US | No | Skipped | | 2 (Row 3) | INV-205-UK | No | Skipped | | 3 (Row 4) | INV-310-EU | Yes (First hit!) | Returns position 3! | | 4 (Row 5) | INV-415-EU | Yes (Later hit) | Ignored (first match wins) | | 5 (Row 6) | INV-520-JP | No | Missing "BR" -> IFNA returns 0 | - **Formula (1-based position of first partial match using XMATCH (match_mode = 2))**: `=IF(COUNTBLANK(D2)>0,0,IFNA(XMATCH("*" & SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?") & "*", A2:A6, 2), 0))` - **Formula (Retrieve the full text of the first partial-matching cell)**: `=LET(matchPosition,IF(COUNTBLANK(D2)>0,0,IFNA(XMATCH("*" & SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?") & "*", A2:A6, 2), 0)),IF(matchPosition=0,"None",INDEX(A2:A6,matchPosition)))` ### Portsmouth P-POSSUM Surgical Mortality Formula: Physiology & Operative Logit - **URL**: https://sheets.arte-soft.com/en/learn/possum-and-p-possum-portsmouth-surgical-mortality-logit/ - **Summary**: Calculate predicted 30-day surgical inpatient mortality (%) from 12-factor Physiology Score (12–88) and 6-factor Operative Severity Score (6–48) using Prytherch’s Portsmouth P-POSSUM logistic equation. *Table — Why Portsmouth P-POSSUM (-9.065 + 0.1692*Phys + 0.1550*Op) fixed original POSSUM’s 2×–6× overprediction in low-risk surgery!:* | Surgical Audit Case (Physiology 12–88, Operative 6–48) | P-POSSUM Linear Logit | Predicted 30-Day Mortality (%) | NELA / Surgical Audit Action | | --- | --- | --- | --- | | Physiology = 24, Operative = 14 (Urgent Colectomy) | -2.8342 | 5.55% (>= 5% High-Risk Cutoff!) | Consultant Anesthesia + Post-Op HDU/ICU | | Physiology = 14, Operative = 7 (Elective Hernia) | -5.6112 | 0.36% | Standard Surgical Ward Recovery | | Physiology < 12 or Operative < 6 (Impossible Floor!) | Error Guard | "Physiology >= 12 and Operative >= 6 Required" | Minimum-Score Audit Guard | - **Formula (Portsmouth P-POSSUM Predicted 30-Day Mortality Probability (%))**: `=IF(OR(B2 < 12, B2 > 88, B3 < 6, B3 > 48), "Physiology >= 12 and Operative >= 6 Required", ROUND(100 / (1 + EXP(-(-9.065 + 0.1692 * B2 + 0.155 * B3))), 2))` - **Formula (P-POSSUM Log-Odds Linear Predictor ln(R / (1 - R)))**: `=IF(OR(B2 < 12, B2 > 88, B3 < 6, B3 > 48), "Physiology >= 12 and Operative >= 6 Required", ROUND(-9.065 + 0.1692 * B2 + 0.155 * B3, 4))` ### Post-Money SAFE vs Pre-Money SAFE Dilution Formula - **URL**: https://sheets.arte-soft.com/en/learn/post-money-safe-vs-pre-money-valuation-cap-founder-dilution-formula/ - **Summary**: Compare stacked YC Post-Money SAFE ownership locks (alpha_i = I_i / Cap_i) against Legacy Pre-Money SAFEs that mutually dilute each other prior to a priced Series A round. *Table — See why stacked Post-Money SAFEs dilute ONLY founders—never earlier SAFE holders!:* | Seed Cap Table Metric ($1.5M@$10M + $1M@$20M SAFEs, 20% Series A) | Formula | Verified Output | | --- | --- | --- | | Total Stacked Post-Money SAFE Lock | I_1 / C_1 + I_2 / C_2 | 0.2000 (20.00% Pre-Series-A) | | Founder Post-Series-A (Post-Money SAFEs) | (1 - (I_1/C_1 + I_2/C_2)) * (1 - alpha_A) | 0.6400 (64.00%) | | Founder Post-Series-A (Pre-Money SAFEs) | (1 / (1 + I_1/C_1 + I_2/C_2)) * (1 - alpha_A) | 0.6667 (66.67%) | | Stacking Haircut vs Pre-Money SAFEs | Founder_PostSAFE - Founder_PreSAFE | -0.0267 (-2.67% Founder Equity) | - **Formula (Founder Post-Series-A Ownership Under Stacked Post-Money SAFEs)**: `=LET(sh_f, B2, i_s1, B3, cp_1, B4, i_s2, B5, cp_2, B6, al_a, B7, IF(OR(sh_f <= 0, i_s1 < 0, cp_1 <= 0, i_s2 < 0, cp_2 <= 0, al_a <= 0, al_a >= 1), "Invalid SAFE Stack", LET(al_sf, i_s1 / cp_1 + i_s2 / cp_2, IF(al_sf >= 1, "Over-Subscribed SAFE Stack", ROUND((1 - al_sf) * (1 - al_a), 4)))))` - **Formula (Legacy Pre-Money SAFE Founder Share & Stacking Wedge Formula)**: `=LET(al_sf, B3 / B4 + B5 / B6, IF(ISTEXT(E3), E3, ROUND(((1 - al_sf) - 1 / (1 + al_sf)) * (1 - B7), 4)))` ### Sintering Linear Shrinkage & Die Tooling Oversize Formula - **URL**: https://sheets.arte-soft.com/en/learn/powder-metallurgy-solid-state-sintering-shrinkage-fired-density-and-oversize-die-scale/ - **Summary**: Calculate Volumetric Sintering Shrinkage (%), Isotropic Linear Shrinkage 1 - (rho_g/rho_s)^(1/3) (%), Tooling Oversize Scale Factor, and Green Die Cavity Dimension (mm). *Table — Multiplying a 32 mm finished MIM gear by (1 + 0.1394) cuts the mold cavity 0.72 mm UNDERSIZE—because tooling scale is 1 / (1 - S_L), NOT 1 + S_L!:* | MIM vs Die-Pressed PM Sintering KPI (Target L_f = 32.000 mm) | Formula | Verified Output | | --- | --- | --- | | Volumetric Shrinkage (%) | (1 - (Green_Rho / Sintered_Rho)) * 100 | 36.27% MIM (8.05% uniaxial PM) | | Isotropic Linear Shrinkage SL (%) | (1 - ((Green_Rho / Sintered_Rho) ^ (1/3))) * 100 | 13.94% MIM (2.76% uniaxial PM) | | Exact Tooling Oversize Factor (OSF) | 1 / ((Green_Rho / Sintered_Rho) ^ (1/3)) | 1.1620 (vs wrong 1+SL = 1.1394!) | | Required Mold / Die Cavity L0 (mm) | Target_Dim_mm / ((Green_Rho / Sintered_Rho) ^ (1/3)) | 37.185 mm MIM (32.908 mm PM) | - **Formula (Mass-Conserved Cube-Root Sintering Shrinkage & Tooling Cavity Scale Formula)**: `=LET(rg_d, B2, rs_d, B3, lf_m, B4, lr_t, (rg_d / rs_d) ^ (1 / 3), IF(OR(rg_d <= 0.5, rs_d <= rg_d, rs_d > 22.5, (rg_d / rs_d) < 0.35, lf_m <= 0.1), "Invalid Sintering Input", ROUND(lf_m / lr_t, 3)))` - **Formula (Uniaxial Die-Compacted PM Steel Gear (`rho_g = 6.85 -> rho_s = 7.45` g/cm³) Low-Shrinkage Check)**: `=IF(ISTEXT(E5), E5, ROUND(1 / ((B2 / B3) ^ (1 / 3)), 4))` ### POWER function: calculate exponents, reciprocals, and Nth roots - **URL**: https://sheets.arte-soft.com/en/learn/power-function-exponents-and-roots/ - **Summary**: Raise numbers to positive, zero, negative, and fractional (1/N) powers with POWER—and guard even roots of negative numbers. *Table — One function for powers, roots, and reciprocals:* | Base (A) | Exponent (B) | POWER(A, B) | Meaning | | --- | --- | --- | --- | | 2 | 5 | 32 | 2 multiplied 5 times | | 27 | 1/3 | 3 | Cube root of 27 | | 4 | -2 | 0.0625 | Reciprocal 1 / 4^2 | | 95 | 0 | 1 | Zero exponent identity | - **Formula (Calculate Compound Annual Growth Rate (CAGR) with POWER)**: `=ROUND(POWER(D2 / C2, 1 / E2) - 1, 4)` - **Formula (Guard fractional roots of negative bases)**: `=IF(AND(A2<0, MOD(B2, 1)<>0), "Non-real root", POWER(A2, B2))` ### Grid N-1 Reserve & ELCC Accredited Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/power-grid-n-minus-1-spinning-reserve-and-elcc-accredited-capacity/ - **Summary**: Calculate Total Accredited Unforced Capacity UCAP = Thermal_ICAP*(1 - EFORd) + VRE_Nameplate*ELCC, Planning Reserve Margin Surplus vs Target PRM, and N-1 Largest-Contingency Margin. *Table — Audit grid resource adequacy with EFORd-derated thermal UCAP and renewable ELCC!:* | Resource Adequacy Metric (10 GW Thermal @ 6% EFORd, 5 GW VRE @ 24% ELCC, 9 GW Peak) | Formula | Verified Output | | --- | --- | --- | | Total Accredited System UCAP (MW) | ICAP_th*(1 - EFORd) + VRE_mw*elcc | 10,600.00 MW (vs 15,000 ICAP) | | PRM Adequacy Surplus / Deficit (MW) | UCAP - Peak_Demand * (1 + PRM_target) | +250.00 MW (Adequate) | | Achieved UCAP Reserve Margin | (UCAP - Peak_Demand) / Peak_Demand | 0.1778 (17.78% vs 15% Target) | | N-1 Largest-Unit Contingency Margin | (UCAP - Unit_max) - Peak_Demand | +500.00 MW (Survives 1.1 GW Trip) | - **Formula (Accredited System UCAP & PRM Surplus Formula)**: `=LET(ic_t, B2, ef_d, B3, vr_m, B4, el_c, B5, pk_d, B6, pr_m, B7, un_m, B8, IF(OR(ic_t < 0, ef_d < 0, ef_d >= 1, vr_m < 0, el_c < 0, el_c > 1, pk_d <= 0, pr_m < 0, un_m < 0), "Invalid Adequacy Input", LET(uc_p, ic_t * (1 - ef_d) + vr_m * el_c, ROUND(uc_p - pk_d * (1 + pr_m), 2))))` - **Formula (N-1 Single-Contingency Spinning Headroom Formula)**: `=IF(ISTEXT(E2), E2, ROUND((E2 - B8) - B6, 2))` ### Asymmetric Power Option Formula: Lognormal Power Forward and Volatility - **URL**: https://sheets.arte-soft.com/en/learn/power-option-symmetric-and-asymmetric-payoff-lognormal-moment-formula/ - **Summary**: Price power calls MAX(S_T^p - K, 0) in Excel and Arte Sheets by exploiting lognormal closure: S_T^p has exact volatility p*sigma and convexity-boosted power forward E[S_T^p]. *Table — Catch the Jensen convexity boost 0.5*p*(p - 1)*sig^2 in S_T^p forwards:* | Power Option Quantity (p = 2) | Exact Lognormal Formula | Sample Output | | --- | --- | --- | | Effective Power Volatility sig_p | p * sig = 2 * 0.20 | 0.4000 | | Naive Squared Forward (Bug) | (S * EXP(b * T))^p = 100 * EXP(0.10) | 110.5171 (Misses convexity!) | | True Lognormal Power Forward F_p | S^p * EXP((p*b + 0.5*p*(p - 1)*sig^2) * T) | 115.0274 | | Asymmetric Power Call Value | EXP(-r*T) * (F_p * N(d_1) - K * N(d_2)) | 24.3270 (Reduces to BSM at p = 1) | - **Formula (Exact Lognormal Power Forward F_p Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B7 <= 0, B8 <= 0), "Invalid Power Input", ROUND((B2^B3) * EXP((B3 * B6 + 0.5 * B3 * (B3 - 1) * (B7^2)) * B8), 4))` - **Formula (Asymmetric Power Call Value MAX(S_T^p - K, 0) Formula)**: `=LET(s_px, B2, p_exp, B3, k_str, B4, r_rf, B5, b_car, B6, sig_v, B7, t_yr, B8, IF(OR(s_px <= 0, p_exp <= 0, k_str <= 0, sig_v <= 0, t_yr <= 0), "Invalid Power Input", LET(f_pow, (s_px^p_exp) * EXP((p_exp * b_car + 0.5 * p_exp * (p_exp - 1) * (sig_v^2)) * t_yr), sig_p, p_exp * sig_v, st_p, sig_p * SQRT(t_yr), d_1, (LN(f_pow / k_str) + 0.5 * (sig_p^2) * t_yr) / st_p, d_2, d_1 - st_p, u_1, 1 / (1 + 0.2316419 * ABS(d_1)), ph_1, 0.3989422804014327 * EXP(-0.5 * d_1^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), nd_1, IF(d_1 >= 0, 1 - ph_1, ph_1), u_2, 1 / (1 + 0.2316419 * ABS(d_2)), ph_2, 0.3989422804014327 * EXP(-0.5 * d_2^2) * u_2 * (0.31938153 + u_2 * (-0.356563782 + u_2 * (1.781477937 + u_2 * (-1.821255978 + 1.330274429 * u_2)))), nd_2, IF(d_2 >= 0, 1 - ph_2, ph_2), ROUND(EXP(-r_rf * t_yr) * (f_pow * nd_1 - k_str * nd_2), 4))))` ### Poynting-Robertson Effect: Interplanetary Dust Spiral Decay Lifetime & Beta Ratio - **URL**: https://sheets.arte-soft.com/en/learn/poynting-robertson-solar-radiation-dust-spiral-lifetime/ - **Summary**: Calculate the solar radiation-to-gravity ratio beta = 0.574 * Qpr / (rho * s) and Poynting-Robertson orbital spiral decay lifetime t_PR = 700 * s * rho * a^2 / Qpr (years) for zodiacal dust grains. *Table — Calculate how fast sunlight sweeps micron-scale dust into the Sun!:* | Silicate Dust Grain (rho = 2.5 g/cm^3, Qpr = 1) | Radius s & Orbit a | Radiation Ratio beta | Poynting-Robertson Lifetime t_PR | | --- | --- | --- | --- | | Zodiacal Grain near Earth | s = 10 um, a = 1.0 AU | beta = 0.0230 (Bound) | 17,500 years to reach Sun | | Main-Belt Asteroid Dust | s = 10 um, a = 2.0 AU | beta = 0.0230 (Independent of a!) | 70,000 years (Scales as a^2!) | | Sub-Micron Blowout Grain | s = 0.4 um, a = 1.0 AU | beta = 0.5740 (>= 0.5 Blowout!) | Ejected as beta-meteoroid | - **Formula (Poynting-Robertson Orbital Decay Lifetime t_PR (Years))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Dust Grain Inputs", ROUND((700 * B2 * B3 * (B4 ^ 2)) / B5, 1))` - **Formula (Solar Radiation-Pressure-to-Gravity Ratio beta = F_rad / F_grav)**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid Dust Grain Inputs", ROUND((0.574 * B5) / (B3 * B2), 4))` ### Poynting Vector Electromagnetic Intensity & Solar Sail Radiation Pressure - **URL**: https://sheets.arte-soft.com/en/learn/poynting-vector-electromagnetic-intensity-and-radiation-pressure/ - **Summary**: Calculate electromagnetic wave irradiance I = E_0^2 / (2 * c * mu_0) from peak electric field E_0 and compute absorbed (I / c) vs perfectly reflected (2 * I / c) radiation thrust. *Table — Ideal plane-wave intensity and normal-incidence force:* | Electromagnetic Wave Metric | Formula | Illustrative E0=1020 V/m, area=10000 m^2 | Zero Field (Eclipse E_0 = 0) | | --- | --- | --- | --- | | Free-Space Impedance Z_0 | c * mu_0 | 376.73 ohms | 376.73 ohms | | Wave Irradiance I (W/m^2) | (E_0 ^ 2) / (2 * c * mu_0) | 1380.83 W/m^2 in this example | 0.00 W/m^2 | | Reflected Sail Thrust (mN) | ((2 * I / c) * Area) * 1000 | 92.12 mN ideal normal force | 0.00 mN | - **Formula (Time-Averaged Poynting Irradiance I = E_0^2 / (2 * c * mu_0) (W/m^2))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0),"Invalid inputs",ROUND((B2 ^ 2) / (2 * B3 * B4), 2)))` - **Formula (Perfectly Reflecting Solar Sail Thrust in Millinewtons (mN))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<0),"Invalid inputs",ROUND(((2 * ((B2 ^ 2) / (2 * B3 * B4)) / B3) * B5) * 1000, 2)))` - **Formula (Perfectly absorbing surface force (mN))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<0),"Invalid inputs",ROUND(((((B2 ^ 2) / (2 * B3 * B4)) / B3) * B5) * 1000, 2)))` ### PPMT function: calculate principal paid down in a specific loan period - **URL**: https://sheets.arte-soft.com/en/learn/ppmt-function-principal-payment/ - **Summary**: Measure how much loan principal each installment retires—and verify that summing all periods recovers the exact original principal. *Table — Track balance reduction period by period:* | Parameter (A) | Value (B) | | --- | --- | | Equipment Loan (PV) | 18000 | | Annual Rate | 0.08 | | Term Months (NPER) | 36 | | Target Period (PER) | 1 | - **Formula (Calculate monthly principal and zero-interest loans)**: `=ROUND(PPMT(B2/12, B4, B3, B1), 2)` - **Formula (Guard period bounds 1..NPER)**: `=IF(OR(B4<1, B4>B3), 0, ROUND(PPMT(B2/12, B4, B3, B1), 2))` ### PRAM Score Formula: Pediatric Respiratory Assessment Measure for Acute Asthma (0 to 12) - **URL**: https://sheets.arte-soft.com/en/learn/pram-pediatric-respiratory-assessment-measure-acute-asthma/ - **Summary**: Grade acute pediatric asthma exacerbation severity across toddlers and teenagers (ages 1–17) using Ducharme & Chalut’s 5-sign PRAM score (0–12 points) without spirometry. *Table — Why Canadian Pediatric Society asthma pathways standardize on the 5-item, 12-point PRAM score!:* | PRAM Total Score (0–12) | Asthma Exacerbation Severity | Pediatric Emergency Bronchodilator & Steroid Protocol | | --- | --- | --- | | PRAM 0–3 (Mild) | Mild Bronchospasm | Salbutamol MDI + Spacer; Reassess for Discharge | | PRAM 4–7 (Moderate) | Moderate Airway Obstruction | Salbutamol × 3 + Oral Dexamethasone / Prednisolone | | PRAM 8–12 (Severe, e.g., 9) | Severe / Impending Failure | Continuous/3× SABA + Ipratropium + Steroid + IV MgSO4 | - **Formula (Total 5-Sign PRAM Pediatric Asthma Score (0 to 12 Points))**: `=IF(OR(MIN(B2:B6) < 0, NOT(OR(B2 = 0, B2 = 2)), NOT(OR(B3 = 0, B3 = 2)), B4 > 3, B5 > 3, B6 > 2), "Invalid PRAM Sign Score", SUM(B2:B6))` - **Formula (PRAM Acute Asthma Severity Tier (Mild 0–3, Moderate 4–7, Severe 8–12))**: `=IF(OR(MIN(B2:B6) < 0, NOT(OR(B2 = 0, B2 = 2)), NOT(OR(B3 = 0, B3 = 2)), B4 > 3, B5 > 3, B6 > 2), "Invalid PRAM Sign Score", IF(SUM(B2:B6) >= 8, "Severe Asthma (PRAM 8–12 — SABA + Ipratropium + Steroid + IV MgSO4)", IF(SUM(B2:B6) >= 4, "Moderate Asthma (PRAM 4–7 — SABA + Systemic Corticosteroid)", "Mild Asthma (PRAM 0–3 — Inhaled SABA)")))` ### Prandtl-Meyer Supersonic Expansion Function nu(M) & Maximum Turn Angle - **URL**: https://sheets.arte-soft.com/en/learn/prandtl-meyer-supersonic-expansion-angle-nu-m-formula/ - **Summary**: Calculate the isentropic Prandtl-Meyer expansion angle nu(M) (in degrees) from Mach 1 to supersonic Mach M and the vacuum limiting turn angle nu_max = (SQRT((gamma+1)/(gamma-1)) - 1) * 90. *Table — Turn supersonic airflow around convex corners and rocket bell nozzles!:* | Supersonic Mach Number M (Air gamma = 1.40) | Mach Factor SQRT(M^2 - 1) | Prandtl-Meyer nu(M) (Degrees) | Physical Interpretation | | --- | --- | --- | --- | | Sonic Throat (M = 1.00) | 0.0000 | 0.00 deg | Reference sonic state | | Mach 2.00 Supersonic | 1.7321 | 26.38 deg | Turn from M=1 to M=2 | | Mach 3.00 Supersonic | 2.8284 | 49.76 deg | 23.38 deg fan from M=2 to M=3 | | Vacuum Limit (M -> Inf) | Infinity | 130.45 deg | Max turn before flow detachment | - **Formula (Prandtl-Meyer Angle nu(M) in Degrees)**: `=IF(B2 < 1, "Requires Supersonic Mach M >= 1", IF(B3 <= 1, "Invalid Gamma <= 1", ROUND(DEGREES(SQRT((B3 + 1) / (B3 - 1)) * ATAN(SQRT(((B3 - 1) / (B3 + 1)) * ((B2 ^ 2) - 1))) - ATAN(SQRT((B2 ^ 2) - 1))), 2)))` - **Formula (Vacuum Limiting Turn Angle nu_max (Degrees as M -> Infinity))**: `=IF(B3 <= 1, "Invalid Gamma <= 1", ROUND((SQRT((B3 + 1) / (B3 - 1)) - 1) * 90, 2))` ### PRECISE-DAPT Score (0–100): Post-PCI Bleeding Risk & DAPT Duration - **URL**: https://sheets.arte-soft.com/en/learn/precise-dapt-bleeding-risk-score-dual-antiplatelet-duration/ - **Summary**: Calculate Francesco Costa et al.’s (Lancet 2017) 5-item PRECISE-DAPT score (Hemoglobin, Age, WBC, CrCl, Prior Bleeding) to guide short (3–6 month, score >= 25) vs. standard/extended DAPT after coronary stenting. *Table — ESC/ACC Class IIa decision support at the time of stent implantation—identifying PRECISE-DAPT >= 25 high bleeders!:* | Post-PCI Clinical Profile | PRECISE-DAPT Score | Bleeding Risk Tier | ESC / Lancet 2017 DAPT Guidance | | --- | --- | --- | --- | | Hb 13.5, Age 58, WBC 6.5, CrCl 88, No Bleed | 8 pts (< 25) | Low / Moderate Bleeding Risk | Standard / Prolonged DAPT (12–24 mo) | | Hb 10.8, Age 74, WBC 9.5, CrCl 52, No Bleed | 37 pts (>= 25) | High Bleeding Risk (PRECISE-DAPT >= 25) | Shortened DAPT (3–6 mo CCS / 1–6 mo ACS) | | Invalid Hb <= 0, Age < 18, or Bleed > 1 | Error Guard | "Invalid Clinical Inputs" | Input Validation Guard | - **Formula (PRECISE-DAPT 5-Variable Nomogram Score (0–100 Points))**: `=IF(OR(B2 <= 0, B3 < 18, B4 <= 0, B5 < 0, B6 < 0, B6 > 1), "Invalid Clinical Inputs", ROUND(7.5 * (12 - MIN(MAX(B2, 10), 12)) + 0.475 * (MIN(MAX(B3, 50), 90) - 50) + 1.0 * (MIN(MAX(B4, 5), 20) - 5) + 0.25 * (100 - MIN(MAX(B5, 0), 100)) + 26 * B6, 0))` - **Formula (PRECISE-DAPT >= 25 Antiplatelet Duration Recommendation)**: `=IF(OR(B2 <= 0, B3 < 18, B4 <= 0, B5 < 0, B6 < 0, B6 > 1), "Invalid Clinical Inputs", IF(ROUND(7.5 * (12 - MIN(MAX(B2, 10), 12)) + 0.475 * (MIN(MAX(B3, 50), 90) - 50) + 1.0 * (MIN(MAX(B4, 5), 20) - 5) + 0.25 * (100 - MIN(MAX(B5, 0), 100)) + 26 * B6, 0) >= 25, "High Bleeding Risk (>= 25 — Consider Short 3–6m DAPT)", "Standard / Low Bleeding Risk (< 25 — 12m DAPT Eligible)"))` ### Precision, Recall, F1 Score & Matthews Correlation (MCC) from a Confusion Matrix - **URL**: https://sheets.arte-soft.com/en/learn/precision-recall-f1-score-and-mcc-confusion-matrix/ - **Summary**: Evaluate ML classifiers, spam filters, and QA inspection models on imbalanced datasets where raw Accuracy misleads. *Table — Why 91% Accuracy can hide a 0% useless model—and F1 + MCC expose the truth!:* | Classification Metric (TP=80, FP=20, FN=10, TN=890) | Formula | Result | | --- | --- | --- | | Precision (Positive Predictive Value) | =A2 / (A2 + B2) | 0.8000 (80.00%) | | Recall / Sensitivity (True Positive Rate) | =A2 / (A2 + C2) | 0.8889 (88.89%) | | F1 Score (Harmonic Mean of P & R) | =(2 * A2) / (2 * A2 + B2 + C2) | 0.8421 | | Matthews Correlation Coefficient (MCC) | =(TP*TN - FP*FN) / SQRT(...) | 0.8270 ([-1, +1] balanced) | - **Formula (F1 Score and Matthews Correlation Coefficient (MCC) formulas)**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0,SUM(MOD(A2:D2,1))<>0),"Invalid counts",IF(2*A2+B2+C2=0,"Undefined metric",ROUND((2 * A2) / (2 * A2 + B2 + C2), 4)))` - **Formula (Matthews Correlation Coefficient (MCC) across all 4 confusion-matrix cells)**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0,SUM(MOD(A2:D2,1))<>0),"Invalid counts",IF((A2+B2)*(A2+C2)*(D2+B2)*(D2+C2)=0,"Undefined metric",ROUND((A2 * D2 - B2 * C2) / SQRT((A2 + B2) * (A2 + C2) * (D2 + B2) * (D2 + C2)), 4)))` ### HoldCo Preferred Equity PIK vs Min-MOIC Waterfall Formula - **URL**: https://sheets.arte-soft.com/en/learn/preferred-equity-rescue-capital-pik-liquidation-preference-and-common-moic/ - **Summary**: Calculate HoldCo Preferred Equity Compounded PIK Claim ($M), Senior Liquidation Payout With Minimum-MOIC Floor ($M), Residual Common Equity Proceeds ($M), and Sponsor Common MOIC (x). *Table — Model the GREATER of compounded PIK and the Minimum-MOIC call-protection floor!:* | HoldCo Preferred Waterfall KPI ($80M Pref @ 14% PIK & 1.50x Floor, $260M Exit) | Formula | Verified Output | | --- | --- | --- | | Compounded PIK Accrual ($M) | Pref_M * ((1 + PIK_Rate) ^ Hold_Years) | $103.97M ($135.12M @ Yr 4) | | Senior Preferred Payout ($M) | MIN(Exit_Equity_M, MAX(PIK_Claim, Pref * Min_MOIC)) | $120.00M ($135.12M @ Yr 4) | | Residual Common Proceeds ($M) | MAX(0, Exit_Equity_M - Senior_Pref_Payout_M) | $140.00M ($124.88M @ Yr 4) | | Sponsor Common MOIC (x) | Residual_Common_M / Sponsor_Common_Cost_M | 1.40x (1.25x @ Yr 4; 0.00x Wipeout) | - **Formula (Dual-Pronged PIK vs Minimum-MOIC Preferred Waterfall Formula)**: `=LET(pf_m, B2, pk_r, B3, mn_x, B4, yr_h, B5, ex_v, B6, cm_c, B7, IF(OR(pf_m <= 0, pk_r < 0, pk_r > 0.35, mn_x < 1, yr_h <= 0, ex_v < 0, cm_c <= 0), "Invalid Preferred Input", LET(pk_c, pf_m * ((1 + pk_r) ^ yr_h), cl_m, MAX(pk_c, pf_m * mn_x), ROUND(MIN(ex_v, cl_m), 2))))` - **Formula (Year-4 PIK Crossover & $110M Distressed Common-Wipeout Checks)**: `=IF(ISTEXT(E3), E3, ROUND(MAX(0, B6 - E3) / B7, 2))` ### Present and future value of an annuity: Ordinary (type 0) vs Annuity Due (type 1) - **URL**: https://sheets.arte-soft.com/en/learn/present-and-future-value-of-annuity-due-vs-ordinary/ - **Summary**: Value leases, pensions, and savings plans accurately by choosing end-of-period (type = 0) vs beginning-of-period (type = 1) cash flows in PV and FV. *Table — When cash flows happen on Day 1 instead of Month-End:* | Schedule ($500/mo, 6% nominal annual rate, 60 mos) | Ordinary (type = 0) | Annuity Due (type = 1) | Exact Ratio | | --- | --- | --- | --- | | Present Value (-PV) | 25,862.78 | 25,992.09 | x (1 + 0.005) | | Future Value (-FV) | 34,885.02 | 35,059.44 | x (1 + 0.005) | - **Formula (PV and FV formulas with type = 0 vs type = 1)**: `=ROUND(-PV(A2 / 12, B2, C2, 0, 1), 2)` - **Formula (Future value of 1st-of-month savings (Annuity Due))**: `=ROUND(-FV(A2 / 12, B2, C2, 0, 1), 2)` ### Press-Brake Air-Bending Tonnage & V-Die Opening Formula - **URL**: https://sheets.arte-soft.com/en/learn/press-brake-air-bending-tonnage-v-die-opening-and-inside-radius-formula/ - **Summary**: Calculate V-Die Shoulder Opening V (mm), Floated Air-Bent Natural Inside Radius I_r (mm), Forming Force F (kN), and Required Hydraulic Press-Brake Capacity (metric tons-force). *Table — In air bending, the V-die width—NOT punch tip radius—dictates floated inside bend radius AND inverse forming tonnage!:* | Press-Brake Air-Bend KPI (T=6 mm, L=2.4 m, UTS=450 MPa, V=8*T, Cf=1.42) | Formula | Verified Output | | --- | --- | --- | | V-Die Opening Width V (mm) | Sheet_Thickness_T * V_Multiplier | 48.00 mm (60.00 mm @ 10*T 304 SS) | | Natural Air-Bent Radius Ir (mm) | V_Die_mm * Material_Float_Ratio | 7.68 mm (9.60 mm @ 10*T) | | Air-Bending Force F (kN) | (Cf * UTS_MPa * L_m * T^2) / V_mm | 1,150.20 kN (1,267.78 kN @ 620 SS) | | Press-Brake Tonnage (metric t) | Forming_Force_kN / 9.80665 | 117.29 t (129.28 t @ 620 MPa 10*T) | - **Formula (Three-Point Air-Bending Force (kN) & Metric Press Tonnage Formula)**: `=LET(th_m, B2, ln_m, B3, ut_s, B4, vm_l, B5, cf_d, B6, rf_l, B7, IF(OR(th_m <= 0, ln_m <= 0, ut_s < 80, ut_s > 1600, vm_l < 5, vm_l > 16, cf_d < 1.2, cf_d > 1.65, rf_l < 0.1, rf_l > 0.28), "Invalid Press-Brake Input", LET(vd_m, th_m * vm_l, fk_n, (cf_d * ut_s * ln_m * (th_m ^ 2)) / vd_m, ROUND(fk_n / 9.80665, 2))))` - **Formula (304 Stainless Steel 620 MPa Wide 10*T V-Die Relief Check (Set UTS = 620 & Multiplier = 10))**: `=IF(ISTEXT(E5), E5, ROUND((B6 * B4 * B3 * (B2 ^ 2)) / (B2 * B5), 2))` ### Preston Equation CMP Material Removal Rate (MRR) Formula - **URL**: https://sheets.arte-soft.com/en/learn/preston-equation-chemical-mechanical-planarization-cmp-material-removal-rate/ - **Summary**: Calculate CMP Material Removal Rate MRR (nm/min) from Slurry Preston Coefficient, Downforce Pressure (kPa) & Relative Velocity (m/s), Polish Time (sec), and WIWNU Thickness Spread (nm). *Table — Convert Preston K_p (10^-13 Pa^-1) and kPa cleanly—6 * K_p * P_kPa * V_m_s gives exact nm/min!:* | CMP Platen KPI (Kp = 1.5e-13 Pa^-1, P = 25 kPa, V = 1.2 m/s, 540 nm Target) | Formula | Verified Output | | --- | --- | --- | | Material Removal Rate (nm/min) | 6 * Kp_1e13 * Pressure_kPa * Vel_m_s | 270.00 nm/min (324.00 @ 30 kPa) | | Instantaneous Polish Rate (nm/s) | MRR_nm_min / 60 | 4.50 nm/s (5.40 @ 30 kPa) | | Endpoint Polish Time (seconds) | (Target_Removal_nm / MRR_nm_min) * 60 | 120.00 s (100.00 s @ 30 kPa) | | WIWNU 1-Sigma Removal Spread (nm) | Target_Removal_nm * WIWNU_Frac | 16.20 nm | - **Formula (Exact Preston CMP Material Removal Rate & Endpoint Time Formula)**: `=LET(kp_c, B2, pr_k, B3, vl_m, B4, tg_n, B5, wn_u, B6, IF(OR(kp_c <= 0, pr_k <= 1, pr_k > 100, vl_m <= 0, tg_n <= 0, wn_u < 0, wn_u > 0.25), "Invalid CMP Recipe", ROUND(6 * kp_c * pr_k * vl_m, 2)))` - **Formula (Higher Downforce Throughput vs Low-k Shear Check (Set Downforce P = 30.0 kPa))**: `=IF(ISTEXT(E2), E2, ROUND((B5 / (6 * B2 * B3 * B4)) * 60, 2))` ### Prestressed Concrete Tendon Kern Point & Fiber Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/prestressed-concrete-beam-eccentric-tendon-kern-point-and-extreme-fiber-stress/ - **Summary**: Calculate Section Kern Radius k = S / A (m), Top-Fiber Concrete Service Stress f_top (MPa, Compression +), Bottom-Fiber Service Stress f_bot (MPa), and Class U Uncracked Status. *Table — Placing a tendon below the lower kern k = S / A induces top tension at transfer—until dead+live gravity moment balances it!:* | Prestressed Girder KPI (A=0.24 m², S=0.04 m³, Pe=1,800 kN, e=0.25 m, M=500 kN·m) | Formula | Verified Output | | --- | --- | --- | | Section Kern Radius k (m) | Section_Modulus_S_m3 / Area_A_m2 | 0.1667 m | | Top-Fiber Service Stress (MPa) | (Pe/A - Pe*e/S + M/S) / 1000 | +8.75 MPa (+18.75 @ M = 900 kN·m) | | Bottom-Fiber Service Stress (MPa) | (Pe/A + Pe*e/S - M/S) / 1000 | +6.25 MPa (-3.75 @ M = 900 kN·m!) | | Service Tension Status | MIN(ftop, fbot) >= 0 -> ZERO-TENSION | ZERO-TENSION UNCRACKED | - **Formula (Three-Term Elastic Superposition Bottom-Fiber Prestress Formula)**: `=LET(ar_m, B2, sm_m, B3, pe_k, B4, ec_m, B5, ms_k, B6, IF(OR(ar_m <= 0, sm_m <= 0, pe_k <= 0, ec_m < 0, ms_k < 0), "Invalid Prestress Input", ROUND(((pe_k / ar_m) + ((pe_k * ec_m) / sm_m) - (ms_k / sm_m)) / 1000, 2)))` - **Formula (Heavy Live-Load Decompression & Bottom-Flange Tension Check (Set Service Moment M = 900 kN·m))**: `=IF(ISTEXT(E4), E4, IF(AND(E3 >= 0, E4 >= 0), "ZERO-TENSION UNCRACKED", "TENSION ZONE CHECK CRACKING"))` ### Prevent Split Allocations from Exceeding Total Pool or 100% Cap - **URL**: https://sheets.arte-soft.com/en/learn/prevent-allocations-from-exceeding-total-pool-sum-check/ - **Summary**: Audit equity splits, cost-center allocations, and grant distributions so SUM($B$2:$B$6) never exceeds the master pool $E$2, reporting exact unallocated headroom or over-allocation excess. *Table — Keeping cap-table percentages and grant sub-awards strictly within the 100% or dollar ceiling!:* | Grant Pool ($250,000) vs Line Sum | Remaining Headroom ($E$2 - SUM) | Allocation Status | | --- | --- | --- | | Allocated Sum = $235,000 | +$15,000 Remaining | "Under Cap ($15,000 Unallocated)" | | Allocated Sum = $250,000 | $0 Remaining | "Fully Allocated (Exact Match)" | | Allocated Sum = $262,000 | -$12,000 Deficit | "Over-Allocated — Exceeds Pool!" | - **Formula (Three-State Pool Allocation Audit (Under Cap / Fully Allocated / Over-Allocated))**: `=IF(OR(E2 <= 0, MIN(B2:B5) < 0), "Invalid Pool or Negative Split", IF(SUM(B2:B5) > E2, "Over-Allocated — Exceeds Pool!", IF(SUM(B2:B5) = E2, "Fully Allocated (Exact Match)", "Under Cap — Remainder Available")))` - **Formula (Remaining Unallocated Pool Balance ($E$2 - SUM))**: `=E2 - SUM(B2:B5)` ### How to Prevent & Fix #DIV/0! Errors in Ratios, Margins & Averages - **URL**: https://sheets.arte-soft.com/en/learn/prevent-and-fix-div-0-errors-in-ratios-and-averages/ - **Summary**: Keep undefined ratios separate from zero and compute a regional average using a count of numeric observations, including genuine zeros while excluding missing values. - **Formula (An undefined ratio is not zero)**: `=IF(COUNT(B2,C2)<>2,"Enter numeric revenue and profit",IF(B2=0,"Undefined: zero revenue",C2/B2))` - **Formula (Count numeric observations, not matching labels)**: `=IF(F2="","Choose a region",IF(SUM(D2:D5)=0,"No numeric revenue",SUM(E2:E5)/SUM(D2:D5)))` ### Prevent Duplicate Entries (Normalized TRIM + UPPER Uniqueness Rule vs. Plain COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/prevent-duplicate-entries-normalized-trim-upper-data-validation/ - **Summary**: Block both exact and whitespace-padded stealth duplicates ("INV-101" vs. " inv-101 ") by pairing UPPER(TRIM(A2)) canonical keys with COUNTIF uniqueness rules. *Table — Why plain COUNTIF($A$2:$A$6, A2) = 1 lets padded duplicates slip through:* | Entered Key | Canonical UPPER(TRIM) | Plain COUNTIF = 1 | Normalized = 1 | | --- | --- | --- | --- | | "INV-101" | "INV-101" | TRUE (1) | FALSE (2 - Collision!) | | "INV-102" | "INV-102" | TRUE (1) | TRUE (1 - Unique) | | " inv-101 " (padded) | "INV-101" | TRUE (1 - Missed!) | FALSE (2 - Caught!) | - **Formula (Canonical Key & Uniqueness Validation Formula)**: `=COUNTIF($B$2:$B$6, B2) = 1` - **Formula (Applying Validation Rules via the Arte Sheets AI Assistant)**: `=COUNTIF(D2:D6, FALSE)` ### Preventive Age vs Block Replacement Renewal Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/preventive-age-vs-block-replacement-renewal-cost-rate-formula/ - **Summary**: Compare Barlow-Proschan Age Replacement C(T)/mu(T) against Block Replacement (c_p + c_f*M(T))/T and Run-to-Failure cost rates for increasing-hazard Erlang-2 lifetimes. *Table — Why preventive maintenance requires an increasing hazard rate — and Age beats Block!:* | Maintenance Policy (lam=0.10, c_p=200, c_f=1,000, T=10) | Renewal Cost Formula | Long-Run Cost / kh | | --- | --- | --- | | Run-to-Failure (No PM) | (lambda / 2) * c_f | 50.0000 / kh | | Scheduled Block Replacement | (c_p + c_f * M(T)) / T | 48.3834 / kh | | Component Age Replacement | C_age(T) / mu_age(T) | 45.8959 / kh (Lowest!) | - **Formula (Barlow-Proschan Erlang-2 Age-Replacement Cost Rate g_age(T) Formula)**: `=LET(lam_r, B2, cp_m, B3, cf_m, B4, t_pm, B5, IF(OR(lam_r <= 0, cp_m <= 0, cf_m <= cp_m, t_pm <= 0), "Require 0 < c_p < c_f and T > 0", LET(lt_v, lam_r * t_pm, ex_1, EXP(-lt_v), r_surv, (1 + lt_v) * ex_1, c_cyc, cf_m - (cf_m - cp_m) * r_surv, mu_cyc, (2 - (2 + lt_v) * ex_1) / lam_r, ROUND(c_cyc / mu_cyc, 4))))` - **Formula (Erlang-2 Block-Replacement Cost Rate (c_p + c_f * M(T)) / T Formula)**: `=LET(lam_r, B2, cp_m, B3, cf_m, B4, t_pm, B5, IF(OR(lam_r <= 0, cp_m <= 0, cf_m <= cp_m, t_pm <= 0), "Require 0 < c_p < c_f and T > 0", LET(lt_v, lam_r * t_pm, m_ren, 0.5 * lt_v - 0.25 * (1 - EXP(-2 * lt_v)), ROUND((cp_m + cf_m * m_ren) / t_pm, 4))))` ### B2B Price Waterfall Pocket Price & Margin Formula - **URL**: https://sheets.arte-soft.com/en/learn/price-waterfall-pocket-price-and-pocket-margin-leakage-formula/ - **Summary**: Audit on-invoice and off-invoice B2B price leakage (rebates, co-op allowances, early-pay discounts, and free freight) to calculate Pocket Price and Pocket Margin %. *Table — Uncover hidden off-invoice margin leakage that ERP invoice reports miss completely!:* | Price Waterfall Stage (List = 200, COGS = 110) | Formula | Verified Output | | --- | --- | --- | | ERP Invoice Price (After On-Invoice 24) | List - OnInvoice_Disc | 176.00 (Invoice GM = 37.50%) | | Hidden Off-Invoice Leakage Sum | Rebate + CoOp + CashDisc + Freight | 28.00 (14.00% of List) | | Realized Pocket Price | Invoice_Price - OffInvoice_Leakage | 148.00 (26.00% Total Leakage) | | Pocket Margin ($ and % of List) | (Pocket_Price - COGS) / List | 38.00 \| 0.1900 (19.00%) | - **Formula (Realized Pocket Price After On- and Off-Invoice Leakage Formula)**: `=LET(p_ls, B2, d_on, B3, d_rb, B4, d_co, B5, d_cs, B6, d_fr, B7, IF(OR(p_ls <= 0, d_on < 0, d_rb < 0, d_co < 0, d_cs < 0, d_fr < 0), "Invalid Waterfall Input", ROUND(p_ls - d_on - d_rb - d_co - d_cs - d_fr, 2)))` - **Formula (Pocket Margin % of List Price Formula)**: `=IF(OR(ISTEXT(E3), B8 < 0), "Invalid Waterfall Input", ROUND((E3 - B8) / B2, 4))` ### Priestley-Taylor Potential Evapotranspiration (PET) Radiation Formula - **URL**: https://sheets.arte-soft.com/en/learn/priestley-taylor-potential-evapotranspiration-pet-formula/ - **Summary**: Calculate daily radiation-driven crop/watershed Potential Evapotranspiration PET = alpha_PT * (Delta / (Delta + gamma)) * ((R_n - G) / lambda_v) (mm/day) using the FAO-56 Tetens vapor-pressure slope Delta. *Table — Estimate daily watershed & crop evapotranspiration when wind/humidity station data are unavailable!:* | Air Temperature Scenario (Rn = 16.5, G = 1.2 MJ/m^2/d, alpha = 1.26) | Vapor Slope Delta (kPa/°C) | Energy Share Delta / (Delta + gamma) | Daily PET (mm/day) | | --- | --- | --- | --- | | Warm Summer Canopy (T = 25°C) | 0.1887 kPa/°C | 73.94% | 5.82 mm/day | | Cool Spring Canopy (T = 15°C) | 0.1098 kPa/°C | 62.28% | 4.90 mm/day | | Invalid Psychrometric Constant <= 0 | Guarded Hydrology Error | N/A | "Invalid PET Inputs" | - **Formula (FAO-56 Saturation Vapor-Pressure Curve Slope Delta (kPa/°C))**: `=IF(OR(B2 < -50, B5 <= 0, B6 <= 0), "Invalid PET Inputs", ROUND((4098 * (0.6108 * EXP((17.27 * B2) / (B2 + 237.3)))) / ((B2 + 237.3) ^ 2), 4))` - **Formula (Priestley-Taylor Daily Potential Evapotranspiration PET (mm/day))**: `=IF(OR(B2 < -50, B5 <= 0, B6 <= 0), "Invalid PET Inputs", ROUND(B6 * (((4098 * (0.6108 * EXP((17.27 * B2) / (B2 + 237.3)))) / ((B2 + 237.3) ^ 2)) / (((4098 * (0.6108 * EXP((17.27 * B2) / (B2 + 237.3)))) / ((B2 + 237.3) ^ 2)) + B5)) * ((B3 - B4) / 2.45), 2))` ### PRISMA-7 Frailty Screening Questionnaire (With Reverse-Scored Item 6) - **URL**: https://sheets.arte-soft.com/en/learn/prisma-7-frailty-screening-questionnaire-older-adults-formula/ - **Summary**: Calculate the 7-item PRISMA-7 geriatric frailty screening score (0–7)—properly reverse-scoring Question 6 ("Can you count on someone close to you?": No = +1 point!)—to flag >= 3 for Comprehensive Geriatric Assessment. *Table — Catching Question 6’s reverse-scoring trap ("No" = +1 point!) in EHR templates!:* | PRISMA-7 Total Score (0–7) | Frailty Case-Finding Result | Recommended Geriatric Pathway | | --- | --- | --- | | 0 – 2 Points (e.g., Male + Cane, Has Support) | Negative Frailty Screen (<3) | Routine Preventive Primary Care | | 3 Points (Threshold Trigger) | Positive Frailty Screen (>=3) | Comprehensive Geriatric Assessment (CGA) | | 4 – 7 Points (Multi-Domain Vulnerability) | High Frailty Burden (>=3) | Multidisciplinary Care Plan & Medication Review | - **Formula (PRISMA-7 Total Frailty Score with Reverse-Scored Item 6 (0–7))**: `=IF(OR(COUNTA(B2:B8) < 7, SUMPRODUCT((B2:B8 <> 0) * (B2:B8 <> 1)) > 0), "Invalid Binary Answer (0 or 1)", SUM(B2:B6) + (1 - B7) + B8)` - **Formula (PRISMA-7 Frailty Referral Decision (>= 3 Cutoff))**: `=IF(OR(COUNTA(B2:B8) < 7, SUMPRODUCT((B2:B8 <> 0) * (B2:B8 <> 1)) > 0), "Invalid Binary Answer (0 or 1)", IF(SUM(B2:B6) + (1 - B7) + B8 >= 3, "Frailty Positive (>=3: Refer for CGA)", "Not Frail (<3)"))` ### Audit In-App AI Credits vs MCP Connector Rate Limits - **URL**: https://sheets.arte-soft.com/en/learn/pro-assistant-monthly-ai-credit-vs-mcp-tool-rate-limit-audit/ - **Summary**: Separate metered monthly in-app Pro Assistant Arte AI credits from 0-credit external OAuth MCP tool calls, shared 120-call/min account burst limits, and Pro write gates. *Table — Never mix metered in-app Arte AI credits with external OAuth MCP connector calls!:* | Audit Boundary | Arte AI Credit Impact | Entitlement & Rate-Limit Rule | | --- | --- | --- | | In-App Pro Assistant (Text / <=3m Voice / <=2MB File) | Consumes metered monthly Arte AI credits (45 used -> 1,955 left) | Requires active Pro; preview/Undo/suggest-mode supported | | External OAuth MCP Read (list_workbooks, read_range, list_lessons) | 0 Arte AI credits (discovery metadata uncharged) | Scoped OAuth (Connected apps); shares 120 calls/min account cap | | External OAuth MCP Write (apply_changes, execute_steps, comments, share) | 0 Arte AI credits (no double-charge; ChatGPT credits do not transfer) | Requires active Pro/paid period + role + base revision + operation_id | - **Formula (Row-Safe Monthly Arte AI Credit Consumption & Remaining Balance Formula)**: `=IF(H2 < 0, "Invalid Audit Config", MAX(0, H2 - SUM(F2:F6)))` - **Formula (Shared Per-Account 120/min MCP Burst & Pro Write-Entitlement Gate Formula)**: `=IF(OR(H3 <= 0, AND(H4 <> 0, H4 <> 1)), "Invalid Audit Config", IF(H8 > H3, "429 Retry-After: 60", IF(AND(H4 = 0, SUMIFS(D2:D6, B2:B6, "MCP_Write") > 0), "Write Blocked: Active Pro Required", "Within 120/min & Entitled")))` ### Process capability Cp and Cpk: spread and centering - **URL**: https://sheets.arte-soft.com/en/learn/process-capability-cp-and-cpk-six-sigma-formula/ - **Summary**: Measure manufacturing spread Cp = (USL - LSL)/(6*SD) and off-center capability Cpk = MIN((USL - Mean)/(3*SD), (Mean - LSL)/(3*SD)). *Table — Why Cp = 1.67 can still ship defects if Cpk = 0.83 (centering matters!):* | Capability Metric (LSL=9.90, USL=10.10, SD=0.02) | Mean = 10.00 (Centered) | Mean = 10.05 (Drifted!) | | --- | --- | --- | | Potential Capability Cp | 1.6667 | 1.6667 (Blind to drift!) | | Upper Cpu = (USL - Mean)/(3*SD) | 1.6667 | 0.8333 (Only 2.5σ to USL!) | | Cpk | 1.6667 (centered) | 0.8333 (off-center) | - **Formula (Centered Process Capability Cpk and Potential Capability Cp formulas)**: `=IF(OR(COUNT(A2:D2)<>4,B2<=A2,D2<=0),"Invalid inputs",ROUND(MIN((B2-C2)/(3*D2),(C2-A2)/(3*D2)),4))` - **Formula (Potential Process Capability Cp (assuming perfect centering))**: `=IF(OR(COUNT(A2:D2)<>4,B2<=A2,D2<=0),"Invalid inputs",ROUND((B2-A2)/(6*D2),4))` ### Proctor Soil Compaction Dry Density & ZAV Curve Formula - **URL**: https://sheets.arte-soft.com/en/learn/proctor-soil-compaction-dry-unit-weight-zero-air-voids-zav-and-relative-pct/ - **Summary**: Calculate In-Situ Dry Unit Weight gamma_d = gamma_m/(1+w) (kN/m³), Theoretical 100%-Saturated Zero-Air-Voids Ceiling gamma_ZAV (kN/m³), Relative Proctor Compaction (%), and >= 95% Spec Gate. *Table — Never compare wet field density against lab Proctor MDD—and any nuclear-gage reading plotting ABOVE the Zero-Air-Voids curve is physically impossible!:* | ASTM D1557 Proctor QA/QC KPI (gamma_m=21.1 kN/m³, w=11.5%, Gs=2.68, MDD=19.6) | Formula | Verified Output | | --- | --- | --- | | In-Situ Dry Unit Weight (kN/m³) | Moist_Unit_Weight / (1 + Moisture_Pct / 100) | 18.92 kN/m³ (17.14 @ wet 15.5% lift) | | Zero-Air-Voids Ceiling ZAV (kN/m³) | (Gs * 9.80665) / (1 + (Moisture_Pct/100)*Gs) | 20.09 kN/m³ (18.57 @ w = 15.5%) | | Relative Proctor Compaction (%) | (Field_Dry_gamma_d / Lab_MDD) * 100 | 96.55% (87.46% < 95% @ wet lift!) | | Earthwork Lift Acceptance Gate | Relative_Compaction_Pct >= 95.0% | PASS (>=95% PROCTOR) | - **Formula (Proctor Dry Unit Weight, Zero-Air-Voids Physical Bound & Earthwork Spec Formula)**: `=LET(gm_w, B2, wc_p, B3, gs_s, B4, md_d, B5, IF(OR(gm_w <= 10, wc_p <= 0, wc_p > 60, gs_s < 2.4, gs_s > 2.95, md_d <= 10), "Invalid Proctor Input", LET(gd_f, gm_w / (1 + wc_p / 100), gz_v, (gs_s * 9.80665) / (1 + (wc_p / 100) * gs_s), IF(gd_f > gz_v, "Invalid Proctor Input", IF((gd_f / md_d) * 100 >= 95, "PASS (>=95% PROCTOR)", "UNDER-COMPACTED (<95%)")))))` - **Formula (Pumping Wet-of-Optimum Subgrade Lift Reject Check (Set Moist Weight = 19.8 kN/m³ & Moisture = 15.5%))**: `=IF(ISTEXT(E2), E2, ROUND(((B2 / (1 + B3 / 100)) / B5) * 100, 2))` ### PRODUCT function: multiply chained yield factors and sequential discounts - **URL**: https://sheets.arte-soft.com/en/learn/product-function-multiply-range/ - **Summary**: Multiply an entire column of growth multipliers or manufacturing stage yields with PRODUCT while skipping blank and text cells. *Table — Why PRODUCT beats chained * operators on ranges:* | Stage (A) | Factor (B) | InitialPrincipal (D) | | --- | --- | --- | | Year 1 (+10%) | 1.1 | 1000 | | Year 2 (-10%) | 0.9 | | | Year 3 (+20%) | 1.2 | | | Year 4 (TBD) | Pending | | - **Formula (Compound principal across numeric factors)**: `=ROUND(D2 * PRODUCT(B2:B5), 2)` - **Formula (A zero cell vs a blank cell)**: `=PRODUCT(B2:B5)` ### Illustrative progressive bracket calculation: base amount plus marginal rate - **URL**: https://sheets.arte-soft.com/en/learn/progressive-marginal-tax-bracket-calculator-sumproduct/ - **Summary**: Learn progressive bracket arithmetic using a fictional four-bracket schedule and compare effective and marginal rates. *Table — Calculate each slice with its own rate:* | Bracket Floor (A) | Cumulative Base Tax (B) | Marginal Rate (C) | Tax on $75,000 Income | | --- | --- | --- | --- | | $0 | $0 | 10% | Full $15k slice = $1,500 | | $15,000 | $1,500 | 20% | Full $35k slice = $7,000 (Base = $8,500) | | $50,000 (Matched!) | $8,500 | 30% | $8,500 + ($75k - $50k)*30% = $16,000! | | $100,000 | $23,500 | 35% | Effective Rate on $75k = 21.33% | - **Formula (Apply the fictional schedule)**: `=IF(OR(NOT(ISNUMBER(E2)),E2<0),"Invalid income",LET(inc, MAX(0, E2), VLOOKUP(inc, A2:C5, 2, TRUE) + (inc - VLOOKUP(inc, A2:C5, 1, TRUE)) * VLOOKUP(inc, A2:C5, 3, TRUE)))` - **Formula (Calculate true Effective Tax Rate vs. Marginal Bracket Rate)**: `=IF(OR(NOT(ISNUMBER(E2)),E2<0),"Invalid income",LET(inc, MAX(0, E2), tax, VLOOKUP(inc, A2:C5, 2, TRUE) + (inc - VLOOKUP(inc, A2:C5, 1, TRUE)) * VLOOKUP(inc, A2:C5, 3, TRUE), IF(inc = 0, 0, ROUND(tax / inc, 4))))` ### Project completion percentage: task count vs effort-weighted progress - **URL**: https://sheets.arte-soft.com/en/learn/project-completion-percentage-weighted-tasks/ - **Summary**: Avoid false progress spikes on small chores by weighting each task's % complete by budgeted hours with SUMPRODUCT. *Table — Why unweighted task counts overstate project readiness:* | Task (A) | EstHours (B) | PctDone (C) | Status (D) | Earned Hours | | --- | --- | --- | --- | --- | | Kickoff | 2 | 1 | Done | 2.0 | | Wireframes | 2 | 1 | Done | 2.0 | | Repo Setup | 2 | 1 | Done | 2.0 | | Core Engine | 34 | 0.25 | Active | 8.5 | - **Formula (Effort-weighted % complete and simple status count %)**: `=IF(SUM(B2:B5)=0, 0, ROUND(SUMPRODUCT(B2:B5, C2:C5) / SUM(B2:B5), 4))` - **Formula (Unweighted checklist completion %)**: `=COUNTIF(D2:D5, "Done") / COUNTA(A2:A5)` ### Project midpoint date and % schedule time elapsed (calendar vs workdays) - **URL**: https://sheets.arte-soft.com/en/learn/project-midpoint-date-and-schedule-elapsed-pct/ - **Summary**: Find a calendar-date midpoint and an inclusive workday schedule ratio. *Table — Calendar halfway date vs Business-Day halfway date:* | Project Metric (2026-06-01 Mon to 2026-06-19 Fri) | Formula | Result | | --- | --- | --- | | Calendar Span | =B2 - A2 | 18 calendar days | | Calendar Midpoint Date | =A2 + INT((B2 - A2) / 2) | 2026-06-10 (Day 10) | | Total Business Days | =NETWORKDAYS(A2, B2) | 15 workdays | | % Time Burn as of 2026-06-05 Fri | =NETWORKDAYS(A2, C2) / 15 | 33.33% (5 of 15 workdays) | - **Formula (Calendar-date midpoint)**: `=TEXT(A2+INT((B2-A2)/2),"yyyy-mm-dd")` - **Formula (Clamped % business days elapsed as of status date C2 (0% to 100%))**: `=IF(OR(B25,"Complete numeric inputs",IF(AND(UPPER(TRIM(B3))<>"M",UPPER(TRIM(B3))<>"F"),"Use M or F for model input",IF(OR(B2<18,B2<>INT(B2),AND(B4<>0,B4<>1)),"Check age or residency",IF(OR(B5<0,B5>80,MOD(B5,10)<>0,B7<0,B7>110,MOD(B7,10)<>0,NOT(OR(B6=0,B6=10,B6=15,B6=20,B6=25,B6=30,B6=35,B6=40,B6=45,B6=50,B6=55,B6=60,B6=65,B6=70,B6=75,B6=85))),"Check point subtotals","OK"))))` - **Formula (Calculate the point total)**: `=IF(B9<>"OK",B9,B2-IF(UPPER(TRIM(B3))="F",10,0)+10*B4+SUM(B5:B7))` - **Formula (Apply the first-step screen before the score bands)**: `=IF(B9<>"OK",B9,IF(AND(B2<=50,B5=0,B6=0),"Class I",IF(B10<=70,"Class II",IF(B10<=90,"Class III",IF(B10<=130,"Class IV","Class V")))))` ### PSI / PORT Pneumonia Severity Index (Fine Score Classes II–V) Formula - **URL**: https://sheets.arte-soft.com/en/learn/psi-port-pneumonia-severity-index-fine-risk-class-1-to-5/ - **Summary**: Compute Michael Fine’s Pneumonia Severity Index (PSI / PORT score) from age, sex (-10 female adjustment), nursing-home residency, comorbidities, vitals, and labs to stratify CAP into Risk Classes II–V. *Table — Why IDSA/ATS guidelines prefer PSI over CURB-65 for safe outpatient CAP discharge!:* | Total PSI / PORT Points | Fine Risk Class | 30-Day CAP Mortality | IDSA / ATS Site-of-Care Guidance | | --- | --- | --- | --- | | <= 70 points | Class II (Low Risk) | 0.6% | Outpatient Oral Antibiotic Therapy | | 71 – 90 points | Class III (Low-Moderate) | 0.9% – 2.8% | Outpatient or Short Observation Stay | | 91 – 130 points / > 130 points | Class IV / Class V | 9.3% / 27.0% | Inpatient Medical Ward / ICU Evaluation | - **Formula (Total PSI / PORT Pneumonia Severity Score)**: `=IF(OR(B2 < 18, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B6 < 0, B7 < 0), "Invalid PSI Inputs", B2 - 10 * B3 + 10 * B4 + B5 + B6 + B7)` - **Formula (Fine Risk Class II–V & Admission Recommendation)**: `=IF(OR(B2 < 18, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B6 < 0, B7 < 0), "Invalid PSI Inputs", IF(B2 - 10 * B3 + 10 * B4 + B5 + B6 + B7 <= 70, "Class II (<=70 — Outpatient)", IF(B2 - 10 * B3 + 10 * B4 + B5 + B6 + B7 <= 90, "Class III (71-90 — Outpatient / Obs)", IF(B2 - 10 * B3 + 10 * B4 + B5 + B6 + B7 <= 130, "Class IV (91-130 — Inpatient Ward)", "Class V (>130 — High Risk Inpatient / ICU)"))))` ### Psychrometric Humidity Ratio (g/kg) & Moist Air Specific Enthalpy (ASHRAE / Arden Buck) - **URL**: https://sheets.arte-soft.com/en/learn/psychrometric-moist-air-humidity-ratio-and-specific-enthalpy/ - **Summary**: Calculate saturation vapor pressure Pws via the Arden Buck equation, humidity ratio W = 0.621945 * Pw / (Patm - Pw) in g/kg dry air, and moist-air specific enthalpy h in kJ/kg dry air. *Table — Replace paper psychrometric charts with exact ASHRAE equations!:* | Air State (Patm = 101.325 kPa) | Dry-Bulb T & RH | Humidity Ratio (g/kg_da) | Moist Air Enthalpy h (kJ/kg_da) | | --- | --- | --- | --- | | Standard Room Return Air | 25 °C @ 50% RH | 9.879 g/kg dry air | 50.32 kJ/kg dry air | | Tropical Outdoor Makeup Air | 32 °C @ 70% RH | 21.136 g/kg dry air | 86.31 kJ/kg dry air | | Invalid RH > 100% or Boiling | RH > 1 or Pw >= Patm | Guarded Input Error | "Invalid Psychrometric State" | - **Formula (Humidity Ratio W in Grams Water per kg Dry Air (g/kg_da))**: `=IF(OR(B3 < 0, B3 > 1, B4 <= 10), "Invalid Psychrometric State", ROUND(1000 * 0.621945 * (B3 * 0.61121 * EXP((18.678 - (B2 / 234.5)) * (B2 / (257.14 + B2)))) / (B4 - (B3 * 0.61121 * EXP((18.678 - (B2 / 234.5)) * (B2 / (257.14 + B2))))), 3))` - **Formula (Moist Air Specific Enthalpy h (kJ per kg Dry Air))**: `=IF(OR(B3 < 0, B3 > 1, B4 <= 10), "Invalid Psychrometric State", ROUND((1.006 * B2) + ((0.621945 * (B3 * 0.61121 * EXP((18.678 - (B2 / 234.5)) * (B2 / (257.14 + B2)))) / (B4 - (B3 * 0.61121 * EXP((18.678 - (B2 / 234.5)) * (B2 / (257.14 + B2)))))) * (2501 + (1.86 * B2))), 2))` ### Design a 20x10 Public View Summary Block vs Named Workbook Invitations - **URL**: https://sheets.arte-soft.com/en/learn/public-view-link-20x10-pagination-vs-named-workbook-invitations-audit/ - **Summary**: Structure top-left KPI summary blocks for anonymous 20-row by 10-column public view pages, cross-foot totals against detail rows, and separate public links from named role invitations. *Table — Keep executive KPIs inside the initial 20x10 public window and separate sharing modes:* | Sharing Channel | Who Can Trigger & Access | What Appears in Workbook | | --- | --- | --- | | Named Invitation (share_workbook) | Owner invites specific email (viewer / suggester / contributor); creates in-app invite (emailSent = false) | Full collaborative sheet, comments, @mentions, suggestions, charts | | Public View Link (manage_public_link) | Explicit owner-only toggle (Pro required for mutations); separate from named invites | Anonymous read-only 20x10 paginated cells; no comments, charts, history, or AI | | ChatGPT Connector 0.1.0 (In review) | Not publicly published yet; uses scoped OAuth (Profile -> Connected apps) on cloud workbooks | Checks get_public_link / share_workbook only when owner explicitly requests | - **Formula (Cross-Footed Regional KPI Summary Formula)**: `=LET(sum_kpi, SUM(E2:E4), sum_raw, SUM(B2:B6), IF(ABS(sum_kpi - sum_raw) > 0.001, "Reconciliation Mismatch", sum_kpi))` - **Formula (First-Page 20x10 Public Viewport Readiness Gate Formula)**: `=LET(sum_kpi, SUM(E2:E4), sum_raw, SUM(B2:B6), end_r, G2, end_c, G3, IF(ABS(sum_kpi - sum_raw) > 0.001, "Reconciliation Mismatch", IF(OR(end_r > 20, end_c > 10), "Paginated Overflow (>20x10)", "Ready for Page-1 Public View")))` ### Pulse-Jet Baghouse Gross vs Net Air-to-Cloth Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/pulse-jet-baghouse-air-to-cloth-ratio-filter-bag-count-and-cake-dp/ - **Summary**: Calculate Pulse-Jet Baghouse Single-Bag Area (ft²), Gross Air-to-Cloth Velocity (fpm), Net (N-1 Compartment Offline) Air-to-Cloth Velocity (fpm), and Filter Cake Pressure Drop (in. w.g.). *Table — Size fabric filter bags on Net (N - 1) offline-compartment cloth area—not Gross cloth area!:* | Baghouse Sizing KPI (60,000 ACFM, 6"x12' Bags, 6x160 Bags, Se = 1.20) | Formula | Verified Output | | --- | --- | --- | | Cloth Area per Filter Bag (ft²) | PI() * (Bag_Diam_in / 12) * Bag_Length_ft | 18.85 ft² | | Gross Air-to-Cloth Ratio (fpm) | ACFM / (Bag_Area * N_comp * Bags_Per_Comp) | 3.32 fpm | | Net (N-1) Air-to-Cloth Ratio (fpm) | ACFM / (Bag_Area * (N_comp - 1) * Bags_Per_Comp) | 3.98 fpm (4.97 fpm @ 5 Comp) | | Net Tube-Sheet Pressure Drop (in. w.g.) | Effective_Drag_Se * Net_AC_Ratio | 4.77 in. w.g. (5.97 @ 5 Comp) | - **Formula (Net (N - 1) Offline-Compartment Air-to-Cloth Formula)**: `=LET(q_ac, B2, d_in, B3, l_ft, B4, n_cp, B5, b_cp, B6, s_dr, B7, IF(OR(q_ac <= 0, d_in <= 0, l_ft <= 0, n_cp < 2, b_cp < 1, s_dr <= 0), "Invalid Baghouse Input", LET(a_bg, PI() * (d_in / 12) * l_ft, a_nt, a_bg * (n_cp - 1) * b_cp, ROUND(q_ac / a_nt, 2))))` - **Formula (Undersized 5-Compartment Bid Check (Set Total Compartments = 5))**: `=IF(ISTEXT(E4), E4, ROUND(B7 * (B2 / (PI() * (B3 / 12) * B4 * (B5 - 1) * B6)), 2))` ### Pulsed ToF LiDAR Power & Unambiguous Range Formula - **URL**: https://sheets.arte-soft.com/en/learn/pulsed-tof-lidar-range-equation-received-power-and-unambiguous-range/ - **Summary**: Calculate Laser Time-of-Flight Round-Trip Delay (ns), Extended-Target Lambertian Received Power P_rx = P_pk * rho * (D^2 / (4 * R^2)) * eta, and Maximum Unambiguous PRF Range. *Table — Extended-target automotive LiDAR scales as 1 / R^2—not monostatic radar’s 1 / R^4!:* | Pulsed ToF LiDAR Metric (Ppk=100W, rho=20%, Drx=60mm, R=150m, eta=50%, PRF=500kHz) | Formula | Verified Output | | --- | --- | --- | | Round-Trip Flight Time (ns) | (2 * R_m) / 0.30 | 1,000.00 ns (1.00 us) | | Received Return Power (nW) | 10^9 * Ppk * rho * (Drx^2/(4*R^2)) * eta | 400.00 nW (100.00 nW @ R=300m) | | Max Unambiguous Range (m) | 150000 / PRF_kHz | 300.00 m (125.00 m @ 1,200 kHz) | | Pulse-Aliasing Safety Gate | R_m <= R_unambiguous | Unambiguous Echo (R <= R_unamb) | - **Formula (Extended-Target Lambertian LiDAR Received Power (nW) Formula)**: `=LET(p_pk, B2, rh_t, B3, d_rx, B4, rn_m, B5, et_o, B6, pr_f, B7, IF(OR(p_pk <= 0, rh_t <= 0, rh_t > 1, d_rx <= 0, rn_m <= 0, et_o <= 0, et_o > 1, pr_f <= 0), "Invalid LiDAR Optical Budget", ROUND(1000000000 * p_pk * rh_t * ((d_rx ^ 2) / (4 * (rn_m ^ 2))) * et_o, 2)))` - **Formula (Inverse-Square Check (R = 300 m) & Ghost-Echo Aliasing Test (PRF = 1,200 kHz))**: `=IF(ISTEXT(E3), E3, IF(B5 <= E4, "Unambiguous Echo (R <= R_unamb)", "Aliased Ghost Target (R > R_unamb)"))` ### Pultrusion Composite Die Residence Time & Pull Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/pultrusion-composite-profile-resin-cure-residence-time-pull-force-and-line-speed/ - **Summary**: Calculate Heated-Die Cure Residence Time (s), Net Fiber Cross-Section Area (mm²), Viscous-Gelation Die Wall Pull Force (kN), and Continuous Profile Mass Output (kg/h). *Table — Crank pultrusion haul-off speed 80% too fast and the exothermic cure peak gets dragged OUTSIDE the chrome-plated steel die!:* | Pultrusion Line KPI (L=1.20 m, Ap=480 mm², Vf=0.62, P=140 mm, v=0.75 vs 1.35 m/min) | Formula | Verified Output | | --- | --- | --- | | Die Cure Residence Time (s) | (Die_Length_m / Line_Speed_m_min) * 60 | 96.0 s (53.3 s under-cured @ 1.35 m/min!) | | Net Fiber Cross-Section (mm²) | Profile_Area_mm2 * Fiber_Vol_Fraction_Vf | 297.6 mm² | | Hydraulic Gripper Pull Force (kN) | (Perimeter_mm / 1000) * L_m * Shear_kPa | 8.06 kN | | Continuous Mass Output (kg/h) | (Area_mm2 * 1e-6) * (v * 60) * Density | 43.85 kg/h (78.93 kg/h @ 1.35 m/min) | - **Formula (Pultrusion Die Residence Time, Roving Fill Area, Wall Traction & Output Formula)**: `=LET(ld_m, B2, vs_m, B3, ap_m, B4, vf_r, B5, pd_m, B6, tw_k, B7, rc_k, B8, IF(OR(ld_m <= 0.3, vs_m <= 0.05, ap_m <= 10, vf_r < 0.3, vf_r > 0.8, pd_m <= 10, tw_k <= 1, rc_k < 1100, rc_k > 2400), "Invalid Pultrusion Input", ROUND((ap_m * 0.000001) * (vs_m * 60) * rc_k, 2)))` - **Formula (Over-Sped 1.35 m/min Exotherm Blowout & Uncured Core Check (Set Line Speed B3 = 1.35 m/min))**: `=IF(ISTEXT(E5), E5, ROUND((B2 / B3) * 60, 1))` ### Centrifugal Pump & Fan Affinity Laws: Flow (N), Head (N^2) & Cube Power (N^3) - **URL**: https://sheets.arte-soft.com/en/learn/pump-affinity-laws-flow-head-and-cube-shaft-power/ - **Summary**: Explore ideal speed scaling for flow, head and shaft power at corresponding centrifugal-pump operating points. *Table — Separate affinity scaling from electricity-bill savings:* | Affinity Law Quantity | Scaling Equation | 1,800 -> 1,440 RPM (0.80x) | Overspeed 2,160 RPM (1.20x) | | --- | --- | --- | --- | | Baseline Rated Duty | B2=1800, Q1=100, H1=40, P1=15 | VFD Target B6 = 1,440 RPM | VFD Target = 2,160 RPM | | Law 1: Flow Rate Q2 | Q1 * (N2 / N1) | 80.00 m^3/h (-20%) | 120.00 m^3/h (+20%) | | Law 2: Dynamic Head H2 | H1 * (N2 / N1)^2 | 25.60 m (-36%) | 57.60 m (+44%) | | Law 3: Shaft Power P2 | P1 * (N2 / N1)^3 | 7.68 kW (48.8% lower modeled shaft power) | 25.92 kW (72.8% higher modeled shaft power) | - **Formula (Cube-Law VFD Shaft Power P2 = P1 * (N2 / N1)^3 in kW)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<0,B5<0,B6<0),"Invalid inputs",ROUND(B5 * ((B6 / B2) ^ 3), 2)))` - **Formula (Scaled Volumetric Flow Q2 and Total Head H2)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<0,B5<0,B6<0),"Invalid inputs",ROUND(B4 * ((B6 / B2) ^ 2), 2)))` - **Formula (Scaled volumetric flow in m^3/h)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<0,B5<0,B6<0),"Invalid inputs",ROUND(B3 * (B6 / B2), 2)))` ### Pump NPSHa (Net Positive Suction Head Available) & Cavitation Margin formula - **URL**: https://sheets.arte-soft.com/en/learn/pump-npsh-available-cavitation-margin-and-specific-speed/ - **Summary**: Estimate available suction head from a large reservoir and compare it with a supplied pump requirement and an explicit illustrative margin. *Table — Reservoir-to-pump suction head balance:* | Pump Suction Scenario | Elevation z_s (B5) | NPSHa (m) | vs NPSHr = 4.50 m | | --- | --- | --- | --- | | 60°C Water, Flooded Tank (+2.0 m) | +2.0 m | 8.43 + 2.0 - 1.2 = 9.23 m | +4.73 m above the supplied requirement | | 60°C Water, Deep Pit Lift (-5.5 m) | -5.5 m (Suction lift!) | 8.43 - 5.5 - 1.2 = 1.73 m | -2.77 m below the supplied requirement | - **Formula (Net Positive Suction Head Available (NPSHa) in meters)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B6<0),"Invalid inputs",ROUND(((B2 - B3) / B4) + B5 - B6, 2)))` - **Formula (Compare the unrounded head with a chosen margin)**: `=IF(COUNT(B2:B8)<>7,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B6<0,B7<0,B8<0),"Invalid inputs",IF(((B2-B3)/B4)+B5-B6>=B7+B8,"Meets chosen margin","Below chosen margin")))` - **Formula (Available head minus supplied requirement)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0,B6<0,B7<0),"Invalid inputs",ROUND((((B2-B3)/B4)+B5-B6)-B7,2)))` ### Pumped-Storage Hydro Reservoir MWh & Grid Arbitrage Formula - **URL**: https://sheets.arte-soft.com/en/learn/pumped-storage-hydropower-upper-reservoir-mwh-and-round-trip-arbitrage/ - **Summary**: Calculate Pumped-Storage Hydropower (PSH) Upper-Reservoir Gravitational Potential Energy (MWh = 2.725 * Mm³ * Head_m), Generated MWh Delivered, AC-to-AC Round-Trip Efficiency, and Full-Cycle Duck-Curve Arbitrage Margin ($). *Table — Use the exact 2.725 MWh/(Mm³·m) gravitational identity to value pumped-hydro grid storage!:* | Pumped-Storage Hydro Metric (4.0 Mm³, 360 m Head, η_p=90%, η_g=88%, $25->$100/MWh) | Formula | Verified Output | | --- | --- | --- | | Stored Hydraulic Energy (MWh) | 2.725 * Volume_Mm3 * Net_Head_m | 3,924.00 MWh | | Evening Grid Delivered (MWh) | Stored_Hydraulic_MWh * η_gen | 3,453.12 MWh (vs 4,360 MWh Pumped) | | AC Round-Trip Efficiency η_RT | η_pump * η_gen | 0.7920 (79.20%) | | Full-Cycle Arbitrage Margin ($) | E_gen * P_peak - (E_hyd / η_pump) * P_pump | $236,312.00 ($388,912 @ -$10 Solar) | - **Formula (Pumped-Hydro Full-Cycle Grid Arbitrage Formula)**: `=LET(vl_m, B2, hd_m, B3, ep_m, B4, eg_n, B5, pr_c, B6, pr_d, B7, IF(OR(vl_m <= 0, hd_m <= 0, ep_m <= 0, ep_m > 1, eg_n <= 0, eg_n > 1, pr_d <= 0), "Invalid Pumped-Hydro Input", LET(eh_y, 2.725 * vl_m * hd_m, ep_u, eh_y / ep_m, eg_d, eh_y * eg_n, ROUND(eg_d * pr_d - ep_u * pr_c, 2))))` - **Formula (Negative Midday Solar Curtailment Price Check (Set Charging LMP = -$10.00/MWh))**: `=IF(ISTEXT(E5), E5, ROUND(B4 * B5, 4))` ### Purcell Factor (F_P) & β-Factor Spontaneous Emission Enhancement Formula - **URL**: https://sheets.arte-soft.com/en/learn/purcell-factor-optical-microcavity-spontaneous-emission-enhancement/ - **Summary**: Calculate Edward Purcell’s cavity QED spontaneous emission enhancement F_P = (3 / (4 * π^2)) * (Q / V_norm) and single-photon waveguide coupling efficiency β = F_P / (F_P + 1). *Table — Spontaneous radiative lifetime is NOT an immutable constant of nature—cavities reshape the vacuum!:* | Nanophotonic Resonator (V_norm in (λ/n)^3) | Quality Factor Q | Purcell Enhancement F_P | Spontaneous Coupling β = F_P/(F_P+1) | | --- | --- | --- | --- | | Photonic-Crystal Nanocavity (V_norm = 0.85) | 12,000 | 1,072.81× | 0.99907 (99.91% Indistinguishable) | | Micropillar Bragg Cavity (V_norm = 0.85) | 2,500 | 223.50× | 0.99555 (99.55% Mode Coupling) | | Invalid Cavity (Q <= 0 or V_norm <= 0) | Non-physical | "Invalid Cavity Parameters" | Positivity Check | - **Formula (Purcell Spontaneous Emission Enhancement Factor F_P)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Cavity Parameters", ROUND((3 / (4 * (PI() ^ 2))) * (B2 / B3), 2))` - **Formula (Spontaneous Emission β-Factor into Cavity Mode: F_P / (F_P + 1))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Cavity Parameters", ROUND(((3 / (4 * (PI() ^ 2))) * (B2 / B3)) / (((3 / (4 * (PI() ^ 2))) * (B2 / B3)) + 1), 5))` ### Purchasing Power Parity (PPP) implied FX rate & currency over/under-valuation - **URL**: https://sheets.arte-soft.com/en/learn/purchasing-power-parity-ppp-implied-fx-rate-and-valuation/ - **Summary**: Compare an illustrative matched-basket price ratio with a spot rate and model an inflation-ratio scenario. These are not forecasts of fair market exchange rates. *Table — Compare basket prices across borders with Absolute and Relative PPP:* | PPP Metric (Basket: 690 LCU vs $5.75 USD, Spot = 150 LCU/USD) | Formula | Result | | --- | --- | --- | | Implied PPP Exchange Rate (LCU / USD) | 690 / 5.75 | 120.00 LCU / USD | | Basket-based deviation | (S_PPP / S_spot) - 1 = (120 / 150) - 1 | -20.0% relative to this basket benchmark | | One-year relative-PPP scenario | 150 * (1 + 0.02) / (1 + 0.05) | 145.71 LCU / USD | - **Formula (Implied PPP exchange rate and currency over/under-valuation (%))**: `=IF(OR(COUNT(A2:C2)<>3,MIN(A2:C2)<=0),"Invalid inputs",LET(ppp, A2 / B2, ROUND((ppp / C2) - 1, 4)))` - **Formula (One-year relative-PPP scenario rate)**: `=IF(OR(COUNT(C2:E2)<>3,C2<=0,D2<=-1,E2<=-1),"Invalid inputs",ROUND(C2 * (1 + D2) / (1 + E2), 2))` ### Purnell Chromatography Peak Resolution Rs Formula - **URL**: https://sheets.arte-soft.com/en/learn/purnell-chromatography-peak-resolution-retention-and-selectivity-formula/ - **Summary**: Calculate Retention Factor k_2 = (t_R2 - t_0) / t_0, Selectivity Factor alpha = k_2 / k_1, Purnell Master Resolution R_s = (SQRT(N)/4) * ((alpha - 1)/alpha) * (k_2 / (1 + k_2)), and USP R_s >= 1.5 Separation Gate. *Table — Optimize HPLC method development across efficiency SQRT(N), selectivity alpha, and retention k!:* | USP <621> Purnell Metric (t0=1.0, tR1=3.5, tR2=4.0 min, N=3,600 Plates) | Formula | Verified Output | | --- | --- | --- | | Peak 2 Retention Factor k_2 | (t_R2 - t_0) / t_0 | 3.00 (k_2 / (1 + k_2) = 0.75) | | Selectivity Factor alpha | k_2 / k_1 = (t_R2 - t_0)/(t_R1 - t_0) | 1.2000 ((alpha - 1)/alpha = 0.1667) | | Purnell Peak Resolution R_s | (SQRT(N)/4)*((a-1)/a)*(k2/(1+k2)) | 1.875 (0.938 @ Aged N=900) | | USP Assay Suitability Gate | R_s >= 1.50 Baseline Criterion | USP Baseline Separated (Rs >= 1.5) | - **Formula (Purnell Master Chromatographic Resolution Formula)**: `=LET(t_vd, B2, t_r1, B3, t_r2, B4, pl_n, B5, IF(OR(t_vd <= 0, t_r1 <= t_vd, t_r2 <= t_r1, pl_n <= 0), "Invalid Retention Order", LET(k_p1, (t_r1 - t_vd) / t_vd, k_p2, (t_r2 - t_vd) / t_vd, al_s, k_p2 / k_p1, ROUND((SQRT(pl_n) / 4) * ((al_s - 1) / al_s) * (k_p2 / (1 + k_p2)), 3))))` - **Formula (Aged-Column System Suitability Failure Check (N = 900))**: `=IF(ISTEXT(E4), E4, IF(E4 >= 1.5, "USP Baseline Separated (Rs >= 1.5)", "Co-Eluting Overlap (Rs < 1.5)"))` ### PV function: find the maximum loan a monthly budget can support - **URL**: https://sheets.arte-soft.com/en/learn/pv-function-present-value-loan/ - **Summary**: Discount a fixed monthly repayment stream back to today’s affordable loan principal with PV, and verify how rising interest rates shrink borrowing capacity. *Table — Work backward from a fixed monthly budget:* | Input | Cell | Value | | --- | --- | --- | | Annual interest rate | B1 | 0.06 | | Months (nper) | B2 | 24 | | Affordable monthly payment (pmt) | B3 | -250 | - **Formula (Discount monthly payments at rate / 12)**: `=ROUND(PV(B1/12,B2,B3),2)` ### Pythagorean Theorem Formula: Hypotenuse, Missing Leg & 3D Box Diagonal - **URL**: https://sheets.arte-soft.com/en/learn/pythagorean-theorem-hypotenuse-leg-and-3d-space-diagonal/ - **Summary**: Calculate right-triangle hypotenuse c = SQRT(a^2 + b^2), solve for an unknown leg b = SQRT(c^2 - a^2) with triangle-inequality validation, and find 3D shipping-crate space diagonal d = SQRT(L^2 + W^2 + H^2). *Table — Check roof rafters, TV screen diagonals, foundation squareness, and 3D shipping crates!:* | Geometric Calculation | Dimensions Entered | Formula Expression | Exact Result | | --- | --- | --- | --- | | 2D Hypotenuse (3-4-5 Check) | Leg a = 3, Leg b = 4 | SQRT(3^2 + 4^2) | 5.00 | | 2D Roof Rafter (Run 12, Rise 5) | Leg a = 12, Leg b = 5 | SQRT(12^2 + 5^2) | 13.00 | | Missing Leg from Hypotenuse | c = 13, Known a = 5 | SQRT(13^2 - 5^2) | 12.00 | | 3D Carton Space Diagonal | L = 12, W = 4, H = 3 | SQRT(12^2 + 4^2 + 3^2) | 13.00 (Pythagorean quadruple!) | - **Formula (2D Right-Triangle Hypotenuse c = SQRT(a^2 + b^2))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Triangle Legs", ROUND(SQRT((B2 ^ 2) + (B3 ^ 2)), 4))` - **Formula (3D Rectangular Box Interior Space Diagonal d = SQRT(L^2 + W^2 + H^2))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Box Dimensions", ROUND(SQRT((B2 ^ 2) + (B3 ^ 2) + (B4 ^ 2)), 4))` - **Formula (Solve Unknown Leg b = SQRT(c^2 - a^2) Given Hypotenuse B5 & Leg B2)**: `=IF(OR(B2 <= 0, B5 <= B2), "Hypotenuse Must Exceed Leg", ROUND(SQRT((B5 ^ 2) - (B2 ^ 2)), 4))` ### Pythagorean Win Expectation formula (Bill James Sports Analytics) - **URL**: https://sheets.arte-soft.com/en/learn/pythagorean-win-expectation-bill-james-sports-analytics/ - **Summary**: Compare observed wins with a scoring-based Pythagorean model estimate, using an explicitly chosen exponent. *Table — A scoring-based estimate, not a measurement of luck:* | Sabermetric Metric | Formula | MLB Club (800 Scored, 600 Allowed, k=2, 162 G) | Even Differential (700 vs 700) | | --- | --- | --- | --- | | Pythagorean Win % | (B2^B4) / ((B2^B4) + (B3^B4)) | 640,000 / 1,000,000 = 64.00% (0.6400) | 50.00% (0.5000) | | Expected Season Wins | B5 * PythagPct | 162 * 0.64 = 103.7 wins | 81.0 wins | | Actual-minus-model wins | B6 - ExpectedWins | +4.3 wins above run differential! | 0.0 at 81 wins | - **Formula (Generalized Pythagorean Win Percentage = Scored^k / (Scored^k + Allowed^k))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<0,B3<0,B2+B3=0,B4<=0,B5<=0,B5<>INT(B5),B6<0,B6>B5,B6<>INT(B6)),"Invalid inputs",ROUND((B2 ^ B4) / ((B2 ^ B4) + (B3 ^ B4)), 4)))` - **Formula (Actual-minus-model wins)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<0,B3<0,B2+B3=0,B4<=0,B5<=0,B5<>INT(B5),B6<0,B6>B5,B6<>INT(B6)),"Invalid inputs",ROUND(B6 - (B5 * ((B2 ^ B4) / ((B2 ^ B4) + (B3 ^ B4)))), 1)))` - **Formula (Model-estimated wins)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<0,B3<0,B2+B3=0,B4<=0,B5<=0,B5<>INT(B5),B6<0,B6>B5,B6<>INT(B6)),"Invalid inputs",ROUND(B5 * ((B2 ^ B4) / ((B2 ^ B4) + (B3 ^ B4))), 1)))` ### Quality of Earnings (QoE) Adjusted & Pro-Forma EBITDA Formula - **URL**: https://sheets.arte-soft.com/en/learn/qoe-ebitda-add-back-normalization-and-pro-forma-run-rate-formula/ - **Summary**: Calculate Buy-Side/Sell-Side Quality of Earnings (QoE) Normalized EBITDA (Reported EBITDA + Non-Recurring Add-Backs - Non-Operating Gains + Excess Owner Compensation), Full-Year Pro-Forma Run-Rate EBITDA, Implied Headline EV, and Add-Back Reliance Share. *Table — Scrutinize M&A EBITDA add-backs before multiplying one-time noise by a 9x deal multiple!:* | QoE Diligence Bridge ($18M GAAP, +$2.5M 1x, -$1.2M Gain, +$0.7M Comp, +$1.5M PF, 9x) | Formula | Verified Output | | --- | --- | --- | | QoE Normalized EBITDA ($M) | GAAP + OneTime_Exp - NonOp_Gain + Owner_Comp | $20.00M ($18.00M @ $3.2M Deduct) | | Pro-Forma Run-Rate EBITDA ($M) | QoE_Normalized_EBITDA + RunRate_Adj | $21.50M ($19.50M @ $3.2M Deduct) | | Implied Enterprise Value ($M) | ProForma_EBITDA * Deal_Multiple | $193.50M ($175.50M @ $3.2M Deduct) | | Net Add-Back Share of Pro-Forma | (ProForma_EBITDA - GAAP_EBITDA) / ProForma | 0.1628 (16.28% Add-Back Reliance) | - **Formula (QoE Pro-Forma Run-Rate EBITDA & Enterprise Value Formula)**: `=LET(eb_r, B2, ad_1, B3, dd_g, B4, ow_c, B5, pf_r, B6, ml_x, B7, eb_n, eb_r + ad_1 - dd_g + ow_c, eb_p, eb_n + pf_r, IF(OR(ad_1 < 0, dd_g < 0, ow_c < 0, ml_x <= 0, eb_n <= 0, eb_p <= 0), "Invalid QoE EBITDA Bridge", ROUND(eb_p * ml_x, 2)))` - **Formula (Buy-Side Diligence Deduction Sensitivity Check (Set Non-Operating Deduction = $3.20M))**: `=IF(ISTEXT(E2), E2, ROUND((E3 - B2) / E3, 4))` ### QSR Franchise Royalty, Four-Wall EBITDA & Cash-on-Cash Formula - **URL**: https://sheets.arte-soft.com/en/learn/qsr-franchise-unit-royalty-ad-fund-and-four-wall-cash-on-cash-return/ - **Summary**: Calculate Quick-Service Restaurant (QSR) Franchise Gross-Sales Royalty + National Brand Ad-Fund Assessment ($), Net Franchisee Four-Wall EBITDA ($), Unlevered Buildout Cash-on-Cash Return, and Simple Capex Payback Period (Years). *Table — Remember that franchise royalties come off GROSS sales—amplifying Prime-Cost margin squeezes!:* | QSR Franchise Unit Metric ($1.8M AUV, 58% Prime, $216k Fixed, 6%+2% Fees, $990k Capex) | Formula | Verified Output | | --- | --- | --- | | Annual Royalty + Ad Fund ($) | Gross_Sales * (Royalty_Pct + AdFund_Pct) | $144,000 (Unchanged @ 65% Prime!) | | Net Franchisee 4-Wall EBITDA ($) | Sales*(1 - Prime - Roy - Ad) - Fixed_Opex | $396,000 ($270,000 @ 65% Prime) | | Unlevered Cash-on-Cash Return | Net_Franchisee_EBITDA / Buildout_Capex | 0.4000 (0.2727 @ 65% Prime) | | Simple Buildout Payback (yr) | Buildout_Capex / Net_Franchisee_EBITDA | 2.50 yr (3.67 yr @ 65% Prime) | - **Formula (Franchisee Net Four-Wall Cash-on-Cash Return Formula)**: `=LET(au_v, B2, pr_c, B3, fx_o, B4, ry_r, B5, ad_r, B6, cx_b, B7, eb_f, au_v * (1 - pr_c - ry_r - ad_r) - fx_o, IF(OR(au_v <= 0, pr_c <= 0, pr_c >= 0.9, fx_o < 0, ry_r < 0, ad_r < 0, cx_b <= 0, eb_f <= 0), "Invalid Franchise Unit Model", ROUND(eb_f / cx_b, 4)))` - **Formula (Beef & Wage Prime-Cost Inflation Check (Set Prime Cost = 65.0%))**: `=IF(ISTEXT(E4), E4, ROUND(B7 / E3, 2))` ### Quadrant Chart (2x2 Matrix) Formula: Crosshair-Centered XY & Quadrant Classifier - **URL**: https://sheets.arte-soft.com/en/learn/quadrant-chart-2x2-matrix-centered-xy-and-quadrant-label-formula/ - **Summary**: Build a 2x2 Strategic Quadrant Scatter Chart (BCG Growth-Share, Value-vs-Effort, Price-vs-Quality) by centering coordinates at origin (X - X_cut, Y - Y_cut) so plot axes form natural crosshairs and classifying items into Q1–Q4. *Table — Center XY coordinates on your benchmark cutoffs so the chart’s (0, 0) axes draw automatic 2x2 crosshairs!:* | Portfolio Quadrant (Cutoffs X_cut, Y_cut) | Coordinate Sign (X_c, Y_c) | Impact (Y) vs Readiness (X) Action | | --- | --- | --- | | Q1: Top-Right (X >= X_cut, Y >= Y_cut) | (+, +) | Priority Scale / Strategic Stars | | Q2: Top-Left (X < X_cut, Y >= Y_cut) | (-, +) | High-Impact Bets (Build Readiness) | | Q3: Bottom-Left (X < X_cut, Y < Y_cut) | (-, -) | Deprioritize / Sunset | | Q4: Bottom-Right (X >= X_cut, Y < Y_cut) | (+, -) | Quick Tactical Maintenance | - **Formula (2x2 Strategic Quadrant Classifier (Q1, Q2, Q3, Q4))**: `=IF(B2 >= AVERAGE($B$2:$B$5), IF(C2 >= AVERAGE($C$2:$C$5), "Q1: Top-Right (High X, High Y)", "Q4: Bottom-Right (High X, Low Y)"), IF(C2 >= AVERAGE($C$2:$C$5), "Q2: Top-Left (Low X, High Y)", "Q3: Bottom-Left (Low X, Low Y)"))` - **Formula (Crosshair-Centered Horizontal Coordinate X_centered = X_i - X_mean)**: `=ROUND(B2 - AVERAGE($B$2:$B$5), 2)` ### Integer Quantum Hall Resistance (RK / nu) & Landau Level Cyclotron Gap Formula - **URL**: https://sheets.arte-soft.com/en/learn/quantum-hall-von-klitzing-resistance-and-landau-level-formula/ - **Summary**: Calculate quantized Hall plateau resistance R_xy = R_K / nu (where von Klitzing's constant R_K = h / e^2 = 25,812.80745 Ohms) and Landau level cyclotron spacing Delta_E = hbar * e * B / m_eff (in meV). *Table — Anchor the SI Ohm to topological quantum plateaus accurate to 1 part in 10^10!:* | Quantum Hall Plateau / Semiconductor | Filling Factor nu & Field B | Quantized Hall R_xy (Ohms) | Landau Gap hbar*omega_c (meV) | | --- | --- | --- | --- | | Fundamental Plateau (nu = 1) | B = 10 T, GaAs m* = 0.067 | 25,812.81 Ohms (Exact R_K) | 17.28 meV | | Metrological Standard (nu = 2) | B = 10 T, GaAs m* = 0.067 | 12,906.40 Ohms (R_K / 2) | 17.28 meV | | Higher Filling Plateau (nu = 4) | B = 10 T, Silicon m* = 0.19 | 6,453.20 Ohms (R_K / 4) | 6.09 meV | - **Formula (Quantized Integer Hall Plateau Resistance R_xy = R_K / nu (Ohms))**: `=IF(OR(B2 < 1, INT(B2) <> B2), "Filling Factor Must Be Positive Integer", ROUND(25812.80745 / B2, 2))` - **Formula (Landau Level Cyclotron Energy Spacing Delta_E = hbar * omega_c (meV))**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Field/Effective Mass", ROUND((0.1157676 * B3) / B4, 2))` ### Quarter-Wave Anti-Reflection (AR) Coating Thickness & R% Formula - **URL**: https://sheets.arte-soft.com/en/learn/quarter-wave-anti-reflection-optical-coating-refractive-index-and-thickness-formula/ - **Summary**: Calculate Ideal Zero-Reflection Index SQRT(n_0 * n_s), Physical Quarter-Wave Film Thickness d (nm), Bare-Substrate Fresnel Reflectance (%), and Coated Quarter-Wave Reflectance (%). *Table — Destructive interference needs BOTH a quarter-wave optical path d = lambda / (4*n1) AND geometric-mean index SQRT(n0 * ns)!:* | Quarter-Wave AR Coating KPI (Air n0=1.0, BK7 ns=1.52, MgF2 n1=1.38, 550 nm) | Formula | Verified Output | | --- | --- | --- | | Ideal Zero-Reflectance Index | SQRT(Incident_n0 * Substrate_ns) | 1.2329 (1.3784 @ Flint ns = 1.90) | | Physical Quarter-Wave Film d (nm) | Wavelength_nm / (4 * Coating_n1) | 99.64 nm | | Bare Uncoated Reflectance (%) | (((ns - n0) / (ns + n0))^2) * 100 | 4.26% (9.63% @ Flint ns = 1.90) | | Coated Quarter-Wave R_AR (%) | (((n0*ns - n1^2)/(n0*ns + n1^2))^2)*100 | 1.26% (0.00% @ Flint ns = 1.90!) | - **Formula (Exact Single-Layer Quarter-Wave Thin-Film Reflectance Formula)**: `=LET(n0_i, B2, ns_b, B3, n1_c, B4, lm_n, B5, IF(OR(n0_i < 1, n1_c <= n0_i, ns_b <= n1_c, ns_b > 4.5, lm_n < 150, lm_n > 15000), "Invalid AR Coating Input", ROUND((((n0_i * ns_b - (n1_c ^ 2)) / (n0_i * ns_b + (n1_c ^ 2))) ^ 2) * 100, 2)))` - **Formula (High-Index Dense Flint Glass Perfect MgF2 Impedance Match Check (Set n_s = 1.90))**: `=IF(ISTEXT(E5), E5, ROUND((((B3 - B2) / (B3 + B2)) ^ 2) * 100, 2))` ### Quarter-Wave Impedance Transformer (Z_T) and Off-Frequency VSWR - **URL**: https://sheets.arte-soft.com/en/learn/quarter-wave-transmission-line-impedance-transformer-and-vswr/ - **Summary**: Size a quarter-wave matching section Z_T = SQRT(Z_0 * R_L) and compute exact off-frequency reflection |Gamma(f/f_0)| and VSWR across fractional bandwidths. *Table — Match real load resistance R_L at f_0 — and audit bandwidth roll-off away from f_0:* | Normalized Frequency f / f_0 (Z_0=50, R_L=200) | Reflection Magnitude \|Gamma\| | Input VSWR | | --- | --- | --- | | Center Design Frequency (f / f_0 = 1.00) | 0.0000 (Perfect Match) | 1.0000 | | Off-Tune Band Edge (f / f_0 = 2/3) | 0.3511 | 2.0823 | | DC / Half-Wave Repeat (f / f_0 = 0 or 2) | 0.6000 (Unmatched) | 4.0000 (= R_L / Z_0) | - **Formula (Quarter-Wave Matching Impedance Z_T = SQRT(Z_0 * R_L) Formula)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Impedance Input", ROUND(SQRT(B2 * B3), 4))` - **Formula (Singularity-Free Off-Frequency Reflection |Gamma| and VSWR Formula)**: `=LET(z_0, B2, r_ld, B3, f_rat, B4, IF(OR(z_0 <= 0, r_ld <= 0, f_rat < 0), "Invalid Impedance Input", LET(cs_th, ABS(COS((PI() / 2) * f_rat)), num_g, ABS(r_ld - z_0) * cs_th, den_g, SQRT(4 * z_0 * r_ld + (num_g^2)), gam_m, num_g / den_g, ROUND((1 + gam_m) / (1 - gam_m), 4))))` ### QUARTILE.INC function: split salaries or deal sizes into Q1, median, and Q3 bands - **URL**: https://sheets.arte-soft.com/en/learn/quartile-inc-function-quartiles/ - **Summary**: Calculate the 25th, 50th, and 75th inclusive quartile cutoffs and interquartile range (IQR) with QUARTILE.INC. *Table — Understand quart codes 0 through 4:* | quart Argument | Meaning | Result on [120, 160, 200, 280, 360] | | --- | --- | --- | | 0 | Minimum value (0th percentile) | 120 | | 1 | First quartile Q1 (25th percentile) | 160 | | 2 | Median Q2 (50th percentile) | 200 | | 3 | Third quartile Q3 (75th percentile) | 280 | | 4 | Maximum value (100th percentile) | 360 | - **Formula (Compute Q1, Q3, and Interquartile Range (Q3 - Q1))**: `=QUARTILE.INC(B2:B6, 3) - QUARTILE.INC(B2:B6, 1)` - **Formula (quart outside 0..4 returns #NUM!)**: `=QUARTILE.INC(B2:B6, 5)` ### Quota-Share vs Surplus-Share Reinsurance Formula - **URL**: https://sheets.arte-soft.com/en/learn/quota-share-vs-surplus-share-reinsurance-ceding-commission-formula/ - **Summary**: Compare fixed Quota-Share cession against risk-sized First-Surplus-Share cession MIN(Max_Lines * Line, MAX(0, Sum_Insured - Line)) / Sum_Insured, Ceding Commission, and Net Retained Cash Flow. *Table — Keep small-policy profits in-house with Surplus-Share lines instead of Quota-Share!:* | Surplus-Share Treaty Metric (SI=$8M, GWP=$160k, Loss=$100k, Line=$2M, 4 Lines) | Formula | Verified Output | | --- | --- | --- | | Surplus Cession Ratio (c_surp) | MIN(M_lines*L_ret, MAX(0, SI - L_ret)) / SI | 0.7500 (75.00% Ceded) | | Gross Ceded Premium & Ceding Commission | c_surp * GWP; comm * Ceded_Prem | $120.00k Prem; $30.00k Comm | | Ceded Loss Recovery ($k) | c_surp * Loss | $75.00k (Retained Loss = $25k) | | Cedant Net Underwriting Result ($k) | (1 - c_surp)*(GWP - Loss) + comm*c_surp*GWP | +$45.00k | - **Formula (Bounded First-Surplus-Share Cession Ratio Formula)**: `=LET(si_vl, B2, gw_pr, B3, ls_in, B4, ln_rt, B5, m_ln, B6, cm_rt, B7, IF(OR(si_vl <= 0, gw_pr <= 0, ls_in < 0, ln_rt <= 0, m_ln < 1, cm_rt < 0, cm_rt >= 1), "Invalid Surplus Treaty", ROUND(MIN(m_ln * ln_rt, MAX(0, si_vl - ln_rt)) / si_vl, 4)))` - **Formula (Cedant Net Underwriting Cash Result Formula)**: `=IF(ISTEXT(E2), E2, ROUND((1 - E2) * (B3 - B4) + B7 * E2 * B3, 2))` ### QUOTIENT function: calculate full cases or whole hours without remainders - **URL**: https://sheets.arte-soft.com/en/learn/quotient-function-integer-division/ - **Summary**: Return only the integer portion of division with QUOTIENT, and pair it with MOD to split totals into full packs plus leftovers. *Table — Split total units into full cartons and loose items:* | TotalBottles (A) | CartonSize (B) | FullCartons | LooseBottles | | --- | --- | --- | --- | | 149 | 12 | 12 | 5 | - **Formula (Negative numbers: QUOTIENT truncates toward zero vs INT)**: `=QUOTIENT(A2, B2)` - **Formula (Dividing by zero returns #DIV/0!)**: `=QUOTIENT(A2, 0)` ### R-Squared (R^2) and linear regression residuals formula - **URL**: https://sheets.arte-soft.com/en/learn/r-squared-coefficient-of-determination-regression/ - **Summary**: Measure how much variance an OLS trendline explains with CORREL(X, Y)^2 and compute fitted values and residuals Y - Y_hat. *Table — What R-Squared = CORREL(X, Y)^2 actually tells you:* | AdSpend $k (A) | Sales $k (B) | Fitted Y_hat = 9.5 + 2.6*X | Residual (Y - Y_hat) | | --- | --- | --- | --- | | 1 | 12 | 12.1 | -0.1 | | 2 | 15 | 14.7 | +0.3 | | 3 | 17 | 17.3 | -0.3 | | 4 | 20 | 19.9 | +0.1 (Sum = 0.0) | - **Formula (R-Squared, fitted prediction, and residual formulas)**: `=ROUND(CORREL(A2:A5, B2:B5) ^ 2, 4)` - **Formula (Row residual (Actual Y minus OLS Predicted Y_hat))**: `=ROUND(B4 - (INTERCEPT(B2:B5, A2:A5) + SLOPE(B2:B5, A2:A5) * A4), 2)` ### Rachev Ratio Formula: Upper Expected Tail Gain vs Lower Expected Tail Loss - **URL**: https://sheets.arte-soft.com/en/learn/rachev-ratio-upper-to-lower-expected-tail-return-asymmetry/ - **Summary**: Calculate the Rachev tail-asymmetry ratio in Excel and Arte Sheets by dividing upper beta-tail expected excess gain (right-tail ETL) by lower alpha-tail expected excess loss (CVaR). *Table — Compare full-tail ETL averages against single-outlier MAX/MIN ratios:* | Tail Metric (20% = 2 of 10 Months) | Spreadsheet Formula | Sample Result | | --- | --- | --- | | Upper 20% Expected Tail Gain | AVERAGE(LARGE(B2:B11, 1), LARGE(B2:B11, 2)) | 0.0800 (8.0%) | | Lower 20% Expected Tail Loss (CVaR) | -AVERAGE(SMALL(B2:B11, 1), SMALL(B2:B11, 2)) | 0.0400 (4.0%) | | Rachev Ratio (20% / 20%) | Upper_ETL / Lower_ETL | 2.0000 | | Single-Extreme MAX / ABS(MIN) | MAX(B2:B11) / ABS(MIN(B2:B11)) | 1.8000 | - **Formula (Rachev Ratio (k-Observation Tail ETL) Formula)**: `=LET(up_etl, (LARGE(B2:B11, 1) + LARGE(B2:B11, 2)) / 2, dn_etl, -((SMALL(B2:B11, 1) + SMALL(B2:B11, 2)) / 2), IF(dn_etl <= 0, "No Left-Tail Loss", ROUND(up_etl / dn_etl, 4)))` - **Formula (Tail Shock Stress Test)**: `=ROUND(MAX(B2:B11) / ABS(MIN(B2:B11)), 4)` ### Rachford-Rice Isothermal VLE Flash Formula: Bubble/Dew Check & Objective f(V/F) - **URL**: https://sheets.arte-soft.com/en/learn/rachford-rice-isothermal-flash-drum-vapor-liquid-phase-formula/ - **Summary**: Test multicomponent feed phase stability (Subcooled Liquid SUM(z_i * K_i) <= 1, Superheated Vapor SUM(z_i / K_i) <= 1, or Two-Phase Flash) and evaluate H. H. Rachford and J. D. Rice’s (1952) monotonic flash residual f(psi). *Table — Why subtracting liquid sum from vapor sum made Rachford-Rice the universal flash equation!:* | Ternary Hydrocarbon Component | Feed Mole Fraction z_i | VLE K-Value K_i at Drum T, P | At Root psi = V/F = 0.50: x_i & y_i | | --- | --- | --- | --- | | Propane (Light Key) | z_1 = 0.30 | K_1 = 2.50 | x_1 = 0.1714 \| y_1 = 0.4286 | | n-Butane (Mid Key) | z_2 = 0.40 | K_2 = 1.00 | x_2 = 0.4000 \| y_2 = 0.4000 | | n-Pentane (Heavy Key) | z_3 = 0.30 | K_3 = 0.40 | x_3 = 0.4286 \| y_3 = 0.1714 | - **Formula (Multicomponent Flash Phase Regime Classifier (Subcooled, Two-Phase, or Superheated))**: `=IF(OR(ABS(SUM(B2:B4) - 1) > 0.001, MIN(C2:C4) <= 0), "Requires Normalized Feed SUM(z_i) = 1 and K_i > 0", IF(SUMPRODUCT(B2:B4, C2:C4) <= 1, "Subcooled / Bubble-Point Liquid (Vapor Fraction V/F = 0)", IF((B2 / C2 + B3 / C3 + B4 / C4) <= 1, "Superheated / Dew-Point Vapor (Vapor Fraction V/F = 1)", "Two-Phase VLE Flash Drum Regime (0 < V/F < 1)")))` - **Formula (Rachford-Rice Monotonic Flash Residual f(psi) at Trial Vapor Fraction E2)**: `=IF(OR(ABS(SUM(B2:B4) - 1) > 0.001, MIN(C2:C4) <= 0, E2 < 0, E2 > 1), "Invalid Feed, K-Values, or Vapor Fraction psi (0..1)", ROUND((B2 * (C2 - 1)) / (1 + E2 * (C2 - 1)) + (B3 * (C3 - 1)) / (1 + E2 * (C3 - 1)) + (B4 * (C4 - 1)) / (1 + E2 * (C4 - 1)), 6))` ### Rackett Equation: Saturated Liquid Molar Volume & Density - **URL**: https://sheets.arte-soft.com/en/learn/rackett-saturated-liquid-molar-volume-and-density-correlation/ - **Summary**: Predict saturated liquid molar volume V_sat = V_c * Z_c^((1 - T / T_c)^(2/7)) (cm^3/mol) and mass density ρ_L = MW / V_sat (g/cm^3) for LPG storage tanks and pressurized liquid pipelines. *Table — Why cubic gas equations miss liquid densities—and how Rackett’s (2/7) exponent nails them!:* | n-Butane Storage Temperature T (Tc = 425.1 K) | Reduced Temp Tr = T / Tc | Rackett V_sat (cm^3/mol) | Liquid Density ρL (g/cm^3) | | --- | --- | --- | --- | | Ambient Sphere Storage (298.15 K) | 0.7014 | 101.97 cm^3/mol | 0.5700 g/cm^3 | | Hot Process Feed Drum (380.00 K) | 0.8939 | 128.93 cm^3/mol | 0.4508 g/cm^3 (-20.9% Swell!) | | Critical Point Limit (T = Tc = 425.1 K) | 1.0000 | 255.00 cm^3/mol (= Vc) | 0.2279 g/cm^3 | - **Formula (Rackett Saturated Liquid Molar Volume V_sat (cm^3/mol))**: `=IF(OR(B2 <= 0, B3 <= 0, B2 > B3, B4 <= 0, B5 <= 0, B5 >= 1), "Invalid Rackett Inputs", IF(B2 = B3, ROUND(B4, 2), ROUND(B4 * (B5 ^ ((1 - B2 / B3) ^ (2 / 7))), 2)))` - **Formula (Saturated Liquid Mass Density ρ_L = MW / V_sat (g/cm^3))**: `=IF(OR(B2 <= 0, B3 <= 0, B2 > B3, B4 <= 0, B5 <= 0, B5 >= 1, B6 <= 0), "Invalid Rackett Inputs", ROUND(B6 / (B4 * (B5 ^ (IF(B2 = B3, 0, (1 - B2 / B3) ^ (2 / 7))))), 4))` ### Radar (Spider) Chart Formula: 0–100 Multi-Axis Normalization & Polygon Area - **URL**: https://sheets.arte-soft.com/en/learn/radar-spider-chart-normalized-0-100-score-and-polygon-area-formula/ - **Summary**: Normalize incommensurate KPI units (dollars, milliseconds, percentages) onto a common 0–100 Radar / Spider Chart spoke scale (with polarity inversion for lower-is-better metrics) and compute enclosed K-spoke polygon area. *Table — Never plot raw milliseconds next to percentages on a Radar Chart without 0–100 spoke normalization!:* | Radar Spoke Dimension (4-Spoke Vendor Scorecard) | Raw Range [Worst -> Best] | Vendor Raw Value | Normalized 0–100 Spoke Score | | --- | --- | --- | --- | | Spoke 1: Throughput (Higher Better) | 100 -> 500 req/s | 420 req/s | 80.0 | | Spoke 2: P95 Latency (Lower Better!) | 400 -> 50 ms | 120 ms | 80.0 | | Spoke 3: Security Audit (Higher Better) | 0 -> 100 pts | 90 pts | 90.0 | | Spoke 4: Unit Cost (Lower Better!) | $2.00 -> $0.50 | $0.95 | 70.0 | - **Formula (Polarity-Aware 0–100 Radar Spoke Normalization Formula)**: `=IF(OR(B4 <= B3, AND(B5 <> 1, B5 <> -1)), "Requires High > Low and Polarity +1 or -1", ROUND(100 * MIN(1, MAX(0, IF(B5 = 1, (B2 - B3) / (B4 - B3), (B4 - B2) / (B4 - B3)))), 2))` - **Formula (Enclosed 4-Spoke Radar Polygon Area (0.5 * SIN(90°) * Cyclic Spoke Products))**: `=ROUND(100 * (0.5 * (E2 * E3 + E3 * E4 + E4 * E5 + E5 * E2)) / 20000, 2)` ### RADIANS function: convert degree angles before SIN, COS, and TAN - **URL**: https://sheets.arte-soft.com/en/learn/radians-convert-degrees-to-radians/ - **Summary**: Convert compass bearings and incline angles from degrees to radians with RADIANS so spreadsheet trigonometry produces accurate ratios. *Table — Why trigonometric functions need RADIANS:* | Angle in Degrees (A) | RADIANS(A) Rounded | SIN(RADIANS(A)) | | --- | --- | --- | | 0 | 0 | 0 | | 30 | 0.523599 | 0.5 | | 45 | 0.785398 | 0.707107 | | 180 | 3.141593 | 0 | - **Formula (Calculate vertical rise on an inclined conveyor)**: `=ROUND(B2 * SIN(RADIANS(A3)), 4)` - **Formula (Zero and negative angles)**: `=ROUND(RADIANS(A5), 6)` ### RAID-5 MTTDL & Erasure-Coding Overhead Formula - **URL**: https://sheets.arte-soft.com/en/learn/raid-5-vs-raid-6-mttdl-rebuild-window-and-erasure-coding-overhead/ - **Summary**: Calculate Patterson-Gibson-Katz RAID-5 Mean Time To Data Loss MTTDL = (MTBF^2) / (N*(N - 1)*MTTR) and compare Reed-Solomon (k + m) erasure-coding storage overhead against 3-way replication. *Table — Why 20 TB+ drives killed wide single-parity RAID-5 and drove cloud object stores to (k + m) erasure coding!:* | Storage Durability Metric (N=10, MTBF=900k hr, MTTR=18 hr, EC=8+4) | Formula | Verified Output | | --- | --- | --- | | RAID-5 MTTDL (Million Hours) | (MTBF^2) / (N*(N - 1)*MTTR*10^6) | 500.00 Million hr | | RAID-5 MTTDL if Rebuild Quadruples (72h) | 500.00 / 4 | 125.00 Million hr (-75%!) | | Erasure Coding Amplification ((k+m)/k) | (8 + 4) / 8 | 1.5000x Raw/Usable (vs 3.0x Rep) | | Erasure Coding Usable Efficiency | k / (k + m) = 8 / 12 | 0.6667 (66.67% Usable) | - **Formula (Patterson-Gibson-Katz RAID-5 MTTDL (Million Hours) Formula)**: `=LET(n_dr, B2, mt_bf, B3, mt_tr, B4, IF(OR(n_dr < 3, INT(n_dr) <> n_dr, mt_bf <= 0, mt_tr <= 0), "Invalid Storage Input", ROUND((mt_bf ^ 2) / (n_dr * (n_dr - 1) * mt_tr * 1000000), 2)))` - **Formula (Reed-Solomon (k + m) Storage Amplification & Usable Efficiency Formula)**: `=IF(OR(B5 < 1, INT(B5) <> B5, B6 < 1, INT(B6) <> B6), "Invalid EC Stripe", ROUND((B5 + B6) / B5, 4))` ### RAID Capacity, Mixed-Workload IOPS and Annual Failure Probability - **URL**: https://sheets.arte-soft.com/en/learn/raid-usable-storage-capacity-write-penalty-iops-and-drive-afr/ - **Summary**: Compare RAID capacity and derive host IOPS from backend operation costs. Explore a one-year drive-failure probability under an explicit constant-hazard model. - **Formula (Capacity before storage-system overhead)**: `=IF(COUNT(B3:B4)<>2,"Enter numeric drive inputs",IF(OR(B3<1,B3<>INT(B3),B4<=0),"Invalid drive inputs",SWITCH(UPPER(TRIM(B2)),"RAID0",B3*B4,"RAID1",IF(B3<>2,"Use two drives for this RAID1 model",B4),"RAID5",IF(B3<3,"Need >=3 drives",(B3-1)*B4),"RAID6",IF(B3<4,"Need >=4 drives",(B3-2)*B4),"RAID10",IF(OR(B3<4,MOD(B3,2)<>0),"Need even >=4 drives",B3/2*B4),"Unknown RAID")))` - **Formula (Host IOPS from a host read/write mix)**: `=IF(COUNT(B5:B7)<>3,"Enter numeric IOPS inputs",IF(OR(B5<0,B6<0,B6>1,B7<1),"Invalid IOPS inputs",B5/(B6+(1-B6)*B7)))` - **Formula (Annual probability under a constant failure hazard)**: `=IF(NOT(ISNUMBER(B8)),"Enter numeric MTBF",IF(B8<=0,"MTBF must be positive",1-EXP(-8760/B8)))` ### Railcar Fleet Sizing, Turnaround Cycle & Dwell Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/railcar-fleet-sizing-turnaround-cycle-time-and-detention-cost-formula/ - **Summary**: Calculate Industrial Railcar Round-Trip Turnaround Cycle Time (Days), Active Operating Cars Required via Little’s Law, Total Leased Fleet Including Bad-Order Maintenance Spares, and Annual Lease Cost Impact of Terminal Dwell. *Table — Size private railcar fleets with Little’s Law—every extra dwell day locks up leased steel!:* | Railcar Fleet Metric (365k t/yr, 100 t/car, 11d Transit + 4d Dwell, 8% Spare, $850/mo) | Formula | Verified Output | | --- | --- | --- | | Turnaround Cycle Time (days) | Transit_Days + Terminal_Dwell_Days | 15 days (20 days @ 9d Dwell) | | Active Operating Cars | ((Annual_t / 365) / Payload) * Cycle_Days | 150 cars (200 cars @ 9d Dwell) | | Total Leased Cars w/ Spares | Active_Cars * (1 + BadOrder_Spare_Pct) | 162 cars (216 cars @ 9d Dwell) | | Annual Fleet Lease Cost ($/yr) | Total_Leased_Cars * Monthly_Lease * 12 | $1,652,400 ($2,203,200 @ 9d Dwell) | - **Formula (Railcar Fleet Sizing & Annual Lease Expenditure Formula)**: `=LET(an_t, B2, pl_c, B3, tr_d, B4, dw_d, B5, sp_r, B6, ls_m, B7, IF(OR(an_t <= 0, pl_c <= 0, tr_d <= 0, dw_d < 0, sp_r < 0, sp_r >= 0.5, ls_m <= 0), "Invalid Railcar Fleet Input", LET(cy_d, tr_d + dw_d, ac_n, ((an_t / 365) / pl_c) * cy_d, tot_n, ac_n * (1 + sp_r), ROUND(tot_n * ls_m * 12, 2))))` - **Formula (Port Unloading Congestion Check (+5 Days Dwell -> 9 Days Total Dwell))**: `=IF(ISTEXT(E2), E2, ROUND((((B2 / 365) / B3) * (B4 + B5)) * (1 + B6), 2))` ### Railroad Train Resistance, Ruling Grade & Drawbar Power - **URL**: https://sheets.arte-soft.com/en/learn/railroad-train-running-resistance-ruling-grade-curvature-and-drawbar-power-formula/ - **Summary**: Calculate Specific Rolling + Aerodynamic Resistance (N/t), Ruling Grade + Curve Resistance (N/t), Total Coupler Drawbar Tractive Effort (kN), and Rail Drawbar Power (kW). *Table — On steel-on-steel freight rail, a modest 1.15% mountain grade adds 5x MORE drag than rolling friction and aerodynamic drag combined!:* | AREMA Freight Haulage KPI (4,800 t, 192 Axles: Fast 72 km/h @ 1.15% vs Mountain 32 km/h @ 2.20%) | Formula | Verified Output | | --- | --- | --- | | Level Running Resistance (N/t) | 6.0 + 125/(M/Nax) + 0.085*V + 0.0011*V^2 | 22.82 N/t (14.85 N/t @ 32 km/h) | | Grade + Curve Resistance (N/t) | 98.0665 * Grade_Pct + 3.92266 * Curve_deg | 122.58 N/t (231.44 N/t @ 2.20%, 4.0° curve!) | | Total Drawbar Tractive Effort (kN) | (Train_Mass_t * (r_run + r_gc)) / 1000 | 697.9 kN (1,182.2 kN coupler limit check!) | | Required Drawbar Power (kW) | Tractive_Effort_kN * (Speed_km_h / 3.6) | 13,958.9 kW (10,508.1 kW @ 32 km/h) | - **Formula (AREMA Modified Running Resistance, Ruling Grade + Curvature & Rail Power Formula)**: `=LET(mt_t, B2, na_x, B3, vs_k, B4, gp_c, B5, cd_g, B6, wa_t, mt_t / na_x, rr_n, 6 + (125 / wa_t) + 0.085 * vs_k + 0.0011 * (vs_k ^ 2), rg_n, 98.0665 * gp_c + 3.92266 * cd_g, ft_k, (mt_t * (rr_n + rg_n)) / 1000, IF(OR(mt_t < 50, na_x < 4, wa_t < 5, wa_t > 45, vs_k < 5, vs_k > 200, gp_c < -3, gp_c > 5, cd_g < 0, cd_g > 18), "Invalid Consist Input", ROUND(ft_k * (vs_k / 3.6), 1)))` - **Formula (2.20% Continental-Divide Mountain Crawl (`32` km/h, `4.0°` Curve) Coupler Knuckle Limit Check)**: `=IF(ISTEXT(E5), E5, LET(wa_t, B2 / B3, rr_n, 6 + (125 / wa_t) + 0.085 * B4 + 0.0011 * (B4 ^ 2), rg_n, 98.0665 * B5 + 3.92266 * B6, ROUND((B2 * (rr_n + rg_n)) / 1000, 1)))` ### Railway Equilibrium Cant, Cant Deficiency & Curve Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/railway-track-equilibrium-cant-cant-deficiency-and-max-curve-speed/ - **Summary**: Calculate Standard-Gauge Railway Equilibrium Cant (11.8 * V_kmh^2) / R_m, Uncompensated Cant Deficiency I (mm), Passenger Lateral Acceleration (I / 1500)*9.81, and Maximum Permitted Curve Speed. *Table — Balance fast passenger trains and slow heavy freight on shared-corridor railway curves!:* | EN 13803 Track Curve Metric (V=160 km/h, R=1,600 m, Cant=110 mm, Imax=100 mm) | Formula | Verified Output | | --- | --- | --- | | Equilibrium Cant E_eq (mm) | (11.8 * Speed_kmh^2) / Radius_m | 188.80 mm | | Operating Cant Deficiency I (mm) | Equilibrium_Cant - Installed_Cant | 78.80 mm | | Unbalanced Lateral Accel (m/s^2) | (Cant_Deficiency / 1500) * 9.81 | 0.5154 m/s^2 | | Max Permitted Speed V_max (km/h) | SQRT(((Cant + I_max) * R_m) / 11.8) | 168.74 km/h (213.13 @ Tilting) | - **Formula (Maximum Permitted Railway Curve Speed Formula)**: `=LET(v_tr, B2, rd_m, B3, cn_i, B4, df_m, B5, IF(OR(v_tr <= 0, rd_m < 100, cn_i < 0, cn_i > 200, df_m < 0, df_m > 300, cn_i + df_m <= 0), "Invalid Railway Curve Input", ROUND(SQRT(((cn_i + df_m) * rd_m) / 11.8), 2)))` - **Formula (Active-Tilting Pendolino Rolling-Stock Upgrade Check (Set I_max = 225 mm))**: `=IF(ISTEXT(E5), E5, ROUND((E3 / 1500) * 9.81, 4))` ### Ralph Vince Optimal f Position Sizing: Terminal Wealth Relative & Geometric HPR - **URL**: https://sheets.arte-soft.com/en/learn/ralph-vince-optimal-f-geometric-mean-hpr-and-terminal-wealth-relative/ - **Summary**: Convert empirical trade P&Ls with unequal win/loss magnitudes into Holding Period Returns HPR_i = 1 + f * (-Trade_i / Worst_Loss), Terminal Wealth Relative (TWR), and Geometric Mean HPR G(f). *Table — Why fixed-fractional sizing scales by the worst historical loss rather than symmetrical coin-flip odds:* | Risk Fraction f | Trade HPRs (+200, -100, +150, -50) | Terminal Wealth Relative TWR | Geometric Mean G(f) | | --- | --- | --- | --- | | f = 0.00 (All Cash) | 1.000, 1.000, 1.000, 1.000 | 1.0000 | 1.0000 (0.00% / trade) | | f = 0.25 (Conservative) | 1.500, 0.750, 1.375, 0.875 | 1.3535 | 1.0786 (+7.86% / trade) | | f = 1.00 (Ruin Boundary) | 3.000, 0.000, 2.500, 0.500 | 0.0000 (Wipeout!) | 0.0000 (-100% ruin) | - **Formula (Per-Trade Holding Period Return HPR_i Helper Formula)**: `=MAX(0, 1 + $F$2 * (B2 / ABS(MIN($B$2:$B$5))))` - **Formula (Terminal Wealth Relative (TWR) & Geometric Mean HPR G(f) Formula)**: `=ROUND(PRODUCT(C2:C5) ^ (1 / COUNT(B2:B5)), 4)` ### Raman Shift Wavenumber (cm^-1) & Anti-Stokes / Stokes Boltzmann Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/raman-scattering-wavenumber-shift-stokes-anti-stokes-ratio/ - **Summary**: Convert laser excitation and scattered wavelengths (nm) into Raman vibrational shift Delta_nu = (10^7 / lambda_0) - (10^7 / lambda_s) in cm^-1 and compute the vibrational Boltzmann population ratio EXP((-1.4387769 * |Delta_nu|) / T). *Table — Fingerprint silicon phonons (520 cm^-1) and measure non-contact temperature!:* | Scattered Peak (532.0 nm Green Laser, 298.15 K) | Raman Shift Delta_nu (cm^-1) | Boltzmann Ratio EXP(-c2*nu/T) | Vibrational Assignment | | --- | --- | --- | --- | | lambda_s = 547.1 nm (Stokes) | +518.8 cm^-1 | 0.0818 (8.18% excited) | Crystalline Silicon optical phonon | | lambda_s = 562.0 nm (Stokes) | +1,003.4 cm^-1 | 0.0079 (0.79% excited) | Aromatic ring breathing mode | | lambda_s = 532.0 nm (Rayleigh) | 0.0 cm^-1 | 1.0000 | Elastic Rayleigh laser line | - **Formula (Raman Vibrational Wavenumber Shift Delta_nu in Reciprocal Centimeters (cm^-1))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Wavelengths", ROUND((10000000 / B2) - (10000000 / B3), 1))` - **Formula (Thermal Vibrational Boltzmann Anti-Stokes / Stokes Factor EXP(-c2 * |Delta_nu| / T))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Raman Inputs", ROUND(EXP((-1.4387769 * ABS((10000000 / B2) - (10000000 / B3))) / B4), 4))` ### Ramberg-Osgood Elastic-Plastic Strain & Secant Formula - **URL**: https://sheets.arte-soft.com/en/learn/ramberg-osgood-nonlinear-elastic-plastic-strain-and-secant-modulus-formula/ - **Summary**: Calculate Metallic Elastic Strain sigma / E, MMPDS 0.2%-Offset Ramberg-Osgood Plastic Strain 0.002 * (sigma / sigma_02)^n, Total Nonlinear Strain, and Effective Secant Modulus E_sec. *Table — Capture smooth work-hardening yield curves with the 0.2%-offset Ramberg-Osgood law!:* | Ramberg-Osgood Metric (sigma=450 MPa, E=200 GPa, sigma_02=300 MPa, n=4) | Formula | Verified Output | | --- | --- | --- | | Hookean Elastic Strain | sigma_MPa / (E_GPa * 1000) | 0.002250 (0.001500 @ 300 MPa) | | Ramberg-Osgood Plastic Strain | 0.002 * (sigma / sigma_02) ^ n | 0.010125 (0.002000 @ 300 MPa) | | Total Elastic-Plastic Strain | Elastic_Strain + Plastic_Strain | 0.012375 (0.003500 @ 300 MPa) | | Effective Secant Modulus E_sec | (sigma_MPa / Total_Strain) / 1000 | 36.36 GPa (85.71 GPa @ 300 MPa) | - **Formula (MMPDS 0.2%-Offset Ramberg-Osgood Total Strain Formula)**: `=LET(sg_a, B2, md_e, B3, sg_y, B4, ex_n, B5, IF(OR(sg_a <= 0, md_e <= 0, sg_y <= 0, ex_n < 1), "Invalid Material Law", LET(ep_e, sg_a / (md_e * 1000), ep_p, 0.002 * ((sg_a / sg_y) ^ ex_n), ROUND(ep_e + ep_p, 6))))` - **Formula (Proof-Stress Anchor Check (sigma = sigma_02) & Secant Modulus Formula)**: `=IF(ISTEXT(E4), E4, ROUND((B2 / E4) / 1000, 2))` ### Ramsey-Boiteux Regulated Utility Inverse-Elasticity Pricing Formula - **URL**: https://sheets.arte-soft.com/en/learn/ramsey-boiteux-inverse-elasticity-regulated-utility-pricing/ - **Summary**: Set welfare-maximizing break-even tariffs P_i = MC_i / (1 - R_ramsey / |e_i|) across multi-segment rail, power, or water utilities using the Ramsey-Boiteux rule. *Table — Recover shared fixed infrastructure costs with minimum deadweight loss:* | Utility Tariff Segment (R_ramsey = 0.40) | Ramsey Lerner Markup R / \|e_i\| | Regulated Tariff P_i | | --- | --- | --- | | Peak Commuters (MC_1 = 12, \|e_1\| = 1.60) | 0.2500 (25.0% Margin) | 16.0000 | | Off-Peak Riders (MC_2 = 9, \|e_2\| = 4.00) | 0.1000 (10.0% Margin) | 10.0000 | | First-Best Subsidy Limit (R_ramsey = 0) | 0.0000 (Zero Markup) | P_1 = 12.00, P_2 = 9.00 | - **Formula (Ramsey-Boiteux Regulated Segment Tariff P_i = MC_i / (1 - R_ramsey / |e_i|) Formula)**: `=LET(r_rm, B2, mc_1, B3, el_1, B4, mc_2, B5, el_2, IF(OR(r_rm < 0, r_rm >= 1, mc_1 <= 0, mc_2 <= 0, el_1 <= r_rm, el_2 <= r_rm), "Invalid Ramsey Input", ROUND(mc_1 / (1 - r_rm / el_1), 4)))` - **Formula (Inverse-Elasticity Lerner Markup Ratio Verification Formula)**: `=IF(OR(ISTEXT(E2), ISTEXT(E3), B2 = 0), 0, ROUND(((E2 - B3) / E2) / ((E3 - B5) / E3), 4))` ### Ramsey Rule & Keynes-Ramsey Euler Equation: Social Discount Rate & Consumption Growth - **URL**: https://sheets.arte-soft.com/en/learn/ramsey-cass-koopmans-golden-rule-and-euler-consumption-growth/ - **Summary**: Calculate the social discount rate r = rho + eta * g for climate/infrastructure cost-benefit analysis and optimal per-capita consumption growth g_c = (r - rho) / eta using Frank P. Ramsey’s 1928 intertemporal optimization rule. *Table — Why Stern, Nordhaus, and HM Treasury Green Book hinge on Frank Ramsey’s 1928 equation r = rho + eta * g!:* | Intertemporal Preference Profile | Keynes-Ramsey Growth g_c = (r - rho)/eta | Implied Social Discount Rate rho + eta*g_c | | --- | --- | --- | | r = 6.5%, rho = 2.5%, eta = 2.0 | 0.0200 (2.00% / yr) | 6.50% | | Lower Risk Aversion / Higher EIS eta = 1.0 | 0.0400 (4.00% / yr) | 6.50% | | Invalid Curvature eta <= 0 | Non-Concave Utility! | "Requires Positive Curvature eta > 0" | - **Formula (Keynes-Ramsey Optimal Per-Capita Consumption Growth Rate g_c = (r - rho) / eta)**: `=IF(OR(B3 < 0, B4 <= 0), "Requires Positive Curvature eta > 0", ROUND((B2 - B3) / B4, 4))` - **Formula (Ramsey Social Discount Rate (%) = (rho + eta * g_growth) * 100)**: `=IF(OR(B3 < 0, B4 <= 0), "Requires Positive Curvature eta > 0", ROUND((B3 + B4 * 0.02) * 100, 2))` ### RANDBETWEEN and RAND: generate bounded integer and decimal test samples - **URL**: https://sheets.arte-soft.com/en/learn/randbetween-and-rand-functions/ - **Summary**: Create synthetic QA datasets with inclusive integer RANDBETWEEN(bottom, top) and continuous [0, 1) RAND() scaling. *Table — Inclusive integers vs continuous decimals:* | MinBound (A) | MaxBound (B) | Integer Formula | Continuous Decimal Formula | | --- | --- | --- | --- | | 100 | 250 | =RANDBETWEEN(A2, B2) | =A2 + (B2 - A2) * RAND() | - **Formula (Verify range and integer invariants with LET)**: `=LET(draw, RANDBETWEEN(A2, B2), AND(draw>=A2, draw<=B2, INT(draw)=draw))` - **Formula (Equal bounds and bottom > top guard)**: `=RANDBETWEEN(100, 100)` ### Randles-Sevcik Equation: Cyclic Voltammetry Peak Current (ip) & Reversible Peak Split - **URL**: https://sheets.arte-soft.com/en/learn/randles-sevcik-cyclic-voltammetry-peak-current-formula/ - **Summary**: Calculate Nernstian cyclic voltammetry peak current ip = 2.686e5 * n^1.5 * A * SQRT(D) * C0 * SQRT(v) at 25 °C in microamps and reversible peak-to-peak separation Delta_Ep = 59.2 / n mV. *Table — Distinguish diffusion-controlled redox couples from surface-adsorbed species!:* | Scan Rate v (5 mM, n=1, A=0.07 cm^2) | Peak Current ip (uA) | Reversible Peak Split Delta_Ep | Mechanistic Signature | | --- | --- | --- | --- | | v = 0.10 V/s (100 mV/s) | 81.96 uA | 59.2 mV (for n = 1) | Baseline Nernstian diffusion | | v = 0.40 V/s (4x faster scan) | 163.91 uA (2.0x higher!) | 59.2 mV (Invariant if reversible!) | Linear ip vs SQRT(v) confirms diffusion | | Two-Electron Couple (n = 2) | 2.828x higher (2^1.5) | 29.6 mV (59.2 / 2) | n^1.5 sensitivity in Randles-Sevcik | - **Formula (Randles-Sevcik Reversible CV Peak Current ip at 25 °C (Microamperes, uA))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B6 <= 0), "Invalid CV Parameters", ROUND(1000000 * 268600 * (B2 ^ 1.5) * B3 * SQRT(B4) * B5 * SQRT(B6), 2))` - **Formula (Theoretical Reversible Peak-to-Peak Separation Delta_Ep at 25 °C (mV))**: `=IF(B2 <= 0, "Invalid CV Parameters", ROUND(59.2 / B2, 1))` ### Generate Dates & Workdays Between Two Dates (RANDBETWEEN & WORKDAY) - **URL**: https://sheets.arte-soft.com/en/learn/random-date-and-workday-generator-between-start-and-end-dates/ - **Summary**: Sample calendar dates or Monday–Friday workdays within inclusive date bounds. Exclude holidays, guard empty workday pools, and use a fixed fraction in [0,1) for repeatable examples. - **Formula (Set up real dates and an inclusive window)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric dates",IF(OR(B2<>INT(B2),B3<>INT(B3),B2<61,B3>2958465,B2>B3),"Use whole dates in ascending order",IF(COUNTA(E2:E3)<>COUNT(E2:E3),"Use numeric holiday dates or blank cells",IF(OR(IF(E2="",FALSE,OR(E2<>INT(E2),E2<61,E2>2958465)),IF(E3="",FALSE,OR(E3<>INT(E3),E3<61,E3>2958465))),"Use whole holiday dates","OK"))))` - **Formula (Count the available workdays)**: `=IF(C2<>"OK",C2,NETWORKDAYS(B2,B3,E2:E3))` - **Formula (Select the k-th workday)**: `=IF(C2<>"OK",C2,IF(C3=0,"No workdays in window",IF(NOT(ISNUMBER(B4)),"Enter numeric index",IF(OR(B4<>INT(B4),B4<1,B4>C3),"Sample Index Out of Window",TEXT(WORKDAY(B2-1,N(B4),E2:E3),"yyyy-mm-dd")))))` - **Formula (Repeatable selection with a fixed fraction)**: `=IF(C2<>"OK",C2,IF(C3=0,"No workdays in window",IF(C7<>"OK",C7,TEXT(WORKDAY(B2-1,1+INT(N(B5)*N(C3)),E2:E3),"yyyy-mm-dd"))))` - **Formula (Repeatable calendar-date selection)**: `=IF(C2<>"OK",C2,IF(C7<>"OK",C7,TEXT(B2+INT(B5*(B3-B2+1)),"yyyy-mm-dd")))` - **Formula (Random calendar dates)**: `=IF(C2<>"OK",C2,TEXT(RANDBETWEEN(B2,B3),"yyyy-mm-dd"))` - **Formula (Random workdays without leaving the window)**: `=IF(C2<>"OK",C2,IF(C3=0,"No workdays in window",TEXT(WORKDAY(B2-1,RANDBETWEEN(1,MAX(1,N(C3))),E2:E3),"yyyy-mm-dd")))` ### Rank & Score Leaderboard with Deterministic Tie-Breaking (RANK + INDEX/MATCH) - **URL**: https://sheets.arte-soft.com/en/learn/rank-and-score-leaderboard-tie-break-index-match-countif/ - **Summary**: Build a live 1-through-N ranked leaderboard that resolves tied scores deterministically via RANK + COUNTIF running offsets so INDEX and MATCH never repeat the same contender. *Table — Why plain RANK + INDEX/MATCH breaks when two contenders tie:* | Contender | Raw Score | Standard RANK | Unique Rank (RANK + COUNTIF - 1) | | --- | --- | --- | --- | | Aria | 88 | 4 | 4 | | Devon | 92 | 2 | 2 | | Kiran | 97 | 1 | 1 | | Mateo | 92 | 2 (Tie!) | 3 (Disambiguated) | | Sora | 81 | 5 | 5 | - **Formula (Unique 1..N Tie-Broken Rank Helper Formula)**: `=RANK(B2, $B$2:$B$6) + COUNTIF($B$2:B2, B2) - 1` - **Formula (Leaderboard Name & Score Lookup by Slot k)**: `=INDEX($A$2:$A$6, MATCH(E2, $C$2:$C$6, 0))` ### Tie-Averaged Fractional Rank vs. Competition Rank (RANK.AVG & RANK.EQ Formula) - **URL**: https://sheets.arte-soft.com/en/learn/rank-avg-fractional-tie-averaged-ranking-vs-rank-eq/ - **Summary**: Assign midpoint fractional ranks (such as 2.5 for a two-way tie at 2nd and 3rd place) using RANK_EQ plus a COUNTIF tie-span adjustment so rank sums stay invariant. *Table — Why tied ranks need midpoint averaging in statistics and prize splits:* | Candidate | Score | RANK_EQ (Competition) | Tie Count (m) | RANK.AVG (Midpoint) | | --- | --- | --- | --- | --- | | Aria | 95 | 1 | 1 | 1.0 | | Ben | 88 | 2 | 2 (pos 2–3) | 2.5 | | Chloe | 88 | 2 | 2 (pos 2–3) | 2.5 | | Devon | 82 | 4 | 3 (pos 4–6) | 5.0 | | Elena | 82 | 4 | 3 (pos 4–6) | 5.0 | | Farah | 82 | 4 | 3 (pos 4–6) | 5.0 | - **Formula (Exact RANK.AVG Midpoint Formula (Descending Order))**: `=RANK_EQ(B3, $B$2:$B$7, 0) + (COUNTIF($B$2:$B$7, B3) - 1) / 2` - **Formula (Rank-Sum Conservation Audit (N * (N + 1) / 2))**: `=SUM(D2:D7)` ### RANK IF formula: rank values conditionally within groups or months (COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/rank-if-conditional-ranking-within-groups-countifs/ - **Summary**: Build a native RANKIF equivalent using COUNTIFS($A$2:$A$7, A2, $B$2:$B$7, ">" & B2) + 1 to rank reps within regions, products within categories, or sales within months. *Table — Spreadsheets have SUMIF, COUNTIF, AVERAGEIF, MAXIFS—so how do you write RANKIF?:* | Region (A) | Revenue (B) | Higher Peers in Same Region | Regional RANK IF | | --- | --- | --- | --- | | West | $420 | 2 higher in West ($680, $550) | 2 + 1 = Rank 3 (West) | | East | $510 | 1 higher in East ($720) | 1 + 1 = Rank 2 (East) | | West | $680 | 0 higher in West | 0 + 1 = Rank 1 (West) | | East | $720 | 0 higher in East | 0 + 1 = Rank 1 (East) | - **Formula (Descending RANK IF within group (1 = highest value in group))**: `=IF(OR(COUNT($B$2:$B$7)<>6,NOT(ISTEXT(A2)),COUNTBLANK(A2)>0,NOT(ISTEXT(A3)),COUNTBLANK(A3)>0,NOT(ISTEXT(A4)),COUNTBLANK(A4)>0,NOT(ISTEXT(A5)),COUNTBLANK(A5)>0,NOT(ISTEXT(A6)),COUNTBLANK(A6)>0,NOT(ISTEXT(A7)),COUNTBLANK(A7)>0),"Invalid inputs",COUNTIFS($A$2:$A$7, "=" & SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"~","~~"),"*","~*"),"?","~?"), $B$2:$B$7, ">" & B2) + 1)` - **Formula (Ascending RANK IF within group (1 = smallest / fastest in group))**: `=IF(OR(COUNT($B$2:$B$7)<>6,NOT(ISTEXT(A2)),COUNTBLANK(A2)>0,NOT(ISTEXT(A3)),COUNTBLANK(A3)>0,NOT(ISTEXT(A4)),COUNTBLANK(A4)>0,NOT(ISTEXT(A5)),COUNTBLANK(A5)>0,NOT(ISTEXT(A6)),COUNTBLANK(A6)>0,NOT(ISTEXT(A7)),COUNTBLANK(A7)>0),"Invalid inputs",COUNTIFS($A$2:$A$7, "=" & SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"~","~~"),"*","~*"),"?","~?"), $B$2:$B$7, "<" & B2) + 1)` ### Rank race results and sum stopwatch lap splits (hundredths of a second) - **URL**: https://sheets.arte-soft.com/en/learn/rank-race-times-and-sum-lap-splits-hundredths/ - **Summary**: Total lap splits to 0.01-second precision, rank finish times ascending with RANK(..., 1) so fastest wins 1st place, and compute gap behind leader. *Table — Set RANK order = 1 so the lowest stopwatch time ranks 1st:* | Athlete (A) | Lap 1 s (B) | Lap 2 s (C) | Total s (D) | Place | Gap Behind 1st | | --- | --- | --- | --- | --- | --- | | Aria | 41.25 | 42.1 | 83.35 | 2 | +0.85 s | | Bo | 40.8 | 41.7 | 82.50 | 1 | 0.00 s (Leader) | | Cruz | 42 | 43 | 85.00 | 4 | +2.50 s | | Dani | 41.5 | 41.9 | 83.40 | 3 | +0.90 s | - **Formula (Ascending race rank, time gap, and mm:ss.hh parser)**: `=RANK(D2, $D$2:$D$5, 1)` - **Formula (Seconds behind race leader)**: `=ROUND(D2 - MIN($D$2:$D$5), 2)` ### RANK IF formula: rank values within groups or categories using COUNTIFS - **URL**: https://sheets.arte-soft.com/en/learn/rank-with-criteria-rankifs-countifs/ - **Summary**: Build a conditional RANKIFS formula with COUNTIFS to rank employees inside their own department and optionally break ties. *Table — Why Excel has no built-in RANKIFS—and how COUNTIFS builds it:* | Row | Dept (A) | Sales (B) | Group Rank | Tie-Broken Rank | | --- | --- | --- | --- | --- | | 2 | Sales | 85 | 3 | 3 | | 3 | Sales | 120 | 1 (tie) | 1 | | 4 | Ops | 95 | 1 | 1 | | 5 | Sales | 120 | 1 (tie) | 2 | | 6 | Ops | 70 | 2 | 2 | - **Formula (Conditional group rank and tie-breaker formulas)**: `=COUNTIFS($A$2:$A$6, A2, $B$2:$B$6, ">" & B2) + 1` - **Formula (Tie-broken rank within group)**: `=COUNTIFS($A$2:$A$6, A5, $B$2:$B$6, ">" & B5) + COUNTIFS($A$2:A5, A5, $B$2:B5, B5)` ### Rank Without Ties formula: Unique Sequential Ranks (RANK.EQ + COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/rank-without-ties-unique-sequential-ranking-countif/ - **Summary**: Assign unique sequential positions to five numeric scores, resolving equal scores by their source-row order. *Table — Resolve equal scores by source-row order:* | Player (Col A) | Score (Col B) | Standard RANK.EQ | Tie-Broken Unique Rank | | --- | --- | --- | --- | | Ava (Row 2) | 92 | 1 | 1 + 1 - 1 = 1 | | Ben (Row 3) | 85 | 3 | 3 + 1 - 1 = 3 | | Cara (Row 4) | 92 (Tie!) | 1 (Duplicate!) | 1 + 2 - 1 = 2 (fills slot #2!) | | Dan (Row 5) | 78 | 5 | 5 + 1 - 1 = 5 | | Eva (Row 6) | 85 (Tie!) | 3 (Duplicate!) | 3 + 2 - 1 = 4 (fills slot #4!) | - **Formula (Descending Unique Rank Without Ties (Highest = 1))**: `=IF(COUNT($B$2:$B$6)<>5,"Enter five numeric scores",RANK.EQ(B2,$B$2:$B$6,0)+COUNTIF($B$2:B2,B2)-1)` - **Formula (Ascending Unique Rank Without Ties (Lowest Time = 1))**: `=IF(COUNT($B$2:$B$6)<>5,"Enter five numeric scores",RANK.EQ(B2,$B$2:$B$6,1)+COUNTIF($B$2:B2,B2)-1)` ### Ranson Criteria for Acute Pancreatitis Severity & Mortality (0–11) - **URL**: https://sheets.arte-soft.com/en/learn/ranson-criteria-admission-and-48-hour-acute-pancreatitis-score/ - **Summary**: Calculate John Ranson’s classic 5 Admission Criteria (Age > 55, WBC > 16k, Glucose > 200, LDH > 350, AST > 250) plus 6 48-Hour Criteria (0–11 total) to stratify mild (< 3) vs. severe necrotizing acute pancreatitis. *Table — Evaluate Admission (GA LAW) and 48-Hour (C HOBBS) Ranson pancreatitis severity!:* | Total 48-Hour Ranson Score (0–11) | Historical Inpatient Mortality | Pancreatitis Severity | Clinical Disposition | | --- | --- | --- | --- | | Ranson 0–2 Points (e.g., 0) | < 1–2% Mortality | Mild Interstitial Pancreatitis | General Ward, Early Enteral Feeding & Cholecystectomy Check | | Ranson 3–4 Points | ~15% Mortality | Moderately Severe / Severe | Step-Down / ICU Fluid Resuscitation & Organ Monitoring | | Ranson 5–6 (e.g., 6) / >= 7 Points | ~40% / > 80% Mortality | Severe Necrotizing Pancreatitis | ICU Care, Contrast CT (> 72h) & Multidisciplinary Necrosis Care | - **Formula (Admission + 48-Hour Total Ranson Score (0–11 Points))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 < 0, B7 > 6), "Invalid Ranson Lab Input", IF(B2 > 55, 1, 0) + IF(B3 > 16, 1, 0) + IF(B4 > 200, 1, 0) + IF(B5 > 350, 1, 0) + IF(B6 > 250, 1, 0) + B7)` - **Formula (Ranson Acute Pancreatitis Mortality & ICU Triage)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 < 0, B7 > 6), "Invalid Ranson Lab Input", IF((IF(B2 > 55, 1, 0) + IF(B3 > 16, 1, 0) + IF(B4 > 200, 1, 0) + IF(B5 > 350, 1, 0) + IF(B6 > 250, 1, 0) + B7) >= 7, "Critical Severe Pancreatitis (Ranson >= 7: > 80% Historical Mortality) — Intensive Care", IF((IF(B2 > 55, 1, 0) + IF(B3 > 16, 1, 0) + IF(B4 > 200, 1, 0) + IF(B5 > 350, 1, 0) + IF(B6 > 250, 1, 0) + B7) >= 5, "Severe Acute Pancreatitis (Ranson 5-6: ~40% Mortality) — ICU Resuscitation", IF((IF(B2 > 55, 1, 0) + IF(B3 > 16, 1, 0) + IF(B4 > 200, 1, 0) + IF(B5 > 350, 1, 0) + IF(B6 > 250, 1, 0) + B7) >= 3, "Severe Pancreatitis Threshold Met (Ranson 3-4: ~15% Mortality) — Close Organ Monitoring", "Mild Acute Pancreatitis (Ranson 0-2: < 2% Mortality) — Ward Care & Early Feeding"))))` ### Ranz-Marshall Evaporating Droplet Nusselt & Sherwood Correlation - **URL**: https://sheets.arte-soft.com/en/learn/ranz-marshall-evaporating-droplet-nusselt-and-sherwood-number/ - **Summary**: Calculate spray-drying and fuel-droplet heat and mass transfer via Ranz & Marshall’s 1952 correlation Nu = 2 + 0.6 * Re_d^0.5 * Pr^(1/3) and Sh = 2 + 0.6 * Re_d^0.5 * Sc^(1/3). *Table — Why stagnant spherical droplets have Nu = Sh = 2—and how slip velocity accelerates spray drying!:* | Droplet Flow Regime (Air Pr = 0.71, Vapor Sc = 0.61) | Droplet Nusselt Nu | Droplet Sherwood Sh | Spray Dryer Physics | | --- | --- | --- | --- | | Stagnant Mist Limit (Re_d = 0) | 2.00 | 2.00 | Pure Radial Conduction / Diffusion | | Nozzle Deceleration Zone (Re_d = 144) | 8.42 (4.21× stagnant) | 8.11 (4.05× stagnant) | Laminar Boundary-Layer Thinning | | Negative Re_d or Pr <= 0 | Error Guard | "Invalid Droplet Parameters" | Domain Check | - **Formula (Ranz-Marshall Evaporating Droplet Nusselt Number (Nu))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Droplet Parameters", ROUND(2 + 0.6 * SQRT(B2) * (B3 ^ (1 / 3)), 2))` - **Formula (Ranz-Marshall Mass-Transfer Sherwood Number (Sh))**: `=IF(OR(B2 < 0, B4 <= 0), "Invalid Droplet Parameters", ROUND(2 + 0.6 * SQRT(B2) * (B4 ^ (1 / 3)), 2))` ### Rao Quadratic Entropy Q Formula: Functional & Phylogenetic Trait Diversity Index - **URL**: https://sheets.arte-soft.com/en/learn/rao-quadratic-entropy-functional-trait-diversity-index/ - **Summary**: Incorporate pairwise species trait or genetic dissimilarity d_ij into biodiversity measurement using C. R. Rao’s (1982) Quadratic Entropy Q = SUM_i SUM_j d_ij * p_i * p_j and Jost’s Effective Functional Species 1 / (1 - Q). *Table — Why three warbler twins have FAR less functional diversity than an eagle, a heron, and a hummingbird!:* | 3-Species Assemblage (Shares p = [0.50, 0.30, 0.20]) | Pairwise Distances [d_12, d_13, d_23] | Rao Quadratic Entropy Q | Effective Distinct Species 1 / (1 - Q) | | --- | --- | --- | --- | | Trait-Clustered Guild | [0.20, 0.80, 0.70] | 0.3040 | 1.4368 | | Maximally Distinct Taxa (All d_ij = 1 -> Gini-Simpson) | [1.00, 1.00, 1.00] | 0.6200 | 2.6316 | | Functionally Identical Clones (All d_ij = 0) | [0.00, 0.00, 0.00] | 0.0000 | 1.0000 | - **Formula (Rao Quadratic Entropy Q = 2 * (d_12*p_1*p_2 + d_13*p_1*p_3 + d_23*p_2*p_3))**: `=IF(OR(MIN(B2:B4) < 0, SUM(B2:B4) <= 0, MIN(D2:D4) < 0, MAX(D2:D4) > 1), "Requires Counts >= 0, Sum > 0, and Normalized Distances d_ij in [0, 1]", ROUND(2 * (D2 * (B2 / SUM(B2:B4)) * (B3 / SUM(B2:B4)) + D3 * (B2 / SUM(B2:B4)) * (B4 / SUM(B2:B4)) + D4 * (B3 / SUM(B2:B4)) * (B4 / SUM(B2:B4))), 4))` - **Formula (Numbers-Equivalent Functional Diversity 1 / (1 - Q))**: `=IF(OR(MIN(B2:B4) < 0, SUM(B2:B4) <= 0, MIN(D2:D4) < 0, MAX(D2:D4) > 1), "Requires Counts >= 0, Sum > 0, and Normalized Distances d_ij in [0, 1]", ROUND(1 / (1 - 2 * (D2 * (B2 / SUM(B2:B4)) * (B3 / SUM(B2:B4)) + D3 * (B2 / SUM(B2:B4)) * (B4 / SUM(B2:B4)) + D4 * (B3 / SUM(B2:B4)) * (B4 / SUM(B2:B4)))), 4))` ### Filter Backwash Bed Expansion % & Fluidized Head-Loss Formula - **URL**: https://sheets.arte-soft.com/en/learn/rapid-granular-filter-backwash-bed-expansion-minimum-fluidization-formula/ - **Summary**: Calculate Fluidized Backwash Expanded Bed Depth L_e (m), Percentage Bed Expansion (%), Constant Fluidized Buoyant Head Loss h_f (m water), and Underdrain Buoyant Pressure (kPa). *Table — Once sand fluidizes during backwash, head loss LOCKS at buoyant grain weight—even as bed expansion rises!:* | Filter Backwash Fluidization KPI (L0=0.80 m, eps0=0.42, epse=0.536, SG=2.65) | Formula | Verified Output | | --- | --- | --- | | Expanded Bed Depth L_e (m) | L0 * (1 - eps_0) / (1 - eps_e) | 1.00 m (1.16 m @ eps_e = 0.60) | | Filter Bed Expansion (%) | (((1 - eps_0) / (1 - eps_e)) - 1) * 100 | 25.00% (45.00% @ eps_e = 0.60) | | Fluidized Buoyant Head Loss (m) | L0 * (1 - eps_0) * (SG_sand - 1) | 0.7656 m (UNCHANGED @ eps_e=0.60!) | | Buoyant Bed Pressure Drop (kPa) | Fluidized_Head_Loss_m * 9.81 | 7.51 kPa | - **Formula (Solid-Volume Conservation Backwash Expansion & Buoyant Head-Loss Formula)**: `=LET(l0_m, B2, ep_0, B3, ep_e, B4, sg_s, B5, IF(OR(l0_m <= 0, ep_0 < 0.25, ep_e <= ep_0, ep_e >= 0.85, sg_s <= 1.05), "Invalid Backwash Input", ROUND((((1 - ep_0) / (1 - ep_e)) - 1) * 100, 2)))` - **Formula (Summer Warm-Water vs High-Rate Wash Trough Overflow Check (Set Expanded Porosity = 0.60))**: `=IF(ISTEXT(E3), E3, ROUND(B2 * (1 - B3) * (B5 - 1), 4))` ### RAROC Risk-Adjusted Return on Capital Formula - **URL**: https://sheets.arte-soft.com/en/learn/raroc-risk-adjusted-return-on-economic-capital-hurdle-formula/ - **Summary**: Price commercial credit facilities via Risk-Adjusted Return on Capital RAROC = (Net_Interest_And_Fees - OpEx - EAD*PD*LGD + r_f*EC) / EC by separating Expected Loss (pricing reserve) from Unexpected Loss (Economic Capital). *Table — Price Expected Loss into the spread and charge Economic Capital for Unexpected Tail Loss!:* | RAROC Credit Facility Line (EAD = $100M, EC = $8M) | Formula | Verified Output | | --- | --- | --- | | Expected Credit Loss Charge (EL) | EAD * PD * LGD = 100 * 0.015 * 0.40 | 0.6000 ($M / yr) | | Risk-Free Return on Equity Buffer | r_f * EC = 0.03 * 8.00 | 0.2400 ($M / yr) | | Risk-Adjusted Net Income (RANI) | Rev - OpEx - EL + r_f * EC | 2.0400 ($M / yr) | | Pre-Tax Facility RAROC | RANI / Economic_Capital | 0.2550 (25.50% Return on EC) | - **Formula (Expected Credit Loss EL = EAD * PD * LGD Formula)**: `=IF(OR(B2 <= 0, B5 < 0, B5 > 1, B6 < 0, B6 > 1), "Invalid Credit Input", ROUND(B2 * B5 * B6, 4))` - **Formula (Full Bankers-Trust RAROC Ratio Formula)**: `=LET(ead_v, B2, rv_n, B3, op_c, B4, pd_a, B5, lgd_f, B6, ec_k, B7, rf_y, B8, IF(OR(ead_v <= 0, op_c < 0, pd_a < 0, pd_a > 1, lgd_f < 0, lgd_f > 1, ec_k <= 0), "Invalid Credit Input", LET(el_c, ead_v * pd_a * lgd_f, rani_v, rv_n - op_c - el_c + rf_y * ec_k, ROUND(rani_v / ec_k, 4))))` ### Rasch Model (1PL IRT) Formula: Correct-Response Probability & Fisher Item Information - **URL**: https://sheets.arte-soft.com/en/learn/rasch-1pl-item-response-theory-ability-difficulty-log-odds-formula/ - **Summary**: Evaluate Computerized Adaptive Testing (CAT — NCLEX, GMAT, GRE) item response probability P = 1 / (1 + EXP(-(theta - b))) and Fisher Item Information I(theta) = P * (1 - P) using Georg Rasch’s 1960 1-Parameter Logistic model. *Table — Specific Objectivity on a common logit ruler: why CAT engines select items where b = theta (I_max = 0.25)!:* | Examinee Ability theta vs. Item Difficulty b (Logits) | Correct-Answer Probability P(theta) | Rasch Fisher Information P*(1 - P) | | --- | --- | --- | | theta = +1.25, b = +0.45 (+0.80 logit advantage) | 0.6900 (69.00%) | 0.2139 | | Optimal CAT Match: theta = +0.45, b = +0.45 (0 gap) | 0.5000 (50.00%) | 0.2500 (Maximum Information!) | | Out-of-Scale Extreme \|theta\| > 10 logits | Numerical Guard | "Logit Parameter Outside [-10, +10] Scale" | - **Formula (Rasch 1PL Correct-Response Probability P = 1 / (1 + EXP(-(theta - b))))**: `=IF(OR(ABS(B2) > 10, ABS(B3) > 10), "Logit Parameter Outside [-10, +10] Scale", ROUND(1 / (1 + EXP(-(B2 - B3))), 4))` - **Formula (Rasch Dichotomous Fisher Item Information I(theta) = P * (1 - P))**: `=IF(OR(ABS(B2) > 10, ABS(B3) > 10), "Logit Parameter Outside [-10, +10] Scale", ROUND((1 / (1 + EXP(-(B2 - B3)))) * (1 - 1 / (1 + EXP(-(B2 - B3)))), 4))` ### RASS Sedation Depth & CAM-ICU Delirium Screening Logic Formula - **URL**: https://sheets.arte-soft.com/en/learn/rass-sedation-scale-and-cam-icu-delirium-screening-formula/ - **Summary**: Pair the Richmond Agitation-Sedation Scale (RASS -5 to +4) arousal gate (RASS >= -3) with Wes Ely’s validated 4-feature Confusion Assessment Method for the ICU (CAM-ICU: Feature 1 AND Feature 2 AND [Feature 3 OR Feature 4]). *Table — Catch hypoactive "quiet" ICU delirium that bedside observation misses 70% of the time!:* | RASS & CAM-ICU Step | Bedside Rule | Clinical ICU Output | | --- | --- | --- | | Step 1: Arousal Gate (RASS -5 to +4) | RASS <= -4 (Deep Sedation / Coma) | "Unable to Assess (RASS -4/-5)" | | CAM-ICU Positive Delirium | RASS >= -3 AND F1=1 AND F2(>2 err) AND (RASS<>0 OR F4>1 err) | "CAM-ICU Positive (Hypoactive or Hyperactive)" | | CAM-ICU Negative | RASS >= -3 with F1=0, F2<=2 errors, or (RASS=0 and F4<=1) | "CAM-ICU Negative (No Delirium)" | - **Formula (CAM-ICU Screening Result With Automatic RASS Arousal Gate & Feature 3 Derivation)**: `=IF(OR(B2 < -5, B2 > 4, B4 < 0, B4 > 10, B5 < 0, B5 > 5), "Invalid RASS/CAM Inputs", IF(B2 <= -4, "Unable to Assess (Coma/Deep Sedation RASS -4/-5)", IF(AND(B3 = 1, B4 > 2, OR(B2 <> 0, B5 > 1)), IF(B2 > 0, "CAM-ICU Positive (Hyperactive Delirium)", "CAM-ICU Positive (Hypoactive / Quiet Delirium)"), "CAM-ICU Negative (No Delirium)")))` - **Formula (Count of Positive CAM-ICU Features (0 to 4))**: `=IF(B3 = 1, 1, 0) + IF(B4 > 2, 1, 0) + IF(B2 <> 0, 1, 0) + IF(B5 > 1, 1, 0)` ### Rational Method Peak Stormwater Runoff (Q = C*i*A) & Composite C - **URL**: https://sheets.arte-soft.com/en/learn/rational-method-peak-stormwater-runoff-cia-and-composite-c/ - **Summary**: Calculate an area-weighted runoff coefficient and Rational Method peak flow. Compare the customary Q≈CiA shortcut with the explicit acre-inch/hour conversion and validate the worksheet inputs. - **Formula (Weight each coefficient by its area)**: `=IF(E6<>"OK",E6,SUMPRODUCT(B2:B4,C2:C4)/E9)` - **Formula (Distinguish the unit shortcut from explicit conversion)**: `=IF(ISNUMBER(E11),E11*43560/12/3600,E11)` ### Natural Convection Rayleigh & Churchill-Chu Nusselt Formula - **URL**: https://sheets.arte-soft.com/en/learn/rayleigh-benard-natural-convection-rayleigh-and-churchill-chu-nusselt/ - **Summary**: Calculate Vertical Heatsink / Enclosure Plate Laminar Rayleigh Number Ra_L, Exact Churchill-Chu Laminar Nusselt Number Nu_L in Air (Pr = 0.71), Natural-Convection Heat-Transfer Coefficient h (W/m²·K), and Passive Heat Dissipation Q (W). *Table — Size fanless electronics heatsinks with Rayleigh buoyancy and Churchill-Chu Nusselt numbers!:* | Natural Convection Metric (M = 10^8, ΔT = 64 K, L = 0.25 m, k = 0.028, A = 0.40 m²) | Formula | Verified Output | | --- | --- | --- | | Rayleigh Number Ra_L | Buoyancy_Modulus * ΔT * (L^3) | 100,000,000 (6,250,000 @ ΔT=4 K) | | Churchill-Chu Nusselt Nu_L | 0.68 + 0.67*(Ra_L^0.25) / (1+(0.492/0.71)^(9/16))^(4/9) | 52.10 (26.39 @ ΔT=4 K) | | Convective Coeff h (W/m²·K) | (Nu_L * k_air) / L_m | 5.84 W/m²·K (2.96 @ ΔT=4 K) | | Passive Heat Rejected Q (W) | h * Area_m2 * ΔT_K | 149.39 W (4.73 W @ ΔT=4 K) | - **Formula (Churchill-Chu Laminar Natural Convection Heat Rejection Formula)**: `=LET(mb_a, B2, dt_k, B3, ht_l, B4, ka_w, B5, ar_m, B6, ra_l, mb_a * dt_k * (ht_l ^ 3), IF(OR(mb_a <= 0, dt_k <= 0, ht_l <= 0, ka_w <= 0, ar_m <= 0, ra_l > 1000000000), "Invalid Laminar Ra_L Input", LET(nu_l, 0.68 + (0.67 * (ra_l ^ 0.25)) / ((1 + ((0.492 / 0.71) ^ (9 / 16))) ^ (4 / 9)), hc_v, (nu_l * ka_w) / ht_l, ROUND(hc_v * ar_m * dt_k, 2))))` - **Formula (Standby Low-ΔT Buoyancy Weakening Check (Set ΔT = 4.0 K))**: `=IF(ISTEXT(E5), E5, ROUND(((0.68 + (0.67 * ((B2 * B3 * (B4 ^ 3)) ^ 0.25)) / ((1 + ((0.492 / 0.71) ^ (9 / 16))) ^ (4 / 9))) * B5) / B4, 2))` ### Rayleigh Diffraction Limit Angular Resolution & Airy Disk Diameter - **URL**: https://sheets.arte-soft.com/en/learn/rayleigh-diffraction-limit-angular-resolution-and-airy-disk/ - **Summary**: Calculate circular-aperture Rayleigh angular resolution theta = 1.22 * lambda / D (in radians and arcseconds) and focal-plane Airy disk spot diameter d_Airy = 2.44 * lambda * N (in micrometers). *Table — Compare telescope aperture resolution and camera sensor diffraction blur!:* | Optical System (Green Light lambda = 550 nm = 5.5e-7 m) | Aperture D (m) | f-Number N = f / D | Rayleigh Limit / Airy Spot | | --- | --- | --- | --- | | 200 mm Amateur Telescope | 0.20 m | f/8.0 | 0.692 arcsec \| 10.74 um spot | | 6.5 m Space Telescope Mirror | 6.50 m | f/20.2 | 0.0213 arcsec (32.5x sharper!) | | Stopped-Down Camera Lens | 0.003 m | f/16.0 | 21.47 um Airy blur spot | - **Formula (Rayleigh Criterion Angular Resolution (Arcseconds))**: `=IF(OR(B2 <= 0, B3 <= 0), "Wavelength & Aperture Must Be > 0", ROUND(((1.22 * B2) / B3) * 206264.806, 3))` - **Formula (Focal-Plane Airy Disk First-Null Spot Diameter (Micrometers))**: `=IF(B4 <= 0, "f-Number Must Be > 0", ROUND(2.44 * (B2 * 1000000) * B4, 2))` ### Rayleigh Flow Thermal Choking: P/P*, T/T* & Stagnation Temperature Ratio (T0/T0*) - **URL**: https://sheets.arte-soft.com/en/learn/rayleigh-flow-diabatic-compressible-thermal-choking-formula/ - **Summary**: Calculate static pressure ratio P/P*, static temperature ratio T/T*, and stagnation temperature ratio T0/T0* for compressible frictionless duct flow with heat addition (jet afterburners and ramjet combustors). *Table — Model thermal choking in jet combustors, afterburners, and laser-heated ducts!:* | Combustor Regime (gamma = 1.4) | Mach Number M | Pressure Ratio P / P* | Stagnation T0 / T0* & Static T / T* | | --- | --- | --- | --- | | Subsonic Ramjet Combustor | M = 0.50 | P / P* = 1.7778 | T0 / T0* = 0.6914 \| T / T* = 0.7901 | | Thermally Choked Throat | M = 1.00 | P / P* = 1.0000 | T0 / T0* = 1.0000 (Max Heat Limit!) | | Supersonic Scramjet Burner | M = 2.00 | P / P* = 0.3636 | T0 / T0* = 0.7934 \| T / T* = 0.5289 | - **Formula (Rayleigh Stagnation Temperature Ratio T0 / T0* (Thermal Choking Fraction))**: `=IF(OR(B2 <= 0, B3 <= 1), "Invalid Rayleigh Inputs", ROUND(((1 + B3) * (B2 ^ 2) * (2 + ((B3 - 1) * (B2 ^ 2)))) / ((1 + (B3 * (B2 ^ 2))) ^ 2), 4))` - **Formula (Rayleigh Static Pressure Ratio P / P* & Static Temperature Ratio T / T*)**: `=IF(OR(B2 < 0, B3 <= 1), "Invalid Rayleigh Inputs", ROUND((1 + B3) / (1 + (B3 * (B2 ^ 2))), 4))` ### Rayleigh Fiber Scattering Loss & Optical Link Budget Formula - **URL**: https://sheets.arte-soft.com/en/learn/rayleigh-scattering-fiber-attenuation-and-link-power-budget-formula/ - **Summary**: Calculate Silica Fiber Intrinsic Rayleigh Scattering Attenuation alpha_R = A / lambda_um^4 (dB/km), Total Unamplified Span Loss (alpha_R*L_km + Connector_Splice_dB), Unallocated Optical Power Margin, and Link Feasibility. *Table — Understand why 1550 nm C-band fiber spans 16x farther than 775 nm via the lambda^-4 Rayleigh law!:* | Fiber Link Budget Metric (A=0.80, lambda=1.55 um, L=80 km, Splice=2.5 dB, Budget=20 dB) | Formula | Verified Output | | --- | --- | --- | | Rayleigh Scattering Loss (dB/km) | A_silica / (Wavelength_um^4) | 0.1386 dB/km (2.2176 @ 0.775 um) | | Total Fiber + Splice Loss (dB) | Rayleigh_dB_km * Span_km + Splice_dB | 13.59 dB | | Unallocated Link Margin (dB) | Optical_Budget_dB - Total_Loss_dB | 6.41 dB | | Unamplified Span Gate | Unallocated_Margin >= 0 dB | Feasible Unamplified Span | - **Formula (Rayleigh-Limited Optical Link Margin Formula)**: `=LET(a_ry, B2, wl_u, B3, ln_k, B4, sp_l, B5, pb_d, B6, IF(OR(a_ry <= 0, wl_u <= 0, ln_k <= 0, sp_l < 0, pb_d <= 0), "Invalid Optical Span Input", LET(al_k, ROUND(a_ry / (wl_u ^ 4), 4), ls_t, ROUND(al_k * ln_k + sp_l, 2), ROUND(pb_d - ls_t, 2))))` - **Formula (Half-Wavelength 16x Scattering Explosion Check (Set Wavelength = 0.775 um))**: `=IF(ISTEXT(E4), E4, IF(E4 < 0, "Link Fails: Exceeds Power Budget", "Feasible Unamplified Span"))` ### RC Time Constant (tau), capacitor charging voltage & -3 dB cutoff frequency - **URL**: https://sheets.arte-soft.com/en/learn/rc-time-constant-tau-capacitor-charge-and-cutoff-frequency/ - **Summary**: Calculate tau = R * C, exponential charging curve Vc(t) = Vs * (1 - EXP(-t / tau)), and passive RC filter corner frequency fc = 1 / (2*PI*R*C). *Table — 63.2% at 1 tau, 99.3% at 5 tau, and -3 dB low-pass corner frequency:* | RC Network Metric (R=10 kΩ, C=100 µF, Vs=5V) | Formula | Result | | --- | --- | --- | | RC Time Constant (tau = R × C) | =A2 * B2 | 1.00 s | | Voltage at t = 1.0 s (1 tau = 63.21%) | =IF(OR(COUNT(A2:B2)<>2,A2<=0,B2<=0,NOT(ISNUMBER(D2)),D2<0,NOT(ISNUMBER(C2))),"Invalid RC inputs",ROUND(C2 * (1 - EXP(-D2 / (A2 * B2))), 4)) | 3.1606 V | | Voltage at t = 5.0 s (5 tau = 99.33%) | =ROUND(C2 * (1 - EXP(-5 / 1)), 4) | 4.9663 V | | -3 dB Filter Cutoff Frequency fc (Hz) | =IF(OR(COUNT(A2:B2)<>2,A2<=0,B2<=0),"Invalid RC inputs",ROUND(1 / (2 * PI() * A2 * B2), 4)) | 0.1592 Hz | - **Formula (Capacitor charging voltage Vc(t) and -3 dB filter cutoff frequency fc)**: `=IF(OR(COUNT(A2:B2)<>2,A2<=0,B2<=0,NOT(ISNUMBER(D2)),D2<0,NOT(ISNUMBER(C2))),"Invalid RC inputs",ROUND(C2 * (1 - EXP(-D2 / (A2 * B2))), 4))` - **Formula (Passive RC filter -3 dB cutoff frequency fc = 1 / (2 * PI * R * C))**: `=IF(OR(COUNT(A2:B2)<>2,A2<=0,B2<=0),"Invalid RC inputs",ROUND(1 / (2 * PI() * A2 * B2), 4))` ### Development Yield-on-Cost & Interest Reserve Formula - **URL**: https://sheets.arte-soft.com/en/learn/real-estate-development-yield-on-cost-and-non-circular-interest-reserve/ - **Summary**: Solve Construction Loan Interest Reserve IR = (k * C_hs) / (1 - k) without circular spreadsheet references, Total Project Cost, Stabilized Yield on Cost (YoC), and Development Spread. *Table — Eliminate circular construction-loan references with one exact algebraic formula!:* | Ground-Up Development Metric (C_hs=$38M, 62.5% LTC @ 8%, 2yr, f=0.50, NOI=$3M) | Formula | Verified Output | | --- | --- | --- | | Closed-Form Interest Reserve ($M) | C_hs * k / (1 - k), k = LTC*r*T*f_draw | $2.00M (Zero Circularity) | | Total Project Cost TPC ($M) | C_hs / (1 - k) | $40.00M ($25.00M Loan) | | Stabilized Yield on Cost (YoC) | NOI_stab / TPC | 0.0750 (7.50%) | | Development Value Spread | YoC - cap_exit | +0.0200 (+200 bps Spread) | - **Formula (Non-Circular Interest Reserve & Yield-on-Cost Formula)**: `=LET(c_hs, B2, lt_c, B3, rt_l, B4, t_yr, B5, f_dr, B6, no_s, B7, cp_x, B8, k_ir, lt_c * rt_l * t_yr * f_dr, IF(OR(c_hs <= 0, lt_c < 0, lt_c >= 1, rt_l < 0, t_yr <= 0, f_dr <= 0, f_dr > 1, k_ir >= 1, no_s <= 0, cp_x <= 0), "Invalid Dev Pro-Forma", ROUND(no_s / (c_hs / (1 - k_ir)), 4)))` - **Formula (Development Yield Spread Over Market Exit Cap Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - B8, 4))` ### Real Estate JV Pari-Passu & Sponsor Promote Formula - **URL**: https://sheets.arte-soft.com/en/learn/real-estate-jv-pari-passu-preferred-hurdle-and-sponsor-promote-waterfall/ - **Summary**: Calculate LP and GP Sponsor Joint-Venture Equity Payouts and Effective MoICs under Pari-Passu Return of Capital & Preferred Hurdle followed by a Disproportionate Sponsor Promote Split. *Table — Distinguish Pari-Passu Co-Investment Return from Disproportionate Sponsor Promote!:* | CRE Joint Venture Metric ($20M Equity: 90% LP / 10% GP, 25% Cum Pref, 30% Tier-2 GP, W=$40M) | Formula | Verified Output | | --- | --- | --- | | Tier 1 Pari-Passu Pool ($M) | MIN(W_jv, E_tot * (1 + h_cum)) | $25.00M ($2.5M GP / $22.5M LP) | | Total GP Sponsor Distribution ($M) | w_gp * Tier1 + s_gp2 * MAX(0, W_jv - E_tot*(1+h)) | $7.00M ($3.00M Pure Promote) | | GP Sponsor Effective MoIC | GP_Total_Dist / (w_gp * E_tot) | 3.5000x (on $2.00M Co-Invest) | | LP Investor Effective MoIC | LP_Total_Dist / ((1 - w_gp) * E_tot) | 1.8333x (on $18.00M Equity) | - **Formula (GP Sponsor Total Distribution & Promote Lift Formula)**: `=LET(eq_t, B2, w_gp, B3, h_cm, B4, s_g2, B5, wd_j, B6, IF(OR(eq_t <= 0, w_gp <= 0, w_gp >= 1, h_cm < 0, s_g2 < w_gp, s_g2 >= 1, wd_j < 0), "Invalid JV Waterfall", LET(t1_pl, MIN(wd_j, eq_t * (1 + h_cm)), t2_pl, MAX(0, wd_j - eq_t * (1 + h_cm)), ROUND(w_gp * t1_pl + s_g2 * t2_pl, 2))))` - **Formula (GP vs LP Effective MoIC Asymmetry Check)**: `=IF(ISTEXT(E2), E2, ROUND((B6 - E2) / ((1 - B3) * B2), 4))` ### Real Estate Mezzanine Debt & Blended Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/real-estate-mezzanine-debt-blended-cost-of-capital-and-intercreditor-ltv/ - **Summary**: Calculate Combined Senior-plus-Mezzanine Loan-to-Value (CLTV), Blended Debt Coupon Rate, Combined Interest-Only DSCR, and Levered Cash-on-Cash Equity Yield. *Table — Price the marginal cost of stretching leverage from 60% Senior LTV to 75% CLTV with Mezzanine Debt!:* | Capital Stack Metric ($100M Asset, $8.25M NOI, 60%@6% Sen + 15%@12% Mezz) | Formula | Verified Output | | --- | --- | --- | | Combined Loan-to-Value (CLTV) | ltv_sen + ltv_mez | 0.7500 (75.00% Leverage) | | Blended Debt Interest Rate | (ltv_sen*r_sen + ltv_mez*r_mez) / CLTV | 0.0720 (7.20% Blended) | | Combined IO Debt Service Coverage | NOI / (V_prop * (ltv_sen*r_sen + ltv_mez*r_mez)) | 1.5278x DSCR | | Sponsor Cash-on-Cash Yield | (NOI - Total_Interest) / ((1 - CLTV) * V_prop) | 0.1140 (11.40%; 14.10% @ 7.5% Mezz) | - **Formula (Blended Debt Coupon & Combined IO DSCR Formula)**: `=LET(vl_p, B2, no_i, B3, lv_s, B4, rt_s, B5, lv_m, B6, rt_m, B7, cl_v, lv_s + lv_m, IF(OR(vl_p <= 0, no_i <= 0, lv_s <= 0, lv_m < 0, cl_v >= 1, rt_s <= 0, rt_m < 0), "Invalid Capital Stack", ROUND(no_i / (vl_p * (lv_s * rt_s + lv_m * rt_m)), 4)))` - **Formula (Levered Sponsor Cash-on-Cash Equity Yield Formula)**: `=LET(vl_p, B2, no_i, B3, lv_s, B4, rt_s, B5, lv_m, B6, rt_m, B7, cl_v, lv_s + lv_m, IF(ISTEXT(E4), E4, ROUND((no_i - vl_p * (lv_s * rt_s + lv_m * rt_m)) / (vl_p * (1 - cl_v)), 4)))` ### Rearrange and select table columns dynamically by header name (CHOOSECOLS + XMATCH) - **URL**: https://sheets.arte-soft.com/en/learn/rearrange-and-select-table-columns-by-header-name/ - **Summary**: Reshape messy CSV exports into your exact target column order—while dropping unwanted columns—by matching header names with XMATCH inside CHOOSECOLS. *Table — Stop manually cutting and pasting columns every time a vendor CSV changes order!:* | Raw CSV Order (A1:D1) | XMATCH Position | Target Clean View Order | | --- | --- | --- | | Col 4: "FullName" | XMATCH("FullName", A1:D1) = 4 | Output Col 1: FullName | | Col 3: "Dept" | XMATCH("Dept", A1:D1) = 3 | Output Col 2: Dept | | Col 1: "EmpID" | XMATCH("EmpID", A1:D1) = 1 | Output Col 3: EmpID (Col 2 Salary omitted!) | - **Formula (Reorder and subset columns by exact header label)**: `=CHOOSECOLS(A2:D4,XMATCH("FullName",A1:D1),XMATCH("Dept",A1:D1),XMATCH("EmpID",A1:D1))` - **Formula (Look up a single column dynamically by header name with XLOOKUP)**: `=XLOOKUP(F2,A1:D1,A2:D4)` ### Rectangular Waveguide TE10 Cutoff & Wavelength Formula - **URL**: https://sheets.arte-soft.com/en/learn/rectangular-microwave-waveguide-te10-cutoff-frequency-and-guide-wavelength/ - **Summary**: Calculate Dominant TE10 Cutoff Frequency fc (GHz), Free-Space Wavelength lambda0 (mm), Stretched Guide Wavelength lambda_g (mm), and TE10 Wave Impedance Z_TE (ohms). *Table — Inside a hollow metal waveguide, guide wavelength is LONGER than free-space wavelength—and phase velocity exceeds the speed of light!:* | WR-90 Rectangular Waveguide KPI (a=22.86 mm, b=10.16 mm @ f=10.0 GHz) | Formula | Verified Output | | --- | --- | --- | | Dominant TE10 Cutoff fc (GHz) | (299792458 / (2 * (a_mm / 1000))) / 1e9 | 6.557 GHz | | Free-Space Wavelength lambda0 (mm) | (299792458 / (Freq_GHz * 1e9)) * 1000 | 29.98 mm (41.64 mm @ 7.20 GHz) | | Stretched Guide Wavelength (mm) | lambda0_mm / SQRT(1 - ((fc / f)^2)) | 39.71 mm (100.81 mm near cutoff @ 7.2 GHz!) | | TE10 Wave Impedance Z_TE (ohms) | 376.730313 / SQRT(1 - ((fc / f)^2)) | 499.0 ohms (912.1 ohms @ 7.20 GHz!) | - **Formula (Single-Mode TE10 Waveguide Cutoff, Guide Wavelength & Wave Impedance Formula)**: `=LET(aw_m, B2 / 1000, bw_m, B3 / 1000, fq_g, B4, fc_g, (299792458 / (2 * aw_m)) / 1000000000, IF(OR(B3 <= 0, B2 <= B3, fq_g <= fc_g), "Invalid or Evanescent Below Cutoff", ROUND(376.730313 / SQRT(1 - ((fc_g / fq_g) ^ 2)), 1)))` - **Formula (Near-Cutoff 7.20 GHz Severe Dispersion & Impedance Surge Check (Set Frequency f B4 = 7.20 GHz))**: `=IF(ISTEXT(E5), E5, LET(fc_g, (299792458 / (2 * (B2 / 1000))) / 1000000000, lz_m, (299792458 / (B4 * 1000000000)) * 1000, ROUND(lz_m / SQRT(1 - ((fc_g / B4) ^ 2)), 2)))` ### Reddy-Doraiswamy Liquid Diffusivity Correlation (Two-Regime V_B / V_A) - **URL**: https://sheets.arte-soft.com/en/learn/reddy-doraiswamy-liquid-molecular-diffusivity-correlation/ - **Summary**: Estimate liquid molecular diffusivity D_AB = K * SQRT(M_B) * T / (μ_B * (V_A * V_B)^(1/3)) (× 10^-5 cm^2/s) with automatic K = 0.010 vs. 0.0085 volume-ratio switching! *Table — Eliminating Wilke-Chang’s guessed association factor φ via two-regime V_B / V_A switching!:* | Solute–Solvent Pair (298.15 K) | Volume Ratio V_B / V_A | Selected Constant K | Reddy-Doraiswamy D_AB (× 10^-5 cm²/s) | | --- | --- | --- | --- | | Organic Solute (VA=74.0) in Water (VB=18.7) | 0.2527 (<= 1.5) | 0.0100 | 1.276 × 10^-5 cm²/s | | Water (VA=18.7) in Benzene (VB=96.0) | 5.1337 (> 1.5) | 0.0085 | 3.072 × 10^-5 cm²/s | | Invalid T <= 0, μ_B <= 0, or V <= 0 | Undefined | Error Guard | "Invalid Diffusivity Inputs" | - **Formula (Reddy-Doraiswamy Liquid Diffusivity D_AB (× 10^-5 cm²/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Diffusivity Inputs", ROUND(IF(B6 / B5 <= 1.5, 0.01, 0.0085) * SQRT(B4) * B2 / (B3 * ((B5 * B6) ^ (1 / 3))), 3))` - **Formula (Solvent-to-Solute Molar Volume Ratio V_B / V_A)**: `=IF(OR(B5 <= 0, B6 <= 0), "Invalid Diffusivity Inputs", ROUND(B6 / B5, 4))` ### Redlich-Kwong Real-Gas Equation of State (Pressure & Deviation From Ideal) - **URL**: https://sheets.arte-soft.com/en/learn/redlich-kwong-cubic-equation-of-state-real-gas-pressure/ - **Summary**: Calculate real-gas cylinder & pipeline pressure P = (R*T)/(V_m - b) - a/(SQRT(T)*V_m*(V_m + b)) in MPa using Otto Redlich and Joseph Kwong’s temperature-dependent attractive term. *Table — Why Redlich & Kwong’s 1 / SQRT(T) cohesion term revolutionized chemical process simulation!:* | CO2 Compression State at T = 350 K (a = 6.46, b = 2.97e-5) | Ideal Pressure RT / Vm (MPa) | Redlich-Kwong Pressure (MPa) | Compressibility Factor Z | | --- | --- | --- | --- | | Supercritical Dense CO2 (Vm = 0.0005 m^3/mol) | 5.820 MPa | 4.884 MPa | 0.8391 (-16.1% Non-Ideal) | | Moderate Pipeline Gas (Vm = 0.0050 m^3/mol) | 0.582 MPa | 0.572 MPa | 0.9830 (Near-Ideal) | | Unphysical Compression (Vm <= b) | Hard-Sphere Singularity | "Molar Volume <= Covolume b" | Excluded-Volume Guard | - **Formula (Redlich-Kwong Real-Gas Pressure P (MPa))**: `=IF(OR(B2 <= 0, B3 <= B5, B4 < 0, B5 < 0), "Molar Volume <= Covolume b", ROUND((((8.31446 * B2) / (B3 - B5)) - (B4 / (SQRT(B2) * B3 * (B3 + B5)))) / 1000000, 3))` - **Formula (Dimensionless Real-Gas Compressibility Factor Z = (P * V_m) / (R * T))**: `=IF(OR(B2 <= 0, B3 <= B5, B4 < 0, B5 < 0), "Molar Volume <= Covolume b", ROUND(((((8.31446 * B2) / (B3 - B5)) - (B4 / (SQRT(B2) * B3 * (B3 + B5)))) * B3) / (8.31446 * B2), 4))` ### Calculate & Plot Regression Residuals: Predicted Y, Residual Error & Outlier Flag - **URL**: https://sheets.arte-soft.com/en/learn/regression-residual-plot-predicted-y-and-standardized-residual/ - **Summary**: Build a linear regression Residual Plot table without Analysis ToolPak: compute Predicted Y_hat = INTERCEPT + SLOPE * X, Signed Residual e_i = Y_i - Y_hat, and Regression Standard Error s_e = SQRT(SSE / (n - 2)). *Table — Why a high R^2 means nothing until a Residual Plot confirms random, homoscedastic scatter around zero!:* | Residual Diagnostic Quantity (n = 5 Calibration Points) | Worksheet Formula | Value & Diagnostic Check | | --- | --- | --- | | Predicted Response Y_hat at X_1 = 10 | =INTERCEPT($B$2:$B$6, $A$2:$A$6) + SLOPE($B$2:$B$6, $A$2:$A$6) * A2 | 24.40 | | Signed Residual e_1 = Y_1 - Y_hat,1 | =B2 - (INTERCEPT($B$2:$B$6, $A$2:$A$6) + SLOPE($B$2:$B$6, $A$2:$A$6) * A2) | +0.60 | | Sum of Residuals Across All Rows | =ROUND(SUM(C2:C6), 6) | 0.000000 (OLS Orthogonality Check!) | | Standard Error of Regression s_e (df = n - 2) | =SQRT(SUMPRODUCT(C2:C6, C2:C6) / (COUNT(A2:A6) - 2)) | 1.3038 | - **Formula (Signed Regression Residual e_1 = Y_1 - (INTERCEPT + SLOPE * X_1))**: `=IF(OR(COUNT(A2:A6) < 3, VARP(A2:A6) = 0), "Requires >= 3 Points with Distinct X", ROUND(B2 - (INTERCEPT($B$2:$B$6, $A$2:$A$6) + SLOPE($B$2:$B$6, $A$2:$A$6) * A2), 4))` - **Formula (Regression Residual Standard Error s_e = SQRT(SSE / (n - 2)))**: `=IF(COUNT(A2:A6) < 3, "Requires >= 3 Points", ROUND(SQRT(SUMPRODUCT(C2:C6, C2:C6) / (COUNT(A2:A6) - 2)), 4))` ### Reilly Retail Breaking-Point & Huff Gravity Formula - **URL**: https://sheets.arte-soft.com/en/learn/reilly-retail-gravitation-breaking-point-and-huff-patronage-formula/ - **Summary**: Delimit city trade-area boundaries via Converse-Reilly Breaking Point D_B = D_AB / (1 + SQRT(Pop_A / Pop_B)) and compute Huff (1964) probabilistic store patronage shares. *Table — Progress from hard retail trade-area borders (Reilly) to overlapping shopper probabilities (Huff)!:* | Spatial Retail Metric | Formula | Verified Output | | --- | --- | --- | | Reilly Breaking Point from Town B (D_B) | 30 / (1 + SQRT(360,000 / 90,000)) | 10.00 km (Metro A = 20.00 km) | | Flagship Store 1 Gravity Utility (U_1) | 60,000 / (4^2) | 3,750.00 | | Local Store 2 Gravity Utility (U_2) | 10,000 / (2^2) | 2,500.00 | | Huff Store 1 Patronage Share (P_1) | 3,750 / (3,750 + 2,500) | 0.6000 (60.00% Market Share) | - **Formula (Converse-Reilly Trade-Area Breaking Point Distance from B Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Gravity Input", ROUND(B4 / (1 + SQRT(B2 / B3)), 2))` - **Formula (Huff (1964) Probabilistic Store Patronage Capture Formula)**: `=LET(s_1, B5, d_1, B6, s_2, B7, d_2, B8, lm_d, B9, IF(OR(s_1 <= 0, d_1 <= 0, s_2 <= 0, d_2 <= 0, lm_d <= 0), "Invalid Gravity Input", LET(u_1, s_1 / (d_1 ^ lm_d), u_2, s_2 / (d_2 ^ lm_d), ROUND(u_1 / (u_1 + u_2), 4))))` ### Down-and-Out Barrier Call Formula and Knock-In/Knock-Out Parity - **URL**: https://sheets.arte-soft.com/en/learn/reiner-rubinstein-down-and-out-barrier-call-reflection-principle-formula/ - **Summary**: Price continuous zero-rebate Down-and-Out Calls (H < K, S > H) via the Merton / Reiner-Rubinstein reflection principle and verify exact Down-and-In + Down-and-Out = Vanilla parity. *Table — Enforce Knock-In + Knock-Out = Vanilla Call parity on every barrier sheet:* | Barrier Quantity (S=100, K=100, H=90) | Closed-Form Structure | Sample Output | | --- | --- | --- | | Vanilla Call Ceiling C_BSM | Standard European Call (H -> 0 limit) | 8.2600 | | Reflected Image Spot H^2 / S | 90^2 / 100 | 81.0000 | | Down-and-In Knock-In Call C_DIC | (H / S)^(2*lam_b - 2) * C_BSM(H^2 / S, K) | 1.1122 | | Down-and-Out Call C_DOC | C_BSM(S, K) - C_DIC (0 if S <= H) | 7.1478 (Parity sum = 8.2600) | - **Formula (Down-and-In Reflection Call C_DIC (H <= K) Formula)**: `=LET(s_px, B2, k_str, B3, h_bar, B4, r_rf, B5, q_div, B6, sig_v, B7, t_yr, B8, IF(OR(h_bar <= 0, h_bar > k_str, sig_v <= 0, t_yr <= 0), "Require 0 < H <= K", IF(s_px <= h_bar, "Already Knocked In", LET(mu_b, (r_rf - q_div - 0.5 * sig_v^2) / (sig_v^2), s_img, (h_bar^2) / s_px, sig_t, sig_v * SQRT(t_yr), y_1, (LN(s_img / k_str) + (r_rf - q_div + 0.5 * sig_v^2) * t_yr) / sig_t, y_2, y_1 - sig_t, u_1, 1 / (1 + 0.2316419 * ABS(y_1)), ph_1, 0.3989422804014327 * EXP(-0.5 * y_1^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), ny_1, IF(y_1 >= 0, 1 - ph_1, ph_1), u_2, 1 / (1 + 0.2316419 * ABS(y_2)), ph_2, 0.3989422804014327 * EXP(-0.5 * y_2^2) * u_2 * (0.31938153 + u_2 * (-0.356563782 + u_2 * (1.781477937 + u_2 * (-1.821255978 + 1.330274429 * u_2)))), ny_2, IF(y_2 >= 0, 1 - ph_2, ph_2), c_img, s_img * EXP(-q_div * t_yr) * ny_1 - k_str * EXP(-r_rf * t_yr) * ny_2, ROUND(((h_bar / s_px)^(2 * mu_b)) * c_img, 4)))))` - **Formula (Down-and-Out Call Value C_DOC Formula & Knock-Out Check)**: `=IF(OR(B4 <= 0, B4 > B3, B7 <= 0, B8 <= 0), "Require 0 < H <= K", IF(B2 <= B4, 0, ROUND(E2 - E3, 4)))` ### Reject Invalid Dates & Impossible Leap Days (Round-Trip DATE Year/Month/Day Audit) - **URL**: https://sheets.arte-soft.com/en/learn/reject-invalid-dates-strict-iso-text-and-leap-day-validation/ - **Summary**: Catch impossible imported date strings like "2026-02-29" or "2026-13-05" that DATE(y, m, d) would otherwise roll silently into the next month. *Table — Why DATE(2026, 2, 29) silently rolls forward instead of raising an error:* | Raw Input String | DATE(yr, mo, dy) Serial | Round-Trip Y/M/D Match? | Verdict | | --- | --- | --- | --- | | "2026-10-31" | 2026-10-31 | TRUE | Valid calendar date | | "2024-02-29" | 2024-02-29 | TRUE | Valid leap-year date | | "2026-02-29" | Rolls to 2026-03-01 | FALSE (Month 3 <> 2) | Rejected non-leap Feb 29 | | "2026-13-05" | Rolls to 2027-01-05 | FALSE (Year 2027 <> 2026) | Rejected month > 12 | - **Formula (Dual Serial-Bound & ISO Text Round-Trip Validation Formula)**: `=IF(ISNUMBER(A2), AND(A2 >= DATE(2020, 1, 1), A2 <= DATE(2035, 12, 31)), LET(raw_s, TRIM(A2), yr, VALUE(LEFT(raw_s, 4)), mo, VALUE(MID(raw_s, 6, 2)), dy, VALUE(RIGHT(raw_s, 2)), dt, DATE(yr, mo, dy), IFERROR(AND(LEN(raw_s) = 10, MID(raw_s, 5, 1) = "-", MID(raw_s, 8, 1) = "-", YEAR(dt) = yr, MONTH(dt) = mo, DAY(dt) = dy, dt >= DATE(2020, 1, 1), dt <= DATE(2035, 12, 31)), FALSE)))` - **Formula (Count Rejected Date Entries Across an Import Batch)**: `=COUNTIF(B2:B6, FALSE)` ### Frequency distribution table: Bin Count, Relative %, and Cumulative % - **URL**: https://sheets.arte-soft.com/en/learn/relative-and-cumulative-frequency-distribution/ - **Summary**: Group numeric scores into custom bins with COUNTIFS and calculate Relative Frequency % and Cumulative Frequency % without legacy array entry. *Table — Count explicit inclusive frequency bins:* | Bin Min (C) | Bin Max (D) | Count (E) | Relative % | Cumulative % | | --- | --- | --- | --- | --- | | 0 | 59 | 1 | 12.5% | 12.5% | | 60 | 69 | 2 | 25.0% | 37.5% | | 70 | 79 | 2 | 25.0% | 62.5% | | 80 | 100 | 3 | 37.5% | 100.0% (Total = 8) | - **Formula (Bin count, relative share, and cumulative share formulas)**: `=COUNTIFS($A$2:$A$9, ">=" & C4, $A$2:$A$9, "<=" & D4)` - **Formula (Cumulative percentage through current bin)**: `=ROUND(SUM($E$2:E4) / SUM($E$2:$E$5), 4)` - **Formula (Additional worked calculation)**: `=ROUND(E5 / SUM($E$2:$E$5), 4)` - **Formula (Additional worked calculation)**: `=ROUND(SUM($E$2:E5) / SUM($E$2:$E$5), 4)` ### Relative PPP & Real Exchange Rate Misalignment Formula - **URL**: https://sheets.arte-soft.com/en/learn/relative-purchasing-power-parity-ppp-and-real-fx-misalignment/ - **Summary**: Calculate Gustav Cassel’s Relative Purchasing Power Parity benchmark rate S_PPP = S_0 * (P_dom,t / P_dom,0) / (P_for,t / P_for,0), Real Exchange Rate index q_t, and bilateral FX misalignment. *Table — Avoid linear inflation-subtraction errors and reciprocal FX sign inversions!:* | FX PPP Valuation Metric (S_0=1.20, CPI_d=132, CPI_f=110, S_t=1.512) | Formula | Verified Output | | --- | --- | --- | | Relative PPP Fair Value Spot (S_PPP) | S_0 * (CPI_dom / CPI_for) | 1.4400 LCU/FCU | | Real Exchange Rate Index (q_t, Base=1.00) | S_t / S_PPP | 1.0500 | | Foreign Currency Real Valuation ((S_t/S_PPP)-1) | (S_t - S_PPP) / S_PPP | +0.0500 (+5.00% Overvalued) | | Domestic Currency Real Valuation ((S_PPP/S_t)-1) | (S_PPP / S_t) - 1 | -0.0476 (-4.76% Undervalued) | - **Formula (Exact Relative PPP Fair-Value Exchange Rate Formula)**: `=LET(s_bs, B2, cp_dm, B3, cp_fr, B4, IF(OR(s_bs <= 0, cp_dm <= 0, cp_fr <= 0), "Invalid FX PPP Input", ROUND(s_bs * (cp_dm / cp_fr), 4)))` - **Formula (Domestic Currency Real Misalignment Ratio Formula)**: `=IF(OR(ISTEXT(E2), B5 <= 0), "Invalid FX PPP Input", ROUND((E2 / B5) - 1, 4))` ### Relative Risk (RR), Odds Ratio (OR), ARR & Number Needed to Treat (NNT) - **URL**: https://sheets.arte-soft.com/en/learn/relative-risk-odds-ratio-nnt-and-absolute-risk-reduction/ - **Summary**: Compare fictional adverse-event counts over the same follow-up period using risk ratio, odds ratio, absolute risk reduction and a benefit-only NNT estimate. *Table — Define the event, population and follow-up before comparing risks:* | Epidemiology Effect Measure | Formula | Trial Data (12/200 Treated vs 30/200 Control) | Null Effect (30/200 vs 30/200) | | --- | --- | --- | --- | | Relative Risk (RR) | (B2/(B2+B3)) / (B4/(B4+B5)) | 0.06 / 0.15 = 0.4000 (60% RRR) | 1.0000 (No difference) | | Cross-Product Odds Ratio (OR) | (B2 * B5) / (B3 * B4) | 2,040 / 5,640 = 0.3617 | 1.0000 | | Absolute Risk Reduction (ARR) | (B4/(B4+B5)) - (B2/(B2+B3)) | 0.15 - 0.06 = 0.0900 (9.0% pts) | 0.0000 | | Number Needed to Treat (NNT) | CEILING.MATH(1 / ARR, 1) | CEILING(11.11, 1) = 12 patients | No benefit (no finite benefit NNT) | - **Formula (Risk ratio for comparable trial or cohort groups)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0,B4=0),"Not estimable",ROUND((B2/(B2+B3))/(B4/(B4+B5)),4))))` - **Formula (Benefit-only number needed to treat)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0),"Not estimable",IF(B4/(B4+B5)-B2/(B2+B3)<=0,"No benefit",CEILING.MATH(1/(B4/(B4+B5)-B2/(B2+B3)),1)))))` - **Formula (Odds ratio)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0,B3=0,B4=0),"Not estimable",ROUND((B2*B5)/(B3*B4),4))))` - **Formula (Absolute risk reduction)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",IF(OR(B2+B3=0,B4+B5=0),"Not estimable",B4/(B4+B5)-B2/(B2+B3))))` ### Relative Row & Column Numbers, First & Last Row in Range (ROW / ROWS) - **URL**: https://sheets.arte-soft.com/en/learn/relative-row-and-column-numbers-in-range-row-column/ - **Summary**: Convert absolute worksheet coordinates into 1-based relative table positions ROW(B5) - ROW($B$3) + 1 and calculate first/last row and column boundaries of any range. *Table — Convert worksheet coordinates into table positions:* | Range Geometry Metric (Block B3:D6) | Formula | Evaluated Result | | --- | --- | --- | | 1-Based Relative Row of B5 | ROW(B5) - ROW($B$3) + 1 | 5 - 3 + 1 = 3 (3rd table row) | | 1-Based Relative Col of D5 | COLUMN(D5) - COLUMN($B$3) + 1 | 4 - 2 + 1 = 3 (3rd table col) | | Last Worksheet Row of B3:D6 | ROW(B3) + ROWS(B3:D6) - 1 | 3 + 4 - 1 = 6 | | Dynamic Cell at Relative (B5, D5) | INDEX(B3:D6, RelRow, RelCol) | Returns D5 (480) | - **Formula (1-Based Relative Row & Column Position Inside an Offset Range)**: `=ROW(B5) - ROW($B$3) + 1` - **Formula (Retrieve the value at relative row 3, column 3)**: `=INDEX(B3:D6, ROW(B5) - ROW($B$3) + 1, COLUMN(D5) - COLUMN($B$3) + 1)` - **Formula (Relative column of D5)**: `=COLUMN(D5)-COLUMN($B$3)+1` - **Formula (First worksheet row)**: `=ROW(B3)` - **Formula (Last worksheet row)**: `=ROW(B3)+ROWS(B3:D6)-1` - **Formula (First worksheet column)**: `=COLUMN(B3)` - **Formula (Last worksheet column)**: `=COLUMN(B3)+COLUMNS(B3:D6)-1` ### Remove blank rows from a range dynamically with FILTER (all-blank vs key-blank) - **URL**: https://sheets.arte-soft.com/en/learn/remove-blank-rows-from-table-filter/ - **Summary**: Compact messy CSV exports by stripping completely empty spacer rows while keeping partially filled records intact. *Table — Critical distinction: removing ALL-blank spacer rows vs missing-ID rows:* | OrderID (A) | Client (B) | Amount (C) | All-Blank Filter | Strict Key Filter (A<>"") | | --- | --- | --- | --- | --- | | ORD-101 | Acme | $450 | Kept | Kept | | (blank) | (blank) | (blank) | Removed (100% empty) | Removed | | (blank) | Bank Fee | $25 | Kept (B & C non-empty!) | Dropped (No OrderID) | | ORD-102 | Globex | $800 | Kept | Kept | - **Formula (Count rows with at least one populated field)**: `=SUMPRODUCT(((((A2:A5<>"")+ISNUMBER(A2:A5))+((B2:B5<>"")+ISNUMBER(B2:B5))+((C2:C5<>"")+ISNUMBER(C2:C5)))>0)*1)` - **Formula (Count rows with a populated OrderID)**: `=SUMPRODUCT((((A2:A5<>"")+ISNUMBER(A2:A5))>0)*1)` - **Formula (Display the compact table)**: `=FILTER(A2:C5,(((A2:A5<>"")+ISNUMBER(A2:A5))+((B2:B5<>"")+ISNUMBER(B2:B5))+((C2:C5<>"")+ISNUMBER(C2:C5)))>0,"No populated rows")` ### Remove Text Between Variable Delimiter Positions (REPLACE & FIND) - **URL**: https://sheets.arte-soft.com/en/learn/remove-characters-by-variable-start-and-length-replace/ - **Summary**: Excise variable-length middle segments—such as bracketed revision tags "[REV-204B]" or internal cost codes—regardless of length by feeding FIND start and end positions into REPLACE(text, start, end - start + 1, ""). *Table — Surgically cut out variable-length middle tags when SUBSTITUTE cannot match fixed text!:* | Raw Catalog Description (B2) | Start s = FIND("[") & End e = FIND("]") | Excised Span (e - s + 1) | Cleaned Output | | --- | --- | --- | --- | | "Pump Assembly [REV-204B] Stainless" | s = 15, e = 24 | 10 chars removed | "Pump Assembly Stainless" | | "Valve Kit [QA-HOLD-99812] Brass" | s = 11, e = 25 | 15 chars removed | "Valve Kit Brass" | | "Gasket Ring Viton" (No Brackets) | FIND Error -> IFERROR Fallback | 0 chars removed | "Gasket Ring Viton" | - **Formula (Remove Variable-Length Bracketed Tag & Normalize Spaces)**: `=IFERROR(TRIM(REPLACE(B2, FIND("[", B2), FIND("]", B2, FIND("[", B2)) - FIND("[", B2) + 1, "")), TRIM(B2))` - **Formula (Count Exact Number of Excised Tag Characters (e - s + 1))**: `=IFERROR(FIND("]", B2, FIND("[", B2)) - FIND("[", B2) + 1, 0)` ### Remove file extension from a filename (multi-dot safe) - **URL**: https://sheets.arte-soft.com/en/learn/remove-file-extension-or-extract-filetype/ - **Summary**: Search from the end of a filename with instance_num = -1 in TEXTBEFORE and TEXTAFTER so version dots like .v2.final stay intact. *Table — Why splitting on the first dot corrupts versioned filenames:* | Filename (A) | Base Stem (instance -1) | Extension (instance -1) | Broken 1st-Dot Stem | | --- | --- | --- | --- | | quarterly.forecast.v2.xlsx | quarterly.forecast.v2 | xlsx | quarterly | | Makefile | Makefile | "" | #N/A (without IFERROR) | - **Formula (Multi-dot filename stem and extension formulas)**: `=IFERROR(TEXTBEFORE(A2, ".", -1), A2)` - **Formula (Extract normalized lowercase file extension)**: `=LOWER(IFERROR(TEXTAFTER(A2, ".", -1), ""))` ### Remove the First Character or Strip the Last Word from Text Strings Safely - **URL**: https://sheets.arte-soft.com/en/learn/remove-first-character-or-remove-last-word-from-text-strings/ - **Summary**: Trim leading symbol prefixes ("#INV-408" -> "INV-408") and strip trailing titles/units ("Elena Petrova PhD" -> "Elena Petrova") without #VALUE! errors on single-character or single-word cells. *Table — Guarding empty/short strings and locating the final space with Nth SUBSTITUTE:* | Operation | Input String | Cleaned Output | | --- | --- | --- | | Remove 1st char | "#ORD-904" | "ORD-904" | | Remove 1st char (1-char input) | "#" | "" (No #VALUE!) | | Remove last word | " Elena Petrova PhD " | "Elena Petrova" | | Remove last word (1-word input) | "Sofia" | "Sofia" (Single-word safe) | - **Formula (Error-Proof Strip First Character Formula)**: `=IF(ISBLANK(A2), "", MID(A2, 2, LEN(A2)))` - **Formula (Remove Last Word Formula (Single-Word Safe))**: `=LET(txt, TRIM(B2), spCnt, LEN(txt) - LEN(SUBSTITUTE(txt, " ", "")), IF(spCnt = 0, txt, LEFT(txt, FIND("|", SUBSTITUTE(txt, " ", "|", spCnt)) - 1)))` ### Remove first N or last N characters from a cell - **URL**: https://sheets.arte-soft.com/en/learn/remove-first-or-last-n-characters/ - **Summary**: Strip fixed-width prefixes, suffixes, or both from product codes safely without #VALUE! errors on short strings. *Table — Prevent #VALUE! when trimming short or blank cells:* | Code (A) | DropLeft (B) | DropRight (C) | Drop First 3 | Drop Last 3 | Drop Both | | --- | --- | --- | --- | --- | --- | | ID-90452-US | 3 | 3 | 90452-US | ID-90452 | 90452 | | AB | 3 | 3 | "" | "" | "" | - **Formula (Remove first N, last N, or both ends simultaneously)**: `=RIGHT(A2, MAX(0, LEN(A2) - B2))` - **Formula (Remove last N characters from the right)**: `=LEFT(A2, MAX(0, LEN(A2) - C2))` ### Remove leading zeros from numbers and alphanumeric codes ("000408-B" -> "408-B") - **URL**: https://sheets.arte-soft.com/en/learn/remove-leading-zeros-from-alphanumeric-text/ - **Summary**: Convert zero-padded numeric text with VALUE or strip only leading zeros from alphanumeric SKUs while preserving internal zeros. *Table — Why VALUE() fails on "000408-B" and SUBSTITUTE("0","") breaks "408":* | RawCode (A) | VALUE(A) (Pure Digits) | Alphanumeric Leading-Zero Strip | | --- | --- | --- | | 000408-B | #VALUE! | 408-B (internal 0 preserved!) | | 000408 | 408 (number) | 408 (text) | | 0000 | 0 | 0 | - **Formula (Alphanumeric-safe and numeric leading-zero formulas)**: `=IF(A2="", "", LET(tok, IFERROR(INDEX(TEXTSPLIT(A2, "0", , TRUE), 1, 1), ""), IF(tok="", "0", MID(A2, FIND(tok, A2), LEN(A2)))))` - **Formula (Pure-digit text to real number)**: `=IFERROR(VALUE(A2), A2)` ### Create a project-specific URL matching key - **URL**: https://sheets.arte-soft.com/en/learn/remove-protocol-and-trailing-slash-from-url/ - **Summary**: Build a simplified host/path comparison key only where your project explicitly treats these URL variants as equivalent. *Table — Define equivalence before normalizing URL exports:* | Raw URL (A) | Normalized Canonical Key | | --- | --- | | https://www.arte-soft.com/pricing/ | arte-soft.com/pricing | | http://arte-soft.com/ | arte-soft.com | | arte-soft.com/docs/sumifs | arte-soft.com/docs/sumifs | - **Formula (Illustrative matching-key formula)**: `=LET(u, LOWER(TRIM(A2)), p, IFERROR(TEXTAFTER(u, "://"), u), w, IF(LEFT(p, 4)="www.", MID(p, 5, LEN(p)), p), IF(RIGHT(w, 1)="/", LEFT(w, LEN(w)-1), w))` - **Formula (Remove only trailing slash while keeping protocol)**: `=LET(u, TRIM(A2), IF(RIGHT(u, 1)="/", LEFT(u, LEN(u)-1), u))` ### Remove special characters from text (and generate clean URL slugs) - **URL**: https://sheets.arte-soft.com/en/learn/remove-special-characters-and-slugify-text/ - **Summary**: Strip punctuation symbols in a single pass or convert product titles into hyphenated URL slugs using TEXTSPLIT array delimiters and TEXTJOIN. *Table — Split on an explicit delimiter list:* | RawInput (A) | Selected Symbols Removed | Hyphenated URL Slug | | --- | --- | --- | | SKU#48/20 (Rev_B) | SKU4820RevB | sku-48-20-rev-b | | Pro Plan: Annual, Tier 1 | ProPlanAnnualTier1 | pro-plan-annual-tier-1 | - **Formula (URL slug and symbol-stripping formulas)**: `=LOWER(TEXTJOIN("-", TRUE, TEXTSPLIT(A2, {"#","/","(",")","_"," ",",",":"})))` - **Formula (Strip symbols without separators)**: `=TEXTJOIN("", TRUE, TEXTSPLIT(A2, {"#","/","(",")","_"," ",",",":"}))` ### Remove Time from Datetime Serials (INT, TRUNC & Pure-Date Matching) - **URL**: https://sheets.arte-soft.com/en/learn/remove-time-from-datetime-serial-int-trunc-date-match/ - **Summary**: Remove the time fraction from positive spreadsheet datetime serials, extract time of day, and sum a calendar day using an inclusive start and exclusive next-midnight boundary. - **Formula (Extract the date with INT)**: `=IF(NOT(ISNUMBER(B3)),"Enter numeric timestamp",IF(OR(B3<1,B3>=2958466),"Timestamp outside exercise range",INT(B3)))` - **Formula (Compare TRUNC and INT)**: `=IF(NOT(ISNUMBER(B3)),"Enter numeric timestamp",IF(OR(B3<1,B3>=2958466),"Timestamp outside exercise range",TRUNC(B3)))` - **Formula (Extract the time fraction)**: `=IF(NOT(ISNUMBER(B3)),"Enter numeric timestamp",IF(OR(B3<1,B3>=2958466),"Timestamp outside exercise range",MOD(B3,1)))` - **Formula (Sum an entire calendar day with a half-open interval)**: `=IF(NOT(ISNUMBER(E2)),"Enter numeric target date",IF(OR(E2<1,E2>2958465,E2<>INT(E2)),"Target must be a whole date",IF(COUNT(B2:C5)<>8,"Check timestamp and amount inputs",IF(OR(MIN(B2:B5)<1,MAX(B2:B5)>=2958466),"Timestamp outside exercise range",SUMIFS(C2:C5,B2:B5,">="&E2,B2:B5,"<"&(E2+1))))))` ### Remove Trailing Slash from URLs for Canonical SEO & Lookup Deduplication - **URL**: https://sheets.arte-soft.com/en/learn/remove-trailing-slash-from-url-canonical-path-normalization/ - **Summary**: Normalize exported sitemap and analytics URLs by trimming spaces and stripping trailing slashes without corrupting bare protocol prefixes or already clean URLs. *Table — Preventing duplicate URL rows in SEO & analytics joins:* | Input URL | RIGHT(TRIM(u), 1) | Normalized Canonical URL | | --- | --- | --- | | https://arte-soft.com/pricing/ | "/" | https://arte-soft.com/pricing | | https://arte-soft.com/pricing | "g" | https://arte-soft.com/pricing | | https://arte-soft.com/ | "/" | https://arte-soft.com | | https://arte-soft.com/docs?v=2 | "2" | https://arte-soft.com/docs?v=2 | - **Formula (Strip Single Trailing Slash After TRIM)**: `=LET(cleanUrl, TRIM(A2), IF(AND(LEN(cleanUrl) > 8, RIGHT(cleanUrl, 1) = "/"), LEFT(cleanUrl, LEN(cleanUrl) - 1), cleanUrl))` - **Formula (Confirm Canonical Match Between Two URL Variants)**: `=COUNTIF(B2:B5, B2)` ### Renewable Tax-Equity Partnership Flip PTC & Cash Formula - **URL**: https://sheets.arte-soft.com/en/learn/renewable-tax-equity-partnership-flip-macrs-ptc-allocation-and-buyout/ - **Summary**: Calculate Utility-Scale Renewable Tax-Equity Partnership Flip Gross Production Tax Credits ($M), Pre-Flip 99% Investor Tax Benefit ($M), and Post-Flip 5% Safe-Harbor Residual Cash Split ($M). *Table — Respect Rev. Proc. 2007-65 safe-harbor bounds: >=1% pre-flip sponsor share and >=5% post-flip investor floor!:* | Partnership Flip Metric (500 GWh, $28/MWh PTC, $24M MACRS, 99%/5% Flip) | Formula | Verified Output | | --- | --- | --- | | Gross Annual PTC Generated ($M) | (Net_GWh * 1000 * PTC_Per_MWh) / 10^6 | $14.00M ($11.20M @ 400 GWh) | | Pre-Flip Investor Tax Benefit ($M) | Pre_Flip_Share * (Gross_PTC + MACRS * Tax_Rate) | $19.80M ($17.03M @ 400 GWh) | | Post-Flip Investor 5% Cash ($M) | 0.05 * Post_Flip_Distributable_Cash | $0.90M | | Post-Flip Sponsor 95% Cash ($M) | 0.95 * Post_Flip_Distributable_Cash | $17.10M | - **Formula (Safe-Harbor Pre-Flip Tax Benefit Allocation Formula)**: `=LET(gn_g, B2, pt_r, B3, mc_d, B4, tx_r, B5, pf_s, B6, cf_p, B7, IF(OR(gn_g <= 0, pt_r < 0, mc_d < 0, tx_r <= 0, tx_r >= 0.55, pf_s < 0.5, pf_s > 0.99, cf_p < 0), "Invalid Partnership Flip Input", LET(pt_m, gn_g * pt_r / 1000, sh_m, mc_d * tx_r, ROUND(pf_s * (pt_m + sh_m), 2))))` - **Formula (P90 Low-Wind Generation Flip-Delay Stress Check (Set Generation = 400 GWh))**: `=IF(ISTEXT(E3), E3, ROUND(0.95 * B7, 2))` ### Repeat a payment every 3 months (or N months) in a monthly financial model - **URL**: https://sheets.arte-soft.com/en/learn/repeat-quarterly-or-every-n-months-schedule-mod/ - **Summary**: Build a monthly schedule that includes the start month and repeats an illustrative payment every positive whole number of months. *Table — Model quarterly and semiannual bills cleanly inside a monthly FP&A timeline:* | Timeline Month (A) | Elapsed Months m (vs. Feb 2026) | MOD(m, 3) = 0? | Scheduled Cash Outflow | | --- | --- | --- | --- | | 2026-01-01 (Before start) | m = -1 (< 0) | Blocked (m < 0) | $0 | | 2026-02-01 (Start month) | m = 0 | MOD(0, 3) = 0 -> Yes! | $4,500 | | 2026-03-01 & 2026-04-01 | m = 1, 2 | No | $0 | | 2026-05-01 (+3 months) | m = 3 | MOD(3, 3) = 0 -> Yes! | $4,500 | - **Formula (Trigger fixed payment every N months on or after contract start)**: `=IF(OR(NOT(ISNUMBER(A2)),NOT(ISNUMBER($D$2)),COUNT($E$2:$F$2)<>2,$E$2<=0,$E$2<>INT($E$2),$F$2<0),"Invalid inputs",LET(m, (YEAR(A2) - YEAR($D$2)) * 12 + MONTH(A2) - MONTH($D$2), IF((m >= 0) * (MOD(m, $E$2) = 0) = 1, $F$2, 0)))` - **Formula (Total scheduled cash outflows over the 6-month window)**: `=IF(COUNT(B2:B7)<>6,"Invalid schedule",SUM(B2:B7))` ### Repeat a compacted list cyclically with INDEX, FILTER and MOD - **URL**: https://sheets.arte-soft.com/en/learn/repeat-range-of-values-cyclically-index-mod/ - **Summary**: Skip gaps and empty-string entries, then cycle through the remaining list with a validated positive step number. *Table — Generate endless round-robin shift & lead assignments with zero manual copy-paste!:* | Day / Lead # (C) | MOD(C - 1, 3) + 1 | Assigned Rotation Item | | --- | --- | --- | | 1 | MOD(0, 3) + 1 = 1 | "Day" (Item 1) | | 2 | MOD(1, 3) + 1 = 2 | "Swing" (Item 2) | | 3 | MOD(2, 3) + 1 = 3 | "Night" (Item 3) | | 4 (Cycle wraps!) | MOD(3, 3) + 1 = 1 | "Day" (Back to Item 1!) | | 5 | MOD(4, 3) + 1 = 2 | "Swing" (Item 2) | - **Formula (Round-robin cyclic lookup for 1-based step number C2)**: `=IF(COUNT(C2)<>1,"Invalid inputs",IF(OR(C2<1,C2<>INT(C2)),"Invalid inputs",IF(SUM(VSTACK(1-COUNTBLANK($A$2),1-COUNTBLANK($A$3),1-COUNTBLANK($A$4),1-COUNTBLANK($A$5)))=0,"No items",INDEX(FILTER($A$2:$A$5,VSTACK(1-COUNTBLANK($A$2),1-COUNTBLANK($A$3),1-COUNTBLANK($A$4),1-COUNTBLANK($A$5))),MOD(C2-1,SUM(VSTACK(1-COUNTBLANK($A$2),1-COUNTBLANK($A$3),1-COUNTBLANK($A$4),1-COUNTBLANK($A$5))))+1))))` - **Formula (Track which full cycle / rotation round a row belongs to)**: `=IF(COUNT(C2)<>1,"Invalid inputs",IF(OR(C2<1,C2<>INT(C2)),"Invalid inputs",IF(SUM(VSTACK(1-COUNTBLANK($A$2),1-COUNTBLANK($A$3),1-COUNTBLANK($A$4),1-COUNTBLANK($A$5)))=0,"No items",QUOTIENT(C2-1,SUM(VSTACK(1-COUNTBLANK($A$2),1-COUNTBLANK($A$3),1-COUNTBLANK($A$4),1-COUNTBLANK($A$5))))+1)))` ### Repeat a 1..N number sequence & round-robin assign leads from a list (MOD & INDEX) - **URL**: https://sheets.arte-soft.com/en/learn/repeat-sequence-and-cycle-list-of-items-mod/ - **Summary**: Cycle through non-empty names in a fixed roster range. Learn how roster changes affect calculated assignments. *Table — Round-robin assignment from a bounded roster:* | Ticket Zero-Idx (A) | Cycle Number (1..3) | Assigned Rep =INDEX(Roster, Cycle) | Roster Size Change | | --- | --- | --- | --- | | 0 (Ticket #1) | 1 | Ana | 1st rep | | 1 (Ticket #2) | 2 | Ben | 2nd rep | | 2 (Ticket #3) | 3 | Cam | 3rd rep | | 3 (Ticket #4) | 1 (Wraps!) | Ana (or Dan if 4th rep added!) | Automatic wraparound | - **Formula (Skip empty roster slots before indexing)**: `=IF(COUNTA($E$2:$E$5)=0,"No active reps",IF(OR(NOT(ISNUMBER(A5)),A5<0,A5<>INT(A5)),"Invalid index",LET(roster,FILTER($E$2:$E$5,$E$2:$E$5<>""),INDEX(roster,MOD(A5,ROWS(roster))+1))))` - **Formula (Generate repeating 1..K numeric cycle (1, 2, 3, 1, 2, 3...))**: `=MOD(A5, COUNTA($E$2:$E$5)) + 1` ### Replace DAVERAGE, DMAX, DMIN, and DSTDEV Criteria Ranges With Dynamic FILTER Formulas - **URL**: https://sheets.arte-soft.com/en/learn/replace-daverage-dmax-dmin-dstdev-database-functions-with-filter/ - **Summary**: Eliminate fragile multi-row database criteria blocks by pairing FILTER, AVERAGEIFS, MAXIFS, MINIFS, and STDEV_S with direct cell-referenced criteria. *Table — Why legacy D-functions break in multi-row summary tables:* | Legacy Database Function | Modern Inline Replacement | EU + Prod Result | | --- | --- | --- | | DAVERAGE(db, "Duration_Sec", crit) | =AVERAGEIFS(C2:C7, A2:A7, F2, B2:B7, G2) | 160 | | DMAX(db, "Duration_Sec", crit) | =MAXIFS(C2:C7, A2:A7, F2, B2:B7, G2) | 210 | | DMIN(db, "Duration_Sec", crit) | =MINIFS(C2:C7, A2:A7, F2, B2:B7, G2) | 120 | | DSTDEV(db, "Duration_Sec", crit) | =ROUND(STDEV_S(FILTER(C2:C7, D2:D7)), 4) | 45.8258 | | DVAR(db, "Duration_Sec", crit) | =VAR_S(FILTER(C2:C7, D2:D7)) | 2100 | - **Formula (Inline Conditional Mean & Dispersion (DAVERAGE & DSTDEV Replacements))**: `=ROUND(STDEV_S(FILTER(C2:C7, D2:D7)), 4)` - **Formula (Multi-Criteria Conditional Mean, Minimum, and Maximum)**: `=AVERAGEIFS(C2:C7, A2:A7, F2, B2:B7, G2)` ### Substitute multiple values at once: template placeholders and mixed delimiters - **URL**: https://sheets.arte-soft.com/en/learn/replace-multiple-delimiters-or-tokens-nested-substitute/ - **Summary**: Replace Name and Plan placeholders sequentially, or normalize the example’s mixed separators. *Table — Readable multi-token replacement with LET vs array delimiter normalization:* | Messy Input | Formula Pattern | Clean Standardized Output | | --- | --- | --- | | "Hi {{Name}}, your {{Plan}} tier is active." | LET + chained SUBSTITUTE | "Hi Elena, your Pro tier is active." | | "SQL; Python \| Excel / R" | TEXTJOIN + multi-delim TEXTSPLIT | "SQL, Python, Excel, R" | - **Formula (Multi-placeholder LET + SUBSTITUTE and delimiter-cleanup formulas)**: `=LET(nameReplaced, SUBSTITUTE(A2, "{{Name}}", B2), planReplaced, SUBSTITUTE(nameReplaced, "{{Plan}}", C2), planReplaced)` - **Formula (Normalize mixed semicolons, pipes, and slashes into ", ")**: `=TRIM(TEXTJOIN(", ", TRUE, TEXTSPLIT(D2, {"; ",";"," | ","|"," / ","/",", ",","}, , TRUE)))` ### Replace Inconsistent Delimiters with a Clean Standard Separator (SUBSTITUTE) - **URL**: https://sheets.arte-soft.com/en/learn/replace-one-delimiter-with-another-cleanly-substitute/ - **Summary**: Normalize mixed semicolon, comma, and optional-space delimiters into a consistent pipe or CSV separator using nested SUBSTITUTE and TRIM without double spaces. *Table — Collapse optional spaces around old delimiters before inserting the new one:* | Raw Input String | After Collapsing "; " -> ";" | Final Output (" \| ") | | --- | --- | --- | | SKU-10; SKU-20;SKU-30 | SKU-10;SKU-20;SKU-30 | SKU-10 \| SKU-20 \| SKU-30 | | EU-West; US-East; APAC | EU-West;US-East;APAC | EU-West \| US-East \| APAC | - **Formula (Normalized Delimiter Replacement Formula)**: `=IF(OR(ISBLANK(B2), ISBLANK(B3)), B2, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TRIM(B2), " " & B3, B3), B3 & " ", B3), B3, B4))` - **Formula (Delimited Item Count via Character-Length Difference)**: `=IF(LEN(TRIM(B2)) = 0, 0, LEN(B2) - LEN(SUBSTITUTE(B2, B3, "")) + 1)` ### Repo Collateral Haircut, ACT/360 Interest & Leverage Formula - **URL**: https://sheets.arte-soft.com/en/learn/repo-collateral-haircut-cash-proceeds-and-actual-360-repurchase-price/ - **Summary**: Calculate Securities Repurchase Agreement (Repo) Purchase Cash Lent After Haircut on Dirty Collateral Value, ACT/360 Repo Interest ($M), Term Repurchase Price ($M), and Implied Collateral Leverage Multiple (1 / Haircut). *Table — Apply repo haircuts to DIRTY market value and accrue repo interest on ACT/360!:* | Term Repo Metric ($50M Dirty MV, 4% Haircut, 5.25% Rate, 30 Days ACT/360) | Formula | Verified Output | | --- | --- | --- | | Initial Purchase Cash ($M) | Dirty_Collateral_MV * (1 - Haircut) | $48.00M ($45.00M @ 10% Haircut) | | ACT/360 Repo Interest ($M) | Purchase_Cash * Repo_Rate * (Days / 360) | $0.2100M ($210,000) | | Term Repurchase Price ($M) | Purchase_Cash + Repo_Interest | $48.2100M | | Max Haircut Leverage (x) | 1 / Repo_Haircut | 25.00x (10.00x @ 10% Haircut) | - **Formula (ACT/360 Term Repo Repurchase Price Formula)**: `=LET(mv_d, B2, hc_r, B3, rp_r, B4, dy_a, B5, IF(OR(mv_d <= 0, hc_r <= 0, hc_r > 0.5, rp_r <= -0.05, dy_a < 1), "Invalid Repo Financing Input", LET(cs_0, mv_d * (1 - hc_r), in_t, cs_0 * rp_r * (dy_a / 360), ROUND(cs_0 + in_t, 4))))` - **Formula (Volatility Haircut-Widening Margin Call Check (Set Haircut = 10.0%))**: `=IF(ISTEXT(E4), E4, ROUND(1 / B3, 2))` ### REPT function: build in-cell progress bars and zero-pad fixed-width IDs - **URL**: https://sheets.arte-soft.com/en/learn/rept-function-repeat-text-padding/ - **Summary**: Repeat characters N times with REPT to render lightweight text bar charts or pad variable-length account numbers. *Table — Two high-value uses: fixed-width zero padding and mini bars:* | RawID (A) | CompletionPct (B) | Padded 6-Digit ID | Progress Bar | | --- | --- | --- | --- | | 42 | 80 | 000042 | \|\|\|\| | | 1059 | 0 | 001059 | (empty string) | - **Formula (Zero-pad numeric IDs reliably)**: `=REPT("0", MAX(0, 6 - LEN(A2))) & A2` - **Formula (Zero count returns "" while negative count returns #VALUE!)**: `=REPT("|", -1)` ### Required recovery rate: percentage gain needed to break even after a loss - **URL**: https://sheets.arte-soft.com/en/learn/required-recovery-rate-after-loss/ - **Summary**: Calculate the asymmetric percentage gain required to recover from a portfolio drawdown or sales drop using LossPct / (1 - LossPct). *Table — Why a 20% drawdown requires a 25% gain to break even:* | Drawdown Loss % | Remaining Base | Required Gain Formula | Break-Even Gain % | | --- | --- | --- | --- | | 10% (0.10) | 90% | 0.10 / 0.90 | 11.11% | | 20% (0.20) | 80% | 0.20 / 0.80 | 25.00% | | 50% (0.50) | 50% | 0.50 / 0.50 | 100.00% | - **Formula (Break-even recovery percentage formula)**: `=IF(OR(B2<0, B2>1), "Invalid loss", IF(B2=1, "Unrecoverable", ROUND(B2 / (1 - B2), 4)))` - **Formula (Verify dollar recovery back to starting balance)**: `=(A2 * (1 - B2)) * (1 + B2 / (1 - B2))` ### Reshape a Single Column Into Fixed-Width Rows or Columns (WRAPROWS & WRAPCOLS Formula) - **URL**: https://sheets.arte-soft.com/en/learn/reshape-column-into-2d-grid-wraprows-and-wrapcols-index-sequence/ - **Summary**: Convert a flat 1D vertical list into a row-major (WRAPROWS) or column-major (WRAPCOLS) 2D table with custom padding for incomplete final blocks using INDEX and COUNTA. *Table — Row-major (WRAPROWS) vs. column-major (WRAPCOLS) 2D indexing:* | Output Row (r) | Col 1 (c=1) | Col 2 (c=2) | Col 3 (c=3) | Col 4 (c=4) | | --- | --- | --- | --- | --- | | Row 1 | SKU-01 (idx 1) | SKU-02 (idx 2) | SKU-03 (idx 3) | SKU-04 (idx 4) | | Row 2 | SKU-05 (idx 5) | SKU-06 (idx 6) | SKU-07 (idx 7) | SKU-08 (idx 8) | | Row 3 | SKU-09 (idx 9) | SKU-10 (idx 10) | — (idx 11 > 10) | — (idx 12 > 10) | - **Formula (Row-Major WRAPROWS Cell Formula With Custom Padding)**: `=LET(idx, (D4 - 1) * $D$2 + D5, IF(idx > COUNTA($A$2:$A$11), $D$3, INDEX($A$2:$A$11, idx)))` - **Formula (Column-Major WRAPCOLS Cell Formula & Required Grid Row Count)**: `=ROUNDUP(COUNTA(A2:A11) / D2, 0)` ### Residual Income (RI) Equity Valuation & Justified Price-to-Book (P/B) - **URL**: https://sheets.arte-soft.com/en/learn/residual-income-ri-equity-valuation-and-justified-pb/ - **Summary**: Value banks, insurers, and non-dividend companies using the Edwards-Bell-Ohlson Residual Income Model V_0 = BV_0 + ((ROE - r_e) * BV_0) / (r_e - g) and Justified P/B = 1 + (ROE - r_e) / (r_e - g). *Table — Anchor intrinsic equity value in clean-surplus book equity rather than terminal multiples!:* | Bank / Franchise Scenario (BV_0 = $40, r_e = 10%, g = 4%) | Sustainable ROE | Year-1 Residual Income RI_1 | Intrinsic V_0 & Justified P/B | | --- | --- | --- | --- | | High-ROE Wealth Franchise | 16.0% | (16% - 10%) * $40 = +$2.40 | $80.00 / sh \| 2.00x Book | | Cost-of-Equity Earner | 10.0% (= r_e) | $0.00 / sh | $40.00 / sh \| 1.00x Book | | Sub-Hurdle Regional Bank | 8.0% (< r_e!) | (8% - 10%) * $40 = -$0.80 | $26.67 / sh \| 0.67x Book! | - **Formula (Single-Stage Residual Income Intrinsic Share Value V_0 ($))**: `=IF(OR(B2 <= 0, B4 <= B5), "Invalid Book Value or Growth g >= r_e", ROUND(B2 + (((B3 - B4) * B2) / (B4 - B5)), 2))` - **Formula (Justified Price-to-Book Multiple P/B = 1 + (ROE - r_e) / (r_e - g))**: `=IF(B4 <= B5, "Invalid Growth g >= r_e", ROUND(1 + ((B3 - B4) / (B4 - B5)), 2))` ### Resistance Spot Welding Joule Heat & Nugget Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/resistance-spot-welding-joule-heat-input-nugget-diameter-4-sqrt-t-and-current-density/ - **Summary**: Calculate AWS D8.1 Minimum Weld Nugget Diameter 4*SQRT(t) (mm), 60 Hz Weld Squeeze/Hold Time (s), Joule Weld Energy I²Rt (J), and Electrode Cap Current Density (A/mm²). *Table — Let a copper spot-weld electrode cap mushroom from 6.0 to 8.5 mm on galvanized steel and current density halves—producing cold "stuck" welds at full kA!:* | AWS D8.1 Automotive RSW KPI (t=1.44 mm, I=9.5 kA, R=160 uOhm, 12 Cycles @ 60 Hz) | Formula | Verified Output | | --- | --- | --- | | AWS D8.1 Min Nugget d_min (mm) | 4 * SQRT(Sheet_Thickness_t_mm) | 4.80 mm (peel-test acceptance floor) | | Weld Current Time tw (s) | Cycles_60Hz / 60 | 0.200 s (200 ms) | | Joule Weld Heat Input Q (J) | ((I_kA * 1000) ^ 2) * (R_uOhm * 1e-6) * tw | 2,888.0 J | | Electrode Current Density (A/mm²) | (I_kA * 1000) / ((PI()/4) * Cap_d_mm^2) | 336.0 A/mm² (167.4 A/mm² cold weld @ 8.5 mm!) | - **Formula (Joule I²Rt Spot-Weld Energy, AWS 4*SQRT(t) Button & Cap Current Density Formula)**: `=LET(ts_m, B2, ik_a, B3, ru_o, B4, nc_y, B5, dc_m, B6, ac_m, (PI() / 4) * (dc_m ^ 2), IF(OR(ts_m < 0.4, ts_m > 6, ik_a < 2, ik_a > 35, ru_o < 20, ru_o > 1000, nc_y < 1, dc_m < 3, dc_m > 16), "Invalid Spot-Weld Input", ROUND((ik_a * 1000) / ac_m, 1)))` - **Formula (Un-Dressed Mushroomed 8.5 mm Copper Cap Cold-Weld Failure Check (Set Cap Face B6 = 8.5 mm))**: `=IF(ISTEXT(E5), E5, ROUND(((B3 * 1000) ^ 2) * (B4 * 0.000001) * (B5 / 60), 1))` ### Restaurant food cost %, edible yield, and menu pricing formulas - **URL**: https://sheets.arte-soft.com/en/learn/restaurant-food-cost-percentage-and-menu-pricing/ - **Summary**: Calculate Period Food Cost % from inventory counts, adjust ingredient costs for butcher/prep trim loss (AP Cost / Yield %), and price menu items. *Table — Account for prep trim yield AND period waste in kitchen costing:* | Kitchen Finance Formula | Inputs | Calculated Result | | --- | --- | --- | | Edible Portion Cost / lb | $12.00 AP / 80% Yield | $15.00 / edible lb | | Target Menu Price ($9.60 Plate @ 30%) | =$9.60 / 0.30 | $32.00 | | Actual Period Food Cost % | ($8k Beg + $22k Buy - $6k End) / $80k Sales | 30.0% ($24k COGS) | - **Formula (Period Food Cost % and yield-adjusted menu price formulas)**: `=ROUND((A2 + B2 - C2) / D2, 4)` - **Formula (Target menu price from AP cost, trim yield %, portion size, and sides)**: `=ROUND((((E2 / F2) * 0.5) + G2) / H2, 2)` - **Formula (Additional worked calculation)**: `=ROUND(E2 / F2, 2)` ### Restaurant Prime Cost & Menu Engineering Formula - **URL**: https://sheets.arte-soft.com/en/learn/restaurant-prime-cost-and-kasavana-smith-menu-engineering-matrix/ - **Summary**: Audit restaurant Prime Cost % = (CoGS + Total_Labor) / Sales and classify dishes into Stars, Plowhorses, Puzzles, and Dogs via Michael Kasavana and Donald Smith’s (1982) 70% popularity rule. *Table — Stop judging dishes by Food Cost % instead of Dollar Contribution Margin and 70% Menu-Mix Hurdle!:* | Entree Item (Total = 1,000 Sold, WACM = $15.00, Pop Hurdle = 17.5%) | Mix % & Unit CM | Kasavana-Smith Quadrant | | --- | --- | --- | | Dry-Aged Ribeye (250 sold) | 25.0% (>=17.5%) & $24.00 (>=$15) | Star (Keep & Anchor) | | House Smashburger (400 sold) | 40.0% (>=17.5%) & $10.00 (<$15) | Plowhorse (Nudge Price/Cost) | | Pan-Roasted Halibut (150 sold) | 15.0% (<17.5%) & $22.00 (>=$15) | Puzzle (Highlight on Menu) | | Prime Cost % Check ($31k CoGS + $29k Labor / $100k) | (31,000 + 29,000) / 100,000 | 0.6000 (60.0% Target Met) | - **Formula (Category Weighted-Average Contribution Margin (WACM) & 70% Popularity Hurdle Formula)**: `=IF(OR(MIN(B2:B5) < 0, SUM(B2:B5) <= 0), "Invalid Menu Volume", ROUND(SUMPRODUCT(B2:B5, C2:C5) / SUM(B2:B5), 2))` - **Formula (Kasavana-Smith (1982) Four-Quadrant Dish Classifier Formula)**: `=LET(sh_i, B2 / SUM($B$2:$B$5), pop_h, 0.7 / ROWS($B$2:$B$5), w_cm, SUMPRODUCT($B$2:$B$5, $C$2:$C$5) / SUM($B$2:$B$5), IFS(AND(sh_i >= pop_h, C2 >= w_cm), "Star", AND(sh_i >= pop_h, C2 < w_cm), "Plowhorse", AND(sh_i < pop_h, C2 >= w_cm), "Puzzle", TRUE, "Dog"))` ### Restricted Mean Survival Time (RMST) Exact Step-Function Area Formula - **URL**: https://sheets.arte-soft.com/en/learn/restricted-mean-survival-time-rmst-trapezoidal-and-step-area-formula/ - **Summary**: Calculate exact Restricted Mean Survival Time RMST(tau) and Restricted Mean Time Lost RMTL(tau) under a Kaplan-Meier step curve without trapezoidal downward bias. *Table — Never integrate a Kaplan-Meier survival curve with trapezoidal averaging!:* | Step Interval Clipped at tau = 24 | Rectangle Width * Left Height | Area (Months) | | --- | --- | --- | | [0, 6] at S(0) = 1.00 | (MIN(6, 24) - 0) * 1.00 | 6.00 | | [6, 12] at S(6) = 0.85 | (MIN(12, 24) - 6) * 0.85 | 5.10 | | [12, 20] at S(12) = 0.70 | (MIN(20, 24) - 12) * 0.70 | 5.60 | | [20, 30] clipped to [20, 24] at 0.50 | MAX(0, MIN(30, 24) - 20) * 0.50 | 2.00 (Sum = 18.70) | - **Formula (Clipped Step-Rectangle Area Formula per Interval)**: `=MAX(0, MIN(A3, $G$2) - MIN(A2, $G$2)) * B2` - **Formula (Exact RMST(tau) and Restricted Mean Time Lost RMTL(tau) Formula)**: `=IF(OR(G2 <= 0, G2 > A6), "Horizon Outside Follow-Up", ROUND(SUM(C2:C5), 4))` ### Retail Clearance Markdown & Salvage Profit Formula - **URL**: https://sheets.arte-soft.com/en/learn/retail-clearance-markdown-price-elasticity-and-salvage-recovery-formula/ - **Summary**: Calculate Constant-Elasticity Clearance Units Sold MIN(I_rem, v_0 * (1 - d)^epsilon * W_rem), Hold-Full-Price vs Markdown Gross Margin (with end-of-season liquidator salvage), and Net Markdown Profit Lift. *Table — Optimize end-of-season clearance depth before unsold stock hits jobbers at salvage pennies!:* | Seasonal Clearance Metric (500 Units, COGS=$40, P0=$100, v0=32/wk, 6 Wks, d=20%, eps=-3) | Formula | Verified Output | | --- | --- | --- | | Markdown In-Season Units Sold | MIN(I_rem, v_0 * (1 - d_md)^eps * W_rem) | 375.00 units (vs 192 Full) | | Hold-Full-Price Gross Margin ($) | Q_full*P_0 + (I_rem - Q_full)*P_salv - I*COGS | $5,360.00 (308 Salvaged) | | 20%-Markdown Gross Margin ($) | Q_md*P_md + (I_rem - Q_md)*P_salv - I*COGS | $12,500.00 (125 Salvaged) | | Net Markdown Profit Lift ($) | GM_Markdown - GM_Hold_Full | +$7,140.00 (-$360 @ d=50%) | - **Formula (Inventory-Capped Markdown Gross Margin Formula)**: `=LET(i_rm, B2, cg_u, B3, p_fl, B4, v_bs, B5, w_rm, B6, d_md, B7, ep_s, B8, p_sv, B9, IF(OR(i_rm <= 0, cg_u < 0, p_sv < 0, p_fl <= p_sv, v_bs <= 0, w_rm <= 0, d_md < 0, d_md >= 1, ep_s >= 0), "Invalid Clearance Plan", LET(q_md, MIN(i_rm, v_bs * ((1 - d_md) ^ ep_s) * w_rm), p_md, p_fl * (1 - d_md), ROUND(q_md * p_md + (i_rm - q_md) * p_sv - i_rm * cg_u, 2))))` - **Formula (Net Markdown Profit Gain vs Hold-Full-Price Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - E3, 2))` ### Retail Open-to-Buy (OTB) formula: merchandise budget at retail and cost - **URL**: https://sheets.arte-soft.com/en/learn/retail-open-to-buy-otb-merchandise-budget-formula/ - **Summary**: Calculate monthly Open-to-Buy purchasing capacity OTB = PlannedSales + Markdowns + PlannedEOM - BOM - OnOrder at both retail value and wholesale cost. *Table — Prevent bloated seasonal inventory with the Retail Open-to-Buy equation!:* | Monthly OTB Component (60% Initial Markup) | Amount ($) | Impact on OTB | | --- | --- | --- | | Planned Sales ($180k) + Markdowns ($15k) | $195,000 | + Inventory outflows to replace | | Planned EOM Target Stock | $240,000 | + Total stock needed ($435k) | | Less: Actual BOM ($210k) + On-Order ($95k) | -$305,000 | = $130,000 OTB at Retail! | | OTB at Wholesale Cost (1 - 60% = 40%) | $130,000 * 0.40 | = $52,000 Wholesale PO Budget | - **Formula (Open-to-Buy at Retail ($))**: `=IF(OR(COUNT(A2:E2)<>5,MIN(A2:E2)<0),"Invalid inputs",A2 + B2 + C2 - D2 - E2)` - **Formula (Open-to-Buy at Wholesale Cost ($) with Overbought check)**: `=IF(OR(COUNT(A2:F2)<>6,MIN(A2:E2)<0,F2<0,F2>=1),"Invalid inputs",LET(otb, A2 + B2 + C2 - D2 - E2, IF(otb < 0, "Overbought", ROUND(otb * (1 - F2), 2))))` ### Retail Percentage Lease & Natural Breakpoint Formula - **URL**: https://sheets.arte-soft.com/en/learn/retail-percentage-lease-natural-breakpoint-and-overage-rent-formula/ - **Summary**: Calculate shopping-center Natural Breakpoint = Base_Rent / Pct_Rate, Overage Rent = Pct_Rate * MAX(0, Sales - Breakpoint), and Effective Occupancy-Cost-to-Sales Ratio. *Table — Master Natural vs Artificial Breakpoints in retail shopping-center percentage leases!:* | Retail Lease Metric (Base=180k, p=6%, Sales=3.5M) | Formula | Verified Output | | --- | --- | --- | | Natural Sales Breakpoint (BP_nat) | Base_Rent / Pct_Rate | 3,000,000.00 | | Percentage Overage Rent (Natural BP) | 0.06 * MAX(0, 3.5M - 3.0M) | 30,000.00 | | Total Annual Rent (Base + Overage) | Base_Rent + Overage_Rent | 210,000.00 (6.00% of Sales!) | | Negotiated Artificial BP (3,200,000) | 180k + 0.06 * MAX(0, 3.5M - 3.2M) | 198,000.00 (5.66% of Sales) | - **Formula (Natural vs Artificial Breakpoint Overage Rent Formula)**: `=LET(r_bs, B2, p_ov, B3, sl_g, B4, bp_c, B5, IF(OR(r_bs <= 0, p_ov <= 0, p_ov >= 1, sl_g < 0, bp_c < 0), "Invalid Lease Input", LET(bp_ef, IF(bp_c > 0, bp_c, r_bs / p_ov), ROUND(p_ov * MAX(0, sl_g - bp_ef), 2))))` - **Formula (Total Annual Retail Rent (Base + Overage) Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B2 + E3, 2))` ### Retail Percentage Rent, Natural Breakpoint & CAM Formula - **URL**: https://sheets.arte-soft.com/en/learn/retail-percentage-rent-natural-breakpoint-and-cam-reconciliation-formula/ - **Summary**: Calculate Retail Shopping-Center Natural Sales Breakpoint (Base_Rent / Overage_Pct), Percentage Rent Overage Charge MAX(0, (Sales - Breakpoint)*Pct), Capped Controllable CAM Reconciliation, and Total Occupancy Cost % of Sales. *Table — Anchor retail lease negotiations on Natural Sales Breakpoint and Controllable CAM Caps!:* | Retail Lease Metric ($180k Base, 6.0% Overage, $3.5M Sales, $45k CAM vs $42k Cap) | Formula | Verified Output | | --- | --- | --- | | Natural Sales Breakpoint ($) | Annual_Base_Rent / Overage_Rate | $3,000,000 | | Percentage Rent Overage ($) | MAX(0, (Gross_Sales - Breakpoint)*Rate) | $30,000 ($0 @ $2.5M Sales) | | Total Capped Occupancy Cost ($) | Base + Pct_Rent + MIN(Actual_CAM, Cap) | $252,000 ($222,000 @ $2.5M Sales) | | Occupancy-to-Sales Ratio | Total_Occupancy_Cost / Gross_Sales | 0.0720 (7.20% Four-Wall Ratio) | - **Formula (Retail Lease Total Capped Occupancy Cost Formula)**: `=LET(bs_r, B2, ov_r, B3, sl_g, B4, cm_a, B5, cm_c, B6, IF(OR(bs_r <= 0, ov_r <= 0, ov_r >= 1, sl_g <= 0, cm_a < 0, cm_c < 0), "Invalid Retail Lease Terms", LET(bp_n, bs_r / ov_r, pr_r, MAX(0, (sl_g - bp_n) * ov_r), ROUND(bs_r + pr_r + MIN(cm_a, cm_c), 2))))` - **Formula (Sub-Breakpoint Sales Downside Check (Set Gross Sales = $2,500,000))**: `=IF(ISTEXT(E4), E4, ROUND(E4 / B4, 4))` ### Retail Promo Cannibalization, Halo & Net Margin Formula - **URL**: https://sheets.arte-soft.com/en/learn/retail-promo-cannibalization-halo-effect-and-net-incremental-margin/ - **Summary**: Decompose Trade Promotion ROI across Naive Promoted-SKU Margin Lift, Sister-SKU Cannibalization Loss, Cross-Category Basket Halo Profit, and True Net Incremental Category Margin. *Table — Catch money-losing trade promotions masked by single-SKU volume spikes!:* | Trade Promotion Audit Metric (1,000->2,200 Units, $8->$5 Margin, 35% Cannibal @ $9, $1.50 Halo) | Formula | Verified Output | | --- | --- | --- | | Naive Single-SKU Margin Lift ($) | Q_promo * m_promo - Q_0 * m_reg | +$3,000.00 (+37.50% Naive) | | Sister-SKU Cannibalization Drag ($) | -(Q_promo - Q_0) * gamma_can * m_sister | -$3,780.00 (420 Units Diverted) | | True Net Incremental Profit ($) | Naive_Lift + Cannibal_Drag + (Q_p - Q_0)*h_halo | +$1,020.00 (-$780 if Halo = $0) | | True Category Profit Lift (%) | True_Net_Incremental / (Q_0 * m_reg) | +0.1275 (+12.75% Net Lift) | - **Formula (True Net Incremental Category Profit Formula)**: `=LET(q_bs, B2, m_rg, B3, q_pr, B4, m_pr, B5, gm_c, B6, m_ss, B7, hl_m, B8, IF(OR(q_bs <= 0, m_rg <= 0, q_pr < q_bs, m_pr < 0, gm_c < 0, gm_c > 1, m_ss < 0, hl_m < 0), "Invalid Promo Audit", LET(lf_u, q_pr - q_bs, ROUND((q_pr * m_pr - q_bs * m_rg) - lf_u * gm_c * m_ss + lf_u * hl_m, 2))))` - **Formula (True Category Incremental Profit Lift Ratio Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 / (B2 * B3), 4))` ### Retail Sell-Through Rate, Weeks of Supply (WOS) & Stock-to-Sales - **URL**: https://sheets.arte-soft.com/en/learn/retail-sell-through-rate-weeks-of-supply-and-stock-to-sales/ - **Summary**: Calculate sell-through, beginning-stock-to-sales and remaining weeks of supply for a closed inventory cohort with no replenishment or returns. *Table — Use one consistent inventory cohort and period:* | Merchandising Velocity KPI | Formula | 1,200 opening units, 780 sold, 60/week | Current velocity zero | | --- | --- | --- | --- | | Sell-Through Percentage | B3 / B2 | 780 / 1,200 = 65.00% (0.6500) | 65.00% | | Stock-to-Sales Ratio | B2 / B3 | 1,200 / 780 = 1.54x | 1.54x | | Ending Weeks of Supply (WOS) | (B2 - B3) / B4 | 420 / 60 = 7.00 weeks left | No finite estimate | - **Formula (Sell-through of the opening inventory cohort)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(MIN(B2:B4)<0,B2<>INT(B2),B3<>INT(B3),B3>B2),"Invalid inputs",IF(B2=0,"N/A",ROUND(B3/B2,4))))` - **Formula (Remaining weeks of supply)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(MIN(B2:B4)<0,B2<>INT(B2),B3<>INT(B3),B3>B2),"Invalid inputs",IF(B2=B3,0,IF(B4=0,"No finite estimate",ROUND((B2-B3)/B4,2)))))` - **Formula (Beginning stock divided by period sales)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(MIN(B2:B4)<0,B2<>INT(B2),B3<>INT(B3),B3>B2),"Invalid inputs",IF(B3=0,"N/A",ROUND(B2/B3,2))))` ### Retail Planogram Linear-Foot Margin & Slotting Formula - **URL**: https://sheets.arte-soft.com/en/learn/retail-slotting-allowance-planogram-linear-shelf-productivity-formula/ - **Summary**: Calculate Allocated Planogram Linear Shelf Feet, Weekly Gross Margin per Linear Foot (GM/LF), Space-to-Margin Productivity Index, and New-SKU Slotting Allowance Payback Weeks. *Table — Allocate retail facings by Gross Margin per Linear Foot—not raw unit velocity!:* | Planogram Productivity Metric (6 Facings x 4 in, 120 Units @ $2.50, $125 Target, $1,500 Fee) | Formula | Verified Output | | --- | --- | --- | | Allocated Linear Shelf Space (LF) | (Facings * Pack_Width_in) / 12 | 2.00 linear ft (3.33 ft @ 10 facings) | | Gross Margin per Linear Foot | (Weekly_Units * Unit_Margin) / LF | $150.00 / LF / wk ($90.00 @ 10 facings) | | Space Productivity Index | GM_per_LF / Category_Target_GM_LF | 1.20x (> 1.00x Accretive) | | Slotting Fee Margin Weeks | Slotting_Fee / (Weekly_Units * Unit_Margin) | 5.00 weeks | - **Formula (Gross Margin per Linear Shelf Foot (GM/LF) Formula)**: `=LET(fc_n, B2, wd_i, B3, vl_w, B4, mg_u, B5, tg_m, B6, sl_f, B7, IF(OR(fc_n < 1, wd_i <= 0, vl_w <= 0, mg_u <= 0, tg_m <= 0, sl_f < 0), "Invalid Planogram Input", LET(lf_s, (fc_n * wd_i) / 12, ROUND((vl_w * mg_u) / lf_s, 2))))` - **Formula (Space-to-Margin Productivity Index Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E3 / B6, 2))` ### Retrieve Latest Closing Price, As-Of Quote & Trailing N-Day Average From a Price Log - **URL**: https://sheets.arte-soft.com/en/learn/retrieve-latest-closing-price-and-date-as-of-quote-log/ - **Summary**: Extract the most recent closing price for any ticker in an unsorted multi-symbol quote log, snap weekend or holiday valuation dates back to the prior trading close, and compute trailing N-day averages. *Table — Sort-independent latest close and weekend-safe historical valuation:* | Trade Date | Ticker | Close Price | Query Against NVDA | | --- | --- | --- | --- | | 2026-05-01 (Fri) | NVDA | $118.50 | Prior week | | 2026-05-04 (Mon) | MSFT | $422.00 | Other symbol ignored | | 2026-05-05 (Tue) | NVDA | $121.25 | Prior close | | 2026-05-08 (Fri) | NVDA | $124.00 | As-of close for Sun 2026-05-10 ($124.00) | | 2026-05-12 (Tue) | NVDA | $126.75 | Latest overall close ($126.75) | - **Formula (Latest Overall Closing Price for Selected Ticker (Sort-Order Independent))**: `=LET(lastDt, MAXIFS(A2:A7, B2:B7, F2), IF(lastDt = 0, "Ticker Not Found", SUMIFS(C2:C7, B2:B7, F2, A2:A7, lastDt)))` - **Formula (Weekend-Safe As-Of Close & Trailing N-Day Mean Close)**: `=LET(asOfDt, MAXIFS(A2:A7, B2:B7, F2, A2:A7, "<=" & G2), IF(asOfDt = 0, "No Prior Close", SUMIFS(C2:C7, B2:B7, F2, A2:A7, asOfDt)))` ### Return Blank ("") If Input Is Empty—Without Breaking Downstream Math! - **URL**: https://sheets.arte-soft.com/en/learn/return-blank-instead-of-zero-or-na-in-conditional-formulas/ - **Summary**: Suppress ugly 0s on unentered template rows with IF(ISBLANK(B2), "", ...) while ensuring downstream totals use SUM/N() rather than + so "" never triggers #VALUE!. *Table — Keep invoice templates clean on blank rows without crashing Grand Totals!:* | Invoice Template Row | Qty (B) & Price (C) | Line Formula Output | Included in =SUM(D2:D5)? | | --- | --- | --- | --- | | Active Paid Line | Qty = 3, Price = $45 | 135 | Yes (+135) | | 100%-Discounted Free Item | Qty = 2, Price = $0 | 0 (Shows real $0!) | Yes (+0) | | Unentered Blank Row | Qty = (empty), Price = (empty) | "" (Clean blank!) | Skipped cleanly by SUM! | - **Formula (Clean Template Line Calculation Returning "" Only When Unentered)**: `=IF(OR(ISBLANK(B2), ISBLANK(C2)), "", ROUND(B2 * C2, 2))` - **Formula (Safe Downstream Arithmetic on Potentially-Blank ("") Formula Cells)**: `=SUM(D2:D4)` ### ROI, ROAS, Break-Even ROAS, and Annualized ROI formulas - **URL**: https://sheets.arte-soft.com/en/learn/return-on-investment-roi-roas-and-annualized-roi/ - **Summary**: Distinguish Return on Ad Spend (Revenue / Spend) from true Gross-Profit ROI, solve for Break-Even ROAS (1 / GrossMargin), and annualize multi-year returns. *Table — Why a 3.0x ROAS can still lose money (Break-Even ROAS = 1 / Margin):* | Metric ($10k Spend, $40k Rev, 50% GM) | Formula | Result | | --- | --- | --- | | Top-Line ROAS | =40,000 / 10,000 | 4.00x | | Break-Even ROAS | =1 / 0.50 | 2.00x (Profitable!) | | Gross-Profit ROI | =(40,000 * 0.50 - 10,000) / 10,000 | +100.0% (1.00) | | Annualized ROI ($10k -> $17.28k in 3 yrs) | =(17280 / 10000)^(1/3) - 1 | +20.0% / yr | - **Formula (Gross-Profit ROI, Break-Even ROAS, and Annualized ROI formulas)**: `=ROUND((B2 * C2 - A2) / A2, 4)` - **Formula (Annualized ROI over N years)**: `=ROUND((E2 / A2) ^ (1 / D2) - 1, 4)` - **Formula (Additional worked calculation)**: `=ROUND(B2 / A2, 2)` - **Formula (Additional worked calculation)**: `=ROUND(1 / C2, 2)` ### Revenue-Based Financing (RBF) Royalty Sweep & APR Formula - **URL**: https://sheets.arte-soft.com/en/learn/revenue-based-financing-rbf-royalty-sweep-repayment-cap-and-implied-apr/ - **Summary**: Calculate Revenue-Based Financing Total Repayment Cap ($k), Monthly Gross-Revenue Sweep ($k), Months to Payoff Cap, and Nominal Annualized Fee Rate (%). *Table — Fast sales growth is an RBF borrower trap—paying off a 1.32x cap in 4 months costs 96% annualized!:* | RBF Facility Cost KPI ($500k Advance, 1.32x Cap, $825k/mo Rev @ 10% Sweep) | Formula | Verified Output | | --- | --- | --- | | Total Repayment Cap ($k) | Advance_Principal_k * Cap_Multiple | $660.00k | | Monthly Royalty Sweep ($k/mo) | Monthly_Gross_Revenue_k * Sweep_Pct | $82.50k/mo ($165.00k @ $1.65M) | | Months to Payoff Cap (mos) | Total_Repayment_Cap_k / Monthly_Sweep_k | 8.00 mos (4.00 mos @ $1.65M) | | Nominal Annualized Fee Rate (%) | (Cap_Multiple - 1) * (12 / Payoff_Mos) * 100 | 48.00% (96.00% @ 4-Mo Payoff!) | - **Formula (RBF Payoff Duration & Growth-Sensitive Annualized Cost Formula)**: `=LET(pr_k, B2, cp_m, B3, rv_m, B4, sw_p, B5, IF(OR(pr_k <= 0, cp_m <= 1.02, cp_m > 2.5, rv_m <= 0, sw_p <= 0.01, sw_p > 0.35), "Invalid RBF Facility Input", LET(sw_k, rv_m * sw_p, mo_p, (pr_k * cp_m) / sw_k, ROUND((cp_m - 1) * (12 / mo_p) * 100, 2))))` - **Formula (Viral Holiday Q4 Sales Doubling Trap Check (Set Monthly Revenue = $1,650k))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * B3) / (B4 * B5), 2))` ### Revenue Equivalence: First-Price vs All-Pay Bid Formula - **URL**: https://sheets.arte-soft.com/en/learn/revenue-equivalence-first-price-all-pay-and-dutch-bid-shading-audit/ - **Summary**: Compare symmetric Bayes-Nash equilibrium bids across Second-Price/English, First-Price/Dutch, and All-Pay auctions on [0, V_max] and verify William Vickrey (1961) and Roger Myerson’s (1981) Revenue Equivalence identity. *Table — See how wildly different bidding rules generate identical interim payments and seller revenue!:* | Auction Format Equilibrium Metric (N=4, V_max=100, Bidder v=80) | Equilibrium Formula | Verified Output | | --- | --- | --- | | Second-Price / English Bid b_2(v) | v | 80.00 (Zero Shading) | | First-Price / Dutch Shaded Bid b_1(v) | ((N - 1) / N) * v | 60.00 (25.0% Shading) | | All-Pay Unconditional Bid b_ap(v) = m(v) | ((N - 1) / N) * (v^N / V_max^(N - 1)) | 30.72 (= 0.5120 * 60.00) | | Expected Seller Revenue E[R] (All Formats) | ((N - 1) / (N + 1)) * V_max | 60.00 | - **Formula (All-Pay Bid & Universal Interim Expected Payment m(v) Formula)**: `=LET(n_bd, B2, vm_x, B3, vi_b, B4, IF(OR(n_bd < 2, INT(n_bd) <> n_bd, vm_x <= 0, vi_b < 0, vi_b > vm_x), "Invalid Auction Input", ROUND(((n_bd - 1) / n_bd) * ((vi_b ^ n_bd) / (vm_x ^ (n_bd - 1))), 4)))` - **Formula (Revenue-Equivalent Expected Seller Revenue Formula)**: `=IF(ISTEXT(E4), E4, ROUND(((B2 - 1) / (B2 + 1)) * B3, 4))` ### Reverse Factoring (SCF) Arbitrage & Savings Formula - **URL**: https://sheets.arte-soft.com/en/learn/reverse-factoring-supply-chain-finance-dynamic-discount-spread-formula/ - **Summary**: Calculate Supply Chain Finance (Reverse Factoring) ACT/360 Early-Payment Discount Fee, Supplier Day-10 Net Cash Proceeds, Supplier Interest Savings vs Standalone Borrowing, and Participation Viability. *Table — Unlock working-capital DPO extensions by pricing SCF off the buyer’s credit rating!:* | Reverse Factoring SCF Metric ($1M Invoice, Net 100 -> Day 10, 6% SCF vs 14% SME) | Formula | Verified Output | | --- | --- | --- | | SCF Bank Discount Fee ($) | Invoice * r_SCF * ((DPO - Early_Day)/360) | $15,000.00 (90 Days Accelerated) | | Supplier Day-10 Net Proceeds ($) | Invoice - SCF_Discount_Fee | $985,000.00 (Zero Reserve Holdback) | | Supplier Net Interest Savings ($) | Invoice * (r_SME - r_SCF) * (Accel/360) | +$20,000.00 (-$2,500 @ 15% SCF) | | Supplier Adoption Gate | r_SCF < r_Supplier_Standalone | Accretive SCF Arbitrage (Supplier Saves) | - **Formula (Reverse Factoring Supplier Net Interest Savings Formula)**: `=LET(in_v, B2, dp_o, B3, er_d, B4, r_sc, B5, r_sp, B6, IF(OR(in_v <= 0, er_d < 0, dp_o <= er_d, r_sc <= 0, r_sp <= 0), "Invalid SCF Tenor", LET(ac_d, dp_o - er_d, ROUND(in_v * (r_sp - r_sc) * (ac_d / 360), 2))))` - **Formula (Investment-Grade Supplier Mispricing Check (r_SCF > r_Supplier))**: `=IF(ISTEXT(E4), E4, IF(E4 > 0, "Accretive SCF Arbitrage (Supplier Saves)", "Unattractive SCF Rate (Use Own Credit)"))` ### Reverse Left Lookup: Retrieve Values to the Left of the Lookup Column - **URL**: https://sheets.arte-soft.com/en/learn/reverse-left-lookup-with-index-match-and-xlookup/ - **Summary**: Look up an ID or SKU positioned to the left of the search column without rearranging worksheet columns using XLOOKUP or INDEX and MATCH. *Table — Overcome VLOOKUP's rightward-only column constraint:* | Emp_ID (Col A — Return) | Department (Col B) | Work Email (Col C — Search) | Left Lookup Result | | --- | --- | --- | --- | | EMP-301 | Finance | nora@acme.io | — | | EMP-302 | Platform | ivan@acme.io | — | | EMP-303 | Security | maya@acme.io | Matches -> EMP-303 | | EMP-304 | Operations | leo@acme.io | — | - **Formula (Modern Left Lookup with XLOOKUP and Built-In Fallback)**: `=IF(ISBLANK(B7), "Enter Email", XLOOKUP(TRIM(B7), C2:C5, A2:A5, "Email Not Found"))` - **Formula (Backward-Compatible INDEX & MATCH Left Lookup)**: `=IF(ISBLANK(B7), "Enter Email", IFNA(INDEX(A2:A5, MATCH(TRIM(B7), C2:C5, 0)), "Email Not Found"))` ### Reverse Morris Trust >50% Tax-Free Spin-Merge Formula - **URL**: https://sheets.arte-soft.com/en/learn/reverse-morris-trust-tax-free-spin-merge-ownership-threshold-formula/ - **Summary**: Calculate Reverse Morris Trust (RMT) SpinCo Contributed Equity (EV - Leveraged Cash Distribution), Combined MergeCo Equity Value, Parent Shareholder Pro-Forma Ownership Share, and IRC Section 355(e) / Tax-Basis Qualification. *Table — Clear both the >50.0% Section 355(e) ownership hurdle and tax-basis boot cap in Reverse Morris Trusts!:* | Reverse Morris Trust Metric ($1,500M EV, $300M Cash Boot, $1,000M MergeCo, $350M Basis) | Formula | Verified Output | | --- | --- | --- | | SpinCo Contributed Equity ($M) | SpinCo_EV - Leveraged_Boot_to_Parent | $1,200.00M ($900.00M @ $600M Boot) | | Combined MergeCo Equity ($M) | SpinCo_Equity + MergeCo_Equity | $2,200.00M | | Parent Shareholder Ownership | SpinCo_Equity / Combined_MergeCo_Equity | 0.5455 (0.4737 @ $600M Boot) | | IRC Sec 355(e) & Basis Gate | Ownership > 50% AND Boot <= Tax_Basis | Qualifies: Tax-Free Reverse Morris Trust | - **Formula (Reverse Morris Trust Ownership & Boot-Basis Qualification Formula)**: `=LET(ev_s, B2, bt_d, B3, eq_m, B4, tx_b, B5, IF(OR(ev_s <= 0, bt_d < 0, ev_s <= bt_d, eq_m <= 0, tx_b < 0), "Invalid RMT Structure Input", LET(eq_s, ev_s - bt_d, ow_p, eq_s / (eq_s + eq_m), IF(ow_p <= 0.5, "Taxable Spin: Fails >50% RMT Ownership", IF(bt_d > tx_b, "Partial Boot Tax: Debt Exceeds Basis", "Qualifies: Tax-Free Reverse Morris Trust")))))` - **Formula (Over-Leveraged SpinCo Dividend Trap ($600M Boot vs $400M Basis Breach))**: `=IF(ISTEXT(E2), E2, ROUND(E2 / E3, 4))` ### Reverse mortgage illustration: growing balance and projected home equity with FV - **URL**: https://sheets.arte-soft.com/en/learn/reverse-mortgage-hecm-growing-loan-balance-and-equity/ - **Summary**: Model an initial draw and fixed end-of-month advances at a constant monthly rate, then compare debt with an assumed future property value. *Table — A simplified cash-flow illustration, not a HECM quote:* | Illustrative metric | Formula | 10 Yrs (+3%/yr Home Growth) | 10 Yrs (-3%/yr Housing Slump) | | --- | --- | --- | --- | | Compounded Loan Balance | -FV(B5/12, B6*12, B4, B3) | $360,400.92 | $360,400.92 | | Projected Home Value | B2 * ((1 + B7) ^ B6) | $604,762.37 | $331,840.86 | | Positive projected equity | MAX(0, HomeVal - LoanBal) | $244,361.45 | $0.00 | | Projected debt above property value | MAX(0, LoanBal - HomeVal) | $0.00 | $28,560.07 (model shortfall) | - **Formula (Balance with advances at month end)**: `=IF(COUNT(B3:B6)<>4,"Invalid inputs",IF(OR(B3<0,B4<0,B5<0,B6<0,ABS(B6*12-ROUND(B6*12,0))>0.00000001),"Invalid inputs",ROUND(-FV(B5 / 12, ROUND(B6 * 12, 0), B4, B3, 0), 2)))` - **Formula (Positive part of projected equity)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B3<0,B4<0,B5<0,B6<0,ABS(B6*12-ROUND(B6*12,0))>0.00000001,B2<=0,B7<=-1),"Invalid inputs",MAX(0, ROUND((B2 * ((1 + B7) ^ (ROUND(B6 * 12, 0) / 12))) - (-FV(B5 / 12, ROUND(B6 * 12, 0), B4, B3, 0)), 2))))` - **Formula (Signed property-minus-debt difference)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<0,B5<0,B6<0,B7<=-1,ABS(B6*12-ROUND(B6*12,0))>0.00000001),"Invalid inputs",ROUND(B2*((1+B7)^(ROUND(B6*12,0)/12))-(-FV(B5/12,ROUND(B6*12,0),B4,B3,0)),2)))` - **Formula (Positive modeled shortfall)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B3<0,B4<0,B5<0,B6<0,ABS(B6*12-ROUND(B6*12,0))>0.00000001,B2<=0,B7<=-1),"Invalid inputs",MAX(0, ROUND((-FV(B5 / 12, ROUND(B6 * 12, 0), B4, B3, 0)) - (B2 * ((1 + B7) ^ (ROUND(B6 * 12, 0) / 12))), 2))))` ### Reverse the order of a list or column dynamically - **URL**: https://sheets.arte-soft.com/en/learn/reverse-order-of-list-or-range/ - **Summary**: Flip a chronological log upside down without sorting alphabetically by pairing SORTBY with a descending SEQUENCE index or INDEX/ROWS. *Table — Invert row position—not alphabetical order:* | Original Row | Stage (A) | SEQUENCE Index | Reversed Output | | --- | --- | --- | --- | | 1 | Draft | 1 | Publish | | 2 | Review | 2 | Approve | | 3 | Approve | 3 | Review | | 4 | Publish | 4 | Draft | - **Formula (Dynamic array SORTBY reverse and classic INDEX reverse)**: `=TEXTJOIN(" -> ", TRUE, SORTBY(A2:A5, SEQUENCE(ROWS(A2:A5)), -1))` - **Formula (Classic row-by-row INDEX + ROWS formula)**: `=INDEX($A$2:$A$5, ROWS($A$2:$A$5) - (ROW(A2) - ROW($A$2)))` ### Reverse word or category breadcrumb order inside a cell - **URL**: https://sheets.arte-soft.com/en/learn/reverse-word-or-path-order-in-cell/ - **Summary**: Flip hierarchical paths ("Global / US / Retail / Shoes" -> "Shoes / Retail / US / Global") or space-separated words using vertical TEXTSPLIT + SORTBY. *Table — Split into rows, reverse with SORTBY(..., -1), and rejoin:* | Original String (A) | Delimiter | Reversed Output | | --- | --- | --- | | Global / US / Retail / Shoes | " / " | Shoes / Retail / US / Global | | Alpha Beta Gamma | " " | Gamma Beta Alpha | | SoloCategory | " / " | SoloCategory | - **Formula (Reverse breadcrumb path and space-separated word formulas)**: `=LET(w, TEXTSPLIT(A2, , " / "), TEXTJOIN(" / ", TRUE, SORTBY(w, SEQUENCE(ROWS(w)), -1)))` - **Formula (Reverse space-separated words)**: `=LET(w, TEXTSPLIT(TRIM(B2), , " "), TEXTJOIN(" ", TRUE, SORTBY(w, SEQUENCE(ROWS(w)), -1)))` ### Revised Baux Score & Osler Logistic Burn Mortality Formula - **URL**: https://sheets.arte-soft.com/en/learn/revised-baux-score-burn-mortality-inhalation-injury-formula/ - **Summary**: Calculate the Revised Baux Score = Age + %TBSA + 17 * Inhalation_Injury and predicted inpatient burn-center mortality (%) via Turner Osler’s 2010 National Burn Repository logistic model. *Table — Quantify how smoke inhalation adds the equivalent of +17 years or +17% TBSA burn!:* | Burn Triage Scenario | Revised Baux Score | Predicted Burn Mortality (%) | Burn Center Prognostic Band | | --- | --- | --- | --- | | 45 yo, 35% TBSA + Inhalation Injury | 97 (45 + 35 + 17) | 21.44% | High-Acuity Burn ICU + Ventilator Protocol | | 45 yo, 35% TBSA, No Inhalation | 80 (45 + 35 + 0) | 6.81% | Moderate Burn Center Risk | | 25 yo, 15% TBSA, No Inhalation | 40 (25 + 15 + 0) | 0.33% | Low Mortality (< 1%) | - **Formula (Revised Baux Score = Age + %TBSA + 17 * Inhalation_Injury)**: `=IF(OR(B2 < 0, B3 < 0, B3 > 100, AND(B4 <> 0, B4 <> 1)), "Invalid Burn Inputs", B2 + B3 + 17 * B4)` - **Formula (Osler (2010) Predicted Burn Mortality (%) = 100 / (1 + EXP(-(-8.8163 + 0.0775 * rBaux))))**: `=IF(OR(B2 < 0, B3 < 0, B3 > 100, AND(B4 <> 0, B4 <> 1)), "Invalid Burn Inputs", ROUND(100 / (1 + EXP(-(-8.8163 + 0.0775 * (B2 + B3 + 17 * B4)))), 2))` ### Revised Geneva Score for Pulmonary Embolism (Objective Pretest Risk) - **URL**: https://sheets.arte-soft.com/en/learn/revised-geneva-score-pulmonary-embolism-pretest-probability/ - **Summary**: Calculate Grégoire Le Gal’s 100% objective Revised Geneva Score (0–25 points across Age > 65, Prior DVT/PE, Surgery/Fracture, Active Cancer, Unilateral Leg Pain, Hemoptysis, Heart Rate tiers, and Deep-Vein Palpation Pain) to guide D-dimer vs. CTPA. *Table — Eliminate Wells PE’s subjective 3-point "PE most likely" gestalt with Revised Geneva!:* | Revised Geneva Total (0–25 Points) | Confirmed PE Prevalence | 3-Level ESC Probability | Diagnostic Workup | | --- | --- | --- | --- | | 0–3 Points (e.g., 1) | ~8% PE Prevalence | Low Pretest Probability | High-Sensitivity D-Dimer / PERC Rule | | 4–10 Points (e.g., 7) | ~28% PE Prevalence | Intermediate Pretest Probability | Age-Adjusted D-Dimer -> CTPA If Positive | | >= 11 Points (e.g., 12) | ~74% PE Prevalence | High Pretest Probability | Proceed Directly to CTPA (Skip D-Dimer!) | - **Formula (Total 8-Variable Objective Revised Geneva Score (0–25 Points))**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 < 0, B6 > 1, B7 < 0, B7 > 1, B8 <= 0, B9 < 0, B9 > 1), "Invalid Geneva Input", IF(B2 > 65, 1, 0) + 3 * B3 + 2 * B4 + 2 * B5 + 3 * B6 + 2 * B7 + IF(B8 >= 95, 5, IF(B8 >= 75, 3, 0)) + 4 * B9)` - **Formula (3-Level ESC Pulmonary Embolism Diagnostic Pathway)**: `=IF(OR(B2 <= 0, B3 < 0, B3 > 1, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 < 0, B6 > 1, B7 < 0, B7 > 1, B8 <= 0, B9 < 0, B9 > 1), "Invalid Geneva Input", IF((IF(B2 > 65, 1, 0) + 3 * B3 + 2 * B4 + 2 * B5 + 3 * B6 + 2 * B7 + IF(B8 >= 95, 5, IF(B8 >= 75, 3, 0)) + 4 * B9) >= 11, "High PE Probability (Geneva >= 11: ~74%) — Proceed Directly to CTPA (Do Not Delay for D-Dimer)", IF((IF(B2 > 65, 1, 0) + 3 * B3 + 2 * B4 + 2 * B5 + 3 * B6 + 2 * B7 + IF(B8 >= 95, 5, IF(B8 >= 75, 3, 0)) + 4 * B9) >= 4, "Intermediate PE Probability (Geneva 4-10: ~28%) — Order Age-Adjusted Quantitative D-Dimer", "Low PE Probability (Geneva 0-3: ~8%) — Rule Out via PERC or D-Dimer")))` ### R-ISS Multiple Myeloma Staging Formula: IMWG Beta-2-Microglobulin, Albumin, FISH & LDH - **URL**: https://sheets.arte-soft.com/en/learn/revised-iss-r-iss-multiple-myeloma-staging-beta2-microglobulin/ - **Summary**: Stage newly diagnosed Multiple Myeloma using Antonio Palumbo’s IMWG Revised International Staging System (R-ISS I, II, III) combining Greipp’s ISS (B2M & Albumin) with high-risk interphase FISH [del(17p), t(4;14), t(14;16)] and serum LDH. *Table — Integrating tumor burden (B2M + Albumin) with tumor biology (interphase FISH + LDH) in IMWG R-ISS!:* | B2M (mg/L) & Albumin (g/dL) | High-Risk FISH / High LDH | Greipp ISS (2005) | Palumbo IMWG R-ISS (2015) | | --- | --- | --- | --- | | B2M = 6.4 (>= 5.5), Alb = 3.1 | del(17p) Positive (FISH = 1) | ISS Stage III | R-ISS Stage III (High-Risk Biology + Burden) | | B2M = 2.6 (< 3.5), Alb = 3.9 (>= 3.5) | Standard FISH (0) & Normal LDH (0) | ISS Stage I | R-ISS Stage I (Favorable Prognosis) | | B2M = 2.6 (< 3.5), Alb = 3.9 (>= 3.5) | t(4;14) Positive (FISH = 1) | ISS Stage I | Upstaged to R-ISS Stage II! | - **Formula (IMWG Revised International Staging System (R-ISS Stage I, II, III) Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1, B5 < 0, B5 > 1), "Invalid Myeloma Staging Inputs", IF(AND(B2 < 3.5, B3 >= 3.5, B4 = 0, B5 = 0), "R-ISS Stage I (ISS I + Standard FISH + Normal LDH)", IF(AND(B2 >= 5.5, OR(B4 = 1, B5 = 1)), "R-ISS Stage III (ISS III + High-Risk FISH or Elevated LDH)", "R-ISS Stage II (Intermediate — Not Meeting Stage I or III)")))` - **Formula (Underlying 2005 Greipp ISS Stage (I, II, or III from B2M & Albumin Alone))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > 1, B5 < 0, B5 > 1), "Invalid Myeloma Staging Inputs", IF(B2 >= 5.5, "ISS Stage III", IF(AND(B2 < 3.5, B3 >= 3.5), "ISS Stage I", "ISS Stage II")))` ### Revised Trauma Score (RTS) Weighted Physiological Formula (TRISS) - **URL**: https://sheets.arte-soft.com/en/learn/revised-trauma-score-rts-physiological-triage-formula/ - **Summary**: Convert raw Glasgow Coma Scale (GCS 3–15), Systolic Blood Pressure (SBP), and Respiratory Rate (RR) into 0–4 Champion coded values and compute the weighted Revised Trauma Score RTS = 0.9368*GCSc + 0.7326*SBPc + 0.2908*RRc. *Table — Why Champion’s weighted Revised Trauma Score prioritizes GCS for TRISS survival modeling!:* | Coded Value (0 to 4) | Glasgow Coma Scale (GCS) | Systolic BP (mmHg) | Respiratory Rate (breaths/min) | | --- | --- | --- | --- | | Code 4 (Normal) | 13 to 15 | > 89 mmHg | 10 to 29 /min (-> Max RTS = 7.8408) | | Code 3 | 9 to 12 | 76 to 89 mmHg | > 29 /min (Tachypnea) | | Code 2 | 6 to 8 | 50 to 75 mmHg | 6 to 9 /min | | Code 1 / Code 0 | 4–5 (1) / 3 (0) | 1–49 (1) / 0 (0) | 1–5 (1) / 0 (0) | - **Formula (Weighted Revised Trauma Score RTS (0.0000 to 7.8408))**: `=IF(OR(B2 < 3, B2 > 15, B3 < 0, B4 < 0), "Invalid Trauma Vitals", ROUND(0.9368 * IF(B2 >= 13, 4, IF(B2 >= 9, 3, IF(B2 >= 6, 2, IF(B2 >= 4, 1, 0)))) + 0.7326 * IF(B3 > 89, 4, IF(B3 >= 76, 3, IF(B3 >= 50, 2, IF(B3 >= 1, 1, 0)))) + 0.2908 * IF(AND(B4 >= 10, B4 <= 29), 4, IF(B4 > 29, 3, IF(B4 >= 6, 2, IF(B4 >= 1, 1, 0)))), 4))` - **Formula (Prehospital Triage T-RTS Sum (0 to 12) & Trauma Activation Flag)**: `=IF(B2 >= 13, 4, IF(B2 >= 9, 3, IF(B2 >= 6, 2, IF(B2 >= 4, 1, 0)))) + IF(B3 > 89, 4, IF(B3 >= 76, 3, IF(B3 >= 50, 2, IF(B3 >= 1, 1, 0)))) + IF(AND(B4 >= 10, B4 <= 29), 4, IF(B4 > 29, 3, IF(B4 >= 6, 2, IF(B4 >= 1, 1, 0))))` ### Reynolds Number (Re) formula: Laminar vs Turbulent pipe flow regime - **URL**: https://sheets.arte-soft.com/en/learn/reynolds-number-laminar-vs-turbulent-pipe-flow/ - **Summary**: Calculate dimensionless Reynolds Number Re = (ρ · v · D) / μ in SI units and classify Laminar (< 2,300), Transitional, and Turbulent (> 4,000) flow. *Table — Inertial forces over viscous forces: keep ρ, v, D, and μ in consistent SI units!:* | Fluid Scenario (50 mm Pipe) | Inputs (ρ, v, D, μ) | Reynolds Number Re | Flow Regime | | --- | --- | --- | --- | | Water @ 1.50 m/s | 998 kg/m³, 1.5 m/s, 0.05 m, 0.001 Pa·s | 74,850 | Turbulent (Re > 4,000) | | Heavy Oil @ 0.50 m/s | 900 kg/m³, 0.5 m/s, 0.05 m, 0.050 Pa·s | 450 | Laminar (Re < 2,300) | | Glycol Mix @ 0.30 m/s | 1,050 kg/m³, 0.3 m/s, 0.05 m, 0.005 Pa·s | 3,150 | Transitional (2,300–4,000) | - **Formula (Dimensionless Reynolds Number and flow-regime classifier formulas)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<=0,D2<=0),"Invalid inputs",ROUND(A2*B2*C2/D2,1))` - **Formula (Classify Laminar (< 2,300), Transitional (2,300–4,000), or Turbulent (> 4,000))**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<=0,D2<=0),"Invalid inputs",LET(re,A2*B2*C2/D2,IFS(re<2300,"Laminar",re<=4000,"Transitional",TRUE,"Turbulent")))` ### RF Receiver IIP3, IMD3 & Spurious-Free Dynamic Range Formula - **URL**: https://sheets.arte-soft.com/en/learn/rf-receiver-iip3-third-order-intercept-imd3-and-spurious-free-dynamic-range/ - **Summary**: Calculate RF Front-End Input-Referred Two-Tone Third-Order Intermodulation Product IMD3 (dBm = 3*Pin - 2*IIP3), Carrier-to-Intermod Suppression (dBc), Two-Thirds-Slope Spurious-Free Dynamic Range SFDR (dB), and Noise-Floor Headroom. *Table — Master the 3:1 cubic IMD3 slope—+10 dB of blocker power boosts in-band distortion by +30 dB!:* | RF Linearity Metric (Pin = -30 dBm, IIP3 = +5 dBm, MDS = -100 dBm) | Formula | Verified Output | | --- | --- | --- | | Input-Referred IMD3 (dBm) | 3 * Pin_dBm - 2 * IIP3_dBm | -100.00 dBm (-70.00 @ -20 dBm) | | Carrier-to-IMD3 Ratio (dBc) | 2 * (IIP3_dBm - Pin_dBm) | 70.00 dBc (50.00 dBc @ -20 dBm) | | Spurious-Free Dynamic Range (dB) | (2 / 3) * (IIP3_dBm - MDS_dBm) | 70.00 dB | | Noise-Floor Margin MDS - IMD3 (dB) | MDS_dBm - Input_IMD3_dBm | 0.00 dB (-30.00 dB Desense @ -20) | - **Formula (RF Receiver Spurious-Free Dynamic Range (SFDR) Formula)**: `=LET(pi_n, B2, ip_3, B3, md_s, B4, IF(OR(pi_n > ip_3 - 10, md_s >= pi_n), "Invalid Small-Signal IIP3 Input", ROUND((2 / 3) * (ip_3 - md_s), 2)))` - **Formula (+10 dB Near-Far Blocker Surge Check (Set Pin = -20.0 dBm))**: `=IF(ISTEXT(E4), E4, ROUND(B4 - (3 * B2 - 2 * B3), 2))` ### AC & RF Skin Depth formula: delta = SQRT(rho / (pi * f * mu0 * mur)) - **URL**: https://sheets.arte-soft.com/en/learn/rf-skin-depth-ac-conductor-penetration-formula/ - **Summary**: Estimate skin depth for a good conductor with positive resistivity and a real permeability, keeping the DC case separate. *Table — Skin depth is an attenuation scale, not a sharp current boundary:* | Operating Regime | Frequency f (B3) | Copper Skin Depth delta | PCB / Power Busbar Implication | | --- | --- | --- | --- | | 60 Hz AC Utility Grid | 60 Hz | 8.42 mm (8,423 um) | Compare depth with geometry; additional loss analysis needed | | 1 MHz Switching / AM RF | 1,000,000 Hz | 65.23 micrometers | Winding geometry and proximity effects also matter | | 100 MHz VHF / FM RF | 100,000,000 Hz | 6.52 micrometers | One skin depth does not carry all current | | 0 Hz Direct Current (DC) | 0 Hz | "Full Cross-Section (DC)" | Infinite skin depth; zero skin effect | - **Formula (Skin Depth in millimeters (mm) for 50/60 Hz power & kHz inductors)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0),"Invalid inputs",IF(B3=0,"Full Cross-Section (DC)",ROUND(1000*SQRT(B2/(PI()*B3*(4*PI()*0.0000001)*B4)),2))))` - **Formula (Skin Depth in micrometers (um) for MHz/GHz RF & PCB traces)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<0,B4<=0),"Invalid inputs",IF(B3=0,"Full Cross-Section (DC)",ROUND(1000000*SQRT(B2/(PI()*B3*(4*PI()*0.0000001)*B4)),2))))` ### RF VSWR, Reflection Coefficient (Gamma) & Return Loss (dB) formulas - **URL**: https://sheets.arte-soft.com/en/learn/rf-vswr-reflection-coefficient-and-return-loss-antenna/ - **Summary**: Calculate RF transmission-line impedance mismatch using Gamma = ABS((Z_L - Z_0) / (Z_L + Z_0)), Voltage Standing Wave Ratio VSWR = (1 + Gamma) / (1 - Gamma), Return Loss -20*LOG10(Gamma), and reflected power. *Table — Reflection at a resistive load:* | RF Transmission-Line Metric | Formula | 75-Ohm Load on 50-Ohm Coax | Matched 50-Ohm Load | | --- | --- | --- | --- | | Reflection Coeff \|Gamma\| | ABS((B3 - B2) / (B3 + B2)) | 25 / 125 = 0.2000 | 0.0000 (Zero reflection) | | Standing Wave Ratio (VSWR) | (1 + Gamma) / (1 - Gamma) | 1.2 / 0.8 = 1.50 (:1) | 1.00 (:1 Ideal) | | Return Loss (dB) | -20 * LOG10(Gamma) | 13.98 dB | Infinite dB | | Reflected Power Fraction | Gamma ^ 2 | 4% reflected; 96% accepted at load plane | 0.00% reflected | - **Formula (Voltage Standing Wave Ratio VSWR = (1 + |Gamma|) / (1 - |Gamma|))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<0),"Invalid inputs",IF(B3=0,"Infinite VSWR",ROUND(MAX(B3/B2,B2/B3),2))))` - **Formula (RF Return Loss (dB) = -20 * LOG10(|Gamma|))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<0),"Invalid inputs",IF(B3=B2,"Perfect Match (Inf dB)",ROUND(-20*LOG10(ABS((B3-B2)/(B3+B2))),2))))` - **Formula (Reflection coefficient magnitude)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<0),"Invalid inputs",ABS((B3-B2)/(B3+B2))))` - **Formula (Reflected power fraction)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<0),"Invalid inputs",ROUND((ABS((B3-B2)/(B3+B2)))^2,4)))` ### RFM (Recency, Frequency, Monetary) customer scoring & CRM segment formula - **URL**: https://sheets.arte-soft.com/en/learn/rfm-recency-frequency-monetary-customer-scoring/ - **Summary**: Score customers 1–5 on Recency (lower days = higher score!), Frequency, and Monetary spend, build 3-digit RFM codes ("555", "155"), and assign lifecycle segments. *Table — Remember: lower Recency days earns a HIGHER 5 score—while Frequency & Monetary go up!:* | Customer | Days Ago (A) \| Orders (B) \| Spend (C) | R-F-M Code | Lifecycle Action Segment | | --- | --- | --- | --- | | Maya (Active VIP) | 8 days \| 14 orders \| $2,450 | "555" | "Champion" (R>=4, F>=4, M>=4) | | Omar (Dormant Whale) | 210 days \| 15 orders \| $3,100 | "155" | "At-Risk VIP" (R<=2, F>=4, M>=4) | | Zoe (Brand New) | 5 days \| 1 order \| $95 | "511" | "New Buyer" (R>=4, F=1) | - **Formula (Build the 3-digit RFM score code ("555", "155", "511"))**: `=IF(COUNT(A2:C2)<>3,"Invalid inputs",IF(OR(COUNT(A2:C2)<>3,A2<0,A2<>INT(A2),B2<1,B2<>INT(B2),C2<0),"Invalid inputs",LET(recencyScore, IFS(A2 <= 14, 5, A2 <= 30, 4, A2 <= 90, 3, A2 <= 180, 2, TRUE, 1), frequencyScore, IFS(B2 >= 12, 5, B2 >= 6, 4, B2 >= 3, 3, B2 >= 2, 2, TRUE, 1), monetaryScore, IFS(C2 >= 2000, 5, C2 >= 1000, 4, C2 >= 400, 3, C2 >= 150, 2, TRUE, 1), recencyScore & frequencyScore & monetaryScore)))` - **Formula (Assign automated retention campaign segment from R, F, M scores)**: `=IF(COUNT(A2:C2)<>3,"Invalid inputs",IF(OR(COUNT(A2:C2)<>3,A2<0,A2<>INT(A2),B2<1,B2<>INT(B2),C2<0),"Invalid inputs",LET(recencyScore, IFS(A2 <= 14, 5, A2 <= 30, 4, A2 <= 90, 3, A2 <= 180, 2, TRUE, 1), frequencyScore, IFS(B2 >= 12, 5, B2 >= 6, 4, B2 >= 3, 3, B2 >= 2, 2, TRUE, 1), monetaryScore, IFS(C2 >= 2000, 5, C2 >= 1000, 4, C2 >= 400, 3, C2 >= 150, 2, TRUE, 1), IFS((recencyScore >= 4) * (frequencyScore >= 4) * (monetaryScore >= 4) = 1, "Champion", (recencyScore <= 2) * (frequencyScore >= 4) * (monetaryScore >= 4) = 1, "At-Risk VIP", (recencyScore >= 4) * (frequencyScore = 1) = 1, "New Buyer", TRUE, "Core"))))` ### Richards Generalized Logistic Curve: Asymmetry Parameter (ν) & Inflection - **URL**: https://sheets.arte-soft.com/en/learn/richards-generalized-logistic-growth-curve-asymmetry-nu-formula/ - **Summary**: Model asymmetric epidemic, crop, and market S-curves via F. J. Richards’ 4-parameter generalized logistic equation Y(t) = K * (1 + ν * EXP(-r * (t - t_m)))^(-1 / ν) and inflection height Y_inf = K * (1 + ν)^(-1 / ν). *Table — One shape parameter ν continuously bridges Gompertz (36.8%), Logistic (50%), and late-peaking S-curves!:* | Richards Shape Parameter ν (K = 1,000, tm = 12 d) | Inflection Level Y_inf at t = tm | Trajectory Value at t = 16 d | Special-Case S-Curve Family | | --- | --- | --- | --- | | ν -> 0+ Limit (e.g., ν = 0.001) | 368.06 (~K / e = 36.8%) | 796.16 | Gompertz Early-Peak Limit | | ν = 1.00 (Symmetric S-Curve) | 500.00 (= K / 2 = 50.0%) | 731.06 | Exact Verhulst Logistic | | ν = 2.00 (Right-Skewed Surge) | 577.35 (= K / √3 = 57.7%) | 759.02 | Late-Inflecting Surge Wave | - **Formula (Richards Generalized Logistic Trajectory Y(t))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Richards Parameters", ROUND(B2 * ((1 + B3 * EXP(-B4 * (B6 - B5))) ^ (-1 / B3)), 2))` - **Formula (Inflection-Point Level Y_inf = K * (1 + ν)^(-1 / ν) at t = t_m)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Richards Parameters", ROUND(B2 * ((1 + B3) ^ (-1 / B3)), 2))` ### Richardson-Dushman Thermionic Emission Current Density Formula (SEM, X-Ray & Klystron Cathodes) - **URL**: https://sheets.arte-soft.com/en/learn/richardson-dushman-thermionic-emission-current-density/ - **Summary**: Calculate thermionic electron emission current density J = A_G * T^2 * EXP(-phi_eV / (kB_eV * T)) in A/cm^2 across tungsten, thoriated tungsten, and LaB6 electron-microscope cathodes. *Table — See how work function phi_eV governs electron gun brightness exponentially!:* | Cathode Filament Material | Work Function phi & AG | Operating Temp T (K) | Emission Density J (A/cm^2) | | --- | --- | --- | --- | | Pure Tungsten (W) Hairpin | phi = 4.54 eV, AG = 60 | 2,500 K | 0.2641 A/cm^2 | | Overdriven Tungsten Filament | phi = 4.54 eV, AG = 60 | 2,700 K (+200 K) | 1.4675 A/cm^2 (5.56x jump!) | | LaB6 Crystal Cathode | phi = 2.66 eV, AG = 29 | 1,800 K | 3.3517 A/cm^2 (Higher J at -700 K!) | - **Formula (Richardson-Dushman Thermionic Current Density J (A/cm^2))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Cathode Inputs", ROUND(B2 * (B3 ^ 2) * EXP(-B4 / (0.00008617333 * B3)), 4))` - **Formula (Total Emitted Cathode Current I_total = J * Area_cm2 (Milliamperes, mA))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Cathode Inputs", ROUND(1000 * B5 * B2 * (B3 ^ 2) * EXP(-B4 / (0.00008617333 * B3)), 2))` ### Richardson-Zaki Hindered Settling Velocity & Kynch Gravity Thickener Solids Flux - **URL**: https://sheets.arte-soft.com/en/learn/richardson-zaki-hindered-settling-and-slurry-solids-flux/ - **Summary**: Calculate concentrated slurry hindered settling velocity v_h = v_t * ((1 - C_v) ^ n) and batch gravity-thickener solids flux G_s = C_v * v_h for mineral tailings, wastewater clarifiers, and fluidized beds. *Table — Why concentrated slurries settle 7x slower than a single isolated Stokes particle!:* | Slurry Concentration C_v (vt = 12.5 mm/s, n = 4.65) | Voidage Fraction (1 - Cv) | Hindered Speed vh (mm/s) | Batch Solids Flux Gs = Cv * vh | | --- | --- | --- | --- | | Infinite Dilution Limit (Cv = 0.00) | 1.00 | 12.500 mm/s | 0.000 mm/s | | Moderately Concentrated (Cv = 0.20) | 0.80 (0.80^4.65 = 0.354) | 4.429 mm/s | 0.886 mm/s (Near peak flux) | | Dense Thickener Zone (Cv = 0.35) | 0.65 (0.65^4.65 = 0.135) | 1.686 mm/s | 0.590 mm/s (Flux bottleneck!) | - **Formula (Richardson-Zaki Hindered Zone-Settling Velocity v_h = v_t * (1 - C_v)^n)**: `=IF(OR(B2 <= 0, B3 < 0, B3 >= 1, B4 <= 0), "Invalid Slurry Inputs", ROUND(B2 * ((1 - B3) ^ B4), 3))` - **Formula (Volumetric Batch Gravity-Thickener Solids Flux G_s = C_v * v_h (mm/s))**: `=IF(OR(B2 <= 0, B3 < 0, B3 >= 1, B4 <= 0), "Invalid Slurry Inputs", ROUND(B3 * B2 * ((1 - B3) ^ B4), 3))` ### Riedel Parameter (αc): Critical Vapor-Pressure Slope & dPsat/dT at Tc - **URL**: https://sheets.arte-soft.com/en/learn/riedel-parameter-critical-vapor-pressure-slope-acentric-formula/ - **Summary**: Calculate L. Riedel’s dimensionless critical saturation slope α_c = 5.808 + 4.93 * ω and dimensional critical pressure-temperature derivative (dP_sat / dT)|_Tc = α_c * (P_c / T_c) (bar/K). *Table — Anchoring high-pressure vapor-pressure equations right at the critical point!:* | Pure Fluid & Critical Constants | Acentric Factor ω | Riedel Slope αc | Critical (dPsat/dT)\|Tc (bar/K) | | --- | --- | --- | --- | | Simple Spherical Fluid (ω = 0.000) | 0.000 | 5.808 | 5.808 · (Pc / Tc) | | Propane Refrigerant R-290 (Tc=369.8 K, Pc=42.48 bar) | 0.152 | 6.557 | 0.7533 bar/K | | Steam / Water (Tc=647.1 K, Pc=220.64 bar) | 0.344 | 7.504 | 2.5586 bar/K | - **Formula (Riedel Dimensionless Critical Slope Parameter α_c = 5.808 + 4.93 * ω)**: `=IF(B2 <= -0.5, "Invalid Acentric Factor", ROUND(5.808 + 4.93 * B2, 3))` - **Formula (Dimensional Critical Coexistence Slope (dP_sat / dT)|_Tc (bar/K))**: `=IF(OR(B2 <= -0.5, B3 <= 0, B4 <= 0), "Invalid Critical Inputs", ROUND((5.808 + 4.93 * B2) * B4 / B3, 4))` ### RIGHT function: extract trailing serial digits with leading zeros - **URL**: https://sheets.arte-soft.com/en/learn/right-extract-last-characters/ - **Summary**: Pull a fixed-width suffix from the end of invoice or voucher IDs while preserving leading zeros as text, and handle short or blank cells cleanly. *Table — Four-digit serial suffixes at the end of invoice codes:* | Invoice ID (A) | 4-char suffix | | --- | --- | | INV-2026-0042 | 0042 | | INV-2026-1980 | 1980 | | 99 | 99 | | | | - **Formula (Count characters from the right end)**: `=RIGHT(A2,4)` - **Formula (Short codes, blank rows, and numeric conversion)**: `=IF(A5="","",RIGHT(A5,4))` ### Theoretical Ex-Rights Price (TERP) & Rights Formula - **URL**: https://sheets.arte-soft.com/en/learn/rights-issue-theoretical-ex-rights-price-terp-and-nil-paid-value/ - **Summary**: Calculate the Theoretical Ex-Rights Price TERP = (N * P_cum + M * P_sub) / (N + M), Nil-Paid Right Value per new share, Right Value per existing share, and lapsed-rights dilution loss. *Table — Prove why discounted subscription rights are wealth-neutral only if exercised or sold!:* | ECM Rights Offering Metric (1-for-4 @ $35 vs $50 Cum-Rights) | Formula | Verified Output | | --- | --- | --- | | Theoretical Ex-Rights Price (TERP) | (N * P_cum + M * P_sub) / (N + M) | $47.00 / share | | Nil-Paid Value per New-Share Right | TERP - P_sub | $12.00 / new share | | Detached Right Value per Old Share | P_cum - TERP = (M / N) * (TERP - P_sub) | $3.00 / old share | | Unexercised / Unsold Lapse Loss (1,000 sh) | (P_cum - TERP) * S_hold | $3,000.00 Wealth Loss | - **Formula (General M-for-N Theoretical Ex-Rights Price (TERP) Formula)**: `=LET(n_ex, B2, m_nw, B3, p_cm, B4, p_sb, B5, IF(OR(n_ex <= 0, m_nw <= 0, p_sb <= 0, p_cm <= p_sb, B6 < 0), "Invalid Rights Offering", ROUND((n_ex * p_cm + m_nw * p_sb) / (n_ex + m_nw), 4)))` - **Formula (Nil-Paid Subscription Right Value & Lapsed-Rights Wealth Loss Formula)**: `=IF(ISTEXT(E2), E2, ROUND((B4 - E2) * B6, 2))` ### Riker-Ordeshook Calculus of Voting Formula - **URL**: https://sheets.arte-soft.com/en/learn/riker-ordeshook-paradox-of-voting-pivotal-turnout-calculus-formula/ - **Summary**: Calculate Expected Instrumental Pivotal Payoff p * B, Downsian Net Voting Return p * B - C, Riker-Ordeshook Expressive Turnout Utility R = p * B - C + D, and Breakeven Pivotal Probability. *Table — Resolve Anthony Downs’s Paradox of Voting with Riker & Ordeshook’s R = pB - C + D!:* | Turnout Calculus Metric (p=0.0001, B=$20,000, C=$16, D=$25) | Formula | Verified Output | | --- | --- | --- | | Expected Instrumental Value ($) | p * B | $2.00 | | Pure Downsian Payoff ($) | p * B - C | -$14.00 (Downs Paradox) | | Riker-Ordeshook Net Reward R ($) | p * B - C + D | +$11.00 (Voter Turns Out) | | Downsian Breakeven Pivotal Prob p* | MIN(1, C / B) | 0.0008 (1 in 1,250) | - **Formula (Riker-Ordeshook Net Voting Reward R Formula)**: `=LET(pr_pv, B2, bn_df, B3, cs_vt, B4, dv_cv, B5, IF(OR(pr_pv < 0, pr_pv > 1, bn_df <= 0, cs_vt < 0, dv_cv < 0), "Invalid Voting Calculus", ROUND(pr_pv * bn_df - cs_vt + dv_cv, 2)))` - **Formula (Downsian Breakeven Pivotal Probability Formula)**: `=IF(ISTEXT(E4), E4, ROUND(B4 / B3, 4))` ### RIPASA Appendicitis Score Calculator (Half-Point 2.0–16.5 Scale) - **URL**: https://sheets.arte-soft.com/en/learn/ripasa-appendicitis-score-asian-middle-eastern-ed-triage-formula/ - **Summary**: Calculate the Raja Isteri Pengiran Anak Saleha Appendicitis (RIPASA) score (2.0 to 16.5 points) across demographics, symptom duration, Rovsing/guarding signs, WBC, and negative urinalysis. *Table — Why RIPASA achieves 98% sensitivity where Alvarado misses atypical appendicitis presentations!:* | RIPASA Total Score (Half-Point Scale) | Diagnostic Tier | Emergency Surgical Pathway | | --- | --- | --- | | < 5.0 points | Unlikely Appendicitis | Observation & Analgesia; Safe Discharge if Improving | | 5.0 – 7.0 points | Low Probability | Abdominal Ultrasound & Repeat RIPASA in 1–2 Hours | | 7.5 – 11.5 / >= 12.0 points | High / Definite Appendicitis | Surgical Admission (>=7.5 Cutoff; >=12.0 Appendectomy) | - **Formula (Total RIPASA Acute Appendicitis Score)**: `=IF(OR(AND(B2 <> 0.5, B2 <> 1), AND(B3 <> 0.5, B3 <> 1), AND(B4 <> 0.5, B4 <> 1), B5 < 0, B5 > 3, B6 < 0, B6 > 7, B7 < 0, B7 > 2), "Invalid RIPASA Subscores", ROUND(B2 + B3 + B4 + B5 + B6 + B7, 1))` - **Formula (RIPASA Surgical Decision Tier (< 5 / 5–7 / 7.5–11.5 / >= 12))**: `=IF(OR(AND(B2 <> 0.5, B2 <> 1), AND(B3 <> 0.5, B3 <> 1), AND(B4 <> 0.5, B4 <> 1), B5 < 0, B5 > 3, B6 < 0, B6 > 7, B7 < 0, B7 > 2), "Invalid RIPASA Subscores", IF(B2 + B3 + B4 + B5 + B6 + B7 < 5, "Unlikely Appendicitis (<5.0)", IF(B2 + B3 + B4 + B5 + B6 + B7 <= 7, "Low Probability (5.0-7.0 — Ultrasound)", IF(B2 + B3 + B4 + B5 + B6 + B7 < 12, "High Probability (7.5-11.5 — Surgical Review)", "Definite Appendicitis (>=12.0 — Appendectomy)"))))` ### 5x5 risk matrix formula: score Likelihood x Impact and assign severity - **URL**: https://sheets.arte-soft.com/en/learn/risk-matrix-likelihood-x-impact-lookup/ - **Summary**: Convert qualitative Likelihood and Impact ratings into 1–5 scores with XMATCH, compute the 1–25 risk score, and classify Low/Medium/High/Critical. *Table — Turn qualitative risk registers into numeric 1–25 heat scores:* | Likelihood (A) | Impact (B) | Numeric Score (1–25) | Action Band | | --- | --- | --- | --- | | Likely (4) | Major (4) | 16 | Critical (>=15) | | Possible (3) | Moderate (3) | 9 | High (8–14) | | Rare (1) | Minor (2) | 2 | Low (1–3) | - **Formula (1–25 risk score and severity band formulas)**: `=LET(l, XMATCH(A2, {"Rare","Unlikely","Possible","Likely","Almost Certain"}), i, XMATCH(B2, {"Negligible","Minor","Moderate","Major","Catastrophic"}), IF(OR(ISNA(l), ISNA(i)), "Invalid rating", IFS(l*i>=15, "Critical", l*i>=8, "High", l*i>=4, "Medium", TRUE, "Low")))` - **Formula (Raw numeric risk score (1 to 25))**: `=XMATCH(A2, {"Rare","Unlikely","Possible","Likely","Almost Certain"}) * XMATCH(B2, {"Negligible","Minor","Moderate","Major","Catastrophic"})` ### 5x5 Risk Score Buckets & Step-Based Tier Lookup (Sorted INDEX & MATCH) - **URL**: https://sheets.arte-soft.com/en/learn/risk-score-matrix-and-step-based-tier-lookup-xlookup-match-mode/ - **Summary**: Compute Likelihood x Impact risk scores (1–25) and map them into editable Low / Moderate / High / Critical governance tiers using sorted step-threshold lookup. *Table — Why sorted step-table lookups beat nested IFs in risk registers:* | Risk Item | Likelihood x Impact | Risk Score | Matched Floor | Assigned Risk Tier | | --- | --- | --- | --- | --- | | RSK-01 | 2 x 2 | 4 | 1 | Low (1–4) | | RSK-02 | 1 x 5 | 5 | 5 (Exact boundary) | Moderate (5–9) | | RSK-03 | 3 x 4 | 12 | 10 | High (10–15) | | RSK-04 | 4 x 5 | 20 | 16 | Critical (16–25) | - **Formula (Step-Based Risk Bucket Lookup via INDEX + MATCH)**: `=INDEX($G$2:$G$5, MATCH(B2 * C2, $F$2:$F$5, 1))` - **Formula (Count High & Critical Escalation Risks)**: `=COUNTIF(D2:D5, ">=" & F4)` ### RLC Circuit formulas: Resonant Frequency, Reactance (XL, XC), Impedance Z & Q-Factor - **URL**: https://sheets.arte-soft.com/en/learn/rlc-resonant-frequency-reactance-and-impedance-formula/ - **Summary**: Calculate series RLC resonant frequency f0 = 1 / (2*PI()*SQRT(L*C)), total AC impedance Z = SQRT(R^2 + (XL - XC)^2), and circuit Quality Factor Q. *Table — Analyze AC filter tuning, reactance cancellation, and impedance Z in spreadsheets!:* | Circuit Element / Metric | Cell | Series RLC Filter | AC Value | | --- | --- | --- | --- | | Resistance R (Ohms) | B2 | 50 Ohms | Minimum Z at resonance | | Inductance L & Capacitance C | B3 = 0.001 H, B4 = 1E-6 F | 1 mH & 1 uF | Resonant f0 = 5,032.92 Hz | | Operating Frequency f | B5 | 1,000 Hz | XL = 6.28 Ohms \| XC = 159.15 Ohms | | Impedance Z & Q-Factor | PI() & SQRT | Z = 160.84 Ohms \| Q = 0.6325 | At f = f0 -> Z = 50.00 Ohms! | - **Formula (LC Resonant Frequency f0 = 1 / (2 * PI() * SQRT(L * C)) (Hz))**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<=0),"Invalid inputs",ROUND(1 / (2 * PI() * SQRT(B3 * B4)), 2))` - **Formula (Total Series RLC Impedance Z = SQRT(R^2 + (XL - XC)^2) (Ohms))**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<=0),"Invalid inputs",LET(xl, 2 * PI() * B5 * B3, xc, 1 / (2 * PI() * B5 * B4), ROUND(SQRT(B2 ^ 2 + (xl - xc) ^ 2), 2)))` ### RLC Resonant Frequency (f0), Quality Factor (Q) & -3 dB Bandwidth - **URL**: https://sheets.arte-soft.com/en/learn/rlc-series-and-parallel-resonant-frequency-bandwidth-and-q/ - **Summary**: Calculate LC tank resonant frequency f_0 = 1 / (2 * PI() * SQRT(L * C)) (Hz), Series RLC Quality Factor Q = (1 / R) * SQRT(L / C), and half-power -3 dB Bandwidth BW = f_0 / Q. *Table — Tune RF bandpass filters, NFC antennas, and wireless-charging coils!:* | RLC Tank Metric (L = 100 uH = 0.0001 H, C = 10 nF = 1e-8 F) | Formula | Low-Loss R = 5 Ohm | Damped R = 25 Ohm | | --- | --- | --- | --- | | Resonant Frequency f_0 (Hz) | 1 / (2 * PI() * SQRT(L * C)) | 159,154.94 Hz (159.15 kHz) | 159,154.94 Hz (Unchanged!) | | Series Quality Factor Q | (1 / R) * SQRT(L / C) | (1/5) * 100 = 20.00 | (1/25) * 100 = 4.00 | | -3 dB Passband Bandwidth BW | f_0 / Q | 7,957.75 Hz (~8 kHz) | 39,788.74 Hz (5x wider!) | - **Formula (LC Tank Resonant Frequency f_0 = 1 / (2 * PI() * SQRT(L * C)) (Hz))**: `=IF(OR(B2 <= 0, B3 <= 0), "L and C Must Be > 0", ROUND(1 / (2 * PI() * SQRT(B2 * B3)), 2))` - **Formula (Series RLC Quality Factor Q & -3 dB Half-Power Bandwidth (Hz))**: `=IF(B4 <= 0, "Resistance R Must Be > 0", ROUND((1 / B4) * SQRT(B2 / B3), 2))` ### Illustrative tidal distance scales and planetary synodic periods - **URL**: https://sheets.arte-soft.com/en/learn/roche-limit-tidal-disruption-and-synodic-orbital-period/ - **Summary**: Compare a simple nonrotating tidal-balance estimate with a fluid Roche approximation, and calculate the beat period of two prograde mean orbital motions. *Table — Different tidal assumptions produce different distance scales:* | Celestial Mechanics Metric | Formula | Earth–Moon / Earth–Mars | Physical Interpretation | | --- | --- | --- | --- | | Nonrotating tidal-balance estimate | B2 * ((2 * B3 / B4) ^ (1/3)) | 9,483.1 km | Simplified surface force balance | | Approximate fluid Roche scale | 2.44 * B2 * ((B3 / B4) ^ (1/3)) | 18,365.3 km | Ideal homogeneous fluid model | | Earth–Mars Synodic Period | 1 / ABS((1/B5) - (1/B6)) | 779.93 days (~25.6 mo) | Mean relative-angle repeat period | - **Formula (Nonrotating tidal-balance estimate (km))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0),"Invalid inputs",ROUND(B2 * ((2 * B3 / B4) ^ (1 / 3)), 1)))` - **Formula (Mean synodic period for same-direction orbital motion)**: `=IF(COUNT(B5:B6)<>2,"Invalid inputs",IF(OR(B5<=0,B6<=0),"Invalid inputs",IF(B5 = B6, "No finite beat period", ROUND(1 / ABS((1 / B5) - (1 / B6)), 2))))` - **Formula (Fluid Roche approximation with coefficient 2.44)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0),"Invalid inputs",ROUND(2.44 * B2 * ((B3 / B4) ^ (1 / 3)), 1)))` ### Two-Sided Platform Cross-Subsidy Pricing Formula - **URL**: https://sheets.arte-soft.com/en/learn/rochet-tirole-armstrong-two-sided-platform-subsidy-pricing/ - **Summary**: Solve Armstrong / Rochet-Tirole two-sided platform prices p_1* = c_1 + n_1* - alpha_2 * n_2* and explain why optimal consumer prices often sit below marginal cost. *Table — Why two-sided platforms subsidize the side that generates the stronger cross-side externality!:* | Two-Sided Platform Metric (V=45, c=15, a_1=0.30, a_2=1.20) | Formula | Verified Output | | --- | --- | --- | | Equilibrium Participation (n_1*, n_2*) | 2x2 Linear FOC System | 60.00 Users / 60.00 Merchants | | Subsidized Side 1 User Price (p_1*) | c_1 + n_1* - alpha_2 * n_2* | 3.00 (< c_1 = 15.00!) | | Monetized Side 2 Merchant Price (p_2*) | c_2 + n_2* - alpha_1 * n_1* | 57.00 | | Total Platform Net Profit | (p_1* - c_1)*n_1* + (p_2* - c_2)*n_2* | 1,800.00 | - **Formula (General Asymmetric Two-Sided Equilibrium User Price p_1* Formula)**: `=LET(v_1, B2, c_1, B3, v_2, B4, c_2, B5, al_1, B6, al_2, B7, s_al, al_1 + al_2, det_m, 4 - (s_al^2), IF(OR(v_1 <= c_1, v_2 <= c_2, c_1 < 0, c_2 < 0, al_1 < 0, al_2 < 0, det_m <= 0), "Require V_i > c_i and alpha_1 + alpha_2 < 2", LET(n_1s, (2 * (v_1 - c_1) + s_al * (v_2 - c_2)) / det_m, n_2s, (2 * (v_2 - c_2) + s_al * (v_1 - c_1)) / det_m, ROUND(c_1 + n_1s - al_2 * n_2s, 4))))` - **Formula (Total Two-Sided Platform Equilibrium Profit Formula)**: `=LET(v_1, B2, c_1, B3, v_2, B4, c_2, B5, al_1, B6, al_2, B7, s_al, al_1 + al_2, det_m, 4 - (s_al^2), IF(OR(v_1 <= c_1, v_2 <= c_2, c_1 < 0, c_2 < 0, al_1 < 0, al_2 < 0, det_m <= 0), "Require V_i > c_i and alpha_1 + alpha_2 < 2", LET(n_1s, (2 * (v_1 - c_1) + s_al * (v_2 - c_2)) / det_m, n_2s, (2 * (v_2 - c_2) + s_al * (v_1 - c_1)) / det_m, p_1s, c_1 + n_1s - al_2 * n_2s, p_2s, c_2 + n_2s - al_1 * n_1s, ROUND((p_1s - c_1) * n_1s + (p_2s - c_2) * n_2s, 4))))` ### Calculate Clinical and Full Rockall Scores in a Spreadsheet - **URL**: https://sheets.arte-soft.com/en/learn/rockall-acute-gi-bleed-mortality-score-pre-and-post-endoscopy/ - **Summary**: Practice validated category inputs, missing-data guards and separate pre-endoscopy and full Rockall totals using fictional data. *Table — Assign one category per component:* | Input | Allowed points and definitions | | --- | --- | | B2: age, years | Below 60: 0; 60–79: 1; 80 or more: 2. | | B3: shock category | 0: systolic BP at least 100 mmHg and pulse below 100/min; 1: BP at least 100 and pulse at least 100; 2: systolic BP below 100. | | B4: comorbidity category | 0: no major comorbidity; 2: heart failure, ischaemic heart disease or another major comorbidity; 3: renal failure, liver failure or disseminated malignancy. | | B5: endoscopic diagnosis | 0: Mallory–Weiss tear, or no lesion identified and no stigmata of recent haemorrhage; 1: other diagnoses; 2: upper-GI malignancy. | | B6: major stigmata of recent haemorrhage | 0: none or dark spot only; 2: blood in upper GI tract, adherent clot, visible or spurting vessel. | - **Formula (Calculate the clinical subtotal separately)**: `=IF(COUNT(B2:B4)<>3,"Complete numeric clinical inputs",IF(OR(B2<16,B2<>INT(B2)),"Use completed age of at least 16",IF(OR(AND(B3<>0,B3<>1,B3<>2),AND(B4<>0,B4<>2,B4<>3)),"Invalid clinical category",IF(B2<60,0,IF(B2<80,1,2))+B3+B4)))` - **Formula (Add the endoscopy components only when known)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(COUNT(B5:B6)<>2,"Endoscopy inputs required",IF(OR(AND(B5<>0,B5<>1,B5<>2),AND(B6<>0,B6<>2)),"Invalid endoscopy category",E2+B5+B6)))` ### Rockwood Clinical Frailty Scale (CFS 1–9): Geriatric IADL/ADL Triage Formula - **URL**: https://sheets.arte-soft.com/en/learn/rockwood-clinical-frailty-scale-cfs-geriatric-triage-formula/ - **Summary**: Assign Kenneth Rockwood's revised 9-level Clinical Frailty Scale (CFS 1 Very Fit to CFS 9 Terminally Ill) from baseline 2-week pre-illness terminal status, basic BADL dependence, IADL dependence, and symptom limitation. *Table — Anchor frailty to baseline status 2 weeks BEFORE acute illness—never today's ED delirium!:* | CFS Score (1–9) | CFS 2.0 Descriptor | Functional Anchor (2 Weeks Pre-Illness) | Perioperative / Geriatric Flag | | --- | --- | --- | --- | | CFS 1 – 3 | Very Fit / Fit / Managing Well | Independent in all BADLs & IADLs; no limiting symptoms | Robust Non-Frail (< 5) | | CFS 4 | Living with Very Mild Frailty | Independent, but symptoms slow/limit daytime activity | Pre-Frail — Rehab prehab | | CFS 5 | Living with Mild Frailty (>= 5!) | Needs help with high-order IADLs (finances, meds, shopping) | Frail (>= 5): CGA & Delirium Bundle | | CFS 6 – 7 | Moderate (6) to Severe (7) Frailty | 6 = Partial BADL/all IADL help \| 7 = Complete personal care | High Surgical/ICU Morbidity Risk | | CFS 8 – 9 | Very Severe (8) / Terminally Ill (9) | 8 = End-of-life dependent \| 9 = < 6 mo prognosis | Goals-of-Care & Palliative Alignment | - **Formula (Automated 9-Point Rockwood Clinical Frailty Scale (CFS 1–9) Calculator)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 3, B4 < 0, B4 > 1, B5 < 1, B5 > 4), "Invalid CFS Inputs", IF(B2 = 1, 9, IF(B3 = 3, 8, IF(B3 = 2, 7, IF(B3 = 1, 6, IF(B4 = 1, 5, 5 - B5))))))` - **Formula (Comprehensive Geriatric Assessment (CGA) Frailty Cutoff (CFS >= 5))**: `=IF(IF(B2 = 1, 9, IF(B3 = 3, 8, IF(B3 = 2, 7, IF(B3 = 1, 6, IF(B4 = 1, 5, 5 - B5))))) >= 5, "Frail (CFS >= 5: Trigger Geriatric CGA & Delirium Prevention)", IF((5 - B5) = 4, "Very Mild Frailty / Pre-Frail (CFS 4)", "Non-Frail Robust (CFS 1-3)"))` ### Rogan-Gladen True Prevalence Estimator Correcting False Positives & Negatives - **URL**: https://sheets.arte-soft.com/en/learn/rogan-gladen-true-prevalence-from-imperfect-screening-test/ - **Summary**: Recover true population prevalence from apparent screening-test positivity via Rogan and Gladen’s (1978) identity (p_app + Spec - 1) / (Sens + Spec - 1) with [0, 1] boundary clamping. *Table — Why apparent positivity p_app severely overstates low-prevalence rates under <100% specificity:* | Survey Scenario (Se=90%, Sp=95%) | Apparent Positive p_app | Unclamped Rogan-Gladen | Clamped True Prevalence | | --- | --- | --- | --- | | Moderate Outbreak | 0.1800 (18.00%) | 0.1529 | 0.1529 (15.29%) | | At False-Positive Floor | 0.0500 (5.00%) | 0.0000 | 0.0000 (0.00%) | | Below FP Floor (Sample Noise) | 0.0300 (3.00%) | -0.0235 | 0.0000 (Clamped to 0) | - **Formula (Clamped Rogan-Gladen True Prevalence Formula)**: `=IF(B3 + B4 <= 1, "UNINFORMATIVE_TEST", ROUND(MIN(1, MAX(0, (B2 + B4 - 1) / (B3 + B4 - 1))), 4))` - **Formula (Apparent-Minus-True Bias Diagnostic)**: `=ROUND(B2 - E3, 4)` ### Rogers-Satchell Drift-Independent OHLC Volatility Estimator Formula - **URL**: https://sheets.arte-soft.com/en/learn/rogers-satchell-drift-independent-ohlc-volatility-estimator/ - **Summary**: Estimate unbiased intraday and annualized return volatility on trending assets using the Rogers-Satchell (1991) Open-High-Low-Close variance v_RS = ln(H/C)*ln(H/O) + ln(L/C)*ln(L/O). *Table — Eliminate upward/downward trend bias from OHLC range volatility!:* | OHLC Bar Scenario | Daily Variance v_RS | Daily Vol % | Annualized Vol % (252d) | | --- | --- | --- | --- | | Trending + Wicks (O=100, H=106, L=99, C=104) | 0.001605 | 4.0064% | 63.5993% | | Pure Monotone Drift (O=100, H=105, L=100, C=105) | 0.000000 | 0.0000% | 0.0000% | | Symmetric Doji (O=100, H=103, L=97, C=100) | 0.001802 | 4.2446% | 67.3812% | - **Formula (Annualized Rogers-Satchell Volatility % from Single/Mean Bar OHLC)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B3 < MAX(B2, B5), B4 > MIN(B2, B5), B6 <= 0), "Invalid OHLC Bar", ROUND(100 * SQRT(B6 * (LN(B3 / B5) * LN(B3 / B2) + LN(B4 / B5) * LN(B4 / B2))), 4))` - **Formula (Single-Session Daily Rogers-Satchell Volatility %)**: `=IF(OR(B2 <= 0, B3 < MAX(B2, B5), B4 > MIN(B2, B5)), 0, ROUND(100 * SQRT(LN(B3 / B5) * LN(B3 / B2) + LN(B4 / B5) * LN(B4 / B2)), 4))` ### Rohsenow Nucleate Pool Boiling Correlation: Wall Superheat ΔT_e Formula - **URL**: https://sheets.arte-soft.com/en/learn/rohsenow-nucleate-pool-boiling-wall-superheat-correlation/ - **Summary**: Calculate boiler tube wall superheat ΔT_e = T_wall - T_sat (K) for nucleate pool boiling at heat flux q″ via Warren Rohsenow’s 1952 bubble-agitation correlation. *Table — Why q″ scales with ΔT_e^3 in nucleate boiling—requiring barely 11 K superheat for 200 kW/m^2!:* | Boiler Heat Flux q″ (Water 100 °C, Csf = 0.013) | Required Wall Superheat ΔT_e | Effective Boiling h = q″ / ΔT_e | Regime Check vs CHF | | --- | --- | --- | --- | | 200,000 W/m^2 (200 kW/m^2 Kettle Reboiler) | 11.24 K | 17,792 W/(m^2·K) | Safe Nucleate Regime (< 1.1 MW/m^2) | | 500,000 W/m^2 (500 kW/m^2 High-Flux Tube) | 15.26 K | 32,765 W/(m^2·K) | Vigorous Bubble Coalescence | | Invalid q″ <= 0 or ρ_l <= ρ_v | "Invalid Boiling Inputs" | Error Guard | Positivity Check | - **Formula (Rohsenow Nucleate Boiling Excess Wall Superheat ΔT_e (K))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= B8, B9 <= 0), "Invalid Boiling Inputs", ROUND((B3 / B4) * B9 * (((B2 / (B5 * B3)) * SQRT(B6 / (9.80665 * (B7 - B8)))) ^ (1 / 3)) * (B10 ^ B11), 2))` - **Formula (Effective Nucleate Boiling Heat-Transfer Coefficient h = q″ / ΔT_e (W/(m^2·K)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= B8, B9 <= 0), "Invalid Boiling Inputs", ROUND(B2 / ((B3 / B4) * B9 * (((B2 / (B5 * B3)) * SQRT(B6 / (9.80665 * (B7 - B8)))) ^ (1 / 3)) * (B10 ^ B11)), 0))` ### ROIC, NOPAT, and Economic Value Added (EVA) formulas - **URL**: https://sheets.arte-soft.com/en/learn/roic-return-on-invested-capital-nopat-eva-formula/ - **Summary**: Calculate Net Operating Profit After Tax (NOPAT), Operating Invested Capital, ROIC %, and dollar Economic Value Added above WACC. *Table — Compare modeled operating return with a capital charge:* | Value-Creation Metric ($M) | Formula | Sample Result | | --- | --- | --- | | NOPAT ($120M EBIT @ 25% Tax) | =A2 * (1 - B2) | $90.00M | | Invested Capital ($250 Debt + $300 Eq - $50 Cash) | =C2 + D2 - E2 | $500.00M | | ROIC (NOPAT / Invested Capital) | =(A2 * (1 - B2)) / (C2 + D2 - E2) | 18.00% | | Economic Value Added (WACC = 10%) | =NOPAT - InvestedCap * F2 | +$40.00M (+8.0% ROIC-WACC spread) | - **Formula (ROIC (Return on Invested Capital) and Economic Value Added (EVA) formulas)**: `=IF(OR(COUNT(A2:F2)<>6,B2<0,B2>1,C2+D2-E2<=0,F2<0),"Invalid capital inputs",ROUND((A2 * (1 - B2)) / (C2 + D2 - E2), 4))` - **Formula (Dollar Economic Value Added (EVA = NOPAT - Capital Charge))**: `=IF(OR(COUNT(A2:F2)<>6,B2<0,B2>1,C2+D2-E2<=0,F2<0),"Invalid capital inputs",ROUND((A2 * (1 - B2)) - (C2 + D2 - E2) * F2, 2))` ### Roll (1984) Implied Effective Bid-Ask Spread Formula (Serial Autocovariance) - **URL**: https://sheets.arte-soft.com/en/learn/roll-effective-bid-ask-spread-serial-return-autocovariance/ - **Summary**: Infer the hidden effective dollar and basis-point bid-ask spread from transaction prices alone using Roll’s (1984) first-order price-change autocovariance S_Roll = 2 * SQRT(-Cov(dP_t, dP_{t-1})). *Table — Recover effective bid-ask spreads from trade prints without Level-1 quotes!:* | Step | Price Change dP_t ($) | Lagged Change dP_{t-1} ($) | Product (Mean = 0) | | --- | --- | --- | --- | | Obs 1 | +0.06 | -0.04 | -0.0024 | | Obs 2 | -0.04 | +0.06 | -0.0024 | | Obs 3 | +0.04 | -0.06 | -0.0024 | | Obs 4 | -0.06 | +0.04 | -0.0024 (S_Roll = $0.0980) | - **Formula (Roll Implied Effective Dollar Spread ($))**: `=IF(COUNT(B2:B5) < 2, "Need >= 2 Pairs", IF(CORREL(B2:B5, C2:C5) * STDEV.P(B2:B5) * STDEV.P(C2:C5) >= 0, 0, ROUND(2 * SQRT(-(CORREL(B2:B5, C2:C5) * STDEV.P(B2:B5) * STDEV.P(C2:C5))), 4)))` - **Formula (Relative Effective Spread (bps) on Reference Price B6)**: `=IF(OR(B6 <= 0, CORREL(B2:B5, C2:C5) >= 0), 0, ROUND(10000 * (2 * SQRT(-(CORREL(B2:B5, C2:C5) * STDEV.P(B2:B5) * STDEV.P(C2:C5)))) / B6, 2))` ### Roll’s Implied Effective Bid-Ask Spread from First-Order Price Autocovariance - **URL**: https://sheets.arte-soft.com/en/learn/roll-implied-effective-bid-ask-spread-serial-covariance-formula/ - **Summary**: Estimate hidden transaction bid-ask spreads from trade-only price tapes using Richard Roll’s (1984) microstructure formula Spread = 2 * SQRT(MAX(0, -Cov(Delta_P_t, Delta_P_{t-1}))). *Table — How bid-ask bounce creates negative lag-1 serial covariance in trade prices:* | Microstructure Metric | Formula | Bounce Tape [100.25, 99.75, ...] | | --- | --- | --- | | Price Change Delta_P_t | B3 - B2 | [-0.50, +0.50, -0.50, +0.50, -0.50] | | Lag-1 Serial Covariance | SUMPRODUCT((cur - mu_c)*(lag - mu_l)) / N | -0.2500 | | Roll Dollar Spread (s) | 2 * SQRT(MAX(0, -Cov_1)) | 1.0000 ($1.00 wide) | | Proportional Spread (bps) | (Roll_Spread / Mean_Price) * 10000 | 100.0 bps (1.00%) | - **Formula (Lag-1 Autocovariance & Roll Dollar Spread Formula)**: `=LET(cnt, COUNT(C4:C7), mu_cur, AVERAGE(C4:C7), mu_lag, AVERAGE(C3:C6), cov_lag, SUMPRODUCT((C4:C7 - mu_cur) * (C3:C6 - mu_lag)) / cnt, ROUND(2 * SQRT(MAX(0, -cov_lag)), 4))` - **Formula (Basis-Point Effective Spread Relative to Mean Trade Price)**: `=ROUND((F3 / AVERAGE(B2:B7)) * 10000, 1)` ### Roll Serial-Covariance Implicit Bid-Ask Spread Formula - **URL**: https://sheets.arte-soft.com/en/learn/roll-serial-covariance-implicit-bid-ask-spread-estimator/ - **Summary**: Estimate effective bid-ask spread s_Roll = 2 * SQRT(-Cov(Delta_P_t, Delta_P_{t-1})) from transaction prices alone without quote data via Richard Roll’s (1984) bounce formula. *Table — Recover hidden bid-ask spreads from trade prices alone when Level-1 quote tapes are unavailable!:* | Roll Microstructure Metric (6 Prints: 100.00 / 100.20) | Formula | Verified Output | | --- | --- | --- | | First-Order Serial Covariance (Cov_1) | AVERAGE(D4:D7) | -0.0100 | | Roll Implicit Dollar Spread (s_Roll) | IF(Cov_1 >= 0, 0, 2 * SQRT(-Cov_1)) | 0.2000 (= Ask 100.20 - Bid 100.00!) | | Implicit Half-Spread Execution Cost | s_Roll / 2 | 0.1000 per one-way trade | | Momentum / Trending Tape Guard (Cov_1 >= 0) | Zero-Clamp Convention (Harris 1990) | 0.0000 (Avoids #NUM! on SQRT) | - **Formula (Row-Helper Demeaned First-Order Serial Covariance Formula)**: `=ROUND(AVERAGE(D4:D7), 6)` - **Formula (Zero-Clamped Roll Implicit Effective Spread 2 * SQRT(-Cov_1) Formula)**: `=LET(cv_1, AVERAGE(D4:D7), IF(MIN(B2:B7) <= 0, "Require Positive Prices", IF(cv_1 >= 0, 0, ROUND(2 * SQRT(-cv_1), 4))))` ### Rolled Throughput Yield (RTY = PRODUCT) & Hidden Factory DPU formulas - **URL**: https://sheets.arte-soft.com/en/learn/rolled-throughput-yield-rty-and-process-sigma-defect/ - **Summary**: Multiply sequential step First-Pass Yields with PRODUCT(B2:B5) to expose multi-step "Hidden Factory" rework loss and Poisson Defects per Unit (-LN(RTY)). *Table — Combine first-pass yields with compatible denominators:* | Pipeline Stage | First-Pass Yield (B) | Cumulative RTY So Far | Six Sigma Interpretation | | --- | --- | --- | --- | | Stage 1: Machining | 0.95 (95.0%) | 95.00% | 5% fail the first-pass check | | Stage 2: Welding | 0.92 (92.0%) | 87.40% | Compounded loss grows | | Stage 3: Coating | 0.96 (96.0%) | 83.90% | | | Stage 4: Final Test | 0.90 (90.0%) | RTY = 75.51% (0.7551) | Modeled first-pass failure = 24.49% \| Poisson-implied DPU = 0.2809 | - **Formula (Calculate multi-stage Rolled Throughput Yield (RTY))**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0,MAX(B2:B5)>1),"Invalid inputs",ROUND(PRODUCT(B2:B5), 4))` - **Formula (Hidden Factory rework share (1 - RTY) and Poisson Defects Per Unit (-LN(RTY)))**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0,MAX(B2:B5)>1),"Invalid inputs",IF(PRODUCT(B2:B5)=0,"No finite DPU",ROUND(-LN(PRODUCT(B2:B5)), 4)))` ### Roller Chain Sprocket Pitch Diameter & Chordal Ripple Formula - **URL**: https://sheets.arte-soft.com/en/learn/roller-chain-sprocket-pitch-diameter-chordal-polygonal-speed-variation/ - **Summary**: Calculate Exact Polygon Sprocket Pitch Diameter D_p (mm), Chordal Speed Variation Ripple (%), Mean Linear Chain Velocity (m/s), and Chain Strand Tension (N) from kW. *Table — Sprockets are polygons, not circles—dividing N*P by PI() miscalculates pitch diameter AND hides chordal vibration!:* | ANSI #60 Sprocket KPI (P = 19.05 mm, N = 19 Teeth, 900 RPM, 15 kW) | Formula | Verified Output | | --- | --- | --- | | Polygon Pitch Diameter Dp (mm) | Chain_Pitch_mm / SIN(PI() / Teeth_N) | 115.74 mm (67.62 @ N = 11) | | Chordal Speed Variation (%) | (1 - COS(PI() / Teeth_N)) * 100 | 1.36% (4.05% @ N = 11!) | | Mean Linear Chain Velocity (m/s) | (Pitch_mm * Teeth_N * RPM) / 60000 | 5.43 m/s (3.14 @ N = 11) | | Working Chain Strand Pull (N) | (Power_kW * 1000) / Velocity_m_s | 2,762.81 N | - **Formula (Exact Polygon Sprocket Pitch Diameter & Chordal Action Formula)**: `=LET(pt_m, B2, nt_s, B3, rp_m, B4, pw_k, B5, IF(OR(pt_m <= 0, nt_s < 9, INT(nt_s) <> nt_s, rp_m <= 0, pw_k <= 0), "Invalid Sprocket Input", ROUND((1 - COS(PI() / nt_s)) * 100, 2)))` - **Formula (Undersized 11-Tooth Sprocket Chordal Vibration Spike Check (Set Teeth N = 11))**: `=IF(ISTEXT(E3), E3, ROUND((B5 * 1000) / ((B2 * B3 * B4) / 60000), 2))` ### Calculate RMSE and MSE: Root Mean Squared Error forecast accuracy formula - **URL**: https://sheets.arte-soft.com/en/learn/root-mean-squared-error-rmse-and-mse/ - **Summary**: Score demand and revenue forecasts in a single formula without helper columns using SQRT(SUMPRODUCT((Actual - Forecast)^2) / ROWS(Actual)). *Table — Penalize large forecast misses in original unit scale:* | Period | Actual (A) | Forecast (B) | Error (A - B) | Squared Error | | --- | --- | --- | --- | --- | | Q1 | 100 | 104 | -4 | 16 | | Q2 | 120 | 114 | +6 | 36 | | Q3 | 90 | 93 | -3 | 9 | | Q4 | 110 | 115 | -5 | 25 | - **Formula (Single-cell RMSE and MSE formulas)**: `=ROUND(SQRT(SUMPRODUCT((A2:A5 - B2:B5)^2) / ROWS(A2:A5)), 2)` - **Formula (Mean Squared Error (MSE) without square root)**: `=SUMPRODUCT((A2:A5 - B2:B5)^2) / ROWS(A2:A5)` ### Rosen-Roback Spatial Equilibrium Wage & Rent Formula - **URL**: https://sheets.arte-soft.com/en/learn/rosen-roback-spatial-equilibrium-urban-wage-and-rent-amenity-formula/ - **Summary**: Invert Sherwin Rosen (1979) and Jennifer Roback’s (1982) spatial equilibrium conditions to extract unobserved Household Consumption Amenities (s_R*d_ln_r - d_ln_w) and Firm Agglomeration Productivity (theta_L*d_ln_w + theta_R*d_ln_r). *Table — Infer whether high city rents come from coastal quality-of-life or firm productivity!:* | Rosen-Roback Spatial Metric (s_R=0.30, th_L=0.80, th_R=0.10, dw=+0.12, dr=+0.50) | Formula | Verified Output | | --- | --- | --- | | Real Housing-Adjusted Log Wage | d_ln_w - s_R * d_ln_r | -0.0300 (-3.00%) | | Consumption Quality-of-Life Amenity (A_cons) | s_R * d_ln_r - d_ln_w | +0.0300 (+3.00% Income Equiv) | | Productive Agglomeration TFP (A_prod) | theta_L * d_ln_w + theta_R * d_ln_r | +0.1460 (+14.60% TFP) | | Roback Spatial Quadrant | Sign(A_cons) x Sign(A_prod) | Superstar Productive & High-Amenity City | - **Formula (Implied Household Consumption Amenity A_cons Formula)**: `=LET(sr_hh, B2, tl_fm, B3, tr_fm, B4, dw_lg, B5, dr_lg, B6, IF(OR(sr_hh <= 0, sr_hh >= 1, tl_fm <= 0, tr_fm < 0, tl_fm + tr_fm > 1), "Invalid Spatial Share", ROUND(sr_hh * dr_lg - dw_lg, 4)))` - **Formula (Implied Firm Agglomeration Productivity A_prod & Quadrant Formula)**: `=IF(ISTEXT(E2), E2, IF(AND(E2 > 0, E3 > 0), "Superstar Productive & High-Amenity City", IF(AND(E2 <= 0, E3 > 0), "Industrial Hub (Disamenity Compensated)", IF(AND(E2 > 0, E3 <= 0), "Resort Consumption Amenity Town", "Declining Low-Amenity Low-TFP City"))))` ### Rosenbaum Sensitivity Bounds (Gamma) for Matched-Pair Studies - **URL**: https://sheets.arte-soft.com/en/learn/rosenbaum-sensitivity-bounds-matched-pairs-hidden-bias-gamma/ - **Summary**: Calculate Rosenbaum hidden-bias probability bounds p_plus = Gamma / (1 + Gamma) and worst-case McNemar discordant-pair Z-scores to find the exact confounding odds Gamma that tips significance. *Table — Stress-test propensity-matched pairs against unobserved confounding odds Gamma:* | Hidden Bias Factor Gamma | Upper Null Prob p_plus | Worst-Case Z_min (n=64, T=44) | | --- | --- | --- | | Gamma = 1.00 (No Hidden Bias) | 0.5000 | 3.0000 (Significant at 5%) | | Gamma = 1.25 (Moderate Bias) | 0.5556 | 2.1243 (Robust >= 1.6449) | | Gamma = 1.50 (Tipping Threshold) | 0.6000 | 1.4289 (Fragile < 1.6449) | - **Formula (Rosenbaum Upper-Bound Null Probability and Worst-Case Z_min Formula)**: `=LET(n_d, B2, t_w, B3, gam_b, B4, IF(OR(n_d <= 0, t_w < 0, t_w > n_d, gam_b < 1), "Invalid Sensitivity Input", LET(p_up, gam_b / (1 + gam_b), mu_up, n_d * p_up, sd_up, SQRT(n_d * p_up * (1 - p_up)), ROUND((t_w - mu_up) / sd_up, 4))))` - **Formula (One-Sided 5% Tipping Verdict Gate (Z_min >= 1.6449) Formula)**: `=LET(z_min, E4, IF(ISTEXT(z_min), z_min, IF(z_min >= 1.6449, "Robust at Gamma", "Tips to Non-Significant")))` ### ROSIER Scale Formula: Recognition of Stroke in the Emergency Room (-2 to +5) - **URL**: https://sheets.arte-soft.com/en/learn/rosier-recognition-of-stroke-in-emergency-room-triage-score/ - **Summary**: Distinguish acute stroke/TIA (ROSIER > 0) from seizure or syncope mimics using Azlisham Mohd Nor’s 7-item emergency triage score (-2 to +5 points) after excluding hypoglycemia. *Table — Why ROSIER subtracts -1 point each for loss of consciousness/syncope and seizure activity—after checking blood glucose >= 3.5 mmol/L first!:* | Clinical Presentation (Glucose >= 3.5 mmol/L) | Mimic Deductions vs Focal Signs | ROSIER Score (-2 to +5) | ED Code Stroke Triage | | --- | --- | --- | --- | | Face + Arm + Speech Deficit, No Syncope/Seizure | 0 Deductions + 3 Focal | +3 | "Stroke Likely (ROSIER > 0 — Urgent Brain CT)" | | Witnessed Seizure + Transient Arm Weakness | -1 Seizure + 1 Arm | 0 | "Stroke Unlikely (ROSIER <= 0 — Evaluate Mimics)" | | Capillary Glucose 2.4 mmol/L (< 3.5 mmol/L) | Mandatory Pre-Check | "Correct Hypoglycemia (< 3.5 mmol/L) First" | Hypoglycemia Mimic Guard | - **Formula (ROSIER Emergency Room Stroke Score (-2 to +5 Points, Glucose Guarded))**: `=IF(B2 <= 0, "Invalid Glucose Input", IF(B2 < 3.5, "Correct Hypoglycemia (< 3.5 mmol/L) First", IF(OR(MIN(B3:B9) < 0, MAX(B3:B9) > 1), "Flags Must Be 0 or 1", SUM(B5:B9) - B3 - B4)))` - **Formula (NICE CG68 / Newcastle ROSIER > 0 Code Stroke Decision Rule)**: `=IF(B2 <= 0, "Invalid Glucose Input", IF(B2 < 3.5, "Correct Hypoglycemia (< 3.5 mmol/L) First", IF(OR(MIN(B3:B9) < 0, MAX(B3:B9) > 1), "Flags Must Be 0 or 1", IF(SUM(B5:B9) - B3 - B4 > 0, "Stroke Likely (ROSIER > 0 — Urgent Brain CT)", "Stroke Unlikely (ROSIER <= 0 — Evaluate Mimics)"))))` ### Rosin-Rammler (RRSB) Particle Size Distribution Formula: Cumulative Retained & Passing % - **URL**: https://sheets.arte-soft.com/en/learn/rosin-rammler-weibull-particle-size-distribution-retained-pct/ - **Summary**: Model pulverized coal, cement clinker, pharmaceutical sprays, and cyclone dusts using Rosin & Rammler’s 1933 Weibull sieve law R(d) = 100 * EXP(-(d / d_63.2)^n) and cumulative passing P(d) = 100 - R(d). *Table — Six years before Weibull’s 1939 reliability paper: Rosin & Rammler’s 1933 pulverized-powder law!:* | Sieve Aperture d (d_char = 300 um, n = 1.85) | Cumulative Retained R(d) % | Cumulative Passing P(d) % | | --- | --- | --- | | Coarse Check Sieve d = 450 um | 12.04% Oversize | 87.96% Passing | | Characteristic Size d = 300 um | 36.79% (= 100/e) | 63.21% Passing | | Fine Sieve d = 150 um | 75.78% Oversize | 24.22% Passing | - **Formula (Rosin-Rammler Cumulative Mass Retained Percentage R(d) = 100 * EXP(-(d / d_char)^n))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid Rosin-Rammler Parameters", ROUND(100 * EXP(-((B2 / B3) ^ B4)), 2))` - **Formula (Rosin-Rammler Cumulative Mass Passing Percentage P(d) = 100 - R(d))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0), "Invalid Rosin-Rammler Parameters", ROUND(100 - 100 * EXP(-((B2 / B3) ^ B4)), 2))` ### Rossby Number (Ro), Coriolis Parameter (f) & Geostrophic Wind Speed - **URL**: https://sheets.arte-soft.com/en/learn/rossby-number-coriolis-parameter-and-geostrophic-wind-speed/ - **Summary**: Calculate the planetary Coriolis parameter f = 2 * Omega * SIN(phi), atmospheric/oceanic Rossby number Ro = U / (|f| * L), and geostrophic wind speed Ug = (dP / dn) / (rho * |f|). *Table — Diagnose when Earth’s rotation locks synoptic pressure gradients into geostrophic balance!:* | Latitude Scenario (U = 20 m/s, L = 1000 km, dP/100km = 150 Pa) | Coriolis \|f\| (x 10^-4 s^-1) | Rossby Number Ro | Geostrophic Wind Ug (m/s) | | --- | --- | --- | --- | | Mid-Latitude Extratropical Cyclone (45° N) | 1.0313 | 0.194 (Quasi-Geostrophic) | 11.87 m/s | | Subtropical Flow (15° N) | 0.3775 | 0.530 (Ageostrophic Drift) | 32.44 m/s | | Exact Equator (0° Latitude) | 0.0000 | Singularity Guard | "Equatorial / Invalid Inputs" | - **Formula (Dimensionless Atmospheric / Oceanic Rossby Number Ro = U / (|f| * L))**: `=IF(OR(B2 = 0, ABS(B2) > 90, B3 <= 0, B4 <= 0, B6 <= 0), "Equatorial / Invalid Inputs", ROUND(B3 / ((2 * 0.000072921 * ABS(SIN(RADIANS(B2)))) * (B4 * 1000)), 3))` - **Formula (Geostrophic Wind Speed Ug (m/s) = (dP_100km / 100000) / (rho * |f|))**: `=IF(OR(B2 = 0, ABS(B2) > 90, B5 < 0, B6 <= 0), "Equatorial / Invalid Inputs", ROUND((B5 / 100000) / (B6 * (2 * 0.000072921 * ABS(SIN(RADIANS(B2))))), 2))` ### Rotary Airlock Feeder Displacement & Solids Loading Formula - **URL**: https://sheets.arte-soft.com/en/learn/rotary-airlock-feeder-pocket-displacement-rotor-fill-efficiency-and-blowby/ - **Summary**: Calculate Theoretical Rotor Swept Volume (m³/h), Pocket-Fill-Adjusted Volumetric Feed (m³/h), Powder Mass Feed Rate (kg/h), and Dilute-Phase Solids-to-Air Mass Loading Ratio mu. *Table — Run a rotary airlock rotor too fast or omit pocket venting and blow-by air cuts actual powder feed 30%–50% below swept volume!:* | Rotary Airlock Pneumatic KPI (14.0 L/rev @ 22 RPM, eta=0.72, rho=0.65 kg/L) | Formula | Verified Output | | --- | --- | --- | | Swept Rotor Displacement (m³/h) | (Rotor_L_rev * RPM * 60) / 1000 | 18.48 m³/h | | Actual Volumetric Feed (m³/h) | Swept_Displacement_m3_hr * Fill_Eff | 13.31 m³/h (8.87 m³/h @ blow-by 0.48) | | Powder Mass Feed Rate (kg/h) | Actual_Vol_m3_hr * 1000 * Bulk_kg_L | 8,648.64 kg/h (5,765.76 kg/h @ 0.48) | | Solids-to-Air Loading Ratio mu | Powder_Mass_kg_hr / Air_Mass_kg_hr | 7.21 (4.80 starved line @ 0.48 fill) | - **Formula (Rotary Airlock Pocket Fill Efficiency & Pneumatic Phase-Loading Ratio Formula)**: `=LET(vr_l, B2, nr_m, B3, ef_p, B4, rb_k, B5, ma_h, B6, IF(OR(vr_l <= 0, nr_m <= 0, nr_m > 60, ef_p <= 0, ef_p > 1, rb_k <= 0, ma_h <= 0), "Invalid Airlock Input", LET(qs_m, (vr_l * nr_m * 60) / 1000, ms_h, qs_m * ef_p * 1000 * rb_k, ROUND(ms_h / ma_h, 2))))` - **Formula (Unvented High-Differential Blow-By Starvation Check (Set Pocket Fill Efficiency = 0.48))**: `=IF(ISTEXT(E5), E5, ROUND((((B2 * B3 * 60) / 1000) * B4) * 1000 * B5, 2))` ### Rotary Desiccant Wheel Moisture Removal & Regen Formula - **URL**: https://sheets.arte-soft.com/en/learn/rotary-desiccant-dehumidifier-wheel-moisture-removal-rate-and-regeneration-heat/ - **Summary**: Calculate AHRI 940 Moisture Removal Capacity MRC (kg/h), Process Latent Heat of Sorption Released (kW), Reactivation Heater Thermal Input (kW), and Specific Regeneration Energy (kWh/kg). *Table — Cooling coils freeze solid near 0 °C dew point—sub-zero dry rooms rely on desiccant wheels that trade latent vapor into sensible heat!:* | AHRI 940 Desiccant Wheel KPI (Qp=3,200 m³/h, 13.8 -> 4.2 g/kg, Qr=1,050 m³/h @ +95°C) | Formula | Verified Output | | --- | --- | --- | | Moisture Removal Capacity MRC (kg/h) | (Qproc * rho * (w_in_g_kg - w_out)) / 1000 | 36.86 kg/h (47.23 kg/h @ 1.5 g/kg deep dry) | | Latent Sorption Heat Released (kW) | (MRC_kg_hr * 2450) / 3600 | 25.09 kW (32.14 kW @ 1.5 g/kg) | | Reactivation Heater Power (kW) | ((Qreg * rho) / 3600) * 1.006 * dT_reg_C | 33.45 kW (44.01 kW @ +125 °C regen) | | Specific Regen Energy (kWh / kg) | Reactivation_Power_kW / MRC_kg_hr | 0.91 kWh/kg (0.93 kWh/kg @ +125 °C) | - **Formula (AHRI 940 Desiccant Moisture Removal Capacity & Specific Regeneration Formula)**: `=LET(qp_h, B2, rh_a, B3, wi_g, B4, wo_g, B5, qr_h, B6, dt_r, B7, mr_k, (qp_h * rh_a * (wi_g - wo_g)) / 1000, pw_r, ((qr_h * rh_a) / 3600) * 1.006 * dt_r, IF(OR(qp_h <= 0, rh_a < 0.8, rh_a > 1.5, wo_g < 0, wi_g <= wo_g, wi_g > 40, qr_h <= 0, dt_r < 40, dt_r > 180), "Invalid Desiccant Input", ROUND(pw_r / mr_k, 2)))` - **Formula (Sub-Zero Dew-Point 1.50 g/kg Deep-Drying Upgrade Check (Set w_out = 1.50 g/kg & Regen Rise = 125.0 °C))**: `=IF(ISTEXT(E5), E5, ROUND(((B6 * B3) / 3600) * 1.006 * B7, 2))` ### Rotary Kiln Sullivan Residence Time & Fill % Formula - **URL**: https://sheets.arte-soft.com/en/learn/rotary-kiln-sullivan-solids-residence-time-angle-of-repose-and-fill-degree-formula/ - **Summary**: Calculate USBM Sullivan Solids Mean Residence Time (min), Axial Bed Advance Velocity (m/min), In-Kiln Solids Holdup Inventory (tonnes), and Volumetric Fill Degree (%). *Table — Slowing a rotary calciner’s VFD drive from 1.8 to 1.1 RPM stretches residence time 64%—and piles 20 extra tonnes of hot clinker onto the trunnion rollers!:* | USBM Sullivan Rotary Kiln KPI (L=55 m, D=3.4 m, S=2.2°, theta=38°, 42 t/h, N=1.8 vs 1.1 RPM) | Formula | Verified Output | | --- | --- | --- | | Mean Residence Time tau (min) | (1.77 * L_m * SQRT(theta_deg)) / (S_deg * D_m * N) | 44.57 min (72.93 min @ N=1.1 RPM) | | Axial Bed Velocity (m/min) | Kiln_Length_L_m / Residence_Time_min | 1.234 m/min (0.754 m/min @ N=1.1 RPM) | | In-Kiln Solids Holdup (tonnes) | Feed_Rate_t_h * (Residence_Time_min / 60) | 31.20 t (51.05 t trunnion load @ 1.1 RPM!) | | Volumetric Fill Degree (%) | ((Holdup_t / Bulk_rho) / ((PI()/4)*D^2*L))*100 | 4.63% (7.57% deeper bed @ 1.1 RPM) | - **Formula (USBM Sullivan Tumbling-Cascade Residence Time, Holdup & Fill Degree Formula)**: `=LET(lk_m, B2, dk_m, B3, sl_d, B4, nr_p, B5, th_d, B6, fd_t, B7, rb_t, B8, tr_m, (1.77 * lk_m * SQRT(th_d)) / (sl_d * dk_m * nr_p), mh_t, fd_t * (tr_m / 60), vk_m, (PI() / 4) * (dk_m ^ 2) * lk_m, IF(OR(lk_m <= 3, dk_m <= 0.3, sl_d < 0.3, sl_d > 8, nr_p <= 0.1, nr_p > 15, th_d < 15, th_d > 55, fd_t <= 0, rb_t <= 0.2), "Invalid Kiln Input", ROUND(((mh_t / rb_t) / vk_m) * 100, 2)))` - **Formula (Slowed 1.1 RPM Shell Speed Holdup Surge Check (Set Kiln Speed B5 = 1.1 RPM))**: `=IF(ISTEXT(E5), E5, ROUND((1.77 * B2 * SQRT(B6)) / (B4 * B3 * B5), 2))` ### Rotary Trommel Screen Critical RPM & Bed Fill Formula - **URL**: https://sheets.arte-soft.com/en/learn/rotary-trommel-screen-critical-speed-helix-residence-time-and-bed-depth-formula/ - **Summary**: Calculate Drum Critical Centrifuging Speed Ncrit (RPM), Operating % Critical Speed, Cascade Helix Residence Time (s), and Cross-Sectional Bed Holdup Fill (%) for Undersize Screening. *Table — Flatten a trommel screen slope to 1.8° at 28% critical speed and a 22.6% deep material bed blinds screen apertures so fines ride straight out the oversize chute!:* | Rotary Trommel Screening KPI (D=2.2 m, L=7.5 m, Q=85 t/h, rho=0.95 t/m³) | Formula | Verified Output | | --- | --- | --- | | Critical Centrifuging Speed (RPM) | 42.3 / SQRT(Drum_ID_D_m) | 28.52 RPM | | Operating % Critical Speed (%) | (Operating_RPM / Critical_RPM) * 100 | 47.3% active cascade (28.1% sluggish) | | Drum Residence Time tres (s) | (Length_m / (RPM * PI() * D * TAN(rad))) * 60 | 61.3 s (259.0 s over-retained!) | | Cross-Sectional Bed Fill (%) | ((Feed_m3_min / Axial_m_min) / Drum_Area) * 100 | 5.34% clean (<15%) vs 22.58% FLOODED! | - **Formula (Trommel Critical Speed Ratio, Helical Cascade Transport & Bed Holdup Formula)**: `=LET(dd_m, B2, ls_m, B3, nr_p, B4, sl_d, B5, qf_t, B6, rb_t, B7, nc_r, 42.3 / SQRT(dd_m), va_m, nr_p * PI() * dd_m * TAN((sl_d * PI()) / 180), ad_m, (PI() / 4) * (dd_m ^ 2), IF(OR(dd_m < 0.5, dd_m > 5, ls_m < 1.5, ls_m > 25, nr_p < 0.15 * nc_r, nr_p > 0.85 * nc_r, sl_d < 1, sl_d > 12, qf_t <= 0.5, rb_t < 0.2, rb_t > 3), "Invalid Trommel Input", ROUND(((((qf_t / 60) / rb_t) / va_m) / ad_m) * 100, 2)))` - **Formula (Shallow 1.8° Slope + VFD Turn-Down to 8.0 RPM Bed-Flooding Check)**: `=IF(ISTEXT(E5), E5, LET(va_m, B4 * PI() * B2 * TAN((B5 * PI()) / 180), ROUND((B3 / va_m) * 60, 1)))` ### Rotational Molding Powder Shot Weight & Bulk Fill Formula - **URL**: https://sheets.arte-soft.com/en/learn/rotational-molding-powder-shot-weight-hollow-part-wall-thickness-and-piat-cycle/ - **Summary**: Calculate Required Pulverized PE Charge Weight (kg), Unmelted Powder Loose Volume (L), Cold-Mold Volumetric Fill Fraction (%), and Solid-to-Powder Compaction Ratio. *Table — Pulverized rotomolding polyethylene takes up 2.56x MORE volume than solid plastic—overfilling a hollow mold past 55% chokes powder tumbling!:* | ARM Rotomolding Charge KPI (A=3.85 m², PE 936/365 kg/m³: 420L/5.2mm vs Flat 110L/8.5mm) | Formula | Verified Output | | --- | --- | --- | | Powder Charge Shot Weight (kg) | Surface_Area_m2 * (Wall_mm / 1000) * rho_solid | 18.74 kg (30.63 kg @ heavy 8.5 mm wall) | | Cold Loose Powder Volume (L) | (Shot_Weight_kg / Powder_Bulk_Density) * 1000 | 51.3 L (83.9 L loose powder) | | Cold Mold Cavity Fill (%) | (Loose_Powder_Vol_L / Mold_Vol_L) * 100 | 12.22% (76.29% > 60% CHOKED @ 110 L!) | | Solid-to-Bulk Density Ratio | Solid_PE_Density / Powder_Bulk_Density | 2.56 : 1 | - **Formula (Rotomolding Shell Mass Balance & Cold-Powder Free-Cascade Fill Formula)**: `=LET(am_s, B2, vm_l, B3, tw_m, B4, rs_k, B5, rb_k, B6, IF(OR(am_s <= 0.05, vm_l <= 1, tw_m < 1, tw_m > 25, rs_k < 850, rs_k > 1500, rb_k < 0.25 * rs_k, rb_k > 0.65 * rs_k), "Invalid Rotomold Input", ROUND(rs_k / rb_k, 2)))` - **Formula (Narrow Double-Wall Dock Float (V = 110 L, Wall = 8.5 mm) Drop-Box Choking Check)**: `=IF(ISTEXT(E5), E5, LET(ms_k, B2 * (B4 / 1000) * B5, vl_l, (ms_k / B6) * 1000, ROUND((vl_l / B3) * 100, 2)))` ### Rothman Additive Interaction: RERI, AP, and Synergy Index (S) - **URL**: https://sheets.arte-soft.com/en/learn/rothman-additive-interaction-reri-attributable-proportion-synergy/ - **Summary**: Calculate Relative Excess Risk due to Interaction (RERI = RR_11 - RR_10 - RR_01 + 1), Attributable Proportion (AP), and Rothman’s Synergy Index (S) to detect public-health synergy missed by multiplicative models. *Table — Catch biologic synergy that a multiplicative logistic/Cox product term reports as zero!:* | Interaction Measure | Formula in Relative Risks | Sample Value & Null | | --- | --- | --- | | Multiplicative Ratio RR_11 / (RR_10 * RR_01) | 12 / (3 * 4) | 1.0000 (Misses Additive Synergy!) | | Relative Excess Risk (RERI / ICR) | RR_11 - RR_10 - RR_01 + 1 | +6.0000 (Null = 0) | | Attributable Proportion (AP) | RERI / RR_11 | 0.5000 (50% of Joint Cases; Null = 0) | | Rothman Synergy Index (S) | (RR_11 - 1) / ((RR_10 - 1) + (RR_01 - 1)) | 2.2000 (Null = 1.0) | - **Formula (Relative Excess Risk due to Interaction (RERI) and Attributable Proportion (AP) Formula)**: `=LET(r_00, B2, r_10, B3, r_01, B4, r_11, B5, IF(OR(r_00 <= 0, r_00 > 1, r_10 < 0, r_10 > 1, r_01 < 0, r_01 > 1, r_11 <= 0, r_11 > 1), "Invalid Risk Probability", LET(rr_10, r_10 / r_00, rr_01, r_01 / r_00, rr_11, r_11 / r_00, ROUND(rr_11 - rr_10 - rr_01 + 1, 4))))` - **Formula (Rothman Synergy Index S = (RR_11 - 1) / ((RR_10 - 1) + (RR_01 - 1)) Formula)**: `=LET(r_00, B2, r_10, B3, r_01, B4, r_11, B5, IF(OR(r_00 <= 0, r_00 > 1, r_10 < 0, r_10 > 1, r_01 < 0, r_01 > 1, r_11 <= 0, r_11 > 1), "Invalid Risk Probability", LET(ex_sum, (r_10 / r_00 - 1) + (r_01 / r_00 - 1), IF(ABS(ex_sum) <= 1E-9, "Undefined Synergy Denom (Use RERI)", ROUND((r_11 / r_00 - 1) / ex_sum, 4)))))` ### Rothschild-Stiglitz Insurance Screening Deductible Formula - **URL**: https://sheets.arte-soft.com/en/learn/rothschild-stiglitz-competitive-insurance-screening-coverage/ - **Summary**: Solve the incentive-compatible Low-risk partial coverage deductible D_L* and test Rothschild-Stiglitz separating equilibrium existence lambda_H >= lambda_H*. *Table — Why Low-risk insureds face mandatory deductibles — and when equilibrium breaks down!:* | Rothschild-Stiglitz Metric (L=1200, p_H=0.5, p_L=0.2, gamma=0.004) | Formula | Verified Output | | --- | --- | --- | | Separating Low-Risk Deductible (D_L*) | Exact IC Quadratic Root | 600.00 (50% Coverage) | | Low-Risk Partial Coverage (q_L*) | L - D_L* | 600.00 (Prem = 120.00) | | Existence Threshold Share (lambda_H*) | (0.5*gamma*p_L*(1-p_L)*D_L*^2) / ((p_H-p_L)*L) | 0.3200 (32.00%) | | Market Regime at lambda_H = 0.40 | IF(lambda_H >= lambda_H*, Separating, No Nash) | Separating Equilibrium | - **Formula (Exact Incentive-Compatible Separating Deductible D_L* Formula)**: `=LET(loss_l, B2, p_hi, B3, p_lo, B4, gam_r, B5, IF(OR(loss_l <= 0, p_lo <= 0, p_hi <= p_lo, p_hi >= 1, gam_r <= 0), "Invalid Screening Input", LET(dp_hl, p_hi - p_lo, a_qd, gam_r * p_hi * (1 - p_hi), disc_v, (dp_hl^2) + 2 * a_qd * dp_hl * loss_l, ROUND((-dp_hl + SQRT(disc_v)) / a_qd, 4))))` - **Formula (Rothschild-Stiglitz Critical High-Risk Share lambda_H* for Equilibrium Existence Formula)**: `=LET(loss_l, B2, p_hi, B3, p_lo, B4, gam_r, B5, IF(OR(loss_l <= 0, p_lo <= 0, p_hi <= p_lo, p_hi >= 1, gam_r <= 0), "Invalid Screening Input", LET(dp_hl, p_hi - p_lo, a_qd, gam_r * p_hi * (1 - p_hi), d_low, (-dp_hl + SQRT((dp_hl^2) + 2 * a_qd * dp_hl * loss_l)) / a_qd, cost_sep, 0.5 * gam_r * p_lo * (1 - p_lo) * (d_low^2), ROUND(cost_sep / (dp_hl * loss_l), 4))))` ### Rough-Cut Capacity Planning (RCCP) & Overtime Formula - **URL**: https://sheets.arte-soft.com/en/learn/rough-cut-capacity-planning-rccp-work-center-load-and-overtime-formula/ - **Summary**: Validate a Master Production Schedule (MPS) using APICS Rough-Cut Capacity Planning (RCCP): Required Standard Hours, Demonstrated Capacity (Machines * Clock_Hours * Utilization_Efficiency), Load-to-Capacity Ratio, and Clock Overtime Hours. *Table — Divide standard-hour shortfalls by Utilization*Efficiency when scheduling clock overtime!:* | APICS RCCP Bottleneck Metric (2,000 Units @ 0.30h + 40h Setup; 4 Mach * 160h * 0.80) | Formula | Verified Output | | --- | --- | --- | | Required MPS Load (Std Hours) | MPS_Units * Run_Std_Hrs + Setup_Hrs | 640.00 std hrs (460.00 @ 1,400 u) | | Demonstrated Capacity (Std Hrs) | Machines * Clock_Hrs * Util_Eff | 512.00 std hrs (vs 640 Gross!) | | Work-Center Load Ratio | Required_Std_Hrs / Demonstrated_Cap | 1.2500 (125.0%; 0.8984 @ 1,400 u) | | Required Clock Overtime (Hrs) | MAX(0, Load - Cap) / Util_Eff | 160.00 clock hrs (0.00 @ 1,400 u) | - **Formula (APICS RCCP Clock Overtime Requirement Formula)**: `=LET(mp_u, B2, rn_h, B3, st_h, B4, mc_n, B5, cl_h, B6, ue_f, B7, IF(OR(mp_u < 0, rn_h <= 0, st_h < 0, mc_n < 1, cl_h <= 0, ue_f <= 0, ue_f > 1.5), "Invalid RCCP Work-Center Spec", LET(ld_s, mp_u * rn_h + st_h, cp_s, mc_n * cl_h * ue_f, ROUND(MAX(0, ld_s - cp_s) / ue_f, 2))))` - **Formula (Feasible Level-Loaded MPS Check (Set MPS_Units = 1,400))**: `=IF(ISTEXT(E5), E5, ROUND(E2 / E3, 4))` ### Round order quantity up to case-pack / MOQ bundle size (CEILING & excess units) - **URL**: https://sheets.arte-soft.com/en/learn/round-order-quantity-up-to-pack-or-pallet-bundle-size/ - **Summary**: Enforce supplier Minimum Order Quantity (MOQ) and case-pack multiples, calculate sealed cases to order, and track overage buffer units. *Table — Procurement reality: suppliers ship sealed 24-unit cases with a 96-unit MOQ!:* | Net Demand (A2) | Pack=24, MOQ=96 Order Qty | Sealed Cases to PO | Excess Buffer Stock | | --- | --- | --- | --- | | 130 units | 144 units | 6 cases (144 / 24) | +14 units | | 30 units (< MOQ) | 96 units (MOQ floor!) | 4 cases | +66 units | | 0 units (No need) | 0 units (Zero-guarded!) | 0 cases | 0 units | - **Formula (MOQ-aware case-pack order quantity, case count, and overage units)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,A2<>INT(A2),B2<=0,B2<>INT(B2),C2<0,C2<>INT(C2)),"Invalid inputs",IF(A2=0,0,CEILING(MAX(A2,C2),B2)))` - **Formula (Number of sealed master cases to list on the Purchase Order)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,A2<>INT(A2),B2<=0,B2<>INT(B2),C2<0,C2<>INT(C2)),"Invalid inputs",IF(A2=0,0,CEILING(MAX(A2,C2),B2)/B2))` ### Round retail prices to end in .99 or .95 (charm pricing formulas) - **URL**: https://sheets.arte-soft.com/en/learn/round-price-to-charm-99-or-95-ending/ - **Summary**: Convert calculated cost-plus prices to nearest .99, margin-safe upward .99, or $5-increment .95 retail price points. *Table — Nearest .99 vs margin-safe upward .99 rounding:* | RawPrice (A) | Nearest .99 | Margin-Safe Up .99 | Nearest $5 (.95) | | --- | --- | --- | --- | | 24.32 | 23.99 | 24.99 | 24.95 | | 24.99 | 24.99 | 24.99 | 24.95 | | 27.8 | 27.99 | 27.99 | 29.95 | - **Formula (Charm price ending formulas (.99 and .95))**: `=ROUND(A2 + 0.01, 0) - 0.01` - **Formula (Margin-safe upward .99 formula)**: `=CEILING.MATH(A2 + 0.01, 1) - 0.01` ### Round Retail Prices to End in .45 or .95 with Minimum-Margin Floor Guard - **URL**: https://sheets.arte-soft.com/en/learn/round-retail-prices-to-45-or-95-psychological-ending-formula/ - **Summary**: Snap raw cost-plus catalog prices to the nearest .45 or .95 psychological charm ending—or force upward rounding when nearest-step rounding would dip below your target floor price. *Table — Shifted half-dollar lattice math for .45 and .95 charm prices:* | Raw Target Price | Nearest .45 / .95 | Ceiling .45 / .95 (No Margin Erosion) | Ending Cents Check | | --- | --- | --- | --- | | 12.18 | 11.95 | 12.45 | 0.95 / 0.45 | | 12.22 | 12.45 | 12.45 | 0.45 / 0.45 | | 19.71 | 19.95 | 19.95 | 0.95 / 0.95 | | 8.45 | 8.45 | 8.45 | Exact charm preserved | - **Formula (Nearest .45 or .95 Psychological Price Formula)**: `=MAX(0.45, ROUND((C2 + 0.05) * 2, 0) / 2 - 0.05)` - **Formula (Margin-Safe Upward .45 or .95 Formula)**: `=MAX(0.45, -INT(-ROUND((C2 + 0.05) * 2, 6)) / 2 - 0.05)` ### Round times or durations to 15-minute increments - **URL**: https://sheets.arte-soft.com/en/learn/round-time-to-nearest-15-minutes/ - **Summary**: Snap clock punches to the nearest quarter-hour (96 slots per day) or round billable duration upward to 15-minute increments. *Table — Represent time in quarter-hour units:* | ClockIn (A) | ClockOut (B) | Nearest 15m Punches | Quarter-Hour Net Hours | | --- | --- | --- | --- | | 08:07 | 17:08 | 08:00 to 17:15 | (69 - 32) / 4 = 9.25 hrs | - **Formula (Rounded endpoint hours and duration ceiling)**: `=(ROUND(B2 * 96, 0) - ROUND(A2 * 96, 0)) / 4` - **Formula (Billable duration rounded up to next 15 minutes)**: `=CEILING.MATH((B2 - A2) * 96, 1) / 4` ### Round a number to N significant figures (scientific and lab precision) - **URL**: https://sheets.arte-soft.com/en/learn/round-to-n-significant-figures/ - **Summary**: Dynamically compute ROUND's decimal-places argument from INT(LOG10(ABS(x))) to round large integers, tiny decimals, and negatives to N sig figs. *Table — Why fixed decimal places fail significant-figure rules:* | Measurement (A) | SigFigs (B) | Order INT(LOG10) | ROUND Digits | Result | | --- | --- | --- | --- | --- | | 12847 | 3 | 4 | 3 - 1 - 4 = -2 | 12800 | | 0.004567 | 2 | -3 | 2 - 1 - (-3) = 4 | 0.0046 | | -987.6 | 2 | 2 | 2 - 1 - 2 = -1 | -990 | - **Formula (Zero-safe N significant figures formula)**: `=IF(A2=0, 0, ROUND(A2, B2 - 1 - INT(LOG10(ABS(A2)))))` - **Formula (Why INT beats TRUNC for sub-1 decimals)**: `=INT(LOG10(ABS(A2)))` ### Round to Nearest 10, 100, 1,000 or Million (Negative num_digits) - **URL**: https://sheets.arte-soft.com/en/learn/round-to-nearest-thousand-million-or-ten-negative-digits/ - **Summary**: Round board-deck budgets, headcount forecasts, and property valuations to the LEFT of the decimal point using negative num_digits in ROUND(x, -3), ROUNDUP(x, -3), and ROUNDDOWN(x, -6). *Table — Use negative num_digits (-1, -2, -3, -6) to round to the left of the decimal!:* | Rounding Target (Raw Value B2 = $1,487,620) | Formula | num_digits Meaning | Verified Result | | --- | --- | --- | --- | | Nearest $10 | =ROUND(B2, -1) | 10^1 = 10s place | 1,487,620 | | Nearest $1,000 ($K) | =ROUND(B2, -3) | 10^3 = 1,000s place | 1,488,000 | | Conservative Floor $1,000 | =ROUNDDOWN(B2, -3) | Truncate below 1,000s | 1,487,000 | | Nearest $1,000,000 ($M) | =ROUND(B2, -6) | 10^6 = Millions place | 1,000,000 ($1.5M+ -> 2,000,000) | - **Formula (Round to Nearest $1,000 (ROUND with num_digits = -3))**: `=ROUND(B2, -3)` - **Formula (Round Up or Down to Nearest Power-of-10 Increment (-2, -3, -6))**: `=ROUNDUP(B2, B3)` ### ROUND in Excel: why rounded rows can disagree with the total - **URL**: https://sheets.arte-soft.com/en/learn/round-function-line-items-versus-total/ - **Summary**: Compare rounding each amount with rounding the final sum. Use a three-row example, check negative midpoint values, and separate number formatting from changing a value. - **Formula (Round each row when the row amount is the value you need)**: `=ROUND(B2,2)` - **Formula (Round the total when the original amounts must be accumulated first)**: `=ROUND(SUM(B2:B4),2)` - **Formula (Check negative amounts at the midpoint)**: `=ROUND(-2.5,0)` - **Formula (Use negative digits to round to tens or hundreds)**: `=ROUND(125,-1)` - **Formula (Try a change that removes the discrepancy)**: `=ROUND(B2,2)+ROUND(B3,2)+ROUND(B4,2)` ### Round Up or Down to Next Half (0.5), Quarter (0.25) or Custom Multiple - **URL**: https://sheets.arte-soft.com/en/learn/round-up-or-down-to-nearest-half-and-custom-multiple/ - **Summary**: Round a numeric value upward, downward or to the nearest positive increment, with explicit input checks. *Table — Snap decimal quantities to 0.5-hour blocks, 0.25 increments, or pack multiples!:* | Rounding Goal (Input = 2.15) | Formula (Multiple B3 = 0.5) | Output (0.5 Step) | Output (0.25 Step) | | --- | --- | --- | --- | | Round UP to next increment | CEILING.MATH(B2, B3) | 2.50 | 2.25 | | Round DOWN to completed increment | FLOOR.MATH(B2, B3) | 2.00 | 2.00 | | Round to NEAREST increment | ROUND(B2 / B3, 0) * B3 | 2.00 | 2.25 | - **Formula (Round Up to Next Half (0.5) or Custom Multiple (CEILING.MATH))**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER(B3))),"Invalid inputs",IF(B3<=0,"Invalid inputs",CEILING.MATH(B2, B3)))` - **Formula (Round down to a multiple)**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER(B3))),"Invalid inputs",IF(B3<=0,"Invalid inputs",FLOOR.MATH(B2, B3)))` - **Formula (Round to the nearest multiple)**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER(B3))),"Invalid inputs",IF(B3<=0,"Invalid inputs",ROUND(B2/B3,0)*B3))` ### ROUNDUP function: calculate how many boxes or packs are needed - **URL**: https://sheets.arte-soft.com/en/learn/roundup-number-of-boxes-needed/ - **Summary**: Any leftover item requires another container. Divide item count by container capacity inside ROUNDUP(..., 0) so partial packs always round up to the next whole box. *Table — Why standard ROUND leaves items unpacked:* | Items (A) | Capacity per sleeve (B) | Sleeves needed | | --- | --- | --- | | 53 | 12 | 5 | | 48 | 12 | 4 | | 0 | 12 | 0 | - **Formula (Round non-zero fractions up to the next whole number)**: `=ROUNDUP(A2/B2,0)` - **Formula (Check zero items and guard positive capacity)**: `=IF(B2<=0,"Check capacity",ROUNDUP(A2/B2,0))` ### Add row numbers and skip blanks: sequential numbering with expanding COUNTA - **URL**: https://sheets.arte-soft.com/en/learn/add-row-numbers-and-skip-blanks/ - **Summary**: Use IF(ISBLANK(B2), "", COUNTA($B$2:B2)) so populated items number 1, 2, 3 without gaps across blank spacer rows. *Table — Why ROW() leaves numbering gaps across blank spacer rows:* | ItemNo Formula | Deliverable (B) | Displayed Number | | --- | --- | --- | | =IF(ISBLANK(B2), "", COUNTA($B$2:B2)) | Wireframes | 1 | | =IF(ISBLANK(B3), "", COUNTA($B$2:B3)) | (blank spacer) | "" | | =IF(ISBLANK(B4), "", COUNTA($B$2:B4)) | Backend API | 2 | | =IF(ISBLANK(B5), "", COUNTA($B$2:B5)) | Load testing | 3 | - **Formula (Lock the top anchor ($B$2) and leave the bottom relative (B4))**: `=IF(ISBLANK(B4), "", COUNTA($B$2:B4))` - **Formula (Inserting a new item renumbers subsequent rows automatically)**: `=IF(ISBLANK(B3), "", COUNTA($B$2:B3))` ### ROW and ROWS: create deletion-proof line numbers and count table height - **URL**: https://sheets.arte-soft.com/en/learn/row-and-rows-functions/ - **Summary**: Distinguish position index ROW(reference) from range height ROWS(array) so inserted or blank rows never break numbering. *Table — ROW gives grid position; ROWS gives block height:* | Task (A) | Owner (B) | Line Number ROW(A)-ROW($A$1) | | --- | --- | --- | | Spec review | Ana | 1 | | API schema | (blank) | 2 | | QA signoff | Leo | 3 | | Release note | Mia | 4 | - **Formula (Compare ROWS vs COUNTA when rows have blanks)**: `=ROWS(A2:B5)` - **Formula (Relative line number from locked header)**: `=ROW(A4) - ROW($A$1)` ### Row-Wise and Column-Wise Matrix Summaries and Flags (BYROW & BYCOL Formula Patterns) - **URL**: https://sheets.arte-soft.com/en/learn/row-wise-and-column-wise-matrix-summaries-byrow-and-bycol-patterns/ - **Summary**: Evaluate row-by-row totals, minimum-threshold SLA flags, and column-by-column period peaks across 2D matrices using CHOOSEROWS, CHOOSECOLS, and helper vectors. *Table — Summarizing 2D grids across rows (BYROW) and columns (BYCOL):* | Branch | Q1 | Q2 | Q3 | Q4 | Row Total / Floor >= 110 | | --- | --- | --- | --- | --- | --- | | Sofia | 120 | 135 | 140 | 155 | 550 (Pass: TRUE) | | Berlin | 95 | 115 | 125 | 130 | 465 (Pass: FALSE) | | Madrid | 110 | 120 | 118 | 142 | 490 (Pass: TRUE) | | Dublin | 130 | 105 | 132 | 148 | 515 (Pass: FALSE) | | Col Peak (BYCOL MAX) | 130 | 135 | 140 | 155 | 2 Branches All-Pass | - **Formula (Row-Slice Total & Column-Slice Peak With CHOOSEROWS / CHOOSECOLS)**: `=SUM(CHOOSEROWS(B2:E5, 1))` - **Formula (Count Rows Where Every Column Meets Target Floor)**: `=COUNTIF(F2:F5, TRUE)` ### Well-Stirred Hepatic Extraction & First-Pass Formula - **URL**: https://sheets.arte-soft.com/en/learn/rowland-tozer-hepatic-well-stirred-extraction-and-first-pass-formula/ - **Summary**: Calculate Rowland, Benet, and Graham’s (1973) well-stirred liver Extraction Ratio E_H = (f_u * CL_int) / (Q_H + f_u * CL_int), Hepatic Clearance CL_H, and First-Pass Oral Bioavailability F_H = 1 - E_H. *Table — Distinguish flow-limited high-extraction drugs from capacity-limited low-extraction drugs!:* | Well-Stirred Liver PK Metric (Q_H=90 L/hr, f_u=0.20, CL_int=1800 L/hr) | Formula | Verified Output | | --- | --- | --- | | Hepatic Extraction Ratio (E_H) | (f_u * CL_int) / (Q_H + f_u * CL_int) | 0.8000 (80.00% Extracted) | | Hepatic Blood Clearance (CL_H) | Q_H * E_H | 72.00 L/hr | | First-Pass Hepatic Bioavailability (F_H) | 1 - E_H = Q_H / (Q_H + f_u * CL_int) | 0.2000 (20.00% Escapes) | | Clearance Sensitivity Class | E_H > 0.7 Flow; E_H < 0.3 Capacity | Flow-Limited (High E_H > 0.70) | - **Formula (Well-Stirred Hepatic Extraction Ratio E_H Formula)**: `=LET(qh_fl, B2, fu_fr, B3, cl_in, B4, IF(OR(qh_fl <= 0, fu_fr <= 0, fu_fr > 1, cl_in < 0), "Invalid Hepatic Input", ROUND((fu_fr * cl_in) / (qh_fl + fu_fr * cl_in), 4)))` - **Formula (First-Pass Survival F_H & Rowland-Tozer Extraction Regime Formula)**: `=IF(ISTEXT(E2), E2, IF(E2 > 0.7, "Flow-Limited (High E_H > 0.70)", IF(E2 < 0.3, "Capacity-Limited (Low E_H < 0.30)", "Intermediate Extraction (0.30-0.70)")))` ### ROX Index for HFNC Failure & Rapid Shallow Breathing Index (RSBI = f / VT) - **URL**: https://sheets.arte-soft.com/en/learn/rox-index-hfnc-failure-and-rsbi-ventilator-weaning-formula/ - **Summary**: Calculate the Roca ROX Index (SpO2 / FiO2) / RR to predict high-flow nasal cannula (HFNC) intubation risk and the Yang-Tobin Rapid Shallow Breathing Index RSBI = RR / VT_L for ventilator weaning. *Table — Prevent delayed intubation on HFNC and failed extubation on mechanical ventilation!:* | ICU Respiratory Index | Bedside Inputs | Formula & Result | Clinical Threshold | | --- | --- | --- | --- | | ROX Index (Stable HFNC) | SpO2 = 94%, FiO2 = 0.50, RR = 28 | (94 / 0.50) / 28 = 6.71 | >= 4.88: Low HFNC Failure Risk | | ROX Index (Failing HFNC) | SpO2 = 90%, FiO2 = 0.75, RR = 34 | (90 / 0.75) / 34 = 3.53 | < 3.85: High Intubation Risk! | | RSBI (Spontaneous Breathing Trial) | SBT RR = 24, VT = 0.40 L (400 mL) | 24 / 0.40 = 60.0 breaths/min/L | < 105: Favorable for Extubation | - **Formula (ROX Index = (SpO2% / Fractional_FiO2) / RR)**: `=IF(OR(B2 <= 0, B2 > 100, B3 < 0.21, B3 > 1, B4 <= 0), "Invalid Respiratory Inputs", ROUND((B2 / B3) / B4, 2))` - **Formula (Rapid Shallow Breathing Index RSBI = SBT_RR / Tidal_Volume_L)**: `=IF(OR(B5 <= 0, B6 <= 0), "Invalid Respiratory Inputs", ROUND(B5 / B6, 1))` ### Roy-Borjas Migration Self-Selection Skill Sorting Formula - **URL**: https://sheets.arte-soft.com/en/learn/roy-borjas-self-selection-migration-skill-sorting-formula/ - **Summary**: Classify Positive Selection, Negative Selection, and Refugee Sorting using Borjas’s (1987) Roy-model conditional log-wage selection terms Q_0 and Q_1. *Table — Why relative return-to-skill dispersion sigma_1 / sigma_0 — not mean wage! — drives skill selection:* | Borjas Selection Regime (z = 0) | Variance & Correlation Condition | Sign of (Q_0, Q_1) | | --- | --- | --- | | Positive Selection (0.30, 0.60, rho=0.80) | sigma_1 / sigma_0 > 1/rho & rho > sigma_0/sigma_1 | Q_0 = +0.1070, Q_1 = +0.4282 | | Negative Selection (0.60, 0.30, rho=0.80) | sigma_0 / sigma_1 > 1/rho & rho > sigma_1/sigma_0 | Q_0 = -0.4282, Q_1 = -0.1070 | | Refugee Sorting (0.30, 0.60, rho=0.20) | rho < MIN(sigma_0/sigma_1, sigma_1/sigma_0) | Q_0 < 0 and Q_1 > 0 | - **Formula (Borjas Destination Skill Selection Differential Q_1 Formula)**: `=LET(s_0, B2, s_1, B3, rho_s, B4, mu_0, B5, mu_1, B6, c_mg, B7, IF(OR(s_0 <= 0, s_1 <= 0, rho_s <= -1, rho_s >= 1), "Invalid Roy-Borjas Input", LET(v_df, (s_0^2) + (s_1^2) - 2 * rho_s * s_0 * s_1, IF(v_df <= 0, "Invalid Roy-Borjas Input", LET(sd_v, SQRT(v_df), z_cut, -(mu_1 - mu_0 - c_mg) / sd_v, az_r, ABS(z_cut) / SQRT(2), t_er, 1 / (1 + 0.3275911 * az_r), erf_m, 1 - (((((1.061405429 * t_er - 1.453152027) * t_er + 1.421413741) * t_er - 0.284496736) * t_er + 0.254829592) * t_er) * EXP(-(az_r^2)), tail_p, 0.5 * (1 - IF(z_cut >= 0, erf_m, -erf_m)), pdf_z, EXP(-0.5 * (z_cut^2)) / SQRT(2 * PI()), imr_l, pdf_z / tail_p, ROUND(((s_1^2 - rho_s * s_0 * s_1) / sd_v) * imr_l, 4))))))` - **Formula (Exact Roy-Borjas Sorting Regime Classification Formula)**: `=LET(s_0, B2, s_1, B3, rho_s, B4, IF(OR(s_0 <= 0, s_1 <= 0, rho_s <= -1, rho_s >= 1), "Invalid Roy-Borjas Input", LET(sg_0, rho_s * s_0 * s_1 - (s_0^2), sg_1, (s_1^2) - rho_s * s_0 * s_1, IF(AND(sg_0 > 0, sg_1 > 0), "Positive Selection", IF(AND(sg_0 < 0, sg_1 < 0), "Negative Selection", "Refugee Sorting")))))` ### Roy Self-Selection Positive vs Negative Sorting Formula - **URL**: https://sheets.arte-soft.com/en/learn/roy-model-occupational-self-selection-positive-vs-negative-sorting/ - **Summary**: Diagnose Andrew Roy’s (1951) and George Borjas’s (1987) occupational/migration skill selection via covariance wedges Cov(u_1, u_1 - u_0) and Cov(u_0, u_1 - u_0). *Table — Understand why migrants or career-switchers can be negatively selected even with high skill correlation!:* | Roy-Borjas Selection Metric (sigma_0=0.20, sigma_1=0.50, rho=0.80) | Formula | Verified Output | | --- | --- | --- | | Destination Selection Wedge (S_1) | sigma_1^2 - rho * sigma_1 * sigma_0 | +0.1700 (> 0) | | Origin Selection Wedge (S_0) | rho * sigma_1 * sigma_0 - sigma_0^2 | +0.0400 (> 0) | | Comparative-Advantage SD (sigma_v) | SQRT(sigma_1^2 + sigma_0^2 - 2*rho*s1*s0) | 0.3606 | | Roy Sorting Regime Classification | IF(AND(S_1>0, S_0>0), "Positive Sorting", ...) | Positive Sorting | - **Formula (Origin & Destination Skill-Selection Covariance Wedges Formula)**: `=LET(s_0, B3, s_1, B5, rh_c, B6, IF(OR(s_0 <= 0, s_1 <= 0, rh_c <= -1, rh_c >= 1), "Invalid Roy Input", LET(w_1, (s_1^2) - rh_c * s_1 * s_0, w_0, rh_c * s_1 * s_0 - (s_0^2), IFS(AND(w_1 > 0, w_0 > 0), "Positive Sorting", AND(w_1 < 0, w_0 < 0), "Negative Sorting", TRUE, "Refugee Sorting"))))` - **Formula (Standardized Roy Self-Selection Threshold z* Formula)**: `=LET(m_0, B2, s_0, B3, m_1, B4, s_1, B5, rh_c, B6, c_sw, B7, IF(OR(s_0 <= 0, s_1 <= 0, rh_c <= -1, rh_c >= 1), "Invalid Roy Input", LET(sg_v, SQRT((s_1^2) + (s_0^2) - 2 * rh_c * s_1 * s_0), ROUND(-(m_1 - m_0 - c_sw) / sg_v, 4))))` ### Rubber Vulcanization Equivalent Cure Units (ECU) Formula - **URL**: https://sheets.arte-soft.com/en/learn/rubber-vulcanization-equivalent-cure-units-ecu-arrhenius-temp-shift-formula/ - **Summary**: Calculate Arrhenius Crosslinking Rate Multiplier vs Reference Temperature, Equivalent Cure Time t90(T) in Minutes and Seconds, and Press Cycle Time Saved (min). *Table — Raise a rubber compression-mold platen by +15 °C and sulfur vulcanization accelerates 2.35x—but a -12 °C cold core leaves thick mounts spongy!:* | ASTM D5289 Rubber Cure KPI (T0=160°C, t90=12.0 min, T=175°C, Ea=92 kJ/mol) | Formula | Verified Output | | --- | --- | --- | | Arrhenius Cure Rate Multiplier | EXP(((Ea*1000)/8.3144626)*(1/T0K - 1/TK)) | 2.351x (0.483x @ 148 °C cold platen!) | | Equivalent t90 Cure Time (min) | Reference_t90_min / Rate_Multiplier | 5.10 min (24.85 min @ 148 °C cold spot!) | | Equivalent Cure Time (seconds) | Equivalent_t90_min * 60 | 306.2 s (1,490.9 s @ 148 °C) | | Press Cycle Time Saved (min) | Reference_t90_min - Equivalent_t90_min | +6.90 min (-12.85 min penalty @ 148 °C!) | - **Formula (Arrhenius Equivalent Cure Units (ECU) & Compression/Injection Press Cycle Formula)**: `=LET(tz_k, B2 + 273.15, tr_m, B3, tm_k, B4 + 273.15, ea_k, B5, rm_f, EXP(((ea_k * 1000) / 8.3144626) * ((1 / tz_k) - (1 / tm_k))), te_m, tr_m / rm_f, IF(OR(B2 < 100, B2 > 240, tr_m <= 0, B4 < 100, B4 > 240, ea_k < 40, ea_k > 180), "Invalid Vulcanization Input", ROUND(tr_m - te_m, 2)))` - **Formula (Failed Platen Heater Cartridge 148 °C Cold-Zone Under-Cure Check (Set Mold Temp B4 = 148.0 °C))**: `=IF(ISTEXT(E5), E5, LET(rm_f, EXP(((B5 * 1000) / 8.3144626) * ((1 / (B2 + 273.15)) - (1 / (B4 + 273.15)))), ROUND(B3 / rm_f, 2)))` ### Rubey (1933) Sediment Fall Velocity Formula: HEC-RAS Dimensionless Factor F_1 & Settling - **URL**: https://sheets.arte-soft.com/en/learn/rubey-natural-sediment-grain-settling-velocity-stokes-impact-formula/ - **Summary**: Calculate river sand and gravel terminal settling velocity w_s = F_1 * SQRT((s - 1) * g * D) using USGS geologist William W. Rubey’s (1933) analytical viscous-plus-impact quadratic drag formula built into USACE HEC-RAS. *Table — Understand the classic 1933 USGS settling law still powering HEC-RAS sediment routing!:* | Sediment Particle Size D (s = 2.65, nu = 1.00e-6 m^2/s) | Rubey Dimensionless Factor F_1 | Terminal Fall Velocity w_s (m/s) | | --- | --- | --- | | Very Fine Sand (D = 0.00010 m = 0.10 mm) | 0.2005 | 0.00806 m/s (0.81 cm/s) | | Medium Sand (D = 0.00050 m = 0.50 mm) | 0.6939 | 0.06242 m/s (6.24 cm/s) | | Fine Pea Gravel (D = 0.00400 m = 4.00 mm) | 0.8082 (~= SQRT(2/3)) | 0.20623 m/s (20.62 cm/s) | - **Formula (Rubey (1933) Dimensionless Fall-Velocity Factor F_1 (0 < F_1 <= SQRT(2/3)))**: `=IF(OR(B2 <= 0, B3 <= 1, B4 <= 0), "Requires Grain Diameter D > 0, Specific Gravity s > 1, and Viscosity nu > 0", ROUND(SQRT((2 / 3) + (36 * (B4 ^ 2)) / ((B3 - 1) * 9.80665 * (B2 ^ 3))) - SQRT((36 * (B4 ^ 2)) / ((B3 - 1) * 9.80665 * (B2 ^ 3))), 4))` - **Formula (Rubey Terminal Sediment Settling Velocity w_s (m/s) = F_1 * SQRT((s - 1) * g * D))**: `=IF(OR(B2 <= 0, B3 <= 1, B4 <= 0), "Requires Grain Diameter D > 0, Specific Gravity s > 1, and Viscosity nu > 0", ROUND((SQRT((2 / 3) + (36 * (B4 ^ 2)) / ((B3 - 1) * 9.80665 * (B2 ^ 3))) - SQRT((36 * (B4 ^ 2)) / ((B3 - 1) * 9.80665 * (B2 ^ 3)))) * SQRT((B3 - 1) * 9.80665 * B2), 5))` ### Rubinstein Alternating-Offers Bargaining Equilibrium Formula - **URL**: https://sheets.arte-soft.com/en/learn/rubinstein-alternating-offers-bargaining-subgame-perfect-split/ - **Summary**: Calculate Rubinstein’s (1982) unique subgame-perfect bargaining split x_1* = S * (1 - delta_2) / (1 - delta_1 * delta_2) to quantify patience vs first-mover advantage. *Table — Patience is bargaining power: solve infinite alternating offers in one closed-form ratio:* | Negotiation Discount Regime (Pie S = 100) | Proposer Share x_1* | Responder Share x_2* | | --- | --- | --- | | Patient Proposer (delta_1 = 0.90, delta_2 = 0.80) | 71.4286 (5 / 7) | 28.5714 (2 / 7) | | Equal Patience (delta_1 = 0.80, delta_2 = 0.80) | 55.5556 (1 / (1 + delta)) | 44.4444 (delta / (1 + delta)) | | Impatient Responder Ultimatum (delta_2 = 0) | 100.0000 (100%) | 0.0000 (0%) | - **Formula (Rubinstein Subgame-Perfect Proposer Payoff x_1* Formula)**: `=LET(s_pie, B2, d_1, B3, d_2, B4, IF(OR(s_pie <= 0, d_1 < 0, d_1 >= 1, d_2 < 0, d_2 >= 1), "Require S > 0 and delta in [0, 1)", ROUND(s_pie * (1 - d_2) / (1 - d_1 * d_2), 4)))` - **Formula (Responder Equilibrium Payoff x_2* = S * delta_2 * (1 - delta_1) / (1 - delta_1 * delta_2) Formula)**: `=LET(s_pie, B2, d_1, B3, d_2, B4, IF(OR(s_pie <= 0, d_1 < 0, d_1 >= 1, d_2 < 0, d_2 >= 1), "Require S > 0 and delta in [0, 1)", ROUND(s_pie * d_2 * (1 - d_1) / (1 - d_1 * d_2), 4)))` ### Rubinstein Simple Chooser Option Formula: Call-or-Put Decision Date - **URL**: https://sheets.arte-soft.com/en/learn/rubinstein-simple-chooser-option-call-or-put-decision-date-formula/ - **Summary**: Price a simple chooser option in Excel and Arte Sheets via Rubinstein’s (1991) put-call parity decomposition into a T-maturity call plus a t_c-maturity shifted-strike put. *Table — Verify why a chooser option sits strictly between a vanilla option and a straddle:* | Benchmark / Component | Formula Structure | Sample Output | | --- | --- | --- | | T-Maturity Call Leg C(50, 0.50) | Vanilla BSM Call at strike K = 50, expiry T = 0.50 | 4.5206 | | Shifted Put Strike K_adj | K * EXP(-(r - q) * (T - t_c)) = 50 * EXP(-0.02) | 49.0099 | | Rubinstein Simple Chooser | C(S, K, T) + EXP(-q*(T - t_c)) * P(S, K_adj, t_c) | 6.1071 | | Full Straddle Ceiling C + P | C(50, 0.50) + P(50, 0.50) | 7.0807 (> 6.1071) | - **Formula (Shifted Decision-Date Put Strike K_adj Formula)**: `=IF(OR(B8 <= 0, B8 >= B7), "Invalid Choice Date", ROUND(B3 * EXP(-(B4 - B5) * (B7 - B8)), 4))` - **Formula (Rubinstein Simple Chooser Option Value Formula)**: `=LET(s_px, B2, k_str, B3, r_rf, B4, q_div, B5, sig_v, B6, t_exp, B7, t_ch, B8, IF(OR(s_px <= 0, k_str <= 0, sig_v <= 0, t_ch <= 0, t_ch >= t_exp), "Invalid Choice Date", LET(st_full, sig_v * SQRT(t_exp), d_1, (LN(s_px / k_str) + (r_rf - q_div + 0.5 * sig_v^2) * t_exp) / st_full, d_2, d_1 - st_full, u_1, 1 / (1 + 0.2316419 * ABS(d_1)), ph_1, 0.3989422804014327 * EXP(-0.5 * d_1^2) * u_1 * (0.31938153 + u_1 * (-0.356563782 + u_1 * (1.781477937 + u_1 * (-1.821255978 + 1.330274429 * u_1)))), nd_1, IF(d_1 >= 0, 1 - ph_1, ph_1), u_2, 1 / (1 + 0.2316419 * ABS(d_2)), ph_2, 0.3989422804014327 * EXP(-0.5 * d_2^2) * u_2 * (0.31938153 + u_2 * (-0.356563782 + u_2 * (1.781477937 + u_2 * (-1.821255978 + 1.330274429 * u_2)))), nd_2, IF(d_2 >= 0, 1 - ph_2, ph_2), c_leg, s_px * EXP(-q_div * t_exp) * nd_1 - k_str * EXP(-r_rf * t_exp) * nd_2, k_adj, k_str * EXP(-(r_rf - q_div) * (t_exp - t_ch)), st_ch, sig_v * SQRT(t_ch), y_1, (LN(s_px / k_adj) + (r_rf - q_div + 0.5 * sig_v^2) * t_ch) / st_ch, y_2, y_1 - st_ch, v_1, 1 / (1 + 0.2316419 * ABS(y_1)), py_1, 0.3989422804014327 * EXP(-0.5 * y_1^2) * v_1 * (0.31938153 + v_1 * (-0.356563782 + v_1 * (1.781477937 + v_1 * (-1.821255978 + 1.330274429 * v_1)))), nmy_1, IF(y_1 >= 0, py_1, 1 - py_1), v_2, 1 / (1 + 0.2316419 * ABS(y_2)), py_2, 0.3989422804014327 * EXP(-0.5 * y_2^2) * v_2 * (0.31938153 + v_2 * (-0.356563782 + v_2 * (1.781477937 + v_2 * (-1.821255978 + 1.330274429 * v_2)))), nmy_2, IF(y_2 >= 0, py_2, 1 - py_2), p_leg, k_adj * EXP(-r_rf * t_ch) * nmy_2 - s_px * EXP(-q_div * t_ch) * nmy_1, ROUND(c_leg + EXP(-q_div * (t_exp - t_ch)) * p_leg, 4))))` ### Rule of 72 vs exact doubling & tripling time formula (LN(2) / LN(1 + r)) - **URL**: https://sheets.arte-soft.com/en/learn/rule-of-72-vs-exact-doubling-time-logarithm/ - **Summary**: Calculate exact compound doubling time LN(2)/LN(1+r), continuous doubling LN(2)/r, and N-fold multiplication time—and see where Rule of 72 drifts. *Table — Compare an approximation with the compound-growth equation:* | Annual Growth Rate r | Rule of 72 (72 / 100r) | Exact Discrete LN(2)/LN(1+r) | Continuous LN(2)/r | | --- | --- | --- | --- | | 8.0% (Stocks) | 9.0000 yrs | 9.0065 yrs (Spot-on!) | 8.6643 yrs | | 24.0% (High Growth) | 3.0000 yrs | 3.2223 yrs (+2.7 mos longer!) | 2.8881 yrs | | 100.0% (Doubling/yr) | 0.7200 yrs (Wrong!) | 1.0000 yr exact! | 0.6931 yrs | - **Formula (Exact discrete doubling time vs Rule of 72 and general K-fold multiple time)**: `=IF(OR(NOT(ISNUMBER(A2)),A2<=0),"Invalid growth inputs",ROUND(LN(2) / LN(1 + A2), 4))` - **Formula (General K-fold multiplication time (e.g., B2 = 3 for tripling, B2 = 10 for 10×))**: `=IF(OR(NOT(ISNUMBER(A2)),A2<=0,NOT(ISNUMBER(B2)),B2<1),"Invalid growth inputs",ROUND(LN(B2) / LN(1 + A2), 4))` ### Rule of 78s interest allocation: rebate and straight-line comparison - **URL**: https://sheets.arte-soft.com/en/learn/rule-of-78-sum-of-digits-interest-rebate-vs-actuarial/ - **Summary**: Illustrate sum-of-digits allocation for a precomputed finance charge. Compare with straight-line allocation, not an actuarial payoff calculation. *Table — An arithmetic example of front-loaded allocation:* | Loan Audit Input / Output | Cell / Formula | 12-Month Precomputed Loan | Audit Impact | | --- | --- | --- | --- | | Total Precomputed Interest | B2 | $1,560 | $20 per sum-of-digits unit (1560/78) | | Original Term N & Paid Months m | B3 = 12, B4 = 4 | Remaining k = 12 - 4 = 8 | k*(k+1)/2 = 36 vs N*(N+1)/2 = 78 | | Rule of 78s Interest Rebate | B2 * (k*(k+1)) / (N*(N+1)) | $720.00 refunded | 46.15% refunded with 66.7% time left! | | Lender Earned vs Pro-Rata | ($1,560 - $720) vs $520 | $840 earned vs $520 linear | +320 allocated compared with straight-line | - **Formula (Rule of 78s unearned interest rebate formula)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B3<>INT(B3),B4<0,B4>B3,B4<>INT(B4)),"Invalid inputs",LET(k, MAX(0, B3 - B4), ROUND(B2 * (k * (k + 1)) / (B3 * (B3 + 1)), 2))))` - **Formula (Difference in allocated interest versus straight-line allocation)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=0,B3<>INT(B3),B4<0,B4>B3,B4<>INT(B4)),"Invalid inputs",LET(k, MAX(0, B3 - B4), reb, B2 * (k * (k + 1)) / (B3 * (B3 + 1)), ROUND((B2 - reb) - (B2 * B4 / B3), 2))))` ### Running balance with debits and credits (checkbook and ledger formula) - **URL**: https://sheets.arte-soft.com/en/learn/running-balance-debits-and-credits/ - **Summary**: Maintain a cumulative bank or ledger balance across separate Deposit and Withdrawal columns while hiding totals on unposted rows. *Table — Why expanding SUM($B$2:B4) - SUM($C$2:C4) beats PreviousRow + B - C:* | Row | Entry (A) | Deposit (B) | Withdrawal (C) | Running Balance | | --- | --- | --- | --- | --- | | 2 | Opening | 1500 | 0 | 1500 | | 3 | Client Wire | 850 | 0 | 2350 | | 4 | Office Rent | 0 | 1200 | 1150 | | 5 | Unposted | (blank) | (blank) | "" | - **Formula (Ledger running balance formula with blank-row guard)**: `=IF(COUNTBLANK(B4:C4)=2, "", SUM($B$2:B4) - SUM($C$2:C4))` - **Formula (Reconcile ending balance across entire register)**: `=SUM(B2:B5) - SUM(C2:C5)` ### Running count of occurrences in a list (1st, 2nd, 3rd repeat) - **URL**: https://sheets.arte-soft.com/en/learn/running-count-of-occurrences-in-list/ - **Summary**: Number each appearance of a customer or SKU sequentially down a table with SUMPRODUCT(--($A$2:A2=A2)) and build unique composite keys. *Table — Count appearances up to the current row only:* | Row | Client (A) | OrderAmt (B) | Expanding Range | Occurrence # | | --- | --- | --- | --- | --- | | 2 | Acme | 500 | $A$2:A2 | 1 (Acme-1) | | 3 | Beta | 300 | $A$2:A3 | 1 (Beta-1) | | 4 | Acme | 750 | $A$2:A4 | 2 (Acme-2) | | 5 | Acme | 900 | $A$2:A5 | 3 (Acme-3) | - **Formula (Sequential occurrence number and composite key formulas)**: `=SUMPRODUCT(--($A$2:A4=A4))` - **Formula (Composite unique lookup key)**: `=A4 & "-" & SUMPRODUCT(--($A$2:A4=A4))` ### Assign cohort / batch numbers every N rows with QUOTIENT, MOD, and ROW - **URL**: https://sheets.arte-soft.com/en/learn/running-group-number-every-n-rows-quotient-mod/ - **Summary**: Generate repeating group IDs (1,1,1, 2,2,2...) and within-batch seat positions (1,2,3, 1,2,3...) for any group size N using zero-based row offsets. *Table — Assign groups by physical row position:* | Order Row (A) | Zero Index k | Pallet Group (N = 3) (B) | Box Slot 1..3 (C) | | --- | --- | --- | --- | | ORD-101 (Row 2) | k = 0 | QUOTIENT(0, 3) + 1 = 1 | MOD(0, 3) + 1 = 1 | | ORD-102 (Row 3) | k = 1 | QUOTIENT(1, 3) + 1 = 1 | MOD(1, 3) + 1 = 2 | | ORD-103 (Row 4) | k = 2 | QUOTIENT(2, 3) + 1 = 1 | MOD(2, 3) + 1 = 3 | | ORD-104 (Row 5) | k = 3 | QUOTIENT(3, 3) + 1 = 2 | MOD(3, 3) + 1 = 1 (New Pallet!) | | ORD-107 (Row 8) | k = 6 | QUOTIENT(6, 3) + 1 = 3 | MOD(6, 3) + 1 = 1 | - **Formula (Batch / Pallet group ID incrementing every E2 rows)**: `=IF(COUNT(E2)<>1,"Invalid group size",IF(OR(E2<1,E2<>INT(E2)),"Invalid group size",QUOTIENT(ROW(A5) - ROW($A$2), $E$2) + 1))` - **Formula (Within-group slot number (1 to E2) & total pallets needed)**: `=IF(COUNT(E2)<>1,"Invalid group size",IF(OR(E2<1,E2<>INT(E2)),"Invalid group size",MOD(ROW(A5) - ROW($A$2), $E$2) + 1))` ### Running Occurrence Count by Customer or SKU (Expanding COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/running-occurrence-count-by-category-expanding-countif/ - **Summary**: Number each repeat occurrence of an item sequentially (1st, 2nd, 3rd order per customer) using an anchored expanding range =COUNTIF($A$2:A2, A2) and build unique composite lookup keys. *Table — Tag 1st-time vs repeat customer orders and build unique Nth-match keys!:* | Row | Customer_ID (A) | Expanding Range Formula | Occurrence # & Composite Key | | --- | --- | --- | --- | | Row 2 | CUST-10 | =COUNTIF($A$2:A2, A2) | 1 -> "CUST-10-1" (First Order!) | | Row 3 | CUST-25 | =COUNTIF($A$2:A3, A3) | 1 -> "CUST-25-1" (First Order!) | | Row 4 | CUST-10 | =COUNTIF($A$2:A4, A4) | 2 -> "CUST-10-2" (2nd Repeat) | | Row 5 | CUST-10 | =COUNTIF($A$2:A5, A5) | 3 -> "CUST-10-3" (3rd Repeat) | - **Formula (Expanding-Range Running Occurrence Number)**: `=IF(A5 = "", "", COUNTIF($A$2:A5, A5))` - **Formula (Composite Nth-Occurrence Key & First-Order Cohort Count)**: `=A5 & "-" & COUNTIF($A$2:A5, A5)` ### Rupture Disk Manufacturing Range, Hot Burst & Kc Formula - **URL**: https://sheets.arte-soft.com/en/learn/rupture-disk-burst-pressure-kr-flow-resistance-and-combination-prv-derating/ - **Summary**: Calculate Rupture Disk Upper Stamped 72°F Burst Rating (psig), Elevated-Temperature Maximum Burst Pressure (psig), ASME UG-127 Combination Derated PRV Capacity (lb/hr), and MAWP Margin (psi). *Table — Add upper manufacturing range BEFORE applying temperature weakening—and apply ASME UG-127 Kc = 0.90!:* | ASME UG-127 Rupture Disk + PRV KPI (150 psig Req, +5% Mfg, 0.96 Temp, 155 MAWP) | Formula | Verified Output | | --- | --- | --- | | Max Stamped 72°F Burst (psig) | Requested_psig * (1 + Upper_Mfg_Pct) | 157.50 psig (150.00 Zero-Range) | | Max Operating-Temp Burst (psig) | Max_Stamped_72F * Temp_Strength_Factor | 151.20 psig (144.00 Zero-Range) | | Derated PRV Capacity (lb/hr) | Standalone_PRV_lb_hr * Combination_Kc | 10,800.00 lb/hr (11,640 @ 0.97) | | Headroom Below Vessel MAWP (psi) | Vessel_MAWP_psig - Max_Hot_Burst_psig | 3.80 psi (11.00 psi Zero-Range) | - **Formula (ASME UG-127 Hot Burst & Combination Capacity Formula)**: `=LET(rq_p, B2, mf_u, B3, tm_f, B4, mw_p, B5, cp_s, B6, IF(OR(rq_p < 15, mf_u < 0, mf_u > 0.15, tm_f <= 0.6, tm_f > 1.05, mw_p <= 0, cp_s <= 0), "Invalid Rupture Disk Input", LET(ht_b, rq_p * (1 + mf_u) * tm_f, IF(ht_b > mw_p, "OVER MAWP: Reject Disk", ROUND(ht_b, 2)))))` - **Formula (Zero-Manufacturing-Range Reverse-Buckling Disk & Cold Startup Over-MAWP Checks)**: `=IF(ISTEXT(E3), E3, ROUND(B5 - E3, 2))` ### Ruth Constant-Pressure Cake Filtration Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/ruth-constant-pressure-cake-filtration-specific-cake-resistance-and-filter-press-time/ - **Summary**: Calculate Total Dry Filter Cake Deposited (kg), Parabolic Cake-Resistance Filtration Time (min), Linear Filter-Cloth Resistance Time (min), and Total Cycle Filtration Time (min). *Table — Doubling filtrate volume in a recessed-plate filter press takes FOUR TIMES longer—because every liter of filtrate builds thicker cake resistance!:* | Ruth Filter-Press KPI (A=16 m², dP=450 kPa, V=4.8 m³, c=65 kg/m³, alpha=8.5 vs 24.0e10) | Formula | Verified Output | | --- | --- | --- | | Deposited Dry Filter Cake (kg) | Dry_Solids_Per_Filtrate_c * Filtrate_V_m3 | 312.0 kg | | Quadratic Cake Time t_cake (min) | (((mu*alpha*c)/(2*A^2*dP)) * V^2) / 60 | 10.59 min (29.90 min @ un-flocculated fines!) | | Linear Cloth Time t_cloth (min) | (((mu * Rm) / (A * dP)) * V) / 60 | 0.54 min | | Total Filtration Cycle Time (min) | Cake_Time_min + Cloth_Time_min | 11.13 min (30.44 min bottleneck @ 24e10!) | - **Formula (Ruth Parabolic (t/V vs V) Constant-Pressure Cake + Medium Filtration Formula)**: `=LET(af_m, B2, dp_p, B3 * 1000, mu_p, B4 * 0.001, al_m, B5 * 10000000000, cs_k, B6, rm_i, B7 * 10000000000, vf_m, B8, tc_s, ((mu_p * al_m * cs_k) / (2 * (af_m ^ 2) * dp_p)) * (vf_m ^ 2), tm_s, ((mu_p * rm_i) / (af_m * dp_p)) * vf_m, IF(OR(af_m <= 0.1, B3 <= 10, B4 <= 0.1, B5 <= 0, cs_k <= 0.5, B7 < 0, vf_m <= 0), "Invalid Filtration Input", ROUND((tc_s + tm_s) / 60, 2)))` - **Formula (Over-Agitated Sheared Crystal Fines (alpha = 24.0 x 10^10 m/kg) Cycle Bottleneck Check (Set alpha B5 = 24.0))**: `=IF(ISTEXT(E5), E5, LET(dp_p, B3 * 1000, mu_p, B4 * 0.001, al_m, B5 * 10000000000, ROUND((((mu_p * al_m * B6) / (2 * (B2 ^ 2) * dp_p)) * (B8 ^ 2)) / 60, 2)))` ### SaaS cohort retention table: mixed-reference retention % and weighted cohort average - **URL**: https://sheets.arte-soft.com/en/learn/saas-cohort-retention-rate-table/ - **Summary**: Divide active customers in Month 1, 2, 3... by locked Month-0 cohort size ($B2) while hiding unelapsed triangle cells. *Table — Lock Column B ($B2) and hide the unelapsed bottom-right triangle:* | Cohort (A) | M0 Base (B) | M1 Active (C) | M2 Active (D) | M2 Retention % | | --- | --- | --- | --- | --- | | Jan | 200 | 170 | 150 | 75.0% | | Feb | 100 | 80 | 60 | 60.0% | | Mar | 150 | 126 | (blank) | "" (not elapsed) | - **Formula (Cohort cell retention % and weighted Month-2 retention)**: `=IF(COUNTBLANK(D2:D2)=1, "", ROUND(D2 / $B2, 4))` - **Formula (Cohort-size weighted retention across elapsed cohorts only)**: `=LET(base, SUMPRODUCT(--ISNUMBER(D2:D4), B2:B4), IF(base=0, "No observed cohort", ROUND(SUM(D2:D4) / base, 4)))` ### SaaS Gross Revenue Retention (GRR) & Bessemer Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/saas-gross-revenue-retention-grr-bessemer-efficiency-and-hype-ratio/ - **Summary**: Calculate Enterprise SaaS Gross Revenue Retention (GRR <= 100%), Net Dollar Retention (NDR), Bessemer Venture Partners Capital Efficiency Score (Net New ARR / Net Burn), and Ending Total ARR ($M). *Table — Never let upsells mask logo churn—track capped GRR alongside NDR and Bessemer Efficiency!:* | SaaS Retention & Efficiency Metric ($20M Start, $1.6M Churn, $4.6M Exp, $5M New, $5M Burn) | Formula | Verified Output | | --- | --- | --- | | Gross Revenue Retention (GRR) | (Start_ARR - Churn_Contraction) / Start_ARR | 0.9200 (0.8000 @ $4M Churn) | | Net Dollar Retention (NDR) | (Start_ARR - Churn + Expansion) / Start_ARR | 1.1500 (1.0300 @ $4M Churn) | | Bessemer Efficiency Score (x) | (New_Logo + Expansion - Churn) / Net_Burn | 1.6000x (1.1200x @ $4M Churn) | | Ending Total ARR ($M) | Start_ARR + New_Logo + Expansion - Churn | $28.00M ($25.60M @ $4M Churn) | - **Formula (SaaS GRR & Bessemer Capital Efficiency Formula)**: `=LET(st_a, B2, ch_a, B3, ex_a, B4, nw_a, B5, bn_m, B6, IF(OR(st_a <= 0, ch_a < 0, ch_a > st_a, ex_a < 0, nw_a < 0, bn_m <= 0), "Invalid SaaS Retention Input", LET(nn_a, nw_a + ex_a - ch_a, ROUND(nn_a / bn_m, 4))))` - **Formula (Leaky-Bucket Downmarket Churn Check (Set Gross Churn & Contraction = $4.00M))**: `=IF(ISTEXT(E4), E4, ROUND((B2 - B3) / B2, 4))` ### Gross-to-net sales bridge and incremental promotional ROI example - **URL**: https://sheets.arte-soft.com/en/learn/saas-gross-to-net-revenue-waterfall-and-promo-roi/ - **Summary**: Build a simplified sales-deduction bridge and compare estimated incremental contribution with a separately specified campaign cost. *Table — Separate a sales bridge from accounting recognition and campaign attribution:* | Waterfall / Promo Line | Cell | Campaign Quarter | Ratio / Outcome | | --- | --- | --- | --- | | Gross Billings (List) | B2 | $250,000 | 100.0% top-line | | Discounts, Returns, Rebates | B3=$30k, B4=$12.5k, B5=$7.5k | -$50,000 leakage | 20.0% Gross-to-Net dilution | | Net sales in this simplified bridge | B2 - SUM(B3:B5) | $200,000 | 80.0% Gross-to-Net retention | | Promo Lift (4,000 -> 5,500 u @ $30) | B6=4000, B7=5500, B8=$30 | +$45k margin vs $30k cost | +50.0% (+0.50) Promo ROI! | - **Formula (Net sales after the listed deductions)**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0),"Invalid inputs",B2 - SUM(B3:B5))` - **Formula (Incremental Promotional Lift ROI formula)**: `=IF(OR(COUNT(B6:B9)<>4,B6<0,B7<0,B8<0,B9<=0),"Invalid inputs",ROUND(((B7 - B6) * B8 - B9) / B9, 4))` ### SaaS MRR waterfall: Ending MRR, Gross Retention (GRR), and Net Dollar Retention (NDR) - **URL**: https://sheets.arte-soft.com/en/learn/saas-mrr-revenue-waterfall-net-retention/ - **Summary**: Reconcile Starting, New, Expansion, Contraction, and Churned MRR and compute commonly used GRR and NDR percentages. *Table — Separate New Logo MRR from Existing-Cohort NDR & GRR:* | StartMRR (A) | NewMRR (B) | Expansion (C) | Contraction (D) | Churn (E) | | --- | --- | --- | --- | --- | | 100000 | 15000 | 12000 | 3000 | 4000 | - **Formula (Ending MRR, NDR (NRR), and GRR formulas)**: `=ROUND((A2 + C2 - D2 - E2) / A2, 4)` - **Formula (Gross revenue retention)**: `=ROUND((A2 - D2 - E2) / A2, 4)` - **Formula (Ending MRR)**: `=A2 + B2 + C2 - D2 - E2` ### SaaS Quick Ratio & Net New MRR / ARR waterfall formula (growth vs churn) - **URL**: https://sheets.arte-soft.com/en/learn/saas-quick-ratio-and-net-new-arr-waterfall/ - **Summary**: Measure subscription growth efficiency via (New MRR + Expansion MRR) / (Churned MRR + Contraction MRR) alongside Net New ARR. *Table — SaaS Quick Ratio (MRR Leaky Bucket test) vs Accounting Acid-Test Ratio:* | MRR Waterfall Metric | Formula | Illustrative result | | --- | --- | --- | | Gross Added MRR (New + Expansion) | =A2 + B2 | $60,000 ($45k + $15k) | | Gross Lost MRR (Churn + Contraction) | =C2 + D2 | $15,000 ($10k + $5k) | | SaaS Quick Ratio | =ROUND((A2+B2)/(C2+D2), 2) | 4.00x (additions are four times losses) | | Net New ARR (12 × Net New MRR) | =((A2 + B2) - (C2 + D2)) * 12 | +$540,000 ARR | - **Formula (Zero-churn-safe SaaS Quick Ratio and Net New ARR waterfall formulas)**: `=IF(OR(COUNT(A2:D2)<>4,MIN(A2:D2)<0),"Invalid MRR inputs",IF(C2+D2=0,"No gross MRR loss",ROUND((A2+B2)/(C2+D2),2)))` - **Formula (Annualized net recurring-revenue movement)**: `=((A2 + B2) - (C2 + D2)) * 12` ### SaaS RPO, Calculated Billings & Book-to-Bill Formula - **URL**: https://sheets.arte-soft.com/en/learn/saas-rpo-deferred-revenue-calculated-billings-and-book-to-bill-formula/ - **Summary**: Reconcile ASC 606 / IFRS 15 Calculated Billings (Revenue + Delta Deferred Revenue), Remaining Performance Obligations (RPO = Deferred Revenue + Unbilled Backlog), Contracted Net Bookings, and RPO Book-to-Bill. *Table — Stop mistaking an invoice-cadence shift in Deferred Revenue for a SaaS bookings slowdown!:* | ASC 606 SaaS Backlog Metric (Rev=$50M, Def: $80M->$85M, Unbilled: $100M->$115M) | Formula | Verified Output | | --- | --- | --- | | Calculated Billings ($M) | GAAP_Rev + (Def_End - Def_Beg) | $55.00M ($45.00M if annual-invoiced) | | Ending Total RPO ($M) | Def_End + Unbilled_End | $200.00M (Unchanged by invoice timing) | | Contracted Net Bookings ($M) | GAAP_Rev + (RPO_End - RPO_Beg) | $70.00M | | RPO Book-to-Bill Ratio | Contracted_Net_Bookings / GAAP_Rev | 1.40x | - **Formula (ASC 606 Contracted Net Bookings & RPO Book-to-Bill Formula)**: `=LET(rv_q, B2, df_0, B3, df_1, B4, ub_0, B5, ub_1, B6, IF(OR(rv_q <= 0, df_0 < 0, df_1 < 0, ub_0 < 0, ub_1 < 0), "Invalid ASC 606 Ledger", LET(rp_0, df_0 + ub_0, rp_1, df_1 + ub_1, bk_n, rv_q + (rp_1 - rp_0), ROUND(bk_n / rv_q, 2))))` - **Formula (Calculated Billings vs RPO Bookings Divergence Check)**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B5 < 0, B6 < 0), "Invalid ASC 606 Ledger", ROUND(B2 + ((B4 + B6) - (B3 + B5)), 2))` ### SaaS Rule of 40, Magic Number, and Burn Multiple formulas - **URL**: https://sheets.arte-soft.com/en/learn/saas-rule-of-40-and-burn-multiple-magic-number/ - **Summary**: Benchmark SaaS growth efficiency using Rule of 40 (Growth % + FCF Margin %), Go-to-Market Magic Number, and Capital Burn Multiple. *Table — Three investor efficiency benchmarks that balance hypergrowth against cash burn:* | SaaS Efficiency Metric | Formula | Example result | | --- | --- | --- | | Rule of 40 (32% Growth + 14% FCF) | =A2 + B2 | 46.0% (>= 40% Pass!) | | SaaS Magic Number ($600k New ARR / $500k S&M) | =(D2 - C2) / E2 | 1.20x | | Burn Multiple ($750k Net Burn / $600k New ARR) | =F2 / (D2 - C2) | 1.25x | - **Formula (Rule of 40, Magic Number, and Burn Multiple formulas)**: `=ROUND(A2 + B2, 4)` - **Formula (SaaS Magic Number (Net New ARR / Prior Quarter Sales & Marketing))**: `=ROUND((D2 - C2) / E2, 2)` - **Formula (Additional worked calculation)**: `=ROUND(F2 / (D2 - C2), 2)` ### Sabatier CO2 Methanation H2 Demand, SNG & Heat Recovery Formula - **URL**: https://sheets.arte-soft.com/en/learn/sabatier-power-to-gas-co2-methanation-h2-demand-exothermic-heat-and-sng/ - **Summary**: Calculate Stoichiometric Green H2 Feed (kg/hr), Synthetic Natural Gas CH4 Output (kg/hr), Condensed Byproduct Water (kg/hr), and Exothermic Reactor Steam Duty (MWth). *Table — Half of your expensive Green H2 hydrogen atoms exit Sabatier methanation as byproduct water H2O!:* | Sabatier Methanation KPI (11,000 kg/hr CO2, 96% Conv, 165 MJ/kmol) | Formula | Verified Output | | --- | --- | --- | | Stoichiometric Green H2 (kg/hr) | (CO2_kg_hr / 44) * 4 * 2 | 2,000.00 kg/hr | | Produced SNG CH4 Output (kg/hr) | (CO2_kg_hr / 44) * Conv * 16 | 3,840.00 kg/hr (3,200 @ 80% conv) | | Byproduct Water Condensed (kg/hr) | (CO2_kg_hr / 44) * Conv * 36 | 8,640.00 kg/hr | | Reactor Cooling Steam Heat (MWth) | ((CO2_kg_hr / 44) * Conv * dH_MJ) / 3600 | 11.00 MWth (9.17 @ 80% conv) | - **Formula (Sabatier Synthetic Natural Gas (CH4) & Exothermic MWth Formula)**: `=LET(c2_f, B2, cv_f, B3, dh_m, B4, IF(OR(c2_f <= 0, cv_f <= 0.1, cv_f > 1, dh_m < 100, dh_m > 220), "Invalid Sabatier Input", ROUND((c2_f / 44) * cv_f * 16, 2)))` - **Formula (Single-Stage Equilibrium Pinch Conversion Drop Check (Set Conversion = 0.80))**: `=IF(ISTEXT(E3), E3, ROUND(((B2 / 44) * B3 * B4) / 3600, 2))` ### Sabine & Eyring Reverberation Time (RT60) Room Acoustics Formulas - **URL**: https://sheets.arte-soft.com/en/learn/sabine-and-eyring-reverberation-time-rt60-room-acoustics/ - **Summary**: Compare Sabine and Eyring diffuse-field reverberation estimates using room volume, total surface area and a frequency-specific average absorption coefficient. - **Formula (Sabine estimate)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric inputs",IF(OR(B2<=0,B3<=0),"Use positive volume and area",IF(OR(B4<=0,B4>=1),"Use absorption between 0 and 1",0.161*B2/(B3*B4))))` - **Formula (Eyring estimate)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric inputs",IF(OR(B2<=0,B3<=0),"Use positive volume and area",IF(OR(B4<=0,B4>=1),"Use absorption between 0 and 1",0.161*B2/(-B3*LN(1-B4)))))` ### Sackur-Tetrode Equation: Absolute Quantum Molar Entropy of Monatomic Gases - **URL**: https://sheets.arte-soft.com/en/learn/sackur-tetrode-monatomic-ideal-gas-molar-entropy-formula/ - **Summary**: Calculate the absolute statistical-mechanics molar entropy S_m = R * (1.5*LN(M) + 2.5*LN(T) - LN(P_bar) - 1.15171) (J/(mol·K)) of noble gases directly from Planck’s constant! *Table — How Hugo Tetrode (age 17!) and Otto Sackur put Planck’s constant h inside ideal-gas thermodynamics!:* | Noble Gas at 298.15 K & 1.00 bar | Molar Mass M (g/mol) | Sackur-Tetrode S°_m (J/mol·K) | NIST Reference S°_m | | --- | --- | --- | --- | | Helium (He) | 4.0026 g/mol | 126.15 J/(mol·K) | 126.15 J/(mol·K) | | Argon (Ar) | 39.948 g/mol | 154.85 J/(mol·K) | 154.84 J/(mol·K) | | Invalid T <= 0, P <= 0, or M <= 0 | Error Guard | "Invalid Thermodynamic State" | Domain Guard | - **Formula (Sackur-Tetrode Absolute Molar Entropy S_m (J/(mol·K)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Thermodynamic State", ROUND(8.31446 * (1.5 * LN(B2) + 2.5 * LN(B3) - LN(B4) - 1.15171), 2))` - **Formula (Dimensionless Reduced Entropy S_m / R)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Thermodynamic State", ROUND(1.5 * LN(B2) + 2.5 * LN(B3) - LN(B4) - 1.15171, 4))` ### Disinflation Sacrifice Ratio & Okun Misery Index Formula - **URL**: https://sheets.arte-soft.com/en/learn/sacrifice-ratio-disinflation-output-loss-and-okun-misery-index/ - **Summary**: Calculate Laurence Ball’s (1994) Disinflation Sacrifice Ratio SR = Cum_Output_Loss / (pi_peak - pi_trough), Unemployment Point-Years per 1-pp disinflation, and Arthur Okun’s Misery Index. *Table — Quantify the real GDP and jobless cost of breaking entrenched inflation!:* | Disinflation Cost Metric (pi_0=9%, pi_T=3%, Loss=10.5, beta=2.0, u=6.8%) | Formula | Verified Output | | --- | --- | --- | | Disinflation Magnitude (Delta_pi, pp) | pi_0 - pi_T | 6.00 pp | | Ball (1994) GDP Sacrifice Ratio (SR) | Cum_GDP_Loss / (pi_0 - pi_T) | 1.7500 (%-yr GDP / pp) | | Unemployment Point-Years per pp | SR / beta_okun | 0.8750 (pt-yr u / pp) | | Current Okun Misery Index (MI) | u_T + pi_T | 9.80 | - **Formula (Laurence Ball (1994) Disinflation Sacrifice Ratio Formula)**: `=LET(pi_pk, B2, pi_tr, B3, ls_ym, B4, IF(OR(pi_pk <= pi_tr, B5 <= 0, B6 < 0), "Invalid Disinflation Episode", ROUND(ls_ym / (pi_pk - pi_tr), 4)))` - **Formula (Unemployment Sacrifice Ratio & Okun Misery Index Formula)**: `=IF(ISTEXT(E2), E2, ROUND(E2 / B5, 4))` ### Sacrificial-Anode Cathodic Protection Mass & Count Formula - **URL**: https://sheets.arte-soft.com/en/learn/sacrificial-anode-cathodic-protection-faraday-mass-and-anode-count-formula/ - **Summary**: Calculate DNV-RP-B401 Galvanic Cathodic Protection Mean Current Demand (A), Required Net Anode Mass (kg), Minimum 150 kg Al-Zn-In Anode Count, and Gross Installed Anode Mass (kg). *Table — Never omit the DNV anode utilization factor u = 0.85—the last 15% stub cannot protect steel!:* | DNV-RP-B401 Cathodic Protection KPI (4,000 m², 0.10 A/m², 5% Breakdown, 25 Yrs) | Formula | Verified Output | | --- | --- | --- | | Mean Protection Current I_mean (A) | Steel_Area_m2 * Bare_A_m2 * Coating_Breakdown | 20.00 A (40.00 A @ 10% Breakdown) | | Required Net Anode Mass (kg) | (I_mean * Years * 8760) / (Ah_per_kg * u) | 2,576.47 kg (5,152.94 kg @ 10%) | | Minimum 150 kg Stand-Off Anodes | ROUNDUP(Required_Net_Mass_kg / 150, 0) | 18 Anodes (35 Anodes @ 10%) | | Gross Installed Alloy Mass (kg) | Min_Anode_Count * 150 | 2,700.00 kg (5,250.00 kg @ 10%) | - **Formula (DNV Galvanic Anode Alloy Mass & ROUNDUP Count Formula)**: `=LET(ar_s, B2, i_br, B3, fc_m, B4, yr_d, B5, cp_a, B6, ut_f, B7, IF(OR(ar_s <= 0, i_br <= 0, fc_m <= 0, fc_m > 1, yr_d <= 0, cp_a <= 0, ut_f <= 0.5, ut_f > 0.95), "Invalid Cathodic Protection Input", LET(i_mn, ar_s * i_br * fc_m, ROUND((i_mn * yr_d * 8760) / (cp_a * ut_f), 2))))` - **Formula (Degraded Coating 10% Breakdown Sensitivity Check (Set Coating Breakdown = 0.10))**: `=IF(ISTEXT(E3), E3, ROUNDUP(((B2 * B3 * B4 * B5 * 8760) / (B6 * B7)) / 150, 0))` ### Safety stock formula: combine demand volatility and supplier lead-time variance - **URL**: https://sheets.arte-soft.com/en/learn/safety-stock-and-service-level-buffer-formula/ - **Summary**: Size warehouse safety stock for 95% or 99% cycle service levels using Z * SQRT(AvgLeadTime * DemandSD^2 + AvgDemand^2 * LeadTimeSD^2). *Table — Why ignoring supplier lead-time variability causes stockouts:* | Input Parameter | Sample Value | Contribution | | --- | --- | --- | | Avg Daily Demand (A2) & SD (B2) | 40 units/d, SD = 15 | LT * SD_D^2 = 4 * 225 = 900 | | Avg Lead Time (C2) & SD (D2) | 4 days, SD = 1 day | D^2 * SD_LT^2 = 1600 * 1 = 1600 | | Combined Lead-Time SD | SQRT(900 + 1600) | 50.0 units | | Safety Stock & ROP (Z = 1.645, 95%) | ROUNDUP(1.645 * 50) = 83 units | ROP = 40*4 + 83 = 243 units | - **Formula (Combined Safety Stock and Reorder Point (ROP) formulas)**: `=ROUNDUP(E2 * SQRT(C2 * (B2 ^ 2) + (A2 ^ 2) * (D2 ^ 2)), 0)` - **Formula (Full Reorder Point (Expected Lead-Time Demand + Safety Stock))**: `=A2 * C2 + ROUNDUP(E2 * SQRT(C2 * (B2 ^ 2) + (A2 ^ 2) * (D2 ^ 2)), 0)` ### Sagnac Interferometer Phase Shift Formula (Fiber-Optic Gyroscope FOG) - **URL**: https://sheets.arte-soft.com/en/learn/sagnac-fiber-optic-gyroscope-interferometer-phase-shift-formula/ - **Summary**: Calculate counter-propagating laser Sagnac phase shift Δφ = (2 * π * L * D * Ω_rad_s) / (λ * c) (radians) in aerospace and subsea inertial navigation fiber-optic gyroscopes. *Table — Measuring spacecraft and submarine rotation with zero moving parts via Georges Sagnac’s 1913 relativistic loop!:* | Angular Rotation Rate Ω (L = 500 m, D = 0.12 m, λ = 1550 nm) | Rate in rad/s | Sagnac Phase Shift Δφ (rad) | Navigation Regime | | --- | --- | --- | --- | | 10.0 deg/s (UAV / Autonomous Turn) | 0.1745 rad/s | 0.1416 rad | High-Dynamic Slew | | 1.0 deg/s (Precision Attitude Hold) | 0.0175 rad/s | 0.0142 rad | Sub-Milliradian Phase Lock | | Invalid L <= 0, D <= 0, or λ <= 0 | Undefined | "Invalid FOG Coil Parameters" | Optical Geometry Guard | - **Formula (Sagnac Interferometric Phase Shift Δφ (Radians))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid FOG Coil Parameters", ROUND((2 * PI() * B2 * B3 * (B4 * PI() / 180)) / ((B5 * 1E-9) * 299792458), 4))` - **Formula (FOG Scale Factor S_FOG (Radians per rad/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid FOG Coil Parameters", ROUND((2 * PI() * B2 * B3) / ((B5 * 1E-9) * 299792458), 4))` ### Saha Thermal Ionization Equation (Stellar & Laboratory Plasma) - **URL**: https://sheets.arte-soft.com/en/learn/saha-thermal-ionization-equation-stellar-hydrogen-plasma/ - **Summary**: Estimate the ionized fraction of pure atomic hydrogen in a ground-state LTE approximation. Use a log-domain Saha ratio and a stable quadratic solution to avoid cancellation at high ionization. - **Formula (Enter temperature and hydrogen-nucleus density)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric temperature and density",IF(MIN(B2:B3)<=0,"Temperature and density must be positive","OK"))` - **Formula (Compute the logarithm of the Saha ratio)**: `=IF(C2<>"OK",C2,LN(2.41468E21)+1.5*LN(B2)-157809/B2-LN(B3))` - **Formula (Solve the quadratic without subtracting nearly equal numbers)**: `=IF(C2<>"OK",C2,LET(logRatio,N(C3),smallRoot,EXP(-ABS(logRatio)/2),IF(logRatio>=0,2/(1+SQRT(1+4*smallRoot^2)),2*smallRoot/(SQRT(smallRoot^2+4)+smallRoot))))` ### Saha Thermal Ionization Equation & Plasma Ionization Fraction (x) - **URL**: https://sheets.arte-soft.com/en/learn/saha-thermal-ionization-equation-stellar-plasma-fraction/ - **Summary**: Calculate the dimensionless Saha equilibrium constant K_Saha and quadratic plasma ionization degree x = (-K + SQRT(K^2 + 4*K)) / 2 for stellar atmospheres (A0 stars) and ICP spectroscopy. *Table — Why hydrogen ionizes at 10,000 K (~0.86 eV)—15x below its 13.6 eV ionization potential!:* | Hydrogen Plasma Temp T (n_tot = 1e20 m^-3, chi = 13.5984 eV) | Saha Equilibrium Ratio K | Ionization Fraction x (0–1) | Astrophysical / ICP Regime | | --- | --- | --- | --- | | Cooler F-Star / ICP Outer Zone (8,000 K) | 0.0468 | 0.1943 (19.4% Ionized) | Mostly Neutral Atomic H | | Hot A0-Star Photosphere (10,000 K) | 3.3851 | 0.8074 (80.7% Ionized) | Peak Balmer Absorption Cutoff | | Invalid Density or Temp (T <= 0 or n <= 0) | Physical Guard | "Invalid Plasma Inputs" | Requires T > 0, chi > 0, n_tot > 0 | - **Formula (Dimensionless Saha Ionization Ratio K_Saha = x^2 / (1 - x))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Plasma Inputs", ROUND((B5 * (2.414684 * (10 ^ 21)) * (B2 ^ 1.5) * EXP(-B3 / (0.00008617333 * B2))) / B4, 4))` - **Formula (Exact Quadratic Degree of Plasma Ionization x = (-K + SQRT(K^2 + 4*K)) / 2)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Plasma Inputs", ROUND((-((B5 * (2.414684 * (10 ^ 21)) * (B2 ^ 1.5) * EXP(-B3 / (0.00008617333 * B2))) / B4) + SQRT((((B5 * (2.414684 * (10 ^ 21)) * (B2 ^ 1.5) * EXP(-B3 / (0.00008617333 * B2))) / B4) ^ 2) + 4 * ((B5 * (2.414684 * (10 ^ 21)) * (B2 ^ 1.5) * EXP(-B3 / (0.00008617333 * B2))) / B4))) / 2, 4))` ### Saint-Venant Rectangular Bar Torsion Constant and Peak Shear Stress - **URL**: https://sheets.arte-soft.com/en/learn/saint-venant-rectangular-bar-torsion-constant-and-maximum-wall-shear-stress/ - **Summary**: Avoid the circular polar-inertia J_p trap on rectangular shafts by computing Saint-Venant torsional stiffness K_tor, twist angle, and midpoint long-side peak shear stress. *Table — Never use circular polar inertia J_p on a flat or rectangular bar in torsion:* | Rectangular Torsion Metric | Saint-Venant / Roark Formula | Sample Output (80 x 20 mm) | | --- | --- | --- | | Peak Shear Stress (Long Midpoint) | 10^-6 * T * (3*a + 1.8*b) / (a^2 * b^2) | 34.5000 MPa | | Torsion Constant K_tor (cm^4) | 10^8 * a * b^3 * (1/3 - 0.21*(b/a)*(1 - b^4/(12*a^4))) | 17.9744 cm^4 | | Naive Polar Inertia J_p (Bug) | 10^8 * a * b * (a^2 + b^2) / 12 | 90.6667 cm^4 (5.04x too stiff!) | | True Twist Angle theta (deg) | DEGREES(T * L / ((G_GPa * 10^9) * K_tor_m4)) | 1.2751 deg (vs 0.2528 deg bug) | - **Formula (Peak Rectangular Wall Shear Stress (MPa) Formula)**: `=LET(a_lg, MAX(B2, B3), b_sh, MIN(B2, B3), t_nm, B4, IF(OR(b_sh <= 0, t_nm < 0), "Invalid Bar Input", ROUND((10^-6) * t_nm * (3 * a_lg + 1.8 * b_sh) / ((a_lg^2) * (b_sh^2)), 4)))` - **Formula (True Twist Angle (Degrees) via Saint-Venant K_tor Formula)**: `=LET(a_lg, MAX(B2, B3), b_sh, MIN(B2, B3), t_nm, B4, g_pa, B5 * 10^9, l_m, B6, IF(OR(b_sh <= 0, g_pa <= 0, l_m <= 0), "Invalid Bar Input", LET(k_tor, a_lg * (b_sh^3) * ((1 / 3) - 0.21 * (b_sh / a_lg) * (1 - (b_sh^4) / (12 * (a_lg^4)))), ROUND(DEGREES((t_nm * l_m) / (g_pa * k_tor)), 4))))` ### Sakurai Alpha-Power CMOS Delay & EDP Formula - **URL**: https://sheets.arte-soft.com/en/learn/sakurai-alpha-power-law-cmos-velocity-saturation-delay-and-edp-formula/ - **Summary**: Calculate CMOS Dynamic Switching Energy E_dyn = C_L * V_DD^2, Sakurai Velocity-Saturated Propagation Delay t_p = 0.5 * C_L * V_DD / (K_d * (V_DD - V_th)^alpha), Shockley Square-Law Bias, and Energy-Delay Product (EDP). *Table — Stop modeling short-channel FinFET/nanosheet gates with Shockley’s alpha = 2 square law!:* | CMOS Gate Timing Metric (VDD=1.0V, Vth=0.2V, alpha=1.0, CL=16fF, Kd=0.50) | Formula | Verified Output | | --- | --- | --- | | Dynamic Switching Energy (fJ) | C_L_fF * V_DD^2 | 16.00 fJ (5.76 fJ @ 0.60V) | | Sakurai 50% Gate Delay (ps) | 0.5 * C_L * V_DD / (K_d * (VDD - Vth)^alpha) | 20.00 ps (24.00 ps @ 0.60V) | | Shockley alpha=2 Delay (ps) | 0.5 * C_L * V_DD / (K_d * (VDD - Vth)^2) | 25.00 ps (60.00 ps @ 0.60V!) | | Energy-Delay Product EDP (fJ*ps) | E_dyn * t_p50 | 320.00 fJ*ps (138.24 @ 0.60V) | - **Formula (Sakurai Alpha-Power Propagation Delay Formula)**: `=LET(v_dd, B2, v_th, B3, al_p, B4, c_ld, B5, k_dr, B6, IF(OR(v_dd <= 0, v_th < 0, al_p < 1, al_p > 2, c_ld <= 0, k_dr <= 0), "Invalid CMOS Parameter", IF(v_dd <= v_th, "Subthreshold Cutoff (VDD <= Vth)", ROUND((0.5 * c_ld * v_dd) / (k_dr * ((v_dd - v_th) ^ al_p)), 2))))` - **Formula (Dynamic Voltage Scaling (DVS) Energy-Delay Product Formula)**: `=IF(ISTEXT(E3), E3, ROUND(E2 * E3, 2))` ### Cournot Merger Paradox & 80% Threshold Formula - **URL**: https://sheets.arte-soft.com/en/learn/salant-switzer-reynolds-cournot-merger-paradox-80-percent-rule/ - **Summary**: Prove Salant, Switzer & Reynolds’s (1983) Cournot Merger Paradox: without cost synergies, merging M of N symmetric Cournot rivals loses money unless M >= 80% of the industry! *Table — Why horizontal Cournot mergers without cost synergies enrich non-merging rivals and lose money!:* | Merger Scenario (N = 5, a - c = 120, b = 1) | Combined Pre-Merger Profit | Post-Merger Profit & Net Change | | --- | --- | --- | | 2-Firm Merger (M = 2, 40% Share) | 800.00 (2 x 400) | 576.00 (-224.00 Merger Paradox Loss!) | | 3-Firm Merger (M = 3, 60% Share) | 1,200.00 (3 x 400) | 900.00 (-300.00 Loss!) | | 4-Firm Merger (M = 4, 80% Threshold!) | 1,600.00 (4 x 400) | 1,600.00 (0.00 Exact Breakeven!) | | Merger to Monopoly (M = 5, 100%) | 2,000.00 (5 x 400) | 3,600.00 (+1,600.00 Gain) | - **Formula (Net Merging-Insiders Profit Change (Pi_post - M * Pi_pre) Formula)**: `=LET(a_ch, B2, b_sl, B3, c_mc, B4, n_in, B5, m_mg, B6, IF(OR(a_ch <= c_mc, c_mc < 0, b_sl <= 0, n_in < 2, m_mg < 2, m_mg > n_in, INT(n_in) <> n_in, INT(m_mg) <> m_mg), "Require Integer 2 <= M <= N and a > c", LET(s_sq, ((a_ch - c_mc)^2) / b_sl, pi_pre, m_mg * s_sq / ((n_in + 1)^2), pi_pst, s_sq / ((n_in - m_mg + 2)^2), ROUND(pi_pst - pi_pre, 4))))` - **Formula (Free-Riding Outsider Windfall Gain per Non-Merging Rival Formula)**: `=LET(a_ch, B2, b_sl, B3, c_mc, B4, n_in, B5, m_mg, B6, IF(OR(a_ch <= c_mc, c_mc < 0, b_sl <= 0, n_in < 2, m_mg < 2, m_mg > n_in, INT(n_in) <> n_in, INT(m_mg) <> m_mg), "Require Integer 2 <= M <= N and a > c", IF(m_mg = n_in, 0, LET(s_sq, ((a_ch - c_mc)^2) / b_sl, ROUND((s_sq / ((n_in - m_mg + 2)^2)) - (s_sq / ((n_in + 1)^2)), 4)))))` ### Corporate Sale-Leaseback Debt-Paydown Arbitrage Formula - **URL**: https://sheets.arte-soft.com/en/learn/sale-leaseback-cap-rate-proceeds-debt-paydown-and-ebitda-coverage/ - **Summary**: Calculate Industrial / Retail Sale-Leaseback Gross Valuation Proceeds (NNN Rent / Cap Rate), Net After-Tax Debt Paydown After Capital-Gain Tax on Low-Basis Real Estate, Annual Interest Saved, and Pre-Tax Annual Cash-Flow Accretion / Dilution ($M). *Table — Account for low-basis capital-gain tax leakage before claiming sale-leaseback debt arbitrage!:* | Sale-Leaseback Metric ($6M Rent @ 7.5% Cap, $32M Basis, 25% Tax, 9.5% Debt) | Formula | Verified Output | | --- | --- | --- | | Gross Property Sale Proceeds ($M) | Initial_NNN_Rent_M / Cap_Rate | $80.00M | | Net After-Tax Debt Paydown ($M) | Gross - MAX(0, Gross - Basis) * Tax_Rate | $68.00M ($12.00M Gain Tax) | | Annual Debt Interest Saved ($M) | Net_Debt_Paydown_M * Retired_Debt_Rate | $6.46M ($4.76M @ 7.0% Debt) | | Net Pre-Tax Cash Flow Delta ($M) | Annual_Interest_Saved - Initial_NNN_Rent | +$0.46M (-$1.24M @ 7.0% Debt) | - **Formula (After-Tax Sale-Leaseback Debt-Paydown Cash Arbitrage Formula)**: `=LET(rn_m, B2, cp_r, B3, bs_m, B4, tx_r, B5, db_r, B6, IF(OR(rn_m <= 0, cp_r <= 0, cp_r >= 0.25, bs_m < 0, tx_r < 0, tx_r >= 0.5, db_r <= 0), "Invalid Sale-Leaseback Input", LET(gr_p, rn_m / cp_r, nt_p, gr_p - MAX(0, gr_p - bs_m) * tx_r, sv_i, nt_p * db_r, ROUND(sv_i - rn_m, 2))))` - **Formula (Investment-Grade Debt Dilution Check (Set Retired Debt Coupon = 7.00%))**: `=IF(ISTEXT(E5), E5, ROUND((B2 / B3 - MAX(0, B2 / B3 - B4) * B5) * B6, 2))` ### Calculate sales commission: flat-tier IFS vs marginal progressive brackets - **URL**: https://sheets.arte-soft.com/en/learn/sales-commission-tiered-if-ifs/ - **Summary**: Implement both retroactive flat-rate commission tiers with IFS and cliff-free marginal bracket commissions with MIN and MAX. *Table — Retroactive flat tiers vs progressive marginal brackets:* | SalesAmt (A) | Marginal Commission | Retroactive Flat-Tier Commission | | --- | --- | --- | | 40000 | 2000 (40k*5%) | 2000 (40k*5%) | | 75000 | 4500 (2500 + 25k*8%) | 6000 (75k*8%) | | 120000 | 8500 (2500 + 4000 + 20k*10%) | 12000 (120k*10%) | - **Formula (Marginal slice formula and flat-tier IFS formula)**: `=ROUND(MIN(A2, 50000) * 0.05 + MAX(0, MIN(A2 - 50000, 50000)) * 0.08 + MAX(0, A2 - 100000) * 0.1, 2)` - **Formula (Retroactive flat-tier IFS alternative)**: `=ROUND(A2 * IFS(A2 > 100000, 0.1, A2 > 50000, 0.08, TRUE, 0.05), 2)` ### Sales Funnel Chart Formula: Invisible Centering Spacer & Stage Drop-Off % - **URL**: https://sheets.arte-soft.com/en/learn/sales-funnel-chart-centering-spacer-and-stage-dropoff-formula/ - **Summary**: Construct a centered horizontal Sales Funnel on any stacked bar chart by computing the exact left-padding spacer (Top_Stage - Stage_i) / 2 alongside stage-to-stage conversion and leakage rates. *Table — Center stacked horizontal bars symmetrically with the half-deficit spacer!:* | Funnel Stage | Leads (S_i) | Left Centering Spacer | Prior-Stage Pass % | | --- | --- | --- | --- | | 1. Landing Visitors | 4,000 | 0.0 | 100.00% | | 2. Free Signups | 1,400 | 1,300.0 | 35.00% | | 3. Activated Trials | 560 | 1,720.0 | 40.00% | | 4. Paid Customers | 196 | 1,902.0 | 35.00% (4.90% overall) | - **Formula (Invisible Left-Centering Bar Spacer for Stage i)**: `=IF(OR(MAX(B2:B5) <= 0, B3 < 0, B3 > MAX(B2:B5)), "Invalid Funnel Stage", ROUND((MAX(B2:B5) - B3) / 2, 1))` - **Formula (Stage-to-Stage Conversion Rate (%) from Trials (B4) to Paid (B5))**: `=IF(OR(B4 <= 0, B5 < 0, B5 > B4), "Invalid Stage Pair", ROUND(100 * B5 / B4, 2))` ### Sales Rep Ramp Quota Capacity & Attrition Formula - **URL**: https://sheets.arte-soft.com/en/learn/sales-rep-ramp-time-quota-capacity-and-regrettable-attrition-cost/ - **Summary**: Calculate Ramped Rep Equivalents (RRE), Street Quota Capacity, and Attrition-Adjusted Expected Bookings against Board ARR targets using SUMPRODUCT. *Table — Eliminate the headcount-times-quota FP&A illusion in SaaS revenue planning!:* | AE Hiring Cohort | Headcount | Full-Year Ramp Factor | Ramped Street Capacity | | --- | --- | --- | --- | | Tenured_AE | 8 | 1.00 | $8,000,000 | | Q1_Hire_Cohort | 4 | 0.75 | $3,000,000 | | Q2_Hire_Cohort | 4 | 0.50 | $2,000,000 | | Q3_Hire_Cohort | 4 | 0.25 | $1,000,000 | - **Formula (Ramped Rep Equivalents (RRE) & Attrition-Adjusted Bookings Formula)**: `=IF(OR(B7 <= 0, B7 > 2, B8 < 0, B8 >= 1, B9 <= 0), "Invalid GTM Capacity Input", ROUND(SUM(E2:E5) * B7 * (1 - B8), 2))` - **Formula (Board ARR Target Coverage Verdict Formula)**: `=IF(ISTEXT(G4), G4, IF(G4 >= B9, "Target Covered (+Buffer)", "Capacity Deficit: Hire Earlier"))` ### SALT Score (Severity of Alopecia Tool) Weighted Scalp Quadrant Formula - **URL**: https://sheets.arte-soft.com/en/learn/salt-score-severity-of-alopecia-tool-scalp-quadrant-formula/ - **Summary**: Calculate Elise Olsen’s NAAF Severity of Alopecia Tool score SALT = 0.18*Left + 0.18*Right + 0.40*Top + 0.24*Back (0–100%) and classify JAK-inhibitor trial eligibility (SALT >= 50) vs SALT <= 20 treatment response. *Table — Why top/vertex scalp loss carries 40% of total SALT weight!:* | Weighted SALT Score (0–100) | NAAF Olsen Subclass | Dermatology Trial & Biologic/JAK Milestone | | --- | --- | --- | | 0 (No Hair Loss) / 1 – 20 | S0 (0%) / S1 (<=20% Target) | FDA Primary Efficacy Endpoint (SALT <= 20!) | | 21 – 49 Points | S1 (1–24%) / S2 (25–49%) | Moderate Alopecia Areata | | 50 – 100 Points (e.g., 51.5 pts) | S3 (50–74%), S4 (75–99%), S5 (100%) | Severe Alopecia Areata (SALT >= 50 Systemic Eligibility) | - **Formula (Weighted 4-Quadrant SALT Alopecia Score (0–100))**: `=IF(OR(MIN(B2:B5) < 0, MAX(B2:B5) > 100), "Invalid Quadrant % (0-100)", ROUND(0.18 * B2 + 0.18 * B3 + 0.4 * B4 + 0.24 * B5, 2))` - **Formula (SALT Clinical Severity & SALT <= 20 Response Milestone)**: `=IF(OR(MIN(B2:B5) < 0, MAX(B2:B5) > 100), "Invalid Quadrant % (0-100)", IF(0.18 * B2 + 0.18 * B3 + 0.4 * B4 + 0.24 * B5 >= 50, "Severe Alopecia Areata (SALT >= 50)", IF(0.18 * B2 + 0.18 * B3 + 0.4 * B4 + 0.24 * B5 > 20, "Moderate Alopecia Areata (20 < SALT < 50)", "Target Achieved / Mild (SALT <= 20)")))` ### Get the Same Calendar Date Next Month or Next Year Without Overflow (EDATE vs DATE) - **URL**: https://sheets.arte-soft.com/en/learn/same-calendar-day-next-month-and-next-year-edate/ - **Summary**: Roll subscription billing and anniversary dates forward by 1, 3, or 12 months with EDATE so Jan 31 and Feb 29 leap-day anchors clamp to Feb 28 instead of spilling into March. *Table — Why DATE(YEAR(d), MONTH(d) + 1, DAY(d)) overflows Jan 31 into March 3:* | Start Date | Target Rollover | DATE(...) Overflow Result | EDATE(...) Clamped Result | | --- | --- | --- | --- | | 2026-01-31 | +1 month | 2026-03-03 (overflows Feb!) | 2026-02-28 | | 2024-02-29 (Leap) | +12 months (+1 yr) | 2025-03-01 (overflows Feb!) | 2025-02-28 | | 2026-04-15 | +1 month / +12 months | 2026-05-15 / 2027-04-15 | 2026-05-15 / 2027-04-15 | - **Formula (Month & Annual Anniversary Rollover Formula)**: `=EDATE(B2, 1)` ### SAMe-TT2R2 Score: Warfarin INR Quality (TTR) vs Upfront DOAC Selection - **URL**: https://sheets.arte-soft.com/en/learn/same-tt2r2-score-warfarin-time-in-therapeutic-range-vs-doac/ - **Summary**: Calculate Stavros Apostolakis’ 0–8 SAMe-TT2R2 anticoagulation choice score (Sex female +1, Age <60 +1, Medical history >2 comorbidities +1, Interacting Rx like amiodarone +1, Tobacco within 2 yrs +2, Non-Caucasian Race +2) to predict poor warfarin INR control. *Table — Predicting poor warfarin INR control BEFORE a "trial of warfarin" causes stroke or bleed!:* | SAMe-TT2R2 Total Score (0–8) | Expected Warfarin TTR Quality | Anticoagulant Selection Guidance | | --- | --- | --- | | 0 – 2 Points (e.g., Female +1, >2 Comorbidities +1) | Likely Favorable TTR (>=65–70%) | VKA Acceptable if Indicated (or DOAC) | | >= 3 Points (e.g., Smoker +2, Amiodarone +1 = 3) | Suboptimal / Labile INR Likely | Prefer Upfront DOAC (Avoid Trial of Warfarin!) | | Non-Binary Entry (!= 0 or 1) | Validation Guard | "Invalid Binary SAMe-TT2R2 Flag" | - **Formula (Weighted 6-Item SAMe-TT2R2 Score (0–8))**: `=IF(OR(COUNTA(B2:B7) < 6, SUMPRODUCT((B2:B7 <> 0) * (B2:B7 <> 1)) > 0), "Invalid Binary SAMe-TT2R2 Flag", B2 + B3 + B4 + B5 + 2 * B6 + 2 * B7)` - **Formula (Warfarin TTR Prediction & DOAC Recommendation (>= 3 Cutoff))**: `=IF(OR(COUNTA(B2:B7) < 6, SUMPRODUCT((B2:B7 <> 0) * (B2:B7 <> 1)) > 0), "Invalid Binary SAMe-TT2R2 Flag", IF(B2 + B3 + B4 + B5 + 2 * B6 + 2 * B7 >= 3, "Poor Expected Warfarin TTR (>=3: Prefer Upfront DOAC)", "Likely Good Warfarin TTR (0-2: TTR >=65-70% Achievable)"))` ### Adult Appendicitis Score (AAS) Formula: Sammalkorpi Sex-Adjusted RLQ Triage - **URL**: https://sheets.arte-soft.com/en/learn/sammalkorpi-adult-appendicitis-score-aas-rlq-ct-triage/ - **Summary**: Calculate Heidi Sammalkorpi’s Adult Appendicitis Score (0–23 points) integrating sex/age-adjusted RLQ guarding, pain relocation, WBC, neutrophil %, and early vs. >= 24h CRP. *Table — Why AAS weights RLQ tenderness differently in reproductive-age women (16–49 yr) and splits CRP by symptom duration!:* | Adult Appendicitis Score (AAS 0–23) | Appendicitis Specificity / Risk | Emergency Surgery & Imaging Pathway | | --- | --- | --- | | AAS <= 10 (Low Probability) | High NPV Rule-Out | Safe Discharge / Observation Without Routine CT | | AAS 11–15 (Intermediate) | Equivocal Clinical Picture | Diagnostic Ultrasound or Low-Dose CT | | AAS >= 16 (High Probability, e.g., 18) | ~93% Specificity | Direct Surgical Consult / Appendectomy | - **Formula (Sammalkorpi Adult Appendicitis Score Total (0 to 23 Points))**: `=IF(OR(MIN(B2:B8) < 0, B2 > 2, B3 > 2, B4 > 3, B5 > 4, B6 > 3, B7 > 2, B8 > 5), "Invalid AAS Item Score", SUM(B2:B8))` - **Formula (AAS Three-Zone Diagnostic & Imaging Triage Classification)**: `=IF(OR(MIN(B2:B8) < 0, B2 > 2, B3 > 2, B4 > 3, B5 > 4, B6 > 3, B7 > 2, B8 > 5), "Invalid AAS Item Score", IF(SUM(B2:B8) >= 16, "High Probability (AAS >= 16 — Surgical Consult)", IF(SUM(B2:B8) >= 11, "Intermediate (AAS 11–15 — Ultrasound / CT)", "Low Probability (AAS <= 10 — Safe Rule-Out)")))` ### Sample & Population Covariance Formula (COVARIANCE.S / .P) & CAPM Beta - **URL**: https://sheets.arte-soft.com/en/learn/sample-and-population-covariance-and-ols-beta-formula/ - **Summary**: Calculate Population Covariance Cov_P = CORREL(X, Y) * STDEV.P(X) * STDEV.P(Y), Bessel-corrected Sample Covariance Cov_S = CORREL(X, Y) * STDEV.S(X) * STDEV.S(Y), and CAPM Market Beta = Cov(R_i, R_m) / Var(R_m). *Table — Avoid mixing N vs N - 1 denominators in portfolio covariance matrices!:* | Statistic (Market [-4, 2, 6, 8] vs Stock [-6, 3, 9, 10]) | Denominator | Exact Value | | --- | --- | --- | | Population Covariance (Cov_P) | N = 4 (116 / 4) | 29.0000 | | Sample Covariance (Cov_S) | N - 1 = 3 (116 / 3) | 38.6667 | | CAPM Market Beta (Cov / Var_Mkt = SLOPE) | Cancels (29 / 21) | 1.3810 | - **Formula (Population Covariance (COVARIANCE.P Identity))**: `=IF(COUNT(B2:B5) < 2, "Need >= 2 Pairs", ROUND(CORREL(B2:B5, C2:C5) * STDEV.P(B2:B5) * STDEV.P(C2:C5), 4))` - **Formula (Sample Covariance (COVARIANCE.S Identity) & Beta Check)**: `=IF(COUNT(B2:B5) < 2, "Need >= 2 Pairs", ROUND(CORREL(B2:B5, C2:C5) * STDEV.S(B2:B5) * STDEV.S(C2:C5), 4))` ### Sample & Population Skewness Formulas (SKEW vs SKEW.P Third Standardized Moment) - **URL**: https://sheets.arte-soft.com/en/learn/sample-and-population-skewness-skew-and-skew-p-formula/ - **Summary**: Measure distribution asymmetry and tail direction using both the adjusted Fisher-Pearson sample skewness (SKEW, requiring n >= 3) and population skewness (SKEW.P) built from SUMPRODUCT, AVERAGE, STDEV.S, and STDEV.P. *Table — Right-tail vs left-tail asymmetry and small-sample bias correction:* | Observation (B2:B6) | Value | Deviation (x - 16) | Cubed Deviation (x - 16)^3 | | --- | --- | --- | --- | | Obs 1 | 10 | -6 | -216 | | Obs 2 | 12 | -4 | -64 | | Obs 3 | 13 | -3 | -27 | | Obs 4 | 15 | -1 | -1 | | Obs 5 (Right outlier) | 30 | +14 | +2,744 (Sum = +2,436 -> SKEW = 1.9594) | - **Formula (Adjusted Fisher-Pearson Sample Skewness (SKEW))**: `=LET(nObs, COUNT(B2:B6), sd, STDEV.S(B2:B6), IF(OR(nObs < 3, sd = 0), "Undefined Skewness", LET(mu, AVERAGE(B2:B6), ROUND((nObs / ((nObs - 1) * (nObs - 2))) * SUMPRODUCT(((B2:B6 - mu) / sd) ^ 3), 4))))` - **Formula (Population Third Standardized Moment (SKEW.P))**: `=LET(nObs, COUNT(B2:B6), sdp, STDEV.P(B2:B6), IF(OR(nObs < 1, sdp = 0), "Undefined Skewness", LET(mu, AVERAGE(B2:B6), ROUND(SUMPRODUCT(((B2:B6 - mu) / sdp) ^ 3) / nObs, 4))))` ### Sampson-NIH Equation 2 LDL Cholesterol Calculator (TG up to 800 mg/dL) - **URL**: https://sheets.arte-soft.com/en/learn/sampson-nih-equation-2-ldl-cholesterol-high-triglyceride-formula/ - **Summary**: Calculate beta-quantification-calibrated LDL cholesterol (mg/dL) up to triglycerides of 800 mg/dL using Maureen Sampson’s bivariate NIH Equation 2 and measure Friedewald underestimation bias. *Table — Stop Friedewald’s TG / 5 assumption from under-treating high-triglyceride ASCVD patients!:* | Lipid Panel Scenario (mg/dL) | Classical Friedewald LDL | Sampson-NIH Equation 2 LDL | Clinical Discordance | | --- | --- | --- | --- | | Hypertriglyceridemia (TC 210, HDL 42, TG 280) | 112.0 mg/dL | 119.0 mg/dL | +7.0 mg/dL Masked by Friedewald | | Normotriglyceridemic (TC 185, HDL 55, TG 110) | 108.0 mg/dL | 110.3 mg/dL | +2.3 mg/dL Close Agreement | | Extreme Chylomicronemia (TG > 800 mg/dL) | Invalid (> 400 Cutoff) | "Direct Beta-Quantification Required" | Exceeds 800 mg/dL NIH Limit | - **Formula (Sampson-NIH Equation 2 Estimated LDL-C (mg/dL, Valid for TG <= 800))**: `=IF(OR(B2 <= B3, B3 <= 0, B4 <= 0, B4 > 800), "Direct Beta-Quantification Required (TG > 800 or Invalid Lipids)", ROUND((B2 / 0.948) - (B3 / 0.971) - ((B4 / 8.56) + ((B4 * (B2 - B3)) / 2140) - ((B4 ^ 2) / 16100)) - 9.44, 1))` - **Formula (Sampson-NIH Minus Classical Friedewald LDL Difference (mg/dL))**: `=IF(OR(B2 <= B3, B3 <= 0, B4 <= 0, B4 > 800), "Direct Beta-Quantification Required (TG > 800 or Invalid Lipids)", ROUND(((B2 / 0.948) - (B3 / 0.971) - ((B4 / 8.56) + ((B4 * (B2 - B3)) / 2140) - ((B4 ^ 2) / 16100)) - 9.44) - (B2 - B3 - (B4 / 5)), 1))` ### Sampson-NIH LDL-C Equation (Accurate LDL up to Triglycerides 800 mg/dL) - **URL**: https://sheets.arte-soft.com/en/learn/sampson-nih-ldl-cholesterol-hypertriglyceridemia-formula/ - **Summary**: Calculate low-density lipoprotein cholesterol (LDL-C) in mg/dL using the 2020 Sampson-NIH bivariate quadratic equation—avoiding Friedewald's underestimation at low LDL-C or triglycerides up to 800 mg/dL. *Table — Fix Friedewald's dangerous LDL-C underestimation when triglycerides exceed 150–400 mg/dL!:* | Lipid Panel (mg/dL) | Sampson-NIH LDL-C | Legacy Friedewald (TC-HDL-TG/5) | Clinical Validity | | --- | --- | --- | --- | | TC 220, HDL 42, TG 350 | 117.0 mg/dL | 108.0 mg/dL (Underestimates by 9!) | Valid (TG <= 800 mg/dL) | | TC 190, HDL 55, TG 120 | 113.6 mg/dL | 111.0 mg/dL | Concordant at normal TG | | Severe Chylomicronemia (TG = 950) | Guarded (> 800 mg/dL) | Invalid (> 400 mg/dL) | "Direct Ultracentrifugation Required (TG > 800)" | - **Formula (Sampson-NIH (2020) LDL-Cholesterol Formula (mg/dL, Valid for TG <= 800))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B3 >= B2), "Invalid Lipid Panel", IF(B4 > 800, "Direct Ultracentrifugation Required (TG > 800)", ROUND((B2 / 0.948) - (B3 / 0.971) - ((B4 / 8.56) + ((B4 * (B2 - B3)) / 2140) - ((B4 ^ 2) / 16100)) - 9.44, 1)))` - **Formula (Non-HDL Cholesterol = TC - HDL (mg/dL, Triglyceride-Independent ApoB Proxy))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= B2), "Invalid Lipid Panel", ROUND(B2 - B3, 1))` ### Pediatric Appendicitis Score (PAS — Samuel 0–10 Scale & Ultrasound Triage) - **URL**: https://sheets.arte-soft.com/en/learn/samuel-pediatric-appendicitis-score-pas-children-rlq-pain/ - **Summary**: Calculate Madan Samuel’s (2002) 10-point Pediatric Appendicitis Score weighting cough/percussion/hopping RLQ tenderness (+2) and RLQ palpation tenderness (+2) to guide ultrasound-first imaging vs. surgical consult. *Table — Radiation-sparing pediatric ED triage—why PAS weights cough/hopping RLQ pain +2 instead of Alvarado’s leukocytosis!:* | PAS Total Score (0–10 Points) | Pediatric Appendicitis Risk Tier | Radiation-Sparing ED Pathway | | --- | --- | --- | | 0 – 3 Points (e.g., Total = 2) | Low Risk (PAS <= 3 — Observe / Discharge) | Avoid CT radiation; outpatient return precautions | | 4 – 6 Points | Intermediate Risk (PAS 4–6 — RLQ Ultrasound First) | Point-of-care / radiology RLQ ultrasound | | 7 – 10 Points (e.g., Total = 8) | High Risk (PAS >= 7 — Pediatric Surgery Consult) | Prompt surgical evaluation | - **Formula (Samuel Pediatric Appendicitis Score (0–10 Weighted SUMPRODUCT))**: `=IF(OR(MIN(C2:C9) < 0, MAX(C2:C9) > 1), "Presence Flags Must Be 0 or 1", SUMPRODUCT(B2:B9, C2:C9))` - **Formula (Pediatric ED Ultrasound & Surgical Triage Pathway)**: `=IF(OR(MIN(C2:C9) < 0, MAX(C2:C9) > 1), "Presence Flags Must Be 0 or 1", IF(SUMPRODUCT(B2:B9, C2:C9) >= 7, "High Risk (PAS >= 7 — Pediatric Surgery Consult)", IF(SUMPRODUCT(B2:B9, C2:C9) >= 4, "Intermediate Risk (PAS 4–6 — RLQ Ultrasound First)", "Low Risk (PAS <= 3 — Observe / Discharge)")))` ### Samuelson Iceberg Trade Cost & CIF/FOB Wedge Formula - **URL**: https://sheets.arte-soft.com/en/learn/samuelson-iceberg-trade-cost-cif-fob-wedge-and-gravity-formula/ - **Summary**: Convert customs CIF and FOB prices into Paul Samuelson’s (1954) iceberg factor tau = P_CIF / P_FOB >= 1, melting loss share (tau - 1) / tau, and Eaton-Kortum trade attenuation tau^(-theta). *Table — Avoid confusing the ad-valorem freight markup (tau - 1) with the iceberg melting fraction (tau - 1)/tau!:* | Iceberg Trade Metric (P_FOB = 80, P_CIF = 100, theta = 4) | Formula | Verified Output | | --- | --- | --- | | Samuelson Iceberg Multiplier (tau) | P_CIF / P_FOB = 100 / 80 | 1.2500 units shipped / unit | | Ad-Valorem Freight Wedge (tau - 1) | (P_CIF - P_FOB) / P_FOB | 0.2500 (25.00% over FOB) | | In-Transit Melting Share (1 - 1/tau) | (tau - 1) / tau | 0.2000 (20.00% Melts En Route) | | Bilateral Trade Attenuation (tau^-theta) | 1.25^(-4) | 0.4096 (-59.04% Trade Volume!) | - **Formula (Samuelson Iceberg Factor tau & Melting Share Formula)**: `=LET(p_fb, B2, p_cf, B3, IF(OR(p_fb <= 0, p_cf < p_fb), "Invalid CIF/FOB Wedge", LET(t_ic, p_cf / p_fb, ROUND((t_ic - 1) / t_ic, 4))))` - **Formula (Gravity / Eaton-Kortum Bilateral Trade Volume Attenuation Formula)**: `=LET(p_fb, B2, p_cf, B3, th_el, B4, IF(OR(p_fb <= 0, p_cf < p_fb, th_el <= 0), "Invalid CIF/FOB Wedge", ROUND((p_cf / p_fb) ^ (-th_el), 4)))` ### Samuelson Public-Good Rule & Lindahl Benefit Price Formula - **URL**: https://sheets.arte-soft.com/en/learn/samuelson-public-good-sum-of-mrs-and-lindahl-benefit-prices/ - **Summary**: Sum marginal willingness-to-pay schedules vertically via Samuelson’s rule SUM(MRS_i) = MC_G, compare against free-rider voluntary provision, and solve Lindahl benefit prices. *Table — Sum demand VERTICALLY for non-rival public goods — not horizontally!:* | Household / Benchmark (c_G = 40) | MB_i(G) = a_i - b_i * G | Lindahl Price p_i* at G* = 20 | | --- | --- | --- | | Household 1 | 50 - 2 * G (Choke = 25) | 10.00 (25% Share) | | Household 2 | 40 - 1 * G (Choke = 40) | 20.00 (50% Share) | | Household 3 | 30 - 1 * G (Choke = 30) | 10.00 (25% Share) | | Aggregate Outcome | SUM = 120 - 4 * G -> G* = 20 | SUM(p_i*) = 40.00 (= c_G) | - **Formula (Interior Samuelson Optimal Public-Good Quantity G_Sam* Formula)**: `=LET(c_ug, G2, a_sm, SUM(B2:B4), b_sm, SUM(C2:C4), IF(OR(c_ug <= 0, b_sm <= 0, a_sm <= c_ug), "Zero Efficient Provision", LET(g_st, (a_sm - c_ug) / b_sm, IF(MIN(B2 - C2 * g_st, B3 - C3 * g_st, B4 - C4 * g_st) < 0, "Kinked Demand (Drop Saturated Buyer)", ROUND(g_st, 4)))))` - **Formula (Voluntary Cournot-Nash Private Provision Benchmark Formula)**: `=LET(c_ug, G2, ROUND(MAX(0, (B2 - c_ug) / C2, (B3 - c_ug) / C3, (B4 - c_ug) / C4), 4))` ### San Francisco Syncope Rule (CHESS Mnemonic) for 7-Day Serious Outcome Risk - **URL**: https://sheets.arte-soft.com/en/learn/san-francisco-syncope-rule-chess-short-term-risk-formula/ - **Summary**: Evaluate the 5-item San Francisco Syncope Rule (CHESS: CHF history, Hematocrit < 30%, Abnormal ECG, Shortness of breath, triage Systolic BP < 90 mmHg) to flag high-risk emergency syncope. *Table — Catch life-threatening arrhythmia, hemorrhage, and PE behind transient loss of consciousness!:* | Syncope Presentation | Active CHESS Predictors | CHESS Flag Count | Disposition Guidance | | --- | --- | --- | --- | | Uncomplicated Vasovagal Faint | CHF=0, Hct=41%, ECG=0, SOB=0, SBP=118 | 0 of 5 predictors | Low Short-Term Risk (CHESS = 0) | | Occult GI Bleed Syncope | Hct = 27% (< 30%) | 1 of 5 predictors | Not Low-Risk (CHESS >= 1: Workup!) | | Cardiogenic Syncope | CHF=1, Abnormal ECG=1, SBP=84 (< 90) | 3 of 5 predictors | Not Low-Risk (CHESS >= 1: Workup!) | - **Formula (Total Positive CHESS Predictor Count (0 to 5 Flags))**: `=IF(OR(B2 < 0, B2 > 1, B3 <= 0, B3 > 75, B4 < 0, B4 > 1, B5 < 0, B5 > 1, B6 <= 0), "Invalid CHESS Inputs", --(B2 = 1) + --(B3 < 30) + --(B4 = 1) + --(B5 = 1) + --(B6 < 90))` - **Formula (San Francisco Syncope Rule Risk Classification (CHESS = 0 vs >= 1))**: `=IF((--(B2 = 1) + --(B3 < 30) + --(B4 = 1) + --(B5 = 1) + --(B6 < 90)) >= 1, "Not Low-Risk (CHESS >= 1: Further Evaluation)", "Low 7-Day Risk (CHESS = 0)")` ### Sand-Casting Core Buoyancy & Top Chaplet Load Formula - **URL**: https://sheets.arte-soft.com/en/learn/sand-casting-chaplet-molten-metal-core-buoyancy-force-and-safety-margin/ - **Summary**: Calculate Dry Resin-Sand Core Weight (N), Upward Molten-Metal Archimedes Buoyancy (N), Net Upward Core Float Force (N), and Factored Top-Chaplet Hold-Down Load (N). *Table — Why a 7 kg sand core floats UPWARD with 238 N (24 kgf) of force the instant molten cast iron fills the mold!:* | Foundry Core Buoyancy KPI (Vcore=4,500 cm³, Iron=7.0 g/cm³, Sand=1.6, SF=2.0) | Formula | Verified Output | | --- | --- | --- | | Dry Sand Core Weight Down (N) | (V_cm3 * 1e-6) * (rho_core*1000) * 9.80665 | 70.61 N | | Molten Metal Buoyancy Up (N) | (V_cm3 * 1e-6) * (rho_metal*1000) * 9.80665 | 308.91 N (119.15 N @ Al 2.70 g/cm³) | | Net Upward Core Float Lift (N) | Buoyancy_Up_N - Dry_Core_Weight_N | 238.30 N (48.54 N @ Al 2.70 g/cm³) | | Factored Top-Chaplet Load (N) | Net_Upward_Lift_N * Safety_Factor | 476.60 N (97.09 N @ Al 2.70 g/cm³) | - **Formula (Archimedes Metallostatic Core Lift & Top-Chaplet Design Load Formula)**: `=LET(vc_c, B2, rm_g, B3, rc_g, B4, sf_c, B5, IF(OR(vc_c <= 0, rc_g <= 0, rm_g <= rc_g, sf_c < 1.25), "Invalid Core Buoyancy Input", LET(nl_n, (vc_c / 1000000) * ((rm_g - rc_g) * 1000) * 9.80665, ROUND(nl_n * sf_c, 2))))` - **Formula (Aluminum A356 Alloy Pour Buoyancy Reduction Check (Set Liquid Metal Density = 2.70 g/cm³))**: `=IF(ISTEXT(E5), E5, ROUND((B2 / 1000000) * ((B3 - B4) * 1000) * 9.80665, 2))` ### SAPS 3 (Simplified Acute Physiology Score 3) First-Hour ICU Mortality - **URL**: https://sheets.arte-soft.com/en/learn/saps-3-simplified-acute-physiology-score-3-global-icu-logit/ - **Summary**: Sum the three SAPS 3 ICU admission boxes (Box I Patient History, Box II Admission Circumstances, Box III First-Hour Acute Physiology) and evaluate Moreno et al.’s (2005) global mortality equation! *Table — First-hour ICU benchmarking separating pre-ICU case mix (Boxes I–II) from acute physiology (Box III)!:* | SAPS 3 Three-Box Breakdown [Box I, II, III] | Total SAPS 3 Score | Global Logit | Predicted Hospital Mortality (%) | | --- | --- | --- | --- | | [12, 10, 14] — Elective Post-Op ICU | 36 pts | -3.1755 | 4.01% | | [18, 22, 26] — Unplanned Septic Shock | 66 pts | -0.0684 | 48.29% | | Negative Box Subscore (< 0) | Invalid | Undefined | "Invalid SAPS 3 Subscore" | - **Formula (SAPS 3 Global Predicted In-Hospital Mortality (%))**: `=IF(MIN(B2:B4) < 0, "Invalid SAPS 3 Subscore", ROUND(100 / (1 + EXP(-(-32.6659 + LN(SUM(B2:B4) + 20.5958) * 7.3068))), 2))` - **Formula (Total SAPS 3 Admission Score (Box I + Box II + Box III))**: `=IF(MIN(B2:B4) < 0, "Invalid SAPS 3 Subscore", SUM(B2:B4))` ### SAPS II Score & Le Gall Predicted ICU Hospital Mortality (%) - **URL**: https://sheets.arte-soft.com/en/learn/saps-ii-simplified-acute-physiology-score-icu-mortality-formula/ - **Summary**: Sum Physiology (0–116), Age (0–18), Admission Type (0, 6, 8), and Chronic Disease (0, 9, 10, 17) points into total SAPS II (0–163) and evaluate Jean-Roger Le Gall’s log-linear mortality equation. *Table — Why SAPS II predicts ICU mortality WITHOUT needing a primary diagnosis code!:* | 24-Hour Total SAPS II Score (0–163) | Le Gall Logit Value | Predicted Hospital Mortality (%) | ICU Acuity Stratum | | --- | --- | --- | --- | | SAPS II = 29 pts (Moderate Medical ICU) | -2.2345 | 9.7% | Low-Moderate Mortality Risk | | SAPS II = 52 pts (Physiology 30 + Age 16 + Med 6) | +0.0298 | 50.7% | 50% Mortality Inflection Point | | SAPS II = 70 pts (Refractory Multi-Organ Shock) | +1.6470 | 83.8% | Critical High-Mortality Stratum | - **Formula (Total 17-Variable SAPS II Score (0–163))**: `=IF(OR(B2 < 0, B2 > 116, B3 < 0, B3 > 18, NOT(OR(B4 = 0, B4 = 6, B4 = 8)), B5 < 0, B5 > 17), "Invalid SAPS II Subscore", SUM(B2:B5))` - **Formula (Le Gall Predicted In-Hospital Mortality (%))**: `=IF(OR(B2 < 0, B2 > 116, B3 < 0, B3 > 18, NOT(OR(B4 = 0, B4 = 6, B4 = 8)), B5 < 0, B5 > 17), "Invalid SAPS II Subscore", ROUND(100 / (1 + EXP(-(-7.7631 + 0.0737 * SUM(B2:B5) + 0.9971 * LN(SUM(B2:B5) + 1)))), 1))` ### SARC-F Sarcopenia Screening Score (0–10) Formula: EWGSOP2 Muscle Loss Triage - **URL**: https://sheets.arte-soft.com/en/learn/sarc-f-sarcopenia-screening-score-muscle-strength-older-adults/ - **Summary**: Calculate the 5-item SARC-F Sarcopenia Screening Score (Strength, Assistance in walking, Rise from chair, Climb stairs, Falls; 0–2 points each, total 0–10) recommended by EWGSOP2 as the first-step case-finding screen (>= 4 positive). *Table — Why EWGSOP2 & AWGS guidelines start every sarcopenia pathway with the 5-question SARC-F (0–10) screen!:* | SARC-F Total Score (0–10 Points) | EWGSOP2 Screening Classification | Recommended Clinical Next Step | | --- | --- | --- | | 0 to 3 Points | Negative Sarcopenia Screen (Low Risk) | Routine physical activity & protein counseling; re-screen annually | | 4 to 10 Points (>= 4 Cutoff) | Positive Sarcopenia Screen — Symptomatic! | Measure Handgrip (<27 kg M / <16 kg F) or 5x Chair-Stand + DXA/BIA | - **Formula (Validated 5-Item SARC-F Total Score (0–10 Points))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 0, MAX(B2:B6) > 2, SUMPRODUCT(--(MOD(B2:B6, 1) <> 0)) > 0), "Each SARC-F Item Must Be 0, 1, or 2", SUM(B2:B6))` - **Formula (EWGSOP2 Sarcopenia Case-Finding Triage Classifier (SARC-F >= 4 Threshold))**: `=IF(OR(COUNT(B2:B6) < 5, MIN(B2:B6) < 0, MAX(B2:B6) > 2, SUMPRODUCT(--(MOD(B2:B6, 1) <> 0)) > 0), "Each SARC-F Item Must Be 0, 1, or 2", IF(SUM(B2:B6) >= 4, "Positive Sarcopenia Screen (SARC-F >= 4: Order Grip Strength / Chair-Stand Test)", "Negative Sarcopenia Screen (SARC-F < 4: Low Risk)"))` ### Sargan-Hansen Overidentifying Restrictions J-Statistic Formula - **URL**: https://sheets.arte-soft.com/en/learn/sargan-hansen-overidentifying-restrictions-j-statistic-audit/ - **Summary**: Calculate Sargan’s J = N * R^2_aux overidentification statistic with df = L_excl - K_endog and catch the exact-identification trap (L_excl = K_endog -> df = 0). *Table — Catch the #1 IV mistake: reporting J = 0 as "valid instruments" when L = K!:* | Identification Regime | Overidentification df = L - K | Sargan J Diagnostic | | --- | --- | --- | | Underidentified (L < K) | df < 0 | Model Not Identified | | Exactly Identified (L = K) | df = 0 | Untestable (Mechanical J = 0) | | Overidentified Coherent (L=3, K=1, SSR=0.96) | df = 2 (Crit 5% = 5.9915) | J = 2.4000 (Do Not Reject) | | Overidentified Conflicting (L=3, K=1, SSR=3.20) | df = 2 (Crit 5% = 5.9915) | J = 8.0000 (Reject Validity) | - **Formula (Sargan Overidentifying J = N * (SSR_aux / SST_u) Formula with Identification Guard)**: `=LET(n_obs, B2, k_end, B3, l_iv, B4, sst_u, B5, ssr_a, B6, df_ov, l_iv - k_end, IF(OR(n_obs <= 0, k_end < 1, sst_u <= 0, ssr_a < 0, ssr_a > sst_u), "Invalid Sargan Input", IF(df_ov < 0, "Invalid: Underidentified Model", IF(df_ov = 0, "Untestable: Exactly Identified (df = 0)", ROUND(n_obs * (ssr_a / sst_u), 4)))))` - **Formula (Chi-Square 5% Critical Cutoff Lookup (df = 1..4) and Overidentification Verdict Formula)**: `=LET(j_stat, E3, df_ov, B4 - B3, IF(ISTEXT(j_stat), j_stat, IF(df_ov > 4, "Check ChiSq Table (df > 4)", LET(c_05, CHOOSE(df_ov, 3.8415, 5.9915, 7.8147, 9.4877), IF(j_stat >= c_05, "Reject Exclusion Restriction (5%)", "Valid Overidentification (Do Not Reject)")))))` ### Satellite EIRP, G/T & Carrier-to-Noise C/N0 Formula - **URL**: https://sheets.arte-soft.com/en/learn/satellite-rf-eirp-isotropic-gain-and-carrier-to-noise-density-cn0-formula/ - **Summary**: Calculate Effective Isotropic Radiated Power EIRP_dBW = P_tx + G_tx - L_feed, Carrier-to-Noise Spectral Density C/N_0 = EIRP - L_path + G/T + 228.6 dB-Hz, and Digital Demodulator E_b / N_0. *Table — Watch the sign on Boltzmann’s constant -228.6 dBW/(K*Hz) in satellite link budgets!:* | Satellite Ku-Band Link Metric (Ptx=20dBW, Gtx=42dBi, Lf=2dB, Lp=206dB, G/T=15dB/K, 10Mbps) | Formula | Verified Output | | --- | --- | --- | | Effective Isotropic Radiated Power EIRP | P_tx_dBW + G_tx_dBi - L_feed_dB | 60.00 dBW (1.0 MW Isotropic) | | Carrier-to-Noise Density C/N_0 | EIRP - L_path + G_over_T + 228.6 | 97.60 dB-Hz | | Bit Energy-to-Noise Ratio E_b / N_0 | C/N_0 - 10 * LOG10(R_bps) | 27.60 dB (17.60 dB @ 100 Mbps) | | Rain-Fade Demodulator Gate (10 dB) | Eb/N0 >= 10 dB Lock Threshold | Demodulator Lock (Eb/N0 >= 10 dB) | - **Formula (Satellite C/N0 & Digital Eb/N0 Link-Budget Formula)**: `=LET(p_tx, B2, g_tx, B3, l_fd, B4, l_pt, B5, g_ot, B6, r_bp, B7, IF(OR(l_fd < 0, l_pt <= 0, r_bp <= 0), "Invalid RF Link Input", LET(ei_r, p_tx + g_tx - l_fd, cn_0, ei_r - l_pt + g_ot + 228.6, ROUND(cn_0 - 10 * LOG10(r_bp), 2))))` - **Formula (Heavy Rain-Attenuation Outage Test Formula)**: `=IF(ISTEXT(E4), E4, IF(E4 >= 10, "Demodulator Lock (Eb/N0 >= 10 dB)", "Link Outage (Eb/N0 < 10 dB)"))` ### Sauerbrey QCM Thin-Film Mass & Frequency Shift Formula - **URL**: https://sheets.arte-soft.com/en/learn/sauerbrey-quartz-crystal-microbalance-qcm-thin-film-mass-and-thickness-formula/ - **Summary**: Calculate Vacuum PVD/ALD Thin-Film Areal Mass Density (ug/cm^2 = 0.1 * t_nm * rho_g_cm3), AT-Cut Quartz Sauerbrey Sensitivity C_f = 2.264 * f_0_MHz^2, Crystal Resonance Drop Delta_f (Hz), and 2% Crystal Replacement Gate. *Table — Convert sub-nanogram vacuum PVD thickness into quartz crystal frequency shifts via Sauerbrey’s Law!:* | Sauerbrey QCM Metric (6.0 MHz AT-Quartz, 100 nm Au @ 19.3 g/cm^3, 0.50 cm^2) | Formula | Verified Output | | --- | --- | --- | | Thin-Film Areal Mass (ug/cm^2) | 0.1 * Thickness_nm * Density_g_cm3 | 193.00 ug/cm^2 (1,930 @ 1,000 nm) | | AT-Cut Quartz Sensitivity C_f | 2.264 * (f_0_MHz ^ 2) | 81.504 Hz*cm^2/ug | | Resonance Frequency Shift (Hz) | -C_f * Areal_Mass_ug_cm2 | -15,730.27 Hz (-157,302.72 @ 1 um) | | 2% Crystal Life / Linearity Gate | ABS(Delta_f) / (f_0_MHz * 10^6) <= 0.02 | Valid Linear Sauerbrey Regime | - **Formula (Sauerbrey QCM Resonance Frequency Shift (Hz) Formula)**: `=LET(f_0m, B2, th_n, B3, rh_f, B4, ar_s, B5, IF(OR(f_0m <= 0, th_n <= 0, rh_f <= 0, ar_s <= 0), "Invalid QCM Deposition Spec", LET(ms_a, 0.1 * th_n * rh_f, cf_q, 2.264 * (f_0m ^ 2), ROUND(-cf_q * ms_a, 2))))` - **Formula (1-Micron Gold Overloaded Crystal Check (Set Thickness = 1,000 nm))**: `=IF(ISTEXT(E4), E4, IF(ABS(E4) / (B2 * 1000000) > 0.02, "Replace Crystal: >2% Nonlinear Shift", "Valid Linear Sauerbrey Regime"))` ### Time Needed to Reach a Savings Goal (NPER Months & Years) - **URL**: https://sheets.arte-soft.com/en/learn/savings-goal-months-and-years-needed-to-accumulate-target-nper/ - **Summary**: Calculate the exact number of monthly contributions and calendar years needed to grow a starting balance to a target savings goal using NPER with cash-flow sign guards. *Table — Why cash-flow sign convention makes or breaks savings-goal NPER!:* | Annual Return Scenario ($12k Start, $600/mo -> $60k Goal) | Monthly Rate (r / 12) | Months Needed (NPER) | Years to Goal | | --- | --- | --- | --- | | Zero-Interest Mattress Cash (0.0% APR) | 0.000% | 80.00 months | 6.67 years | | Balanced Index / Bond Mix (6.0% APR) | 0.500% | 62.19 months | 5.18 years | | Growth Equity Allocation (9.0% APR) | 0.750% | 56.19 months | 4.68 years | - **Formula (Exact Months Needed to Reach Target Savings Goal)**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0, B5 <= B3), "Invalid Savings Inputs", ROUND(NPER(B2 / 12, -B4, -B3, B5), 2))` - **Formula (Calendar Years Needed to Reach Savings Target)**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0, B5 <= B3), "Invalid Savings Inputs", ROUND(NPER(B2 / 12, -B4, -B3, B5) / 12, 2))` ### Scarf Distribution-Free Min-Max Newsvendor Formula - **URL**: https://sheets.arte-soft.com/en/learn/scarf-distribution-free-min-max-newsvendor-order-formula/ - **Summary**: Hedge unknown demand tail shapes using Herbert Scarf’s (1958) distribution-free min-max newsvendor order Q* = mu + (sigma / 2) * (SQRT(beta / (1 - beta)) - SQRT((1 - beta) / beta)). *Table — Protect perishable inventory orders when only demand mean mu and SD sigma are known:* | Scarf Min-Max Metric (mu=500, sig=100, c_u=80, c_o=20) | Formula | Verified Output | | --- | --- | --- | | Critical Fractile (beta) | c_u / (c_u + c_o) | 0.8000 | | Scarf Safety Multiplier (z_Scarf) | 0.5 * (SQRT(beta/(1-beta)) - SQRT((1-beta)/beta)) | 0.7500 (vs Normal 0.8416) | | Scarf Optimal Order (Q_Scarf*) | IF(sig/mu > SQRT(beta/(1-beta)), 0, mu + z*sig) | 575.00 units | | Guaranteed Worst-Case Profit | MAX(0, c_u * mu - sigma * SQRT(c_u * c_o)) | 36,000.00 | - **Formula (Scarf Distribution-Free Optimal Order Quantity Q_Scarf* Formula)**: `=LET(mu_d, B2, sd_d, B3, cu_m, B4, co_l, B5, IF(OR(mu_d <= 0, sd_d < 0, cu_m <= 0, co_l <= 0), "Invalid Newsvendor Input", IF(sd_d / mu_d > SQRT(cu_m / co_l), 0, LET(rt_uo, SQRT(cu_m / co_l), z_sc, 0.5 * (rt_uo - 1 / rt_uo), ROUND(mu_d + z_sc * sd_d, 4)))))` - **Formula (Gallego-Moon Distribution-Free Tight Worst-Case Expected Profit Bound Formula)**: `=LET(mu_d, B2, sd_d, B3, cu_m, B4, co_l, B5, IF(OR(mu_d <= 0, sd_d < 0, cu_m <= 0, co_l <= 0), "Invalid Newsvendor Input", ROUND(MAX(0, cu_m * mu_d - sd_d * SQRT(cu_m * co_l)), 2)))` ### Scatchard Plot Linear Regression: Dissociation Constant Kd & Bmax - **URL**: https://sheets.arte-soft.com/en/learn/scatchard-plot-receptor-ligand-kd-and-bmax-binding-formula/ - **Summary**: Extract equilibrium receptor-ligand dissociation constant K_d = -1 / SLOPE(B/F, B) (nM) and total receptor site density B_max = -INTERCEPT(B/F, B) / SLOPE(B/F, B) from radioligand or SPR saturation binding assays. *Table — How George Scatchard (1949) turned hyperbolic receptor binding into a straight line!:* | Free Ligand F (nM) | Specific Bound B (fmol/mg) | Bound / Free Ratio (B / F) | Scatchard Parameter Extracted | | --- | --- | --- | --- | | 1.25 nM -> 5.00 nM | 24.0 -> 60.0 (= 0.5 Bmax) | 19.20 -> 12.00 | SLOPE = -0.2000 -> Kd = 5.00 nM | | 15.00 nM -> 45.00 nM | 90.0 -> 108.0 | 6.00 -> 2.40 | X-Intercept = Bmax = 120.0 fmol/mg | | Non-Negative Slope (>= 0) | Positive Cooperativity / Artifact | "Invalid Scatchard Slope" | Single-Site Mass Action Requires Slope < 0 | - **Formula (Equilibrium Dissociation Constant K_d = -1 / SLOPE(B/F, B) (nM))**: `=IF(SLOPE(C2:C5, B2:B5) >= 0, "Invalid Scatchard Slope", ROUND(-1 / SLOPE(C2:C5, B2:B5), 2))` - **Formula (Maximum Specific Receptor Density B_max = -INTERCEPT / SLOPE (fmol/mg))**: `=IF(SLOPE(C2:C5, B2:B5) >= 0, "Invalid Scatchard Slope", ROUND(-INTERCEPT(C2:C5, B2:B5) / SLOPE(C2:C5, B2:B5), 1))` ### XY Scatter Plot Trendline Formulas: Live Cell SLOPE, INTERCEPT, FORECAST & R² - **URL**: https://sheets.arte-soft.com/en/learn/scatter-plot-linear-trendline-slope-intercept-and-r-squared/ - **Summary**: Extract dynamic XY scatter-plot trendline equations directly into worksheet cells—instead of copying static chart label text—using SLOPE(Y, X), INTERCEPT(Y, X), FORECAST(x_new, Y, X), and CORREL(X, Y)². *Table — Why worksheet SLOPE, FORECAST, and CORREL² beat hand-typing static chart trendline labels!:* | XY Scatter Regression Statistic (X = A2:A6, Y = B2:B6) | Worksheet Formula (Note Y Before X!) | Evaluated Value | | --- | --- | --- | | Trendline Slope m | =ROUND(SLOPE(B2:B6, A2:A6), 4) | 1.8000 L/(min·kW) | | Goodness of Fit R² | =ROUND((CORREL(A2:A6, B2:B6)) ^ 2, 4) | 0.9984 (99.84% linear fit) | | Predicted Y at E2 = 60 kW | =ROUND(FORECAST(E2, B2:B6, A2:A6), 2) | 113.40 L/min | - **Formula (OLS Scatter Trendline Slope m = SLOPE(Known_Ys, Known_Xs))**: `=IF(STDEV(A2:A6) = 0, "X Values Cannot All Be Identical", ROUND(SLOPE(B2:B6, A2:A6), 4))` - **Formula (Trendline Point Prediction = FORECAST(Target_X, Known_Ys, Known_Xs) & R² = CORREL(X, Y)²)**: `=IF(STDEV(A2:A6) = 0, "X Values Cannot All Be Identical", ROUND(FORECAST(E2, B2:B6, A2:A6), 2))` ### Scheibel Liquid Diffusivity Correlation (Organic Solute–Solvent Molar Volume) - **URL**: https://sheets.arte-soft.com/en/learn/scheibel-liquid-diffusivity-molar-volume-correlation-formula/ - **Summary**: Estimate dilute organic liquid molecular diffusivity D_AB = 0.0082 * T * (1 + (3 * V_B / V_A)^(2/3)) / (μ_B * V_A^(1/3)) (× 10^-5 cm^2/s) without empirical association factors! *Table — Correcting Stokes-Einstein breakdown when solvent molecules are comparable to or larger than the solute!:* | Organic Solvent Condition (VA = 118.2, VB = 106.3 cm³/mol) | Viscosity μB (cP) | Scheibel D_AB (× 10^-5 cm²/s) | Mass-Transfer Regime | | --- | --- | --- | --- | | 25 °C Extractor (298.15 K) | 0.60 cP | 2.439 × 10^-5 cm²/s | Ambient Liquid-Liquid Extraction | | 50 °C Heated Column (323.15 K) | 0.42 cP | 3.777 × 10^-5 cm²/s | +54.9% Faster Pore Diffusion | | Invalid T <= 0, μB <= 0, or V <= 0 | Undefined | "Invalid Scheibel Inputs" | Positivity Guard | - **Formula (Scheibel Dilute Organic Liquid Diffusivity D_AB (× 10^-5 cm²/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Scheibel Inputs", ROUND(0.0082 * B2 * (1 + ((3 * B5 / B4) ^ (2 / 3))) / (B3 * (B4 ^ (1 / 3))), 3))` - **Formula (Scheibel Geometric Molar-Volume Packing Factor 1 + (3 V_B / V_A)^(2/3))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Scheibel Inputs", ROUND(1 + ((3 * B5 / B4) ^ (2 / 3)), 4))` ### Scheil-Gulliver Solidification Equation: Dendrite Coring & Non-Equilibrium Eutectic Fraction - **URL**: https://sheets.arte-soft.com/en/learn/scheil-gulliver-nonequilibrium-solidification-segregation/ - **Summary**: Calculate local solid composition C_S = k * C0 * (1 - f_S)^(k - 1) during casting solidification and predict non-equilibrium interdendritic eutectic fraction f_E = (C_E / C0)^(-1 / (1 - k)). *Table — Explain why aerospace Al-4.5%Cu castings form brittle eutectic even below the 5.65% solubility limit!:* | Solidification Stage (Al-4.5%Cu, k = 0.17) | Solid Fraction f_S | Freezing Solid Composition C_S | Metallurgical Consequence | | --- | --- | --- | --- | | Dendrite Core Nucleation | f_S = 0.00 | 0.17 * 4.5 = 0.765 wt% Cu | Solute-depleted dendrite spine | | Half-Solidified Mush | f_S = 0.50 | 1.360 wt% Cu | Remaining liquid enriched to 8.0 wt% | | Late Solidification | f_S = 0.80 | 2.909 wt% Cu | Liquid reaches 17.1 wt% Cu | | Terminal Eutectic Arrest (C_E = 33.2%) | f_L = f_E = 0.0900 | 9.0% Non-Equilibrium Eutectic! | Requires homogenization anneal | - **Formula (Scheil-Gulliver Instantaneous Solid Composition C_S(f_S) (wt%))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 1), "Invalid Scheil Parameters", ROUND(B3 * B2 * ((1 - B4) ^ (B3 - 1)), 3))` - **Formula (Non-Equilibrium Terminal Eutectic Fraction f_E = (C_E / C0) ^ (-1 / (1 - k)))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B5 <= B2), "Invalid Scheil Parameters", ROUND((B5 / B2) ^ (-1 / (1 - B3)), 4))` ### Debye-Scherrer XRD Crystallite Size & Peak FWHM Broadening Formula - **URL**: https://sheets.arte-soft.com/en/learn/scherrer-xrd-crystallite-size-line-broadening-formula/ - **Summary**: Calculate mean nanocrystalline domain size D = (K * lambda) / (RADIANS(SQRT(FWHM_obs^2 - FWHM_inst^2)) * COS(RADIANS(2*theta / 2))) in nanometers from powder X-ray diffraction peaks. *Table — Size nanocatalysts and thin-film grains from XRD Bragg peak broadening!:* | Sample Condition (2*theta = 43.30°, Cu K-alpha) | Observed vs Inst FWHM | Corrected Width beta_deg | Crystallite Size D (nm) | | --- | --- | --- | --- | | As-Synthesized Nanopowder | 0.85° vs 0.12° | 0.8415° | 10.16 nm | | Annealed Coarsened Powder | 0.45° vs 0.12° | 0.4337° | 19.71 nm | | Peak Narrower Than Instrument! | 0.10° <= 0.12° | Invalid Broadening! | "Observed FWHM <= Instrumental Width" | - **Formula (Scherrer Coherent Crystallite Domain Size D (Nanometers, nm))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 < 0, B6 <= 0, B6 >= 180), "Invalid XRD Inputs", IF(B4 <= B5, "Observed FWHM <= Instrumental Width", ROUND((B2 * B3) / (RADIANS(SQRT((B4 ^ 2) - (B5 ^ 2))) * COS(RADIANS(B6 / 2))), 2)))` - **Formula (Quadrature-Corrected Sample Broadening beta_deg = SQRT(FWHM_obs^2 - FWHM_inst^2))**: `=IF(B4 <= B5, "Observed FWHM <= Instrumental Width", ROUND(SQRT((B4 ^ 2) - (B5 ^ 2)), 4))` ### Schmertmann Strain Influence Factor (I_z) Formula: Sand Footing Immediate & Creep Settlement - **URL**: https://sheets.arte-soft.com/en/learn/schmertmann-strain-influence-factor-shallow-footing-settlement/ - **Summary**: Calculate shallow foundation settlement on granular sand soils using John H. Schmertmann’s (1970/1978) strain-influence method S = C_1 * C_2 * delta_q * SUM(I_z * dz / E_s) with embedment relief C_1 and creep factor C_2. *Table — Why vertical strain peaks at z = B/2 beneath a sand footing—not directly at the base z = 0!:* | Schmertmann Factor (q_gross=220 kPa, q_0=20 kPa -> delta_q=200 kPa) | Schmertmann (1970/1978) Equation | Computed Value | | --- | --- | --- | | Embedment Relief Factor C_1 | MAX(0.5, 1 - 0.5 * (20 / 200)) | 0.9500 (5% Overburden Relief) | | 5-Year Time Creep Factor C_2 (t = 5 yr) | 1 + 0.2 * LOG10(5 / 0.1) | 1.3398 (+34.0% 5-Year Creep over 0.1 yr) | | Peak Strain Influence I_zp (sigma'_vp = 38 kPa) | 0.5 + 0.1 * SQRT(200 / 38) | 0.7294 (At Depth z = B/2) | - **Formula (Schmertmann Total Footing Settlement S (mm) = 1000 * C_1 * C_2 * delta_q * SUM(I_z * dz / E_s))**: `=IF(OR(B2 <= B3, B3 < 0, B4 < 0.1, MIN(D2:D4) <= 0, MIN(F2:F4) <= 0), "Invalid Schmertmann Settlement Inputs (Requires q_gross > q0 & t >= 0.1 yr)", ROUND(1000 * MAX(0.5, 1 - 0.5 * (B3 / (B2 - B3))) * (1 + 0.2 * LOG10(B4 / 0.1)) * (B2 - B3) * SUMPRODUCT(E2:E4, D2:D4 / F2:F4), 2))` - **Formula (Schmertmann (1978) Peak Strain Influence Factor I_zp = 0.5 + 0.1 * SQRT((q_gross - q_0) / sigma'_vp))**: `=IF(OR(B2 <= B3, B5 <= 0), "Invalid Pressures", ROUND(0.5 + 0.1 * SQRT((B2 - B3) / B5), 4))` ### Schoenfeld Formula: Log-Rank / Cox Survival Trial Required Events & Sample Size - **URL**: https://sheets.arte-soft.com/en/learn/schoenfeld-log-rank-censored-survival-events-and-sample-size/ - **Summary**: Power Phase III oncology and cardiovascular time-to-event trials using David A. Schoenfeld’s 1983 asymptotic Cox/log-rank formula E = ROUNDUP((z_alpha/2 + z_beta)² / (p * (1 - p) * (LN(HR))²), 0) and total enrollment N = ROUNDUP(E / P_event, 0). *Table — Why time-to-event survival trials are powered by OBSERVED EVENTS (deaths/progressions), not raw headcount!:* | Target Hazard Ratio (2-Sided alpha=0.05, 80% Power, 1:1) | Required Log-Rank Events E | Total Randomized Patients N (at 65% Event Rate) | | --- | --- | --- | | HR = 0.70 (30% Hazard Reduction) | 247 Events | 380 Patients | | HR = 0.80 (20% Hazard Reduction) | 631 Events (+155% larger!) | 971 Patients | | Null Hazard Ratio HR = 1.00 | Division by LN(1) = 0! | "Invalid Schoenfeld Survival Trial Inputs" | - **Formula (Schoenfeld Required Total Events E = ROUNDUP((z_alpha + z_beta)² / (p*(1-p)*(LN(HR))²), 0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= 1, B5 <= 0, B5 = 1, B6 <= 0, B6 > 1), "Invalid Schoenfeld Survival Trial Inputs", ROUNDUP(((B2 + B3) ^ 2) / (B4 * (1 - B4) * ((LN(B5)) ^ 2)), 0))` - **Formula (Total Randomized Sample Size N = ROUNDUP(Required_Events / Expected_Event_Fraction, 0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 >= 1, B5 <= 0, B5 = 1, B6 <= 0, B6 > 1), "Invalid Schoenfeld Survival Trial Inputs", ROUNDUP((((B2 + B3) ^ 2) / (B4 * (1 - B4) * ((LN(B5)) ^ 2))) / B6, 0))` ### Schofield Pediatric BMR Calculator: Weight-Only & Weight-Height Equations (Ages 0–18) - **URL**: https://sheets.arte-soft.com/en/learn/schofield-who-pediatric-basal-metabolic-rate-weight-height-formula/ - **Summary**: Calculate infant, child, and adolescent Basal Metabolic Rate (kcal/day) across (< 3 yr, 3–10 yr, and 10–18 yr) sex-specific age bands using W. N. Schofield’s (1985) pediatric nutrition equations. *Table — Why adult BMR equations fail in growing children — and how Schofield stratifies pediatric growth bands!:* | Pediatric Age Bracket | Schofield Boys Weight Equation (kcal/day) | Schofield Girls Weight Equation (kcal/day) | | --- | --- | --- | | Infants & Toddlers (0 to < 3 yr) | 59.512 * W - 30.4 | 58.317 * W - 31.1 | | Children (3 to < 10 yr) | 22.706 * W + 504.3 | 20.315 * W + 485.9 | | Adolescents (10 to < 18 yr) | 17.686 * W + 658.2 | 13.384 * W + 692.6 | - **Formula (Schofield (1985) Pediatric Weight-Based Basal Metabolic Rate (kcal/day))**: `=IF(OR(B2 < 0, B2 >= 18, B3 < 2, B3 > 150, AND(B4 <> "M", B4 <> "F")), "Requires Pediatric Age 0 to <18 yr, Weight 2–150 kg, and Sex M/F", ROUND(IF(B4 = "M", IF(B2 < 3, 59.512 * B3 - 30.4, IF(B2 < 10, 22.706 * B3 + 504.3, 17.686 * B3 + 658.2)), IF(B2 < 3, 58.317 * B3 - 31.1, IF(B2 < 10, 20.315 * B3 + 485.9, 13.384 * B3 + 692.6))), 1))` - **Formula (Total Pediatric Daily Caloric Requirement (BMR * Activity/Stress Factor))**: `=IF(OR(B2 < 0, B2 >= 18, B3 < 2, B3 > 150, AND(B4 <> "M", B4 <> "F"), B5 < 0.8, B5 > 2.5), "Invalid Pediatric BMR or Stress Multiplier", ROUND(B5 * IF(B4 = "M", IF(B2 < 3, 59.512 * B3 - 30.4, IF(B2 < 10, 22.706 * B3 + 504.3, 17.686 * B3 + 658.2)), IF(B2 < 3, 58.317 * B3 - 31.1, IF(B2 < 10, 20.315 * B3 + 485.9, 13.384 * B3 + 692.6))), 0))` ### Schwager Gain-to-Pain Ratio (GPR) & 90/10 Tail Ratio Asymmetry Formula - **URL**: https://sheets.arte-soft.com/en/learn/schwager-gain-to-pain-ratio-and-tail-ratio-asymmetry-audit/ - **Summary**: Evaluate CTA and hedge-fund return asymmetry without upside volatility punishment using Jack Schwager’s Gain-to-Pain Ratio SUM(r) / ABS(SUMIF(r, "<0")) and right-to-left Tail Ratio. *Table — Why Sharpe penalizes explosive winning months while Gain-to-Pain rewards them:* | Asymmetry Metric | Worksheet Formula | 6-Month Sample [4%, -2%, 5%, -3%, 6%, 2%] | | --- | --- | --- | | Net Gain SUM(B2:B7) | 0.17 - 0.05 | +0.1200 (+12.00%) | | Cumulative Pain ABS(SUMIF(B2:B7, "<0")) | \|-0.02 - 0.03\| | 0.0500 (5.00%) | | Schwager Gain-to-Pain Ratio (GPR) | 0.12 / 0.05 | 2.4000 (Gross Profit Factor = 3.4000) | | 90/10 Tail Ratio | ABS(P90 / P10) = 0.055 / 0.025 | 2.2000 (Right-skewed) | - **Formula (Schwager Gain-to-Pain Ratio (GPR) Formula)**: `=IF(SUMIF(B2:B7, "<0") = 0, "ZERO_PAIN_MONTHS", ROUND(SUM(B2:B7) / ABS(SUMIF(B2:B7, "<0")), 4))` - **Formula (90th-to-10th Percentile Tail Ratio Formula)**: `=IF(PERCENTILE(B2:B7, 0.1) = 0, "ZERO_LEFT_TAIL", ROUND(PERCENTILE(B2:B7, 0.9) / ABS(PERCENTILE(B2:B7, 0.1)), 4))` ### Schwarzschild Black Hole Radius, Gravitational Time Dilation & Hawking Temp - **URL**: https://sheets.arte-soft.com/en/learn/schwarzschild-black-hole-event-horizon-radius-and-hawking-temp/ - **Summary**: Calculate the Schwarzschild event horizon radius R_s = 2*G*M / c^2, general-relativistic gravitational time dilation 1 / SQRT(1 - R_s / r), and Hawking radiation temperature. *Table — Nonrotating, uncharged black-hole model:* | Relativistic Black Hole Metric | Formula | 10 Solar-Mass Black Hole (r = 45 km) | 1 Solar Mass / Inside Horizon | | --- | --- | --- | --- | | Schwarzschild Radius R_s (km) | ((2 * G * M) / c^2) / 1000 | 29.5334 km | 2.9533 km (1 M_sun) | | Photon Sphere Radius (1.5 * R_s) | 1.5 * R_s | 44.3001 km (unstable light orbit) | 4.4300 km | | Time Dilation Factor at r = 45 km | 1 / SQRT(1 - R_s / r) | dt/dtau = 1.7057 | Static-clock formula not applicable at or inside Rs | - **Formula (Schwarzschild Event Horizon Radius R_s in Kilometers)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(((2 * B4 * (B2 * B3)) / (B5 ^ 2)) / 1000, 4)))` - **Formula (Gravitational Time-Dilation / Redshift Factor with Event-Horizon Guard)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",IF(B6 <= (((2 * B4 * (B2 * B3)) / (B5 ^ 2)) / 1000), "No static observer at or inside horizon", ROUND(1 / SQRT(1 - ((((2 * B4 * (B2 * B3)) / (B5 ^ 2)) / 1000) / B6)), 4))))` - **Formula (Hawking temperature in nanokelvin)**: `=IF(COUNT(B2:B5,B7:B8)<>6,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B7<=0,B8<=0),"Invalid inputs",ROUND((B7*B5^3/(8*PI()*B4*B2*B3*B8))*1000000000,4)))` - **Formula (Photon-sphere areal radius in kilometers)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(1.5*((2*B4*B2*B3)/B5^2)/1000,4)))` ### SCOFF Questionnaire Calculator: 5-Item Anorexia & Bulimia Primary-Care Screen - **URL**: https://sheets.arte-soft.com/en/learn/scoff-eating-disorder-5-item-primary-care-screening-score/ - **Summary**: Score John F. Morgan et al.’s (1999, BMJ) 5-question SCOFF eating-disorder screening tool (0–5 Yes responses; >= 2 cutoff flags likely anorexia nervosa or bulimia nervosa for diagnostic evaluation). *Table — Five memorable binary questions screen for anorexia and bulimia nervosa in under 60 seconds!:* | SCOFF Acronym Item (0 = No, 1 = Yes) | Core Eating-Disorder Construct | | --- | --- | | S — Make yourself Sick when uncomfortably full? | Compensatory purging behavior | | C — Worry you lost Control over how much you eat? | Objective/subjective binge-eating loss of control | | O — Recently lost > One stone (6.35 kg / 14 lb) in 3 mo? | Rapid restrictive weight loss | | F — Believe yourself Fat when others say too thin? | Body-image distortion | | F — Would you say Food dominates your life? | Cognitive preoccupation (>= 2 Total = Positive Screen) | - **Formula (Total 5-Item SCOFF Score (0 to 5 Points))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1, INT(B2) <> B2, INT(B3) <> B3, INT(B4) <> B4, INT(B5) <> B5, INT(B6) <> B6), "Each SCOFF Item Must Be 0 (No) or 1 (Yes)", SUM(B2:B6))` - **Formula (SCOFF Screening Interpretation (>= 2 Positive Threshold))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 1, INT(B2) <> B2, INT(B3) <> B3, INT(B4) <> B4, INT(B5) <> B5, INT(B6) <> B6), "Each SCOFF Item Must Be 0 (No) or 1 (Yes)", IF(SUM(B2:B6) >= 2, "SCOFF >= 2: Positive Eating-Disorder Screen — Perform Comprehensive Clinical Evaluation", "SCOFF 0–1: Negative Screen — Assess Clinically if Symptoms Persist"))` ### SCORAD Index & Objective oSCORAD for Atopic Dermatitis (Eczema) - **URL**: https://sheets.arte-soft.com/en/learn/scorad-atopic-dermatitis-eczema-extent-intensity-severity-score/ - **Summary**: Calculate total SCORAD = A/5 + 3.5*B + C (0–103) and Objective oSCORAD = A/5 + 3.5*B (0–83) from BSA extent A (0–100%), 6-sign intensity B (0–18), and pruritus + sleep-loss VAS C (0–20) to guide biologic therapy eligibility. *Table — How SCORAD weights surface area (20%), lesion intensity (60%), and patient itch/sleep (20%)!:* | Atopic Dermatitis Presentation | Objective oSCORAD (0–83) | Total SCORAD (0–103) | Clinical Severity Band | | --- | --- | --- | --- | | Localized Flexural Flare (A=10%, B=3, C=4) | 12.5 | 16.5 | Mild Eczema (<25) | | Widespread Subacute Flare (A=30%, B=9, C=12) | 37.5 | 49.5 | Moderate Eczema (25–50) | | Lichenified Severe Flare (A=30%, B=12, C=12) | 48.0 | 60.0 | Severe Eczema (>50: Systemic/Biologic) | - **Formula (Total SCORAD Composite Index = A / 5 + 3.5 * B + C (0–103))**: `=IF(OR(B2 < 0, B2 > 100, B3 < 0, B3 > 18, B4 < 0, B4 > 20), "Invalid SCORAD Subscore", ROUND(B2 / 5 + 3.5 * B3 + B4, 1))` - **Formula (SCORAD Clinical Severity Stratification (Mild <25, Moderate 25–50, Severe >50))**: `=IF(OR(B2 < 0, B2 > 100, B3 < 0, B3 > 18, B4 < 0, B4 > 20), "Invalid SCORAD Subscore", IF(B2 / 5 + 3.5 * B3 + B4 > 50, "Severe Atopic Dermatitis (>50)", IF(B2 / 5 + 3.5 * B3 + B4 >= 25, "Moderate Atopic Dermatitis (25-50)", "Mild Atopic Dermatitis (<25)")))` ### Score quiz or exam answers automatically against an answer key - **URL**: https://sheets.arte-soft.com/en/learn/score-quiz-answers-against-key/ - **Summary**: Compare student response rows against a locked answer-key row inside SUMPRODUCT for both equal-point and weighted-question exams. *Table — Element-by-element answer comparison with SUMPRODUCT:* | RowRole (A) | Q1 (B) | Q2 (C) | Q3 (D) | Q4 (E) | Q5 (F) | | --- | --- | --- | --- | --- | --- | | AnswerKey | B | D | A | C | B | | Weights | 1 | 2 | 2 | 3 | 2 | | Student1 | B | D | C | C | B | - **Formula (Raw correct count, percentage, and weighted points)**: `=SUMPRODUCT(--(B4:F4 = $B$2:$F$2), --($B$2:$F$2<>""))` - **Formula (Weighted points formula)**: `=SUMPRODUCT(--(B4:F4 = $B$2:$F$2), --($B$2:$F$2<>""), $B$3:$F$3)` ### Scott’s Pi Pooled-Marginal Agreement Formula vs Cohen’s Kappa Bias - **URL**: https://sheets.arte-soft.com/en/learn/scotts-pi-pooled-marginal-inter-rater-agreement-vs-cohens-kappa/ - **Summary**: Expose systematic rater threshold bias by comparing Scott’s (1955) pooled-marginal pi against Cohen’s (1960) separate-marginal kappa on 2x2 annotation tables. *Table — Spot the rater-bias paradox where Cohen’s kappa rewards mismatched thresholds:* | Agreement Metric (N = 100) | Formula Definition | Sample Output | | --- | --- | --- | | Observed Agreement P_o | (n_11 + n_22) / N | 0.7000 | | Byrt Rater Bias Index BI | ABS(n_12 - n_21) / N | 0.3000 (30-point threshold shift) | | Cohen’s Separate-Marginal Kappa | (P_o - (p_A1*p_B1 + p_A2*p_B2)) / (1 - P_e,C) | 0.4444 (Excuses bias) | | Scott’s Pooled-Marginal Pi | (P_o - (p_bar1^2 + p_bar2^2)) / (1 - P_e,S) | 0.3939 (Penalizes bias) | - **Formula (Scott’s Pooled-Marginal Pi Formula)**: `=LET(n_tot, SUM(B2:C3), IF(n_tot <= 0, "Empty Table", LET(p_obs, (B2 + C3) / n_tot, pb_1, ((B2 + C2) + (B2 + B3)) / (2 * n_tot), pb_2, 1 - pb_1, pe_sc, pb_1^2 + pb_2^2, IF(pe_sc >= 0.999999, "Single Category", ROUND((p_obs - pe_sc) / (1 - pe_sc), 4)))))` - **Formula (Cohen’s Kappa Comparison & Zero-Bias Equality Check)**: `=LET(n_tot, SUM(B2:C3), p_obs, (B2 + C3) / n_tot, pa_1, (B2 + C2) / n_tot, pb_1, (B2 + B3) / n_tot, pe_co, pa_1 * pb_1 + (1 - pa_1) * (1 - pb_1), ROUND((p_obs - pe_co) / (1 - pe_co), 4))` ### Screw Conveyor Flight Pitch & Trough Loading Capacity Formula - **URL**: https://sheets.arte-soft.com/en/learn/screw-conveyor-helicoid-flight-pitch-trough-loading-and-volumetric-capacity/ - **Summary**: Calculate Net Annular Flight Area (m²), Inclined Volumetric Throughput Q_v (m³/h), Horizontal Zero-Incline Mass Rate (t/h), and Derated Inclined Mass Capacity Q_m (t/h). *Table — Never flood a horizontal U-trough auger to 100% fill—above 30%–45% trough loading, powder packs against intermediate hanger bearings!:* | CEMA Auger Capacity KPI (Ds=0.30 m, dp=0.089 m, Pitch=0.30 m, 65 RPM, 30% Fill) | Formula | Verified Output | | --- | --- | --- | | Net Annular Flight Area (m²) | (PI() / 4) * ((Ds^2) - (dp^2)) | 0.0645 m² | | Inclined Volumetric Rate (m³/h) | 60 * A_net * Pitch * RPM * Fill * Ci | 19.23 m³/h (9.62 m³/h @ 15% abrasive fill) | | Horizontal Mass Rate (Ci=1, t/h) | 60 * A_net * Pitch * RPM * Fill * rho | 16.97 t/h (15.27 t/h @ cement 1.35 t/m³) | | Derated Inclined Capacity (t/h) | Inclined_Volumetric_m3_hr * Bulk_rho | 14.42 t/h (12.98 t/h @ cement 15% fill) | - **Formula (CEMA Annular Screw Displacement, Trough Fill & Inclination Derating Formula)**: `=LET(ds_m, B2, dp_m, B3, pt_m, B4, nr_m, B5, ld_f, B6, rb_t, B7, ci_f, B8, IF(OR(dp_m <= 0, ds_m <= dp_m, pt_m <= 0, nr_m <= 0, nr_m > 300, ld_f < 0.1, ld_f > 0.95, rb_t <= 0, ci_f <= 0, ci_f > 1), "Invalid Auger Input", LET(an_m, (PI() / 4) * ((ds_m ^ 2) - (dp_m ^ 2)), qv_h, 60 * an_m * pt_m * nr_m * ld_f * ci_f, ROUND(qv_h * rb_t, 2))))` - **Formula (Abrasive Portland Cement 15% Trough-Loading Restriction Check (Set Fill = 0.15 & Density = 1.35 t/m³))**: `=IF(ISTEXT(E5), E5, LET(an_m, (PI() / 4) * ((B2 ^ 2) - (B3 ^ 2)), ROUND(60 * an_m * B4 * B5 * B6 * B8, 2)))` ### USDA SCS Curve Number (TR-55) Stormwater Runoff Depth Formula - **URL**: https://sheets.arte-soft.com/en/learn/scs-curve-number-stormwater-runoff-depth-and-retention-s/ - **Summary**: Calculate event runoff depth with the traditional TR-55 curve-number equation, including numeric input checks and the initial-abstraction threshold. Experiment with rainfall and curve number in a live worksheet. - **Formula (Set up the calculation)**: `=IF(B5<>"OK",B5,1000/B2-10)` - **Formula (Apply the rainfall threshold before dividing)**: `=IF(B5<>"OK",B5,IF(B6<>"OK",B6,IF(B3<=B9,0,(B3-B9)^2/(B3-B9+B8))))` ### Search a 2D Table Grid for a Value & Return Its Exact Cell Address - **URL**: https://sheets.arte-soft.com/en/learn/search-2d-table-grid-for-value-and-row-column-location/ - **Summary**: Find a nonblank text bin ID in a rectangular grid and return its worksheet address and aisle label, preserving empty grid positions and choosing the first row-by-row match. - **Formula (Flatten the grid without moving positions)**: `=IF(F2="","Enter a bin ID",IFNA(XMATCH(F2,TOCOL(B2:D4,0,FALSE),0),"Not Found"))` - **Formula (Recover the worksheet address)**: `=IF(ISNUMBER(G2),ADDRESS(QUOTIENT(G2-1,COLUMNS(B2:D4))+ROW(B2),MOD(G2-1,COLUMNS(B2:D4))+COLUMN(B2),4),G2)` - **Formula (Return the aisle label)**: `=IF(ISNUMBER(G2),INDEX(A2:A4,QUOTIENT(G2-1,COLUMNS(B2:D4))+1),G2)` ### Seawater Reverse Osmosis (SWRO) Osmotic & ERD Energy Formula - **URL**: https://sheets.arte-soft.com/en/learn/seawater-reverse-osmosis-swro-osmotic-pressure-and-erd-specific-energy/ - **Summary**: Calculate Seawater Reverse Osmosis (SWRO) Concentrate Brine Osmotic Pressure Barrier (bar), Exit Net Driving Pressure (bar), Unrecovered Pump Specific Energy Consumption (kWh/m³), and Isobaric Pressure-Exchanger ERD Specific Energy Consumption SEC (kWh/m³). *Table — Cut desalination electricity nearly in half with isobaric ERDs—while guarding osmotic stall!:* | SWRO Desalination Metric (36 g/L, Y=50%, P=64 bar, η_ERD=95%, η_pump=80%) | Formula | Verified Output | | --- | --- | --- | | Concentrate Osmotic Barrier (bar) | (TDS_g_L / (1 - Y)) * 0.78 | 56.16 bar (70.20 Stall @ Y=60%) | | Exit Net Driving Pressure (bar) | Feed_Pressure_Bar - Brine_Osmotic_Bar | 7.84 bar | | Unrecovered Pump SEC (kWh/m³) | ((P_bar / Y) / 36) / η_pump | 4.4444 kWh/m³ | | Isobaric ERD Pump SEC (kWh/m³) | (((P_bar*(1 - (1-Y)*η_ERD)) / Y) / 36) / η_pump | 2.3333 kWh/m³ (4.4444 @ η_ERD=0) | - **Formula (SWRO Isobaric ERD Specific Energy Consumption (SEC) Formula)**: `=LET(td_s, B2, rc_y, B3, pf_b, B4, er_d, B5, pm_e, B6, pi_b, (td_s / (1 - rc_y)) * 0.78, IF(OR(td_s <= 0, rc_y <= 0, rc_y >= 0.85, er_d < 0, er_d >= 1, pm_e <= 0, pm_e > 1, pf_b <= pi_b), "Osmotic Stall or Invalid SWRO Input", ROUND((((pf_b * (1 - (1 - rc_y) * er_d)) / rc_y) / 36) / pm_e, 4)))` - **Formula (ERD Bypass & 60%-Recovery Osmotic Stall Checks)**: `=IF(ISTEXT(E5), E5, ROUND(((B4 / B3) / 36) / B6, 4))` ### Secant Formula for Eccentrically Loaded Column Stress - **URL**: https://sheets.arte-soft.com/en/learn/secant-eccentric-column-buckling-maximum-compressive-stress/ - **Summary**: Compute nonlinear P-Delta maximum compressive stress sigma_max = (P/A) * (1 + (e*c/r^2) / COS((L_eff/(2*r)) * SQRT(P/(E*A)))) and guard against Euler buckling. *Table — Why linear superposition P/A + M*c/I fails in eccentrically compressed columns:* | Axial Load Regime (L/r = 100, ec/r^2 = 0.40) | Angle u_rad | Secant Max Stress sigma_max | | --- | --- | --- | | Quarter Load (P = 20,000 N) | 0.5000 rad | 29.1160 MPa | | Design Load (P = 80,000 N) | 1.0000 rad | 139.2261 MPa (vs Naive 112 MPa) | | Concentric Limit (ec/r^2 = 0, P = 80 kN) | 1.0000 rad | 80.0000 MPa (= P / A) | | Above Euler Load (P = 200,000 N) | 1.5811 >= PI()/2 | Buckled: Load >= Euler Critical Load | - **Formula (Secant Formula Maximum Compressive Stress sigma_max (MPa) with Euler Guard)**: `=LET(l_eff, B2, r_gyr, B3, area_c, B4, e_mod, B5, ec_rat, B6, p_ax, B7, IF(OR(l_eff <= 0, r_gyr <= 0, area_c <= 0, e_mod <= 0, ec_rat < 0, p_ax < 0), "Invalid Column Input", IF(p_ax = 0, 0, LET(u_ang, (l_eff / (2 * r_gyr)) * SQRT(p_ax / (e_mod * area_c)), IF(u_ang >= PI() / 2, "Buckled: Load >= Euler Critical Load", ROUND((p_ax / area_c) * (1 + ec_rat / COS(u_ang)), 4))))))` - **Formula (Euler Critical Buckling Load P_cr = PI()^2 * E * A / (L_eff / r_gyr)^2 Reference Formula)**: `=LET(l_eff, B2, r_gyr, B3, area_c, B4, e_mod, B5, IF(OR(l_eff <= 0, r_gyr <= 0, area_c <= 0, e_mod <= 0), "Invalid Column Input", ROUND((PI()^2 * e_mod * area_c) / ((l_eff / r_gyr)^2), 2)))` ### SECOND function: extract seconds (0-59) and compute total duration in seconds - **URL**: https://sheets.arte-soft.com/en/learn/second-function-extract-seconds-from-time/ - **Summary**: Pull the 0-59 seconds component from spreadsheet time serials with SECOND, and combine HOUR, MINUTE, and SECOND for total elapsed seconds. *Table — SECOND extracts only the 0-59 clock component:* | Time Input | HOUR | MINUTE | SECOND | Total Seconds | | --- | --- | --- | --- | --- | | TIME(0, 4, 38) | 0 | 4 | 38 | 278 | | TIME(1, 2, 0) | 1 | 2 | 0 | 3720 | | TIME(0, 0, 75) | 0 | 1 (rollover) | 15 | 75 | - **Formula (Total duration in seconds formula)**: `=HOUR(A2) * 3600 + MINUTE(A2) * 60 + SECOND(A2)` - **Formula (Automatic rollover above 59 seconds inside TIME)**: `=SECOND(TIME(0, 0, 75))` ### Cone Crusher CSS, Eccentric Throw & Parallel-Zone Capacity - **URL**: https://sheets.arte-soft.com/en/learn/secondary-cone-crusher-closed-side-setting-eccentric-throw-and-parallel-zone-capacity/ - **Summary**: Calculate Open-Side Setting OSS (mm), Gravity Free-Fall Drop Per Half-Cycle (mm), Parallel-Zone Compression Hits, and Choke-Fed Volumetric Throughput (t/h). *Table — Slowing a VFD cone crusher from 265 to 175 RPM boosts raw tonnage to 180 t/h—by letting uncrushed oversize slabs fall clear through the parallel zone in 1.15 hits!:* | Cone Crusher Kinematics KPI (D=1.52 m, CSS=19 mm, Throw=36 mm, Lp=165 mm) | Formula | Verified Output | | --- | --- | --- | | Open-Side Setting OSS (mm) | Closed_Side_CSS_mm + Eccentric_Throw_e_mm | 55.0 mm | | Half-Cycle Free-Fall Drop (mm) | (0.5 * 9.80665 * ((30 / RPM) ^ 2)) * 1000 | 62.84 mm (144.10 mm @ 175 RPM!) | | Parallel-Zone Nip Hits | Parallel_Zone_L_mm / Free_Fall_Drop_mm | 2.63 CUBICAL (1.15 SLAB BYPASS!) | | Choke-Fed Throughput (t/h) | 0.42 * PI * D * MeanGap * Drop * RPM * 60 * rho | 118.6 t/h graded (179.6 t/h ungraded!) | - **Formula (Symons / Svensson Cone Crusher Free-Fall Ribbon & Parallel-Zone Hit Formula)**: `=LET(dm_m, B2, cs_m, B3, th_m, B4, nr_p, B5, lp_m, B6, rb_t, B7, dp_m, 0.5 * 9.80665 * ((30 / nr_p) ^ 2), IF(OR(dm_m < 0.6, dm_m > 3.2, cs_m < 4, cs_m > 75, th_m < 10, th_m > 90, nr_p < 140, nr_p > 450, lp_m < 50, lp_m > 450, rb_t < 1.1, rb_t > 3.2), "Invalid Cone Input", ROUND(0.42 * PI() * dm_m * ((cs_m + th_m / 2) / 1000) * dp_m * nr_p * 60 * rb_t, 1)))` - **Formula (Under-Speed VFD Operation (`N = 175` RPM) Oversize Circulating-Load Surge Check)**: `=IF(ISTEXT(E5), E5, LET(dp_m, (0.5 * 9.80665 * ((30 / B5) ^ 2)) * 1000, ROUND(B6 / dp_m, 2)))` ### Seed-Idriss Soil Liquefaction Formula: Cyclic Stress Ratio CSR & Factor of Safety - **URL**: https://sheets.arte-soft.com/en/learn/seed-idriss-seismic-soil-liquefaction-cyclic-stress-ratio-csr/ - **Summary**: Evaluate earthquake-induced sand liquefaction using H. Bolton Seed and I. M. Idriss’s (1971 / NCEER) Simplified Procedure: compute depth stress-reduction r_d, Cyclic Stress Ratio CSR, and Liquefaction Factor of Safety FS_liq = (CRR_7.5 * MSF) / CSR. *Table — Compare earthquake Cyclic Stress Demand (CSR) against soil Cyclic Resistance (CRR)!:* | Liquefaction Quantity (PGA = 0.28g, z = 8 m, sigma_v0 = 160 kPa, sigma'_v0 = 95 kPa) | Formula | Evaluated Value | | --- | --- | --- | | Depth Stress-Reduction Factor r_d | 1 - 0.00765 * z | 0.9388 | | Seismic Cyclic Stress Ratio CSR | 0.65 * (a_max/g) * (sigma_v0 / sigma'_v0) * r_d | 0.2878 | | Liquefaction Factor of Safety (Loose Sand CRR = 0.26) | (CRR_7.5 * MSF) / CSR | 0.904 (Liquefaction!) | | Liquefaction Factor of Safety (Vibro-Compacted CRR = 0.36) | (CRR_7.5 * MSF) / CSR | 1.251 (Safe) | - **Formula (Seed-Idriss Seismic Cyclic Stress Ratio CSR at Depth z <= 23 m)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 > B3, B5 <= 0, B5 > 23), "Invalid Seismic or Overburden Inputs", ROUND(0.65 * B2 * (B3 / B4) * IF(B5 <= 9.15, 1 - 0.00765 * B5, 1.174 - 0.0267 * B5), 4))` - **Formula (Liquefaction Triggering Factor of Safety FS_liq = (CRR_7.5 * MSF) / CSR)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 > B3, B5 <= 0, B5 > 23, B6 <= 0, B7 <= 0), "Invalid Seismic or Overburden Inputs", ROUND((B6 * B7) / (0.65 * B2 * (B3 / B4) * IF(B5 <= 9.15, 1 - 0.00765 * B5, 1.174 - 0.0267 * B5)), 3))` ### Pick a Value From a Fixed Set of Options (INDEX + MOD / RANDBETWEEN) - **URL**: https://sheets.arte-soft.com/en/learn/select-option-from-fixed-list-modulo-index-formula/ - **Summary**: Select an allowed tier, shift size, or discrete test parameter (such as {10, 25, 50, 100}) from a fixed lookup list using INDEX(Options, selector)—either deterministically via MOD(ID - 1, COUNTA(Options)) + 1 or randomly via RANDBETWEEN(1, COUNTA(Options)). *Table — Sample or cycle ONLY through valid discrete pack sizes {10, 25, 50, 100}!:* | Ticket / Test Row ID | Selector MOD(ID-1, 4) + 1 | Allowed Pack Options {10,25,50,100} | Assigned Value | | --- | --- | --- | --- | | Row ID = 1 | Index 1 | Option #1 = 10 | 10 units | | Row ID = 2 | Index 2 | Option #2 = 25 | 25 units | | Row ID = 3 | Index 3 | Option #3 = 50 | 50 units | | Row ID = 5 (Wraps!) | Index 1 | Option #1 = 10 | 10 units | - **Formula (Reproducible Cyclic Option Selector From Fixed Allowed Range)**: `=IF(OR(D2 < 1, COUNTA(A2:A5) = 0), "Invalid Selector", INDEX(A2:A5, MOD(D2 - 1, COUNTA(A2:A5)) + 1))` - **Formula (Direct K-th Option Lookup With Explicit Bounds Guard)**: `=IF(OR(D3 < 1, D3 > COUNTA(A2:A5)), "Index Out of Range", INDEX(A2:A5, D3))` ### Selective Pallet-Rack Beam Deflection (L/180) Formula - **URL**: https://sheets.arte-soft.com/en/learn/selective-pallet-rack-beam-deflection-l-over-180-and-aisle-storage-density/ - **Summary**: Calculate Uniform Load Per Front/Rear Step Beam (kN), Midspan Elastic Beam Deflection delta (mm), ANSI/RMI MH16.1 L/180 Serviceability Limit (mm), and Deflection Utilization (%). *Table — Pallet-rack step beams are often governed by RMI L/180 midspan bow—before steel yield stress is ever reached!:* | ANSI/RMI MH16.1 Rack Beam KPI (L=2,700 mm, 2x 1,100 kg Pallets, Iy=215 cm⁴) | Formula | Verified Output | | --- | --- | --- | | Load Per Single Beam W_beam (kN) | (Pallet_kg * Pallets * 9.80665 / 2) / 1000 | 10.79 kN | | Midspan Elastic Deflection (mm) | (5 * W_N * (L^3)) / (384 * E_MPa * Iy_mm4) | 6.43 mm (12.57 mm @ light 110 cm⁴ beam) | | RMI MH16.1 L/180 Ceiling (mm) | Beam_Clear_Span_L_mm / 180 | 15.00 mm | | Serviceability Deflection Used (%) | (Deflection_mm / RMI_Limit_mm) * 100 | 42.86% (83.78% @ light 110 cm⁴ beam) | - **Formula (RMI MH16.1 Simply-Supported Pair-Beam Elastic Deflection Formula)**: `=LET(ln_m, B2, mp_k, B3, np_l, B4, iy_c, B5, em_g, B6, IF(OR(ln_m < 900, mp_k <= 0, np_l < 1, iy_c <= 10, em_g < 180, em_g > 220), "Invalid Rack Input", LET(wb_n, (mp_k * np_l * 9.80665) / 2, df_m, (5 * wb_n * (ln_m ^ 3)) / (384 * (em_g * 1000) * (iy_c * 10000)), lm_r, ln_m / 180, ROUND((df_m / lm_r) * 100, 2))))` - **Formula (Light-Gauge 110 cm⁴ Step-Beam Substitution Check (Set Single-Beam Iy B5 = 110.0 cm⁴))**: `=IF(ISTEXT(E5), E5, LET(wb_n, (B3 * B4 * 9.80665) / 2, ROUND((5 * wb_n * (B2 ^ 3)) / (384 * (B6 * 1000) * (B5 * 10000)), 2)))` ### Self-Contained Inline Lookup Mapping with SWITCH & CHOOSE - **URL**: https://sheets.arte-soft.com/en/learn/self-contained-inline-lookup-switch-choose-vs-table/ - **Summary**: Map plan codes, regions, or 1..N priority integers directly to discount rates and labels inside a single self-contained SWITCH or CHOOSE formula without maintaining an external helper table. - **Formula (Order discount through SWITCH)**: `=IF(NOT(ISTEXT(A2)),"Enter a text plan code",IF(COUNT(B2)<>1,"Enter numeric subtotal",IF(B2<0,"Subtotal must be nonnegative",ROUND(B2*SWITCH(UPPER(TRIM(A2)),"STD",0.05,"PRO",0.12,"ENT",0.20,0),2))))` - **Formula (Priority label through CHOOSE)**: `=IF(COUNT(C2)<>1,"Enter numeric priority",IF(OR(C2<1,C2>4,C2<>INT(C2)),"Invalid Tier",CHOOSE(C2,"Low","Normal","High","Critical")))` ### Self-Storage Economic Occupancy & ECRI Rent-Roll Formula - **URL**: https://sheets.arte-soft.com/en/learn/self-storage-reit-economic-vs-physical-occupancy-street-rate-ecri-formula/ - **Summary**: Calculate Self-Storage REIT Move-In Concession & Bad-Debt Drag ($k), Existing Customer Rate Increase (ECRI) Lift ($k), Net Collected Rental Revenue ($k), and Economic Occupancy (%). *Table — Separate physical square-foot occupancy from economic occupancy after web move-in promos and ECRI!:* | Self-Storage Revenue KPI (80k SF @ $20/SF, 90% Phys Occ, 8% Drag, 50%x12% ECRI) | Formula | Verified Output | | --- | --- | --- | | Concession & Bad-Debt Drag ($k) | GPR_k * Phys_Occ * Concession_BadDebt_Pct | $115.20k | | Annual ECRI Rent-Roll Lift ($k) | GPR_k * Phys_Occ * ECRI_Share * ECRI_Lift | $86.40k ($0.00k Lease-Up) | | Net Collected Rental Revenue ($k) | Occupied_Base_k - Drag_k + ECRI_Lift_k | $1,411.20k ($1,324.80k No ECRI) | | Economic Occupancy (%) | (Net_Collected_Rent_k / Street_GPR_k) * 100 | 88.20% (82.80% No ECRI) | - **Formula (Self-Storage Economic Occupancy & ECRI Revenue Formula)**: `=LET(sf_n, B2, st_r, B3, oc_p, B4, dr_p, B5, ec_s, B6, ec_l, B7, IF(OR(sf_n <= 0, st_r <= 0, oc_p <= 0, oc_p > 1, dr_p < 0, dr_p >= 0.5, ec_s < 0, ec_s > 1, ec_l < 0, ec_l > 0.5), "Invalid Storage Rent Input", LET(gp_k, sf_n * st_r / 1000, ob_k, gp_k * oc_p, nt_k, ob_k * (1 - dr_p + ec_s * ec_l), ROUND((nt_k / gp_k) * 100, 2))))` - **Formula (Unseasoned Lease-Up Check Without ECRI Power (Set ECRI Rate Lift = 0%))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * B3 / 1000) * B4 * (1 - B5 + B6 * B7), 2))` ### Sellmeier Refractive Index Dispersion Equation & Abbe Number (Vd) for Optical Glass - **URL**: https://sheets.arte-soft.com/en/learn/sellmeier-optical-glass-refractive-index-and-abbe-number/ - **Summary**: Calculate wavelength-dependent refractive index n(lambda) via the 3-term Schott Sellmeier equation SQRT(1 + SUM((Bi * lambda^2) / (lambda^2 - Ci))) and chromatic Abbe number Vd = (nd - 1) / (nF - nC). *Table — Model chromatic dispersion from UV to NIR with 5-decimal Schott precision!:* | N-BK7 Optical Metric | Wavelength(s) | Calculated Value | Optical Lens Meaning | | --- | --- | --- | --- | | Sellmeier Index at d-Line | lambda = 0.5876 um (Yellow) | n_d = 1.51680 | Reference crown focal power | | Sellmeier Index at h-Line | lambda = 0.4047 um (Violet) | n_h = 1.53023 | Normal dispersion (n rises in blue/UV) | | Abbe Dispersion Number Vd | nd=1.5168, nF=1.5224, nC=1.5143 | Vd = 63.80 | Vd >= 50 -> Low-dispersion Crown Glass | - **Formula (3-Term Sellmeier Refractive Index n(lambda) (Wavelength in Micrometers))**: `=IF(OR(B2 <= 0, (B2 ^ 2) <= B4, (B2 ^ 2) <= B6, (B2 ^ 2) = B8), "Inside Absorption Resonance", ROUND(SQRT(1 + ((B3 * (B2 ^ 2)) / ((B2 ^ 2) - B4)) + ((B5 * (B2 ^ 2)) / ((B2 ^ 2) - B6)) + ((B7 * (B2 ^ 2)) / ((B2 ^ 2) - B8))), 5))` - **Formula (Abbe Chromatic Dispersion Number Vd = (n_d - 1) / (n_F - n_C))**: `=IF(B9 <= B10, "Invalid Dispersion Order (nF > nC)", ROUND((1.5168 - 1) / (B9 - B10), 2))` ### Semi-Elliptic Multi-Leaf Spring Stress & Deflection Formula - **URL**: https://sheets.arte-soft.com/en/learn/semi-elliptic-multi-leaf-truck-spring-bending-stress-and-deflection-formula/ - **Summary**: Calculate Total Leaf Count n = nf + ng, Uniform-Strength Leaf Bending Stress (MPa), Central Camber Deflection (mm), and Suspension Spring Rate k (N/mm). *Table — Why stepping leaf lengths into a diamond-equivalent stack cuts deflection factor from 3/8 to a hybrid (3*nf + 2*ng) denominator!:* | SAE Leaf-Spring Pack KPI (2F=28 kN, 2L=1,200 mm, 75x11 mm, nf=2, ng=6, E=207 GPa) | Formula | Verified Output | | --- | --- | --- | | Total Leaf Count n | Full_Leaves_nf + Graduated_Leaves_ng | 8 leaves (10 leaves @ ng=8 helper pack) | | Leaf Bending Stress sigma_b (MPa) | (6 * F_N * L_mm) / (n * b_mm * t_mm^2) | 694.2 MPa (555.4 MPa @ ng=8) | | Central Camber Deflection (mm) | (12 * F * L^3) / (E_MPa * b * t^3 * (3*nf+2*ng)) | 97.56 mm (79.82 mm @ ng=8) | | Vertical Spring Rate k (N/mm) | (2F_kN * 1000) / Deflection_mm | 287.0 N/mm (350.8 N/mm @ ng=8) | - **Formula (Semi-Elliptic Full + Graduated Cantilever Equivalence Stress & Stiffness Formula)**: `=LET(fe_n, (B2 * 1000) / 2, lh_m, B3 / 2, bw_m, B4, th_m, B5, nf_c, B6, ng_c, B7, em_p, B8 * 1000, df_m, (12 * fe_n * (lh_m ^ 3)) / (em_p * bw_m * (th_m ^ 3) * (3 * nf_c + 2 * ng_c)), IF(OR(B2 <= 0, B3 < 300, bw_m <= 10, th_m <= 2, nf_c < 1, ng_c < 1, B8 <= 50), "Invalid Leaf Spring", ROUND((B2 * 1000) / df_m, 1)))` - **Formula (Heavy-Haul +2 Graduated Leaves Upgrade Check (Set Graduated Leaves B7 = 8))**: `=IF(ISTEXT(E5), E5, ROUND((6 * ((B2 * 1000) / 2) * (B3 / 2)) / ((B6 + B7) * B4 * (B5 ^ 2)), 1))` ### Semiconductor Wafer DPW, Poisson & Murphy Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/semiconductor-wafer-gross-dies-poisson-murphy-and-seeds-yield-formula/ - **Summary**: Calculate Edge-Corrected Gross Dies per Wafer (DPW), Poisson Random-Defect Yield EXP(-D_0*A), Bernard Murphy’s Triangular Yield ((1 - EXP(-D_0*A))/(D_0*A))^2, Seeds Yield 1/(1 + D_0*A), and Cost per Good Die. *Table — Account for circular wafer edge loss and non-uniform fab defect density!:* | 300mm Foundry Wafer Metric (R_eff=147mm, A_die=400mm^2, D_0=0.10/cm^2, $12k Wafer) | Formula | Verified Output | | --- | --- | --- | | Edge-Corrected Gross Dies (DPW) | INT(PI()*R^2/A - PI()*2*R/SQRT(2*A)) | 137 gross dies | | Poisson Random-Defect Yield | EXP(-(D_0 * A_die / 100)) | 0.6703 (67.03%) | | Murphy Triangular Yield | ((1 - EXP(-lambda)) / lambda)^2 | 0.6793 (67.93%; 1.0000 @ D0=0) | | Good-Die Silicon Cost ($/die) | C_wafer / (DPW * Yield_Murphy) | $128.94 / good die | - **Formula (Singularity-Safe Bernard Murphy Wafer Yield Formula)**: `=LET(r_ef, B2, a_mm, B3, d_0, B4, c_wf, B5, IF(OR(r_ef <= 0, a_mm <= 0, a_mm >= PI() * r_ef ^ 2, d_0 < 0, c_wf <= 0), "Invalid Wafer Geometry", LET(lm_d, d_0 * (a_mm / 100), IF(lm_d = 0, 1, ROUND(((1 - EXP(-lm_d)) / lm_d) ^ 2, 4)))))` - **Formula (Cost per Known-Good Die Formula)**: `=LET(lm_d, B4 * (B3 / 100), yl_m, IF(lm_d = 0, 1, ((1 - EXP(-lm_d)) / lm_d) ^ 2), IF(OR(ISTEXT(E4), E2 <= 0), "Invalid Wafer Geometry", ROUND(B5 / (E2 * yl_m), 2)))` ### Split numbers from units of measure ("12.5 kg", "2500mg") - **URL**: https://sheets.arte-soft.com/en/learn/separate-numbers-and-units-of-measure/ - **Summary**: Separate an unsigned decimal numeric prefix from a trailing alphabetic unit in controlled measurement strings. *Table — Strip digits and decimal points to isolate any unit suffix:* | RawMeasure (A) | Extracted Number | Extracted Unit | | --- | --- | --- | | 12.5 kg | 12.5 | kg | | 2500mg | 2500 | mg | | 400 ml | 400 | ml | - **Formula (Number-extractor and unit-extractor formulas)**: `=LET(s, SUBSTITUTE(A2," ",""), u, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(s,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9",""),".",""), VALUE(LEFT(s, LEN(s) - LEN(u))))` - **Formula (Isolate the trailing unit text)**: `=LET(s, SUBSTITUTE(A3," ",""), SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(s,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9",""),".",""))` ### SEQUENCE function: generate dynamic row numbers and weekly date lists - **URL**: https://sheets.arte-soft.com/en/learn/sequence-function-dynamic-numbers-dates/ - **Summary**: Spill consecutive ticket numbers or 7-day inspection schedules from a single cell without dragging fill handles down the sheet. *Table — Control count, start value, and step in one cell:* | Parameter | Cell | Value | Spilled item #4 | | --- | --- | --- | --- | | Rows | B2 | 4 | — | | Start ID | B3 | 1001 | 1004 | | Step | B4 | 1 for IDs; change to 7 for weekly dates | Start + 3 × step | - **Formula (Generate invoice IDs or weekly Mondays)**: `=INDEX(SEQUENCE(B2,1,B3,B4),4,1)` - **Formula (Sum or count a generated series directly)**: `=SUM(SEQUENCE(B2,1,B3,B4))` ### Generate a Rolling Sequence of Month-Start & Month-End Dates (EDATE & EOMONTH) - **URL**: https://sheets.arte-soft.com/en/learn/sequence-of-months-dynamic-edate-and-eomonth-formula/ - **Summary**: Step forward or backward any number of calendar months from a start date using EDATE(DATE(Year, Month, 1), Offset) for exact 1st-of-month headers and EOMONTH(..., Offset) for leap-year-safe month-end closing dates. *Table — Never add "+ 30" days to build monthly accounting schedules!:* | Month Offset k (from Jan 2026) | Month-Start Formula EDATE(..., k) | Month-End Formula EOMONTH(..., k) | | --- | --- | --- | | k = 0 (Anchor Month) | 2026-01-01 | 2026-01-31 | | k = 1 (Next Month — Feb 2026) | 2026-02-01 | 2026-02-28 (28-day Feb) | | k = 25 (Leap Year Feb 2028) | 2028-02-01 | 2028-02-29 (29-day Leap Feb!) | - **Formula (ISO Month-Start Date at Offset k Months: EDATE(DATE(Year, Month, 1), k))**: `=IF(OR(B2 < 1900, B3 < 1, B3 > 12), "Invalid Start Month", TEXT(EDATE(DATE(B2, B3, 1), B4), "yyyy-mm-dd"))` - **Formula (ISO Month-End Closing Date at Offset k Months: EOMONTH(DATE(Year, Month, 1), k))**: `=IF(OR(B2 < 1900, B3 < 1, B3 > 12), "Invalid Start Month", TEXT(EOMONTH(DATE(B2, B3, 1), B4), "yyyy-mm-dd"))` ### Generate a Dynamic Sequence of Time Slots Every N Minutes (SEQUENCE & TIME) - **URL**: https://sheets.arte-soft.com/en/learn/sequence-of-time-slots-and-appointment-intervals-formula/ - **Summary**: Spill an exact clinic, interview, or conference schedule of N appointment slots spaced every M minutes using SEQUENCE(Slots, 1, TIME(Start_Hr, Start_Min, 0), Interval_Min / 1440). *Table — Build 15-, 20-, or 30-minute booking grids without floating-point drift!:* | Start Time & Slot Count | Interval Step (Min / 1440) | First Slot | Final Spilled Slot | | --- | --- | --- | --- | | 09:00 Start, 8 Slots | 30 / 1440 (Half-hour) | 09:00 | 12:30 (Slot #8) | | 09:00 Start, 8 Slots | 15 / 1440 (Quarter-hour) | 09:00 | 10:45 (Slot #8) | | 08:30 Start, 6 Slots | 45 / 1440 (45-min) | 08:30 | 12:15 (Slot #6) | - **Formula (Final Appointment Start Time ("HH:MM") of the Spilled Time Sequence)**: `=IF(OR(B2 < 0, B2 > 23, B3 < 0, B3 > 59, B4 < 1, B5 <= 0), "Invalid Schedule Inputs", RIGHT("00" & HOUR(MAX(SEQUENCE(B4, 1, TIME(B2, B3, 0), B5 / 1440))), 2) & ":" & RIGHT("00" & MINUTE(MAX(SEQUENCE(B4, 1, TIME(B2, B3, 0), B5 / 1440))), 2))` - **Formula (Total Schedule Span Covered by All Slots (Hours))**: `=IF(OR(B4 < 1, B5 <= 0), "Invalid Schedule Inputs", ROUND((B4 * B5) / 60, 2))` ### Generate a Dynamic Sequence of Years & Multi-Year Forecast Headers (SEQUENCE) - **URL**: https://sheets.arte-soft.com/en/learn/sequence-of-years-and-fiscal-year-headers-formula/ - **Summary**: Spill vertical or horizontal N-year financial forecast timelines from a single Start_Year and Horizon_Years input using SEQUENCE(N, 1, Start_Year, 1) or SEQUENCE(1, N, Start_Year, 1). *Table — Stop hardcoding 2026, 2027, 2028 across multi-year valuation models!:* | Forecast Layout Goal (Start = 2026, Horizon = 5) | Dynamic Formula Pattern | Generated Year Sequence | | --- | --- | --- | | Vertical Annual Schedule | =SEQUENCE(B3, 1, B2, 1) | 2026, 2027, 2028, 2029, 2030 (down rows) | | HorizontalDCF Header Row | =SEQUENCE(1, B3, B2, 1) | 2026 \| 2027 \| 2028 \| 2029 \| 2030 (across cols) | | Biennial / Olympic / 2-Year Step | =SEQUENCE(B3, 1, B2, 2) | 2026, 2028, 2030, 2032, 2034 | - **Formula (Spill a Vertical N-Year Timeline & Extract Terminal Forecast Year)**: `=IF(OR(B2 < 1900, B3 < 1), "Invalid Year Horizon", INDEX(SEQUENCE(B3, 1, B2, B4), B3, 1))` - **Formula (Format Fiscal Year Span Label ("FY2026-FY2030"))**: `=IF(OR(B2 < 1900, B3 < 1), "Invalid Year Horizon", "FY" & B2 & "-FY" & INDEX(SEQUENCE(B3, 1, B2, B4), B3, 1))` ### Series vs Parallel System Reliability & active redundancy formula (PRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/series-and-parallel-system-reliability-redundancy/ - **Summary**: Compare series and active-parallel mission reliability under independent failures and a common mission horizon. *Table — Compare independent series and active-parallel mission reliability:* | Subsystem / Node (A) | Reliability R_i (B) | Failure Prob 1 - R_i (C) | Architecture Outcome | | --- | --- | --- | --- | | Node-A | 0.95 | 0.05 | 5% individual failure risk | | Node-B | 0.90 | 0.10 | Weakest single link | | Node-C | 0.98 | 0.02 | 2% individual failure risk | | 3-Node System | Series = 0.8379 | Parallel = 0.9999 | 16.21% versus 0.01% modeled mission failure probability | - **Formula (Series chain reliability PRODUCT(B2:B4))**: `=IF(OR(COUNT(B2:B4)<>3,MIN(B2:B4)<0,MAX(B2:B4)>1),"Invalid inputs",ROUND(PRODUCT(B2:B4), 4))` - **Formula (Active parallel redundancy reliability 1 - PRODUCT(C2:C4))**: `=IF(OR(COUNT(B2:B4)<>3,MIN(B2:B4)<0,MAX(B2:B4)>1),"Invalid inputs",ROUND(1 - PRODUCT(C2:C4), 4))` ### Osmolality and water-deficit formulas: a fictional spreadsheet exercise - **URL**: https://sheets.arte-soft.com/en/learn/serum-osmolality-osmolal-gap-and-free-water-deficit/ - **Summary**: Practice units, arithmetic and input checks with fictional laboratory values. Results are educational calculations, not diagnoses or fluid-treatment instructions. *Table — Keep formula conventions and units explicit:* | Lab Analyte / Metric | Cell | Fictional input / arithmetic | Educational result | | --- | --- | --- | --- | | Sodium, Glucose, BUN | B2=140, B3=90, B4=14 | 2*140 + 90/18 + 14/2.8 | 280 + 5 + 5 = 290.0 mOsm/kg | | Measured Osmolality | B5 = 308 mOsm/kg | 308 - 290.0 | Signed gap =18.0; no diagnostic label | | Total Body Water (TBW) | B6=42 L, supplied fictional TBW estimate | At Na = 140 -> 42*(1-1) | 0.00 L Free Water Deficit | | Alternative fictional sodium 154 | B2 set to 154 mEq/L | 42 * (154 / 140 - 1) | Model result 4.20 L; not a treatment volume | - **Formula (Calculated Serum Osmolality (mOsm/kg) from US conventional units)**: `=IF(OR(COUNT(B2:B4)<>3,B2<=0,MIN(B3:B4)<0),"Invalid inputs",ROUND(2 * B2 + (B3 / 18) + (B4 / 2.8), 1))` - **Formula (Signed measured-minus-calculated gap)**: `=IF(OR(COUNT(B2:B5)<>4,B2<=0,MIN(B3:B5)<0),"Invalid inputs",ROUND(B5 - (2 * B2 + (B3 / 18) + (B4 / 2.8)), 1))` - **Formula (Optional fictional water-deficit calculation)**: `=IF(OR(COUNT(B2)<>1,COUNT(B6)<>1,B2<=0,B6<=0),"Invalid inputs",IF(B2<140,"Not applicable",ROUND(B6*(B2/140-1),2)))` ### Shade alternating groups of N rows (ISEVEN, QUOTIENT & ROW) - **URL**: https://sheets.arte-soft.com/en/learn/shade-alternating-groups-of-n-rows-quotient-iseven/ - **Summary**: Calculate alternating fixed-height row-band flags and block numbers, with a positive integer band height. *Table — Group-level zebra striping: toggle TRUE / FALSE every N rows cleanly!:* | Worksheet Row | Zero-Based Offset | QUOTIENT(Offset, 3) | ISEVEN Shade Flag | | --- | --- | --- | --- | | Rows 2, 3, 4 (Block 1) | 0, 1, 2 | 0 (Even) | TRUE (Shaded Band) | | Rows 5, 6, 7 (Block 2) | 3, 4, 5 | 1 (Odd) | FALSE (White Band) | | Row 8 (Block 3 start) | 6 | 2 (Even) | TRUE (Shaded Band) | - **Formula (Alternating N-row band boolean rule (TRUE for Band 1, 3, 5...))**: `=IF(NOT(ISNUMBER($D$2)),FALSE,IF(OR($D$2<1,$D$2<>INT($D$2)),FALSE,ISEVEN(QUOTIENT(ROW(A2) - ROW($A$2), $D$2))))` - **Formula (1-based Block / Group Number every N rows)**: `=IF(NOT(ISNUMBER($D$2)),"Invalid inputs",IF(OR($D$2<1,$D$2<>INT($D$2)),"Invalid inputs",QUOTIENT(ROW(A5) - ROW($A$2), $D$2) + 1))` ### Shaft Torsional Shear Stress (16T / pi*d^3) & Twist Angle (TL / GJ) formulas - **URL**: https://sheets.arte-soft.com/en/learn/shaft-torsional-shear-stress-polar-moment-and-twist-angle/ - **Summary**: Calculate elastic stress magnitude and signed twist for an ideal uniform solid circular shaft under pure torsion. *Table — Use the solid circular shaft model within its assumptions:* | Drive Shaft Metric | Formula / Cell | 40 mm Steel Shaft (500 N*m) | Engineering Result | | --- | --- | --- | --- | | Torque T & Diameter d | B2 = 500 N*m, B3 = 0.04 m | Length B4 = 1.2 m, G B5 = 79.3 GPa | Solid steel drive shaft | | Max Shear Stress tau_max | ((16 * B2) / (PI() * B3^3)) / 1E6 | 8,000 / (PI() * 6.4E-5) Pa | 39.79 MPa | | Twist Angle (Degrees) | DEGREES((B2 * B4) / (B5 * J)) | 600 / (79.3E9 * 2.513E-7) rad | 1.72 deg | | Double Diameter (80 mm) | B3 set to 0.08 m | 39.7887 / 8 | 4.97 MPa (8x lower stress!) | - **Formula (Maximum outer-surface torsional shear stress tau_max in MPa)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(((16 * ABS(B2)) / (PI() * (B3 ^ 3))) / 1000000, 2)))` - **Formula (Elastic shaft twist angle in degrees via DEGREES((T * L) / (G * J)))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(DEGREES((B2 * B4) / (B5 * ((PI() * (B3 ^ 4)) / 32))), 2)))` ### Shah In-Tube Two-Phase Condensation Heat-Transfer Correlation Formula - **URL**: https://sheets.arte-soft.com/en/learn/shah-in-tube-two-phase-condensation-heat-transfer-correlation/ - **Summary**: Calculate local annular/shear-driven condenser tube heat-transfer coefficient h_TP = h_L * ((1 - x)^0.8 + (3.8 * x^0.76 * (1 - x)^0.04) / p_r^0.38) across refrigerants and steam. *Table — Sizing HVAC refrigerant condensers and steam surface tubes across vapor quality x = 0.05 to 0.95!:* | Condenser Tube Location (h_L = 1450, p_r = 10.17 / 40.59) | Shah Multiplier h_TP / h_L | Local Condensing h_TP (W/(m²·K)) | Flow Regime | | --- | --- | --- | --- | | Inlet Zone (x = 0.80 Vapor Quality) | 5.364× | 7,778.5 W/(m²·K) | High-Shear Thin Annular Film | | Mid-Pass Zone (x = 0.50 Vapor Quality) | 4.267× | 6,187.6 W/(m²·K) | Annular-Wavy Condensation | | Invalid x <= 0, x >= 1, or P >= P_crit | Undefined | "Invalid Condensation State" | Subcritical Two-Phase Guard | - **Formula (Shah Local Two-Phase Condensing Heat-Transfer Coefficient h_TP (W/(m²·K)))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 1, B4 <= 0, B5 <= B4), "Invalid Condensation State", ROUND(B2 * (((1 - B3) ^ 0.8) + (3.8 * (B3 ^ 0.76) * ((1 - B3) ^ 0.04)) / ((B4 / B5) ^ 0.38)), 1))` - **Formula (Dimensionless Shah Two-Phase Enhancement Multiplier h_TP / h_L)**: `=IF(OR(B3 <= 0, B3 >= 1, B4 <= 0, B5 <= B4), "Invalid Condensation State", ROUND(((1 - B3) ^ 0.8) + (3.8 * (B3 ^ 0.76) * ((1 - B3) ^ 0.04)) / ((B4 / B5) ^ 0.38), 3))` ### HHI market concentration, Gini Impurity, and Shannon Entropy formulas - **URL**: https://sheets.arte-soft.com/en/learn/shannon-entropy-and-gini-impurity-decision-tree/ - **Summary**: Quantify market concentration (HHI = SUM(s^2)*10000), classification Gini Impurity (1 - SUM(p^2)), and information Shannon Entropy in bits. *Table — Three classic concentration & diversity metrics built from share vector p:* | Share Distribution p | HHI (0..10,000) | Gini Impurity | Shannon Entropy (Bits) | | --- | --- | --- | --- | | [50%, 30%, 20%] | 3,800 | 0.6200 | 1.4855 bits | | [50%, 50%, 0%] (Even Coin) | 5,000 | 0.5000 | 1.0000 bit | | [100%, 0%, 0%] (Pure / Monopoly) | 10,000 | 0.0000 | 0.0000 bits | - **Formula (HHI, Gini Impurity, and Shannon Entropy formulas)**: `=ROUND(SUM(A2:A4 ^ 2) * 10000, 0)` - **Formula (Gini Impurity (1 - SUM(p^2)) and Shannon Entropy SUM(B2:B4))**: `=ROUND(1 - SUM(A2:A4 ^ 2), 4)` - **Formula (Entropy in bits)**: `=ROUND(SUM(B2:B4),4)` ### Shannon-Hartley channel capacity (Mbps) & RF dBm-to-milliwatt formulas - **URL**: https://sheets.arte-soft.com/en/learn/shannon-hartley-channel-capacity-and-dbm-link-budget/ - **Summary**: Calculate theoretical maximum wireless throughput B * LOG(1 + 10^(SNR_dB/10), 2) and convert RF link-budget power between dBm and milliwatts. *Table — Convert decibel SNR_dB to linear SNR before applying Shannon-Hartley!:* | RF / Wireless Calculation | Formula | Result | | --- | --- | --- | | 20 MHz Channel @ 20 dB SNR (Linear 100) | 20 * LOG(1 + 10^(20/10), 2) | 133.16 Mbps | | Spectral Efficiency (bits / s / Hz) | LOG(1 + 10^(20/10), 2) | 6.66 bps/Hz | | Transmit Power +20 dBm -> Milliwatts | 10 ^ (20 / 10) | 100.0 mW | | Link Budget: 20 dBm + 6 dBi - 90 dB + 4 dBi | Sum of dBm + dBi - Loss_dB | -60.0 dBm | - **Formula (Shannon-Hartley channel capacity (Mbps) from MHz and SNR (dB))**: `=IF(OR(COUNT(A2:B2)<>2,A2<=0),"Invalid inputs",ROUND(A2 * LOG(1 + 10 ^ (B2 / 10), 2), 2))` - **Formula (Convert dBm to milliwatts)**: `=IF(NOT(ISNUMBER(C2)),"Invalid inputs",10^(C2/10))` ### Shannon-Wiener Diversity Index (H'), Hill Number EXP(H') & Pielou's Evenness - **URL**: https://sheets.arte-soft.com/en/learn/shannon-wiener-species-diversity-and-pielou-evenness/ - **Summary**: Calculate ecological species diversity H' = -SUM(p_i * LN(p_i)), effective equal-abundance species EXP(H'), and Pielou's Evenness J' = H' / LN(S). *Table — Combine species richness (S) and relative abundance evenness into H' and J':* | Ecological Biodiversity Metric (Counts: 50, 25, 15, 10; N=100, S=4) | Formula | Result | | --- | --- | --- | | Shannon-Wiener Diversity (H') | -SUM(p_i * LN(p_i)) | 1.2080 nats | | Effective Equal Species N1 = EXP(H') | EXP(1.2080) | 3.35 effective species | | Pielou's Evenness J' (0 to 1) | H' / LN(4) = 1.2080 / 1.3863 | 0.8714 (87.1% even) | | Perfectly Even Community (25, 25, 25, 25) | H' = LN(4) = 1.3863 | J' = 1.0000 (N1 = 4.00) | - **Formula (Per-species -p_i * LN(p_i) term (zero-safe) and total H')**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0),"Invalid inputs",IF(SUM(B2:B5)=0,"No observations",ROUND(SUM(C2:C5), 4)))` - **Formula (Pielou's Evenness J' = H' / LN(Richness S))**: `=IF(OR(COUNT(B2:B5)<>4,MIN(B2:B5)<0),"Invalid inputs",IF(COUNTIF(B2:B5,">0")<2,"Undefined evenness",ROUND(SUM(C2:C5) / LN(COUNTIF(B2:B5, ">0")), 4)))` ### Shapiro-Stiglitz No-Shirking Efficiency Wage Formula - **URL**: https://sheets.arte-soft.com/en/learn/shapiro-stiglitz-efficiency-wage-no-shirking-condition-formula/ - **Summary**: Compute the Shapiro-Stiglitz No-Shirking Condition wage w_NSC(u) = b + e + (e/q)*(r + s/u) and solve involuntary equilibrium unemployment u* against MPL. *Table — Explain why imperfect monitoring makes zero unemployment impossible in equilibrium!:* | Shapiro-Stiglitz Metric (b=30, e=10, r=0.05, s=0.15, MPL=71) | q = 0.50 (Baseline) | q = 1.00 (Better Monitoring) | | --- | --- | --- | | Information Rent Multiplier (e / q) | 20.00 | 10.00 | | NSC Wage at u = 10% w_NSC(0.10) | 71.00 | 55.50 | | Equilibrium Involuntary Unemployment u* | 0.1000 (10.00%) | 0.0492 (4.92%) | - **Formula (Shapiro-Stiglitz No-Shirking Wage Floor w_NSC(u) Formula)**: `=LET(b_un, B2, e_ef, B3, r_ds, B4, s_br, B5, q_dt, B6, u_rt, B7, IF(OR(b_un < 0, e_ef <= 0, r_ds <= 0, s_br <= 0, q_dt <= 0, u_rt <= 0, u_rt >= 1), "Invalid NSC Input", ROUND(b_un + e_ef + (e_ef / q_dt) * (r_ds + s_br / u_rt), 4)))` - **Formula (Equilibrium Involuntary Unemployment Rate u* Where w_NSC(u*) = MPL Formula)**: `=LET(b_un, B2, e_ef, B3, r_ds, B4, s_br, B5, q_dt, B6, mpl_w, B8, IF(OR(b_un < 0, e_ef <= 0, r_ds <= 0, s_br <= 0, q_dt <= 0), "Invalid NSC Input", LET(den_w, mpl_w - b_un - e_ef - (e_ef * r_ds) / q_dt, num_w, s_br * (e_ef / q_dt), IF(den_w <= num_w, "MPL Too Low (Market Shut Down)", ROUND(num_w / den_w, 4)))))` ### Shapley-Shubik Weighted Voting Power Index Formula - **URL**: https://sheets.arte-soft.com/en/learn/shapley-shubik-three-party-weighted-voting-pivotal-permutation-formula/ - **Summary**: Calculate Lloyd Shapley and Martin Shubik’s (1954) exact 6-permutation pivotal voting power index for three shareholder blocks or legislative parties against quota Q. *Table — See why a 2% swing shareholder can wield the exact same voting power as a 49% giant!:* | Shareholder / Bloc [51: 49, 49, 2] | Raw Vote Share | Pivotal Permutations (/ 6) | Shapley-Shubik Power | | --- | --- | --- | --- | | Shareholder_A (49 votes) | 0.4900 (49.0%) | 2 (2-1-3, 3-1-2) | 0.3333 (33.33%) | | Shareholder_B (49 votes) | 0.4900 (49.0%) | 2 (1-2-3, 3-2-1) | 0.3333 (33.33%) | | Swing_Founder_C (2 votes) | 0.0200 (2.0%) | 2 (1-3-2, 2-3-1) | 0.3333 (33.33%) | | Supermajority [60: 45, 40, 15] | 45% / 40% / 15% | 4 / 1 / 1 | 0.6667 / 0.1667 / 0.1667 | - **Formula (Exact 6-Permutation Shapley-Shubik Power Index Formula)**: `=LET(w_a, B2, w_b, B3, w_c, B4, q_th, B5, w_tt, w_a + w_b + w_c, IF(OR(w_a < 0, w_b < 0, w_c < 0, q_th <= w_tt / 2, q_th > w_tt), "Invalid Proper Voting Game", LET(pv_c, 2 * N(w_c >= q_th) + N(AND(w_a < q_th, w_a + w_c >= q_th)) + N(AND(w_b < q_th, w_b + w_c >= q_th)) + 2 * N(AND(w_a + w_b < q_th, w_tt >= q_th)), ROUND(pv_c / 6, 4))))` - **Formula (Power-Over-Vote-Share Leverage Wedge Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - B4 / SUM(B2:B4), 4))` ### Shapley Value Formula (3-Player Cooperative Game): Exact Coalition Marginal Allocation - **URL**: https://sheets.arte-soft.com/en/learn/shapley-value-three-player-coalition-marginal-contribution-formula/ - **Summary**: Compute the fair Shapley Value payoff allocation for a 3-player cooperative game (marketing attribution, joint logistics, or R&D consortium) across all 3! = 6 arrival permutations and verify grand-coalition efficiency. *Table — Why Lloyd Shapley’s 1953 axiomatic value is the unique fair payoff division of synergy!:* | Player in Joint Logistics Game (v1=10, v2=20, v3=30, v12=42, v13=54, v23=62, v123=90) | Exact 6-Permutation Shapley Formula | Shapley Payoff | | --- | --- | --- | | Player 1 (phi_1) | 10/3 + (42-20)/6 + (54-30)/6 + (90-62)/3 | 20.3333 | | Player 2 (phi_2) | 20/3 + (42-10)/6 + (62-30)/6 + (90-54)/3 | 29.3333 | | Player 3 (phi_3) | 30/3 + (54-10)/6 + (62-20)/6 + (90-42)/3 | 40.3333 (Sum = 90.0000!) | - **Formula (Player 1 Exact Shapley Value phi_1 = v1/3 + (v12 - v2)/6 + (v13 - v3)/6 + (v123 - v23)/3)**: `=IF(B8 < MAX(B2, B3, B4, B5, B6, B7), "Non-Monotonic Coalition Values", ROUND(B2 / 3 + (B5 - B3) / 6 + (B6 - B4) / 6 + (B8 - B7) / 3, 4))` - **Formula (Grand-Coalition Efficiency Check (phi_1 + phi_2 + phi_3 = v123))**: `=ROUND((B2 / 3 + (B5 - B3) / 6 + (B6 - B4) / 6 + (B8 - B7) / 3) + (B3 / 3 + (B5 - B2) / 6 + (B7 - B4) / 6 + (B8 - B6) / 3) + (B4 / 3 + (B6 - B2) / 6 + (B7 - B3) / 6 + (B8 - B5) / 3), 4)` ### Audit Named Workbook Invitations vs Paginated 20x10 Public Links - **URL**: https://sheets.arte-soft.com/en/learn/share-workbook-in-app-invitation-vs-paginated-public-link-audit/ - **Summary**: Verify owner-only Pro sharing gates, named collaborator roles (viewer, contributor, suggester) with in-app-only invitations (emailSent=false), and separate 20x10 paginated public read-only links in Arte Sheets. *Table — Keep named teammate invitations strictly separate from anonymous public read-only links:* | Sharing Channel | Prerequisites & Role Rules | Delivery & Viewer Capabilities | | --- | --- | --- | | Named Invitation (share_workbook) | owner + active Pro + email + viewer/contributor/suggester | In-app invite (emailSent=false); full role collaboration | | Public Link (manage_public_link) | owner + active Pro (separate explicit toggle) | Anonymous 20x10 paginated cells; no charts/comments/history/AI | | Read Public Status (get_public_link) | owner role on cloud workbook | Inspects current public-link state without mutating access | - **Formula (Public Read-Only 20x10 Grid Tile Page Count Formula)**: `=LET(r_used, B7, c_used, B8, IF(OR(r_used <= 0, c_used <= 0), "Invalid Sheet Dimensions", ROUNDUP(r_used / 20, 0) * ROUNDUP(c_used / 10, 0)))` - **Formula (Sharing Governance Gate (Owner + Pro + Channel Separation) Formula)**: `=LET(c_role, B2, is_pro, B3, ch_mode, B4, t_role, B5, em_txt, B6, IF(c_role <> "owner", "Blocked: Owner Role Required for Sharing", IF(is_pro <> 1, "Blocked: Active Pro Required for Share Mutation", IF(ch_mode = "public_link", "Ready: Separate 20x10 Read-Only Link (No Charts/Comments/AI)", IF(ch_mode <> "named_invite", "Blocked: Unknown Share Channel", IF(ISERROR(FIND("@", em_txt)), "Blocked: Explicit Recipient Email Required", IF(NOT(OR(t_role = "viewer", t_role = "contributor", t_role = "suggester")), "Blocked: Role Must Be viewer/contributor/suggester", "Ready: In-App Invite Only (emailSent=false)")))))))` ### Rectangular & V-Notch Weir Flow Rate Discharge formulas (H^1.5 & H^2.5) - **URL**: https://sheets.arte-soft.com/en/learn/sharp-crested-rectangular-and-v-notch-weir-discharge-formulas/ - **Summary**: Explore the H^(3/2) and H^(5/2) dependence of idealized sharp-crested weir discharge with separate assumed coefficients, SI units and explicit input checks. - **Formula (Rectangular model in D2)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric rectangular inputs",IF(OR(B2<=0,B2>1,B3<=0,B4<0,B5<=0),"Invalid rectangular model inputs",(2/3)*B2*B3*SQRT(2*B5)*B4^1.5))` - **Formula (V-notch model in D3)**: `=IF(COUNT(B4:B7)<>4,"Enter numeric V-notch inputs",IF(OR(B7<=0,B7>1,B4<0,B5<=0,B6<=0,B6>=180),"Invalid V-notch model inputs",(8/15)*B7*TAN(RADIANS(B6/2))*SQRT(2*B5)*B4^2.5))` - **Formula (Convert rectangular discharge to litres per second)**: `=IF(ISNUMBER(D2),ROUND(1000*D2,1),D2)` ### Sharpe Ratio formula: periodic and annualized risk-adjusted return - **URL**: https://sheets.arte-soft.com/en/learn/sharpe-ratio-and-sortino-downside-risk-formula/ - **Summary**: Measure excess return per unit of volatility with (AVERAGE(Returns) - RiskFree) / STDEV.S(Returns) and scale periodic Sharpe by SQRT(PeriodsPerYear). *Table — Square-root annualization under its assumptions:* | Metric (Quarterly Returns [3%, 3%, 3%, 11%]) | Formula | Value | | --- | --- | --- | | Mean Quarterly Return | =AVERAGE(A2:A5) | 5.00% (0.05) | | Quarterly Volatility (SD) | =STDEV.S(A2:A5) | 4.00% (0.04) | | Quarterly Sharpe (RF = 3%/qtr) | =(0.05 - 0.03) / 0.04 | 0.50 | | Annualized Sharpe (k = 4 qtrs/yr) | =0.50 * SQRT(4) | 1.00 | - **Formula (Annualized and periodic Sharpe Ratio formulas)**: `=ROUND(((AVERAGE(A2:A5) - B2) / STDEV.S(A2:A5)) * SQRT(C2), 4)` - **Formula (Unannualized periodic Sharpe Ratio)**: `=ROUND((AVERAGE(A2:A5) - B2) / STDEV.S(A2:A5), 4)` ### Sharpe ratio standard error, illustrative track-record threshold and serial-correlation scaling - **URL**: https://sheets.arte-soft.com/en/learn/sharpe-ratio-standard-error-and-lo-autocorrelation-adjustment/ - **Summary**: Calculate an IID-normal large-sample Sharpe standard error and compare annual scaling under a stated AR(1) correlation assumption. *Table — Separate sampling uncertainty from evidence of investment skill:* | Inference Metric | Formula | 60-Month Fund (SR_mo = 0.35) | 12-Month Backtest | | --- | --- | --- | --- | | Sharpe Standard Error SE(SR) | SQRT((1 + 0.5 * B2^2) / B3) | SQRT(1.06125 / 60) = 0.1330 | 0.2974 (Wide error bar!) | | Approximate Wald ratio | B2 / SE | 2.63 | 1.18 | | Annualized Sharpe (x SQRT(12)) | B2 * SQRT(12) | 1.2124 annualized | IID scaling only | | 95% Min Track Record (Months) | CEILING((1+0.5*SR^2)*(1.96/SR)^2, 1) | 34 under fixed assumptions | Illustrative threshold, not a promise | - **Formula (Lo (2002) Sharpe Ratio Standard Error SE(SR))**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B3<2,B3<>INT(B3)),"Invalid inputs",ROUND(SQRT((1 + 0.5 * (B2 ^ 2)) / B3), 4)))` - **Formula (Approximate Wald ratio against zero Sharpe)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B3<2,B3<>INT(B3)),"Invalid inputs",ROUND(B2 / SQRT((1 + 0.5 * (B2 ^ 2)) / B3), 2)))` - **Formula (Illustrative positive-Sharpe observation threshold)**: `=IF(OR(COUNT(B2)<>1,COUNT(B4)<>1),"Invalid inputs",IF(B4<=0,"Invalid inputs",IF(B2<=0,"No positive threshold",CEILING((1 + 0.5 * (B2 ^ 2)) * ((B4 / B2) ^ 2), 1))))` - **Formula (Annual scaling under an AR(1) correlation model)**: `=IF(OR(COUNT(B2)<>1,COUNT(B5)<>1),"Invalid inputs",IF(ABS(B5)>=1,"Invalid inputs",ROUND(B2*SQRT(12)/SQRT(1+2*((1-1/12)*B5^1+(1-2/12)*B5^2+(1-3/12)*B5^3+(1-4/12)*B5^4+(1-5/12)*B5^5+(1-6/12)*B5^6+(1-7/12)*B5^7+(1-8/12)*B5^8+(1-9/12)*B5^9+(1-10/12)*B5^10+(1-11/12)*B5^11)),4)))` ### Sheet-Metal Bending Elastic Springback & Overbend Formula - **URL**: https://sheets.arte-soft.com/en/learn/sheet-metal-air-bending-elastic-springback-angle-radius-growth-and-overbend-formula/ - **Summary**: Calculate Gardiner Springback Factor Ks, Unloaded Inside Bend Radius Rf (mm), Required Press-Brake Overbend Angle (deg), and Elastic Springback Angle Recovery (deg). *Table — Switch from mild steel to Grade 5 Ti-6Al-4V titanium on a 12 mm radius punch and press-brake springback explodes 12x from 1.4° to 16.4°!:* | Gardiner Press-Brake Springback KPI (t=2.0 mm, Target=90.0°: HSLA Steel vs Ti-6Al-4V) | Formula | Verified Output | | --- | --- | --- | | Gardiner Springback Factor Ks | 4 * ((Ri*sy / (E*1000*t))^3) - 3*u + 1 | 0.9851 steel (0.8458 titanium!) | | Unloaded Inside Radius Rf (mm) | ((Loaded_Ri_mm + t_mm/2) / Ks) - t_mm/2 | 6.106 mm (12.0 -> 14.370 mm growth!) | | Required Punch Overbend (deg) | Target_Bend_Angle_deg / Springback_Ks | 91.36° (106.41° deep V-die needed!) | | Elastic Springback Recovery (deg) | Required_Overbend_deg - Target_Angle_deg | 1.36° steel (16.41° titanium!) | - **Formula (Gardiner (1957) ASME Elastic-Core Cubic Springback Ratio Formula)**: `=LET(ri_m, B2, ts_m, B3, sy_m, B4, em_g, B5, ta_d, B6, uv_r, (ri_m * sy_m) / ((em_g * 1000) * ts_m), ks_f, 4 * (uv_r ^ 3) - 3 * uv_r + 1, IF(OR(ri_m <= 0.2, ts_m <= 0.1, sy_m < 30, sy_m > 2200, em_g < 40, em_g > 420, uv_r >= 0.45, ta_d < 5, ta_d > 175), "Invalid Springback Input", ROUND((ta_d / ks_f) - ta_d, 2)))` - **Formula (Aerospace Ti-6Al-4V Titanium (`R_i = 12` mm, `sigma_y = 980` MPa, `E = 114` GPa) 16.4° Springback Check)**: `=IF(ISTEXT(E5), E5, LET(uv_r, (B2 * B4) / ((B5 * 1000) * B3), ks_f, 4 * (uv_r ^ 3) - 3 * uv_r + 1, ROUND(((B2 + B3 / 2) / ks_f) - (B3 / 2), 3)))` ### Sheet-Metal Blanking Shear Force & Die Clearance Formula - **URL**: https://sheets.arte-soft.com/en/learn/sheet-metal-blanking-and-piercing-shear-force-die-clearance-and-stripper-tonnage/ - **Summary**: Calculate Single-Side Punch-to-Die Radial Clearance c (mm), Flat-Punch Peak Shear Force F_shear (kN), Stripper-Plate Unloading Force F_strip (kN), and Total Stamping Press Force (kN). *Table — Why punch-to-die clearance is specified PER SIDE—and forgetting stripper-plate spring tonnage stalls progressive dies!:* | Stamping Blanking KPI (Perim=320 mm, T=2.5 mm, Shear=340 MPa, 6%/side, 8% Strip) | Formula | Verified Output | | --- | --- | --- | | Per-Side Radial Clearance c (mm) | Sheet_Thickness_T * (Clearance_Pct / 100) | 0.150 mm (0.240 mm @ T = 4.0 mm) | | Peak Flat Shear Force Fshear (kN) | (Perimeter_mm * T_mm * Shear_MPa) / 1000 | 272.00 kN (435.20 kN @ T = 4.0 mm) | | Stripper Spring Force Fstrip (kN) | F_shear_kN * Stripper_Fraction | 21.76 kN (34.82 kN @ T = 4.0 mm) | | Total Station Press Force (kN) | F_shear_kN + F_strip_kN | 293.76 kN (470.02 kN @ T = 4.0 mm) | - **Formula (Stamping Die Per-Side Clearance, Shear Force & Stripper Tonnage Formula)**: `=LET(pm_m, B2, th_m, B3, ts_h, B4, cl_p, B5, st_f, B6, IF(OR(pm_m <= 0, th_m <= 0, ts_h < 40, ts_h > 1200, cl_p < 2, cl_p > 20, st_f < 0.02, st_f > 0.25), "Invalid Stamping Input", LET(fs_k, (pm_m * th_m * ts_h) / 1000, ROUND(fs_k * (1 + st_f), 2))))` - **Formula (Heavy-Gauge 4.0 mm Bracket Gauge-Up Check (Set Thickness T = 4.00 mm))**: `=IF(ISTEXT(E5), E5, ROUND((B2 * B3 * B4) / 1000, 2))` ### Sheet-Metal Bend Allowance, K-Factor & Bend Deduction Formula - **URL**: https://sheets.arte-soft.com/en/learn/sheet-metal-v-bend-allowance-k-factor-outside-setback-and-bend-deduction/ - **Summary**: Calculate Neutral-Axis Arc Bend Allowance BA (mm), Outside Setback OSSB (mm), Bend Deduction BD = 2*OSSB - BA (mm), and Laser-Cut Flat Blank Length (mm). *Table — Why adding two outside flange dimensions L1 + L2 cuts your laser blank 5.74 mm TOO LONG on a 90° bend!:* | Sheet-Metal Unfolding KPI (T=3.0 mm, R=4.0 mm, 90° Sweep, K=0.42, 80x60 mm) | Formula | Verified Output | | --- | --- | --- | | Bend Allowance BA (mm) | (PI()/180) * Angle_deg * (R + K * T) | 8.262 mm (11.017 mm @ 120° sweep) | | Outside Setback OSSB (mm) | TAN((Angle_deg/2)*PI()/180) * (R + T) | 7.000 mm (12.124 mm @ 120° sweep) | | Bend Deduction BD (mm) | 2 * OSSB - BA | 5.738 mm (13.232 mm @ 120° sweep!) | | Exact Flat Blank Length (mm) | Flange_L1 + Flange_L2 - BD | 134.262 mm (126.768 @ 120° sweep) | - **Formula (DIN 6935 / ASME Sheet-Metal Bend Deduction & Flat Blank Formula)**: `=LET(th_k, B2, rd_i, B3, an_g, B4, kf_c, B5, fl_a, B6, fl_b, B7, IF(OR(th_k <= 0, rd_i < 0, an_g <= 0, an_g >= 170, kf_c < 0.2, kf_c > 0.5), "Invalid Bend Input", LET(ba_m, (PI() / 180) * an_g * (rd_i + kf_c * th_k), os_b, TAN((an_g / 2) * (PI() / 180)) * (rd_i + th_k), IF(OR(fl_a <= os_b, fl_b <= os_b), "FLANGE SHORTER THAN SETBACK", ROUND(fl_a + fl_b - (2 * os_b - ba_m), 3)))))` - **Formula (120° Acute Included Bracket Sweep Check (Set Bend Sweep Angle = 120.0°))**: `=IF(ISTEXT(E5), E5, LET(ba_m, (PI() / 180) * B4 * (B3 + B5 * B2), os_b, TAN((B4 / 2) * (PI() / 180)) * (B3 + B2), ROUND(2 * os_b - ba_m, 3)))` ### 1-2 Shell-and-Tube LMTD Correction Factor (Ft) Formula - **URL**: https://sheets.arte-soft.com/en/learn/shell-and-tube-heat-exchanger-lmtd-f-correction-factor-1-2-pass-bowman-formula/ - **Summary**: Calculate Heat-Capacity Ratio R, Cold-Side Thermal Effectiveness P, Exact Bowman-Mueller-Nagle 1-Shell / 2-Tube-Pass LMTD Correction Factor F_t, and Effective Mean Temperature Difference (°C). *Table — Why U-tube 1-2 exchangers suffer a severe Ft penalty below 0.75 whenever outlet temperatures cross!:* | TEMA 1-2 Exchanger KPI (Thi=160 °C, Tho=90 °C, Tci=30 °C, Tco=80 °C) | Formula | Verified Output | | --- | --- | --- | | Heat-Capacity Ratio R_cap | (Thi - Tho) / (Tco - Tci) | 1.400 (1.077 @ Tco = 95 °C cross) | | Thermal Effectiveness P_eff | (Tco - Tci) / (Thi - Tci) | 0.385 (0.500 @ Tco = 95 °C cross) | | Bowman 1-2 Correction Factor Ft | Analytical Bowman-Mueller-Nagle (incl R=1) | 0.8640 (0.7599 @ Tco = 95 °C cross!) | | Effective Mean Temp Diff (Ft*LMTD) | Ft * Counterflow_LMTD_C | 60.07 °C (47.47 °C @ Tco = 95 °C) | - **Formula (Exact Bowman-Mueller-Nagle 1-Shell / 2-Tube-Pass Ft & Effective MTD Formula)**: `=LET(th_i, B2, th_o, B3, tc_i, B4, tc_o, B5, IF(OR(th_i <= th_o, tc_o <= tc_i, th_o <= tc_i, tc_o >= th_i), "Invalid Exchanger Temps", LET(dt_1, th_i - tc_o, dt_2, th_o - tc_i, lm_c, IF(ABS(dt_1 - dt_2) < 0.000001, dt_1, (dt_1 - dt_2) / LN(dt_1 / dt_2)), rr_f, (th_i - th_o) / (tc_o - tc_i), pp_f, (tc_o - tc_i) / (th_i - tc_i), sq_r, SQRT((rr_f ^ 2) + 1), dn_a, 2 - pp_f * (rr_f + 1 - sq_r), dn_b, 2 - pp_f * (rr_f + 1 + sq_r), IF(OR(1 - rr_f * pp_f <= 0, dn_b <= 0, dn_a <= dn_b), "1-2 PINCH CROSS UNREACHABLE", LET(ft_v, IF(ABS(rr_f - 1) < 0.000001, (pp_f * SQRT(2)) / ((1 - pp_f) * LN(dn_a / dn_b)), ((sq_r / (rr_f - 1)) * LN((1 - pp_f) / (1 - rr_f * pp_f))) / LN(dn_a / dn_b)), ROUND(lm_c * ft_v, 2))))))` - **Formula (5 °C Temperature-Cross Ft Cliff Check (Set Cold Outlet T_co = 95.0 °C > Hot Outlet 90.0 °C))**: `=IF(ISTEXT(E5), E5, LET(th_i, B2, th_o, B3, tc_i, B4, tc_o, B5, rr_f, (th_i - th_o) / (tc_o - tc_i), pp_f, (tc_o - tc_i) / (th_i - tc_i), sq_r, SQRT((rr_f ^ 2) + 1), dn_a, 2 - pp_f * (rr_f + 1 - sq_r), dn_b, 2 - pp_f * (rr_f + 1 + sq_r), ft_v, IF(ABS(rr_f - 1) < 0.000001, (pp_f * SQRT(2)) / ((1 - pp_f) * LN(dn_a / dn_b)), ((sq_r / (rr_f - 1)) * LN((1 - pp_f) / (1 - rr_f * pp_f))) / LN(dn_a / dn_b)), ROUND(ft_v, 4)))` ### Sherwood Number (Sh), Schmidt Number (Sc) & Frössling Sphere Mass Transfer - **URL**: https://sheets.arte-soft.com/en/learn/sherwood-mass-transfer-and-froessling-drop-correlation/ - **Summary**: Calculate the dimensionless Schmidt number Sc = nu / D_AB, Frössling-Ranz-Marshall sphere Sherwood number Sh = 2 + 0.6 * (Re^0.5) * (Sc^(1/3)), and convective mass-transfer coefficient k_c = (Sh * D_AB) / d_p. *Table — Design spray dryers, evaporating raindrops, and dissolving pharmaceutical pellets!:* | Flow & Fluid Regime (dp = 2.0 mm, DAB = 10^-9 m^2/s) | Reynolds Re & Schmidt Sc | Sherwood Number Sh | Mass-Transfer Coeff kc (mm/s) | | --- | --- | --- | --- | | Stagnant Liquid (Zero Flow) | Re = 0, Sc = 1,000 | Sh = 2.00 (Pure radial diffusion) | 0.0010 mm/s | | Agitated Dissolution Vessel | Re = 400, Sc = 1,000 | Sh = 122.00 (61x faster!) | 0.0610 mm/s | | Evaporating Water Drop in Air | Re = 100, Sc = 0.60 | Sh = 7.06 | Gas-phase boundary layer | - **Formula (Frössling-Ranz-Marshall Sphere Sherwood Number Sh = 2 + 0.6 * Re^0.5 * Sc^(1/3))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Re/Sc Inputs", ROUND(2 + (0.6 * SQRT(B2) * (B3 ^ (1 / 3))), 2))` - **Formula (Convective Mass-Transfer Coefficient k_c = (Sh * D_AB) / d_p in mm/s)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Re/Sc Inputs", ROUND(((2 + (0.6 * SQRT(B2) * (B3 ^ (1 / 3)))) * B4 * 1000000) / B5, 4))` ### Shields Parameter for Incipient River Sediment Motion & Bed Shear - **URL**: https://sheets.arte-soft.com/en/learn/shields-parameter-incipient-sediment-motion-and-critical-shear/ - **Summary**: Calculate river bed shear stress tau_0 = rho * g * R_h * S, dimensionless Shields Stress tau_* = (rho * R_h * S) / ((rho_s - rho) * d_50), and gravel bedload mobilization status. *Table — Predict whether flood stage scours streambed gravel or leaves riprap stable!:* | River Stage (Quartz rho_s = 2,650 kg/m^3, Gravel d_50 = 0.030 m, S = 0.002) | Hydraulic Radius R_h (m) | Dimensionless Shields tau_* | Bed Stability (tau_*c = 0.047) | | --- | --- | --- | --- | | Baseflow Stage | 0.60 m | 0.0242 (< 0.047) | Stable Armored Gravel Bed | | Threshold Bankfull Flow | 1.163 m | 0.0470 (= 0.047) | Incipient Grain Motion | | 10-Year Flood Stage | 1.80 m | 0.0727 (> 0.047) | Active Bedload Scour & Transport! | - **Formula (Dimensionless Shields Stress tau_* = (rho * R_h * S) / ((rho_s - rho) * d_50))**: `=IF(OR(B3 <= B2, B6 <= 0), "Invalid Density or Grain Size", ROUND((B2 * B4 * B5) / ((B3 - B2) * B6), 4))` - **Formula (Incipient Sediment Scour vs Stable Bed Check (tau_* > tau_*c))**: `=IF(((B2 * B4 * B5) / ((B3 - B2) * B6)) > B7, "Bedload Mobilized (Active Scour)", "Stable Channel Bed")` ### Attendance Tracking Formula: Net Attendance Rate (Excluding Approved Leave) & Bradford Factor - **URL**: https://sheets.arte-soft.com/en/learn/shift-attendance-rate-excused-leave-and-bradford-factor-formula/ - **Summary**: Calculate fair employee shift attendance % by excluding pre-approved statutory leave from scheduled shifts, and pair it with the HR Bradford Disruption Factor B = S^2 * D. *Table — Separate approved statutory vacation from unscheduled absence and spell frequency!:* | Absence Pattern (Net 60 Scheduled Shifts) | Spells S (B5) | Days Lost D (B4) | Attendance % & Bradford Score | | --- | --- | --- | --- | | Baseline Case (2 spells, 3 days) | 2 | 3 | 95.00% Attendance \| Bradford = 12 | | Single Surgery Spell (1 spell, 6 days) | 1 | 6 | 90.00% Attendance \| Bradford = 6 (Low disruption) | | Six Isolated 1-Day Absences (6 spells, 6 days) | 6 | 6 | 90.00% Attendance \| Bradford = 216 (Review trigger) | - **Formula (Net Attendance Rate (%) Excluding Pre-Approved Statutory Leave)**: `=IF(OR(B2 <= B3, B3 < 0, B4 < 0, B4 > B2 - B3), "Invalid Shift or Leave Counts", ROUND(100 * (B2 - B3 - B4) / (B2 - B3), 2))` - **Formula (Bradford Absence Disruption Factor (S^2 * D))**: `=IF(OR(B5 < 0, B4 < 0, AND(B4 > 0, B5 = 0), B5 > B4), "Invalid Spell/Day Combination", ROUND((B5 ^ 2) * B4, 0))` ### Regional Shift-Share Growth Decomposition Formula - **URL**: https://sheets.arte-soft.com/en/learn/shift-share-regional-growth-national-mix-and-competitive-effect/ - **Summary**: Decompose local employment change Delta_E_i = NS_i + IM_i + RS_i into National Growth Effect, Industry Mix Effect, and Regional Competitive Shift with zero residual. *Table — Separate macro tailwinds and industry composition from genuine local competitiveness!:* | Metro Shift-Share Component (Base = 30k, End = 32.4k, g_N = 5%) | Formula | Verified Jobs | | --- | --- | --- | | Total Observed Regional Job Change | SUM(C2:C3) - SUM(B2:B3) | +2,400.00 jobs (+8.00%) | | National Growth Share (NS) | SUM(B2:B3) * g_N | +1,500.00 jobs | | Industry Mix Effect (IM) | SUMPRODUCT(B2:B3, D2:D3) - NS | -400.00 jobs (Unfavorable Mix) | | Regional Competitive Shift (RS) | (SUM(C2:C3) - SUM(B2:B3)) - SUMPRODUCT(B2:B3, D2:D3) | +1,300.00 jobs (Local Outperformance!) | - **Formula (Aggregate Industry Mix Effect (IM) Without Array Broadcasting Formula)**: `=IF(OR(MIN(B2:B3) <= 0, MIN(C2:C3) < 0), "Invalid Employment Input", ROUND(SUMPRODUCT(B2:B3, D2:D3) - SUM(B2:B3) * H2, 2))` - **Formula (Aggregate Regional Competitive Shift (RS) Formula)**: `=IF(OR(MIN(B2:B3) <= 0, MIN(C2:C3) < 0), "Invalid Employment Input", ROUND((SUM(C2:C3) - SUM(B2:B3)) - SUMPRODUCT(B2:B3, D2:D3), 2))` ### Shifted-Beta-Geometric (sBG) Cohort Retention Formula - **URL**: https://sheets.arte-soft.com/en/learn/shifted-beta-geometric-sbg-cohort-retention-and-derl-formula/ - **Summary**: Project contractual subscription survival S(t) = S(t - 1) * (beta + t - 1) / (alpha + beta + t - 1) under unobserved churn heterogeneity and explain rising cohort retention rates. *Table — Why SaaS cohort retention rises over time even when NO individual customer becomes more loyal!:* | Renewal Period t (alpha = 2, beta = 6) | sBG Retention r_t | sBG Survival S(t) vs Naive 0.75^t | | --- | --- | --- | | Period 1 | 6 / 8 = 0.7500 | 0.7500 vs 0.7500 | | Period 2 | 7 / 9 = 0.7778 | 0.5833 vs 0.5625 | | Period 3 | 8 / 10 = 0.8000 | 0.4667 vs 0.4219 | | Period 4 (Expected Total Renewals = 6.00) | 9 / 11 = 0.8182 | 0.3818 vs 0.3164 (+20.7% Higher!) | - **Formula (Period-t Conditional Cohort Retention Rate r_t Formula)**: `=IF(OR($H$2 <= 0, $H$3 <= 0, A2 < 1), "Invalid sBG Input", ( $H$3 + A2 - 1 ) / ( $H$2 + $H$3 + A2 - 1 ))` - **Formula (Undiscounted Expected Total Renewals vs Naive Constant-Churn Benchmark Formula)**: `=LET(al_p, H2, bt_p, H3, IF(OR(al_p <= 0, bt_p <= 0), "Invalid sBG Input", IF(al_p <= 1, "Infinite Undiscounted Tail (alpha <= 1)", ROUND(bt_p / (al_p - 1), 4))))` ### Bolted-Joint Stiffness Factor (C) and Separation Safety Formula - **URL**: https://sheets.arte-soft.com/en/learn/shigley-bolted-joint-stiffness-factor-and-joint-separation-safety/ - **Summary**: Calculate Shigley’s bolted-joint stiffness constant C = k_b / (k_b + k_m), bolt tension F_b = MAX(P, F_i + C*P), and joint-separation safety factor n_0 = F_i / (P*(1 - C)). *Table — Stop adding 100% of external load P directly onto bolt preload F_i!:* | Bolted-Joint Quantity (C = 0.25, F_i = 45 kN) | Formula | Result at P = 24 kN | | --- | --- | --- | | Joint Stiffness Constant (C) | k_b / (k_b + k_m) | 0.2500 (25% Bolt Share) | | Active Bolt Tension (F_b) | MAX(P, F_i + C * P) | 51,000 N (vs Naive 69,000 N) | | Residual Clamping Force (F_clamp) | MAX(0, F_i - (1 - C) * P) | 27,000 N (Gasket Sealed) | | Separation Safety Factor (n_0) | F_i / (P * (1 - C)) | 2.5000 (> 1.0) | - **Formula (Piecewise Pre- and Post-Separation Bolt Tension MAX(P, F_i + C * P) Formula)**: `=LET(k_blt, B2, k_mem, B3, f_pre, B4, p_ext, B5, IF(OR(k_blt <= 0, k_mem <= 0, f_pre < 0, p_ext < 0), "Invalid Joint Input", LET(c_fac, k_blt / (k_blt + k_mem), ROUND(MAX(p_ext, f_pre + c_fac * p_ext), 2))))` - **Formula (Joint-Separation Load Factor n_0 = F_i / (P * (1 - C)) Formula)**: `=LET(k_blt, B2, k_mem, B3, f_pre, B4, p_ext, B5, IF(OR(k_blt <= 0, k_mem <= 0, f_pre <= 0, p_ext <= 0), "Invalid or Zero External Load", LET(c_fac, k_blt / (k_blt + k_mem), ROUND(f_pre / (p_ext * (1 - c_fac)), 4))))` ### Shin Method vs Multiplicative Vig-Removal Formula - **URL**: https://sheets.arte-soft.com/en/learn/shin-method-and-multiplicative-bookmaker-overround-vig-removal/ - **Summary**: Strip bookmaker overround S = 1/O_1 + 1/O_2 - 1 via Hyun Song Shin’s (1993) insider-trading equilibrium to correct Favorite-Longshot Bias in implied probabilities. *Table — Why proportional vig removal overestimates longshots — and how Hyun Song Shin’s (1993) model fixes it!:* | Implied Probability Metric (O_1 = 1.25, O_2 = 4.00) | Formula | Verified Output | | --- | --- | --- | | Bookmaker Overround / Vig (S - 1) | (1 / O_1) + (1 / O_2) - 1 | 0.0500 (5.00% Overround) | | Multiplicative Longshot Prob | q_2 / S | 0.2381 (23.81% — Overstated!) | | Shin Implied Insider Share (z*) | ((q_1^2 / S) - p_1^2) / (p_1 * (1 - p_1)) | 0.0510 (5.10% Informed Flow) | | Shin Fair Longshot Probability | (SQRT(z*^2 + 4*(1-z*)*q_2^2/S) - z*)/(2*(1-z*)) | 0.2250 (22.50% True Prob!) | - **Formula (Shin Implied Insider-Trading Fraction z* Formula)**: `=LET(o_1, B2, o_2, B3, IF(OR(o_1 <= 1, o_2 <= 1), "Require Decimal Odds > 1", LET(q_1, 1 / o_1, q_2, 1 / o_2, s_sm, q_1 + q_2, IF(s_sm < 1, "Arbitrage Market (Sum < 1)", IF(s_sm = 1, 0, LET(p_1, q_1 - 0.5 * (s_sm - 1), IF(OR(p_1 <= 0, p_1 >= 1), "Invalid Extreme Overround", ROUND(((q_1^2 / s_sm) - (p_1^2)) / (p_1 * (1 - p_1)), 4))))))))` - **Formula (Exact Shin Vig-Removed Longshot Fair Probability Formula)**: `=LET(o_1, B2, o_2, B3, IF(OR(o_1 <= 1, o_2 <= 1), "Require Decimal Odds > 1", LET(q_1, 1 / o_1, q_2, 1 / o_2, s_sm, q_1 + q_2, IF(s_sm < 1, "Arbitrage Market (Sum < 1)", LET(p_1, q_1 - 0.5 * (s_sm - 1), IF(OR(p_1 <= 0, p_1 >= 1), "Invalid Extreme Overround", LET(z_sh, IF(s_sm = 1, 0, ((q_1^2 / s_sm) - (p_1^2)) / (p_1 * (1 - p_1))), ROUND((SQRT((z_sh^2) + 4 * (1 - z_sh) * ((q_2^2) / s_sm)) - z_sh) / (2 * (1 - z_sh)), 4))))))))` ### Ship Tons Per Centimeter (TPC) & Freshwater Allowance Formula - **URL**: https://sheets.arte-soft.com/en/learn/ship-hydrostatics-tons-per-centimeter-immersion-tpc-and-freshwater-allowance-fwa/ - **Summary**: Calculate Saltwater Tons Per Centimeter Immersion TPC (t/cm), Plimsoll Freshwater Allowance FWA (mm), Brackish Dock Water Allowance DWA (mm), and Extra Permissible Cargo Mass (t). *Table — Loading to the Plimsoll Dock Water Allowance in brackish river ports—because hull draft rises automatically once out in 1.025 t/m³ ocean seawater!:* | Plimsoll Hydrostatics KPI (Aw = 4,200 m², Disp = 52,000 t, Dock = 1.005 t/m³) | Formula | Verified Output | | --- | --- | --- | | Saltwater Immersion TPC_sw (t/cm) | (Waterplane_Area_m2 * 1.025) / 100 | 43.05 t/cm | | Freshwater Allowance FWA (mm) | Displacement_t / (4 * TPC_sw) | 301.97 mm | | Dock Water Allowance DWA (mm) | FWA * ((1.025 - Dock_Density) / 0.025) | 241.58 mm (301.97 @ 1.000 river) | | Actual Dock Immersion TPC_dock | (Waterplane_Area_m2 * Dock_Dens) / 100 | 42.21 t/cm (42.00 @ 1.000 river) | - **Formula (Plimsoll Load-Line Freshwater & Brackish Dock Water Allowance Formula)**: `=LET(aw_m, B2, ds_t, B3, rd_k, B4, IF(OR(aw_m <= 0, ds_t <= 0, rd_k < 1, rd_k > 1.025), "Invalid Hydrostatic Input", LET(tp_s, (aw_m * 1.025) / 100, fw_a, ds_t / (4 * tp_s), ROUND(fw_a * ((1.025 - rd_k) / 0.025), 2))))` - **Formula (Pure Freshwater Upriver Terminal Full FWA Check (Set Dock Density = 1.000 t/m³))**: `=IF(ISTEXT(E4), E4, ROUND((B2 * B4) / 100, 2))` ### Ship Metacentric Height (GM), Transverse BM & Righting Arm GZ - **URL**: https://sheets.arte-soft.com/en/learn/ship-metacentric-height-gm-transverse-bm-and-gz-righting-arm-formula/ - **Summary**: Calculate Vessel Transverse Metacentric Radius BM = I_T / Disp_Vol, Free-Surface-Corrected Fluid Metacentric Height GM_eff = KB + BM - KG - FSC, Small-Angle Righting Lever GZ = GM_eff*SIN(theta), and IMO Intact Stability Compliance. *Table — Prevent cargo-stacking capsize by deducting tank free-surface loss from Metacentric Height!:* | Hydrostatic Stability Metric (KB=4.5m, IT=36,000, Vol=12,000, KG=6.3m, FSC=0.2m) | Formula | Verified Output | | --- | --- | --- | | Transverse Metacentric Radius BM | Waterplane_IT / Displacement_Vol | 3.00 m (KM = 7.50 m) | | Effective Fluid GM_eff (m) | KB + BM - KG - Free_Surface_FSC | 1.00 m (-0.10 m @ KG=7.4m) | | Righting Arm Lever GZ @ 30 deg | GM_eff * SIN(Heel_Deg * PI() / 180) | 0.5000 m | | IMO IS Code Stability Gate | GM_eff >= 0.15 m Intact Criterion | IMO Compliant Intact Stability | - **Formula (Free-Surface-Corrected Metacentric Height (GM_eff) Formula)**: `=LET(kb_m, B2, it_w, B3, vl_d, B4, kg_m, B5, fs_c, B6, th_d, B7, IF(OR(kb_m <= 0, it_w <= 0, vl_d <= 0, kg_m <= 0, fs_c < 0, th_d < 0, th_d >= 90), "Invalid Hydrostatic Input", ROUND(kb_m + (it_w / vl_d) - kg_m - fs_c, 2)))` - **Formula (Top-Heavy Deck Cargo Loll / Capsize Check (Set KG = 7.40 m))**: `=IF(ISTEXT(E3), E3, IF(E3 <= 0, "Unstable: Negative GM Capsize Risk", IF(E3 < 0.15, "Below IMO 0.15 m Minimum GM", "IMO Compliant Intact Stability")))` ### Shock Index (HR / SBP), Modified Shock Index (HR / MAP) & Age Shock Index - **URL**: https://sheets.arte-soft.com/en/learn/shock-index-modified-shock-index-and-age-shock-index/ - **Summary**: Calculate heart-rate/blood-pressure ratios and an age-weighted index from consistently measured adult vital signs, without automatic diagnostic classification. *Table — Ratios derived from supplied vital signs:* | Derived quantity | Formula | HR114, BP95/62, age65 | Illustration HR72, BP120/80, age40 | | --- | --- | --- | --- | | SI | HR/SBP | 1.20 | 0.60 | | MSI | HR/estimated MAP | 1.56 | 0.77 | | Age SI | Age*SI | 78.0 | 24.0 | - **Formula (Shock index: HR divided by systolic pressure)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",ROUND(B2 / B3, 2)))` - **Formula (Modified shock index using estimated MAP)**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B4>=B3),"Invalid inputs",ROUND(B2 / ((B3 + 2 * B4) / 3), 2)))` - **Formula (Age shock index in this adult example)**: `=IF(COUNT(B2:B3,B5)<>3,"Invalid inputs",IF(OR(B2<=0,B3<=0,B5<18),"Invalid inputs",ROUND(B5*(B2/B3),1)))` ### Shockley-Queisser Bandgap Thermalization & Voc Loss Formula - **URL**: https://sheets.arte-soft.com/en/learn/shockley-queisser-bandgap-detailed-balance-and-spectrum-loss-formula/ - **Summary**: Calculate Solar Cell Sub-Bandgap Transmission vs Hot-Carrier Phonon Thermalization Loss (eV), Detailed-Balance Open-Circuit Voltage Voc (V), Extracted Electrical Work Per Photon (eV), and Monochromatic Photon Conversion Efficiency. *Table — See why single-junction solar cells cap near ~33.7%—and how perovskite-silicon tandems beat it!:* | Shockley-Queisser Photon Metric (E_ph = 2.24 eV, Si Eg = 1.12 eV, ΔVoc = 0.40 V, FF = 0.85) | Formula | Verified Output | | --- | --- | --- | | Hot-Carrier Thermalization (eV) | IF(E_ph < Eg, 0, E_ph - Eg) | 1.12 eV (0.48 eV @ 1.76 eV Top) | | Detailed-Balance Voc (V) | Eg_eV - Voc_Deficit_V | 0.72 V (1.36 V @ 1.76 eV Top) | | Extracted Work / Photon (eV) | IF(E_ph < Eg, 0, (Eg - ΔVoc) * FF) | 0.6120 eV (1.1560 eV @ 1.76 eV) | | Photon Conversion Efficiency | Extracted_Work_eV / Photon_Energy_eV | 0.2732 (0.5161 @ Perovskite Top) | - **Formula (Detailed-Balance Photon Work & Conversion Efficiency Formula)**: `=LET(ep_h, B2, eg_v, B3, dv_c, B4, ff_c, B5, IF(OR(ep_h <= 0, eg_v <= 0, dv_c <= 0, dv_c >= eg_v, ff_c <= 0, ff_c >= 1), "Invalid Bandgap Detailed Balance", IF(ep_h < eg_v, 0, ROUND(((eg_v - dv_c) * ff_c) / ep_h, 4))))` - **Formula (1.76 eV Perovskite Tandem Top-Cell Harvest & Sub-Bandgap IR Transmission Checks)**: `=IF(ISTEXT(E5), E5, IF(B2 < B3, 0, ROUND((B3 - B4) * B5, 4)))` ### SRH, Radiative & Auger Recombination Lifetime + Diffusion Length - **URL**: https://sheets.arte-soft.com/en/learn/shockley-read-hall-srh-and-auger-carrier-recombination-lifetime/ - **Summary**: Combine defect-mediated Shockley-Read-Hall (τ_SRH), band-to-band radiative (B·Δn), and three-particle Auger (C_a·Δn^2) recombination rates into effective minority-carrier lifetime τ_eff (μs) and diffusion length L = SQRT(D·τ_eff) (μm). *Table — Why solar-cell and LED efficiency droops at high injection: the C·Δn^2 Auger wall!:* | Excess Carrier Injection Δn (cm^-3) | Effective Lifetime τ_eff (μs) | Diffusion Length L (μm) | Limiting Recombination Mechanism | | --- | --- | --- | --- | | 1-Sun Passivated Cell (1.0 × 10^15) | 498.42 μs | 1,222.8 μm | Defect-Mediated SRH (~99.7%) | | Moderate Concentrator (1.0 × 10^16) | 451.88 μs | 1,164.3 μm | SRH + Onset of Auger (7.5%) | | High Injection / Laser (1.0 × 10^17) | 52.44 μs | 396.6 μm | Three-Particle Auger Dominated (87%) | - **Formula (Combined Effective Carrier Lifetime τ_eff (μs))**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B6 <= 0), "Invalid Recombination Inputs", ROUND(1000000 / ((1 / (B2 * 0.000001)) + B3 * B6 + B4 * (B6 ^ 2)), 2))` - **Formula (Minority-Carrier Diffusion Length L = SQRT(D * τ_eff) (μm))**: `=IF(OR(B2 <= 0, B3 < 0, B4 < 0, B5 <= 0, B6 <= 0), "Invalid Recombination Inputs", ROUND(10000 * SQRT(B5 / ((1 / (B2 * 0.000001)) + B3 * B6 + B4 * (B6 ^ 2))), 1))` ### Prais-Shorrocks Income Mobility Index M(P) Formula: Markov Transition Matrix Trace - **URL**: https://sheets.arte-soft.com/en/learn/shorrocks-income-mobility-and-prais-transition-trace-index/ - **Summary**: Quantify intergenerational or credit-rating transition mobility from a K x K Markov matrix P using the Prais-Shorrocks Trace Index M(P) = (K - trace(P)) / (K - 1) and Mean Class Stay Duration 1 / (1 - p_ii). *Table — Turn a K x K income-bracket or credit-rating transition matrix into a single [0, 1+] Mobility Index!:* | 3x3 Tertile Transition Regime | Diagonal Persistence [p_11, p_22, p_33] | Matrix Trace tr(P) | Prais-Shorrocks Mobility M(P) | | --- | --- | --- | --- | | Complete Immobility (Identity Matrix I) | [1.00, 1.00, 1.00] | 3.00 | 0.0000 | | Observed Empirical Panel | [0.60, 0.55, 0.70] | 1.85 | 0.5750 | | Origin-Independent Equal Chance | [0.333, 0.333, 0.333] | 1.00 | 1.0000 | - **Formula (Prais-Shorrocks Markov Trace Mobility Index M(P) = (K - trace(P)) / (K - 1))**: `=IF(OR(MIN(B2:D4) < 0, ABS(SUM(B2:D2) - 1) > 0.001, ABS(SUM(B3:D3) - 1) > 0.001, ABS(SUM(B4:D4) - 1) > 0.001), "Invalid Row-Stochastic Transition Matrix", ROUND((3 - (B2 + C3 + D4)) / 2, 4))` - **Formula (Expected Spell Duration in Origin Bracket i: E[T_i] = 1 / (1 - p_ii))**: `=IF(OR(B2 < 0, B2 > 1), "Invalid Probability", IF(B2 = 1, "Absorbing State (Infinite Stay)", ROUND(1 / (1 - B2), 2)))` ### Shot Peening Surface Coverage & Pass Count Formula - **URL**: https://sheets.arte-soft.com/en/learn/shot-peening-surface-coverage-avrami-exponential-pass-count-formula/ - **Summary**: Calculate Multi-Pass Peened Dimple Coverage Cn = 1 - (1 - C1)^n (%), Residual Unpeened Parent Surface (%), Exact Continuous Passes for 98% Full Coverage, and Required Integer Nozzle Passes. *Table — If 1 nozzle pass covers 62% of a gear root, 2 passes do NOT give 100%—random shot overlap leaves 14.4% unpeened fatigue-crack sites!:* | SAE J2277 Shot Peening KPI (Single-Pass C1=62.0%, n=4 vs 2 Passes, Target=98%) | Formula | Verified Output | | --- | --- | --- | | Achieved n-Pass Coverage Cn (%) | (1 - ((1 - C1_Pct / 100) ^ n)) * 100 | 97.91% (85.56% @ 2 passes!) | | Residual Unpeened Area (%) | 100 - Achieved_Coverage_Cn_Pct | 2.09% (14.44% fatigue risk @ 2 passes!) | | Exact Exposure Passes for 98% | LN(1 - Target_Pct/100) / LN(1 - C1/100) | 4.04 passes | | Certified Integer Nozzle Passes | ROUNDUP(Exact_Passes_For_Target, 0) | 5 Passes (certifies >= 98% AMS 2430) | - **Formula (Poisson-Avrami Random Dimple Overlap & Certified Pass-Count Formula)**: `=LET(cp_s, B2 / 100, np_s, B3, tg_p, B4 / 100, ex_n, LN(1 - tg_p) / LN(1 - cp_s), IF(OR(B2 <= 5, B2 >= 95, np_s < 1, B4 < 80, B4 > 99.9), "Invalid Peening Input", ROUNDUP(ex_n, 0)))` - **Formula (Naive Two-Pass Linear-Addition Trap Check (Set Programmed Passes B3 = 2))**: `=IF(ISTEXT(E5), E5, ROUND((1 - ((1 - (B2 / 100)) ^ B3)) * 100, 2))` ### Shubnikov-de Haas (SdH) Onsager Frequency to 2DEG Carrier Density Formula - **URL**: https://sheets.arte-soft.com/en/learn/shubnikov-de-haas-onsager-frequency-2deg-carrier-density/ - **Summary**: Extract two-dimensional electron gas (2DEG) sheet carrier density n_2D = 0.2418 * g_s * g_v * B_F (× 10^11 cm^-2) directly from 1/B Shubnikov-de Haas oscillation frequency B_F (Tesla). *Table — Measuring quantum-well and graphene sheet density purely from 1/B magnetoresistance oscillations!:* | 2D Quantum System (g_s, g_v) | SdH Frequency B_F (Tesla) | Period Δ(1/B) (T^-1) | Sheet Density n_2D (× 10^11 cm^-2) | | --- | --- | --- | --- | | GaAs/AlGaAs 2DEG (gs = 2, gv = 1) | 8.50 T | 0.1176 T^-1 | 4.111 × 10^11 cm^-2 | | Monolayer Graphene (gs = 2, gv = 2) | 12.00 T | 0.0833 T^-1 | 11.606 × 10^11 cm^-2 | | Invalid B_F <= 0 or Degeneracy < 1 | Undefined | Error Guard | "Invalid SdH Parameters" | - **Formula (2DEG Sheet Carrier Density n_2D (in units of 10^11 cm^-2))**: `=IF(OR(B2 < 1, B3 < 1, B4 <= 0), "Invalid SdH Parameters", ROUND(0.2418 * B2 * B3 * B4, 3))` - **Formula (Inverse-Field Oscillation Period Δ(1/B) = 1 / B_F (Tesla^-1))**: `=IF(B4 <= 0, "Invalid SdH Parameters", ROUND(1 / B4, 4))` ### Shuffle Rows & Draw a Sample Without Replacement (SORTBY + TAKE) - **URL**: https://sheets.arte-soft.com/en/learn/shuffle-and-random-sample-rows-without-duplicates-sortby/ - **Summary**: Sort rows by frozen random keys and select K records without replacement. Validate sample size, retain unique record IDs, and distinguish repeated names from repeated records. - **Formula (Audit the source rows)**: `=IF(COUNTBLANK(A2:A6)>0,"Fill every entrant name",IF(COUNT(B2:C6)<>10,"Enter numeric keys and IDs",IF(OR(MIN(B2:B6)<0,MAX(B2:B6)>=1),"Keys must be in [0,1)",IF(OR(COUNTIF(C2:C6,C2)>1,COUNTIF(C2:C6,C3)>1,COUNTIF(C2:C6,C4)>1,COUNTIF(C2:C6,C5)>1,COUNTIF(C2:C6,C6)>1),"IDs must be unique",IF(OR(COUNTIF(B2:B6,B2)>1,COUNTIF(B2:B6,B3)>1,COUNTIF(B2:B6,B4)>1,COUNTIF(B2:B6,B5)>1,COUNTIF(B2:B6,B6)>1),"Tied keys: redraw and freeze all keys","OK")))))` - **Formula (Draw K rows from the frozen ordering)**: `=IF(F2<>"OK",F2,IF(F3<>"OK",F3,TEXTJOIN(", ",TRUE,TAKE(SORTBY(A2:A6,B2:B6,1),D2))))` - **Formula (Inspect the first record and the full ordering)**: `=IF(F2<>"OK",F2,INDEX(SORTBY(A2:A6,B2:B6,1),1))` ### Sieder-Tate Laminar Tube Nusselt Number With Wall-Viscosity Correction - **URL**: https://sheets.arte-soft.com/en/learn/sieder-tate-viscosity-corrected-laminar-and-turbulent-heat-transfer/ - **Summary**: Calculate the Sieder-Tate developing laminar tube Nusselt number Nu_D = 1.86 * (Re * Pr * (D / L))^(1/3) * (mu_b / mu_w)^0.14 to capture viscous lube-oil heating enhancement vs. cold-wall boundary thickening. *Table — Account for steep bulk-to-wall oil viscosity gradients inside shell-and-tube exchangers!:* | Heat Exchanger Duty (Re = 1200, Pr = 85, D = 25 mm, L = 3 m) | Viscosity Ratio mub / muw | Correction (mub/muw)^0.14 | Sieder-Tate NuD | | --- | --- | --- | --- | | Heating Viscous Oil (mub = 0.18, muw = 0.045) | 4.00 | 1.214 (+21.4% Boost) | 21.39 | | Cooling Viscous Oil (mub = 0.045, muw = 0.18) | 0.25 | 0.824 (-17.6% Penalty) | 14.51 | | Invalid Pipe Geometry or Viscosity <= 0 | Guarded Input Error | N/A | "Invalid Sieder-Tate Inputs" | - **Formula (Sieder-Tate Laminar Tube Nusselt Number Nu_D)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Sieder-Tate Inputs", ROUND(1.86 * ((B2 * B3 * (B4 / B5)) ^ (1 / 3)) * ((B6 / B7) ^ 0.14), 2))` - **Formula (Dimensionless Graetz Thermal-Entry Number Gz = Re * Pr * (D / L))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Sieder-Tate Inputs", ROUND(B2 * B3 * (B4 / B5), 1))` ### Sieverts' Law: Diatomic Gas Solubility (H2, N2, O2) in Molten Metals & Vacuum Degassing - **URL**: https://sheets.arte-soft.com/en/learn/sieverts-law-diatomic-gas-solubility-in-molten-metals/ - **Summary**: Calculate dissolved atomic hydrogen or nitrogen concentration [X] = K_S * SQRT(P_X2) in ppm for steelmaking, aluminum foundry degassing, and TIG/MIG welding, plus target vacuum degassing pressure. *Table — Why diatomic gases obey a SQUARE-ROOT pressure law instead of Henry's linear law!:* | Ladle / Weld Atmosphere (Fe at 1600 °C, KS = 24.5) | Partial Pressure P_H2 (atm) | Dissolved Hydrogen [H] (ppm) | Degassing Scaling | | --- | --- | --- | --- | | Humid Slag / Damp Flux | 0.04000 atm | 4.90 ppm (Hydrogen flake risk!) | Baseline melt pickup | | 4x Lower Partial Pressure | 0.01000 atm | 2.45 ppm (0.5x concentration!) | SQRT(1/4) = 1/2 dissolved gas | | RH Vacuum Degasser Target <= 2.0 ppm | P_max = (2 / 24.5)^2 | 0.00666 atm (6.75 mbar) | Quadratic vacuum requirement | - **Formula (Dissolved Atomic Gas Concentration [X] = K_S * SQRT(P_X2) (ppm by Weight))**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid Sieverts Inputs", ROUND(B2 * SQRT(B3), 2))` - **Formula (Maximum Allowable Vacuum Partial Pressure P_max = ([X]_target / K_S)^2 (atm))**: `=IF(OR(B2 <= 0, B4 < 0), "Invalid Sieverts Inputs", ROUND((B4 / B2) ^ 2, 5))` ### SIGN function: classify variances into +1, 0, or -1 directional flags - **URL**: https://sheets.arte-soft.com/en/learn/sign-function-positive-zero-negative/ - **Summary**: Turn any numeric delta into -1, 0, or +1 with SIGN to map status labels via CHOOSE or count net gains vs declines. *Table — Replace nested IFs for three-way variance labels:* | Region (A) | Target (B) | Actual (C) | SIGN(C - B) | Label | | --- | --- | --- | --- | --- | | East | 200 | 225 | 1 | Above | | West | 180 | 180 | 0 | On Target | | South | 210 | 195 | -1 | Below | - **Formula (Map variance direction with CHOOSE(SIGN(...) + 2, ...))**: `=CHOOSE(SIGN(C2 - B2) + 2, "Below", "On Target", "Above")` - **Formula (Verify zero and negative transitions)**: `=SIGN(C4 - B4)` ### Silver-Meal Heuristic: Dynamic MRP Lot-Sizing Cost Per Period - **URL**: https://sheets.arte-soft.com/en/learn/silver-meal-heuristic-dynamic-lot-sizing-cost-per-period/ - **Summary**: Choose the next production lot with the Silver–Meal first-increase rule, compare unrounded average costs, and calculate its quantity in a four-period worksheet. *Table — Choose a lot for changing weekly demand:* | Coverage | Quantity | Holding cost | Average cost/period | | --- | --- | --- | --- | | 1 week | 80 | $0 | $300 | | 2 weeks | 180 | $150 | $225 | | 3 weeks | 240 | $330 | $210 | | 4 weeks | 420 | $1140 | $360 | - **Formula (Build the cost table)**: `=IF(E6<>"OK",E6,(E1+E2*SUMPRODUCT(TAKE(B2:B5,3),SEQUENCE(3,1,0,1)))/3)` - **Formula (Select the first increase automatically)**: `=IF(E6<>"OK",E6,IF(H3>H2,1,IF(H4>H3,2,IF(H5>H4,3,4))))` - **Formula (Calculate the selected quantity)**: `=IF(ISNUMBER(E8),SUM(TAKE(B2:B5,E8)),E8)` - **Formula (Experiment with a trial horizon)**: `=IF(E6<>"OK",E6,IF(NOT(ISNUMBER(E3)),"Check horizon",IF(OR(E3<1,E3>4,E3<>INT(E3)),"Check horizon",(E1+E2*SUMPRODUCT(TAKE(B2:B5,E3),SEQUENCE(E3,1,0,1)))/E3)))` ### Silverman-Andersen Neonatal Respiratory Distress Score (0–10 NICU Formula) - **URL**: https://sheets.arte-soft.com/en/learn/silverman-andersen-neonatal-respiratory-distress-score-formula/ - **Summary**: Calculate William Silverman and Dorothy Andersen’s 0–10 newborn work-of-breathing retraction score across Upper Chest Movement, Lower Intercostal Retractions, Xiphoid Retraction, Nasal Flaring, and Expiratory Grunting to guide NICU bubble CPAP vs. intubation. *Table — Opposite of the Apgar score: 0 means healthy effortless breathing and 10 means severe neonatal distress!:* | Silverman-Andersen Total (0 to 10) | Neonatal Work-of-Breathing Severity | NICU Respiratory Support Pathway | | --- | --- | --- | | 0 Points | No Respiratory Distress | Synchronized effortless breathing | | 1 to 3 Points | Mild Respiratory Distress | Close NICU / Transitional Nursery Monitoring | | 4 to 6 Points | Moderate Respiratory Distress | Initiate Nasal Bubble CPAP (5–6 cmH2O) + Blood Gas | | 7 to 10 Points | Severe / Impending Failure | High-Acuity Surfactant / Mechanical Ventilation | - **Formula (Total Silverman-Andersen Neonatal Retraction Score (0 to 10))**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 2), "Invalid Sign Grade (0-2)", SUM(B2:B6))` - **Formula (NICU CPAP & Respiratory Escalation Tier)**: `=IF(OR(MIN(B2:B6) < 0, MAX(B2:B6) > 2), "Invalid Sign Grade (0-2)", IF(SUM(B2:B6) >= 7, "Severe Distress (7-10): Impending Failure — Surfactant / Intubation", IF(SUM(B2:B6) >= 4, "Moderate Distress (4-6): Initiate Nasal CPAP", IF(SUM(B2:B6) >= 1, "Mild Distress (1-3): Close Monitoring / Low-Flow O2", "No Distress (Score 0): Effortless Synchronized Breathing"))))` ### Simon Two-Stage Phase II Futility Stopping and Expected Sample Size - **URL**: https://sheets.arte-soft.com/en/learn/simon-two-stage-phase-ii-futility-stopping-and-expected-sample-size/ - **Summary**: Evaluate Simon’s (1989) Optimal vs Minimax single-arm Phase II designs via Stage-1 early futility probability PET(p_0) and expected sample size EN(p_0) = n_1 + (1 - PET(p_0)) * n_2. *Table — Protect patients from ineffective oncology agents via Stage-1 futility stopping:* | Simon Design Benchmark (p_0 = 0.10) | Design Parameters (r_1 / n_1, N_max) | PET(p_0) & Expected EN(p_0) | | --- | --- | --- | | Simon Optimal (Minimizes EN(p_0)) | r_1 = 1, n_1 = 10, N_max = 29 (n_2 = 19) | PET = 0.7361; EN = 15.0141 | | Simon Minimax (Minimizes N_max) | r_1 = 1, n_1 = 15, N_max = 25 (n_2 = 10) | PET = 0.5490; EN = 19.5096 | | Active Drug Scenario (p_1 = 0.30) | Optimal r_1 = 1, n_1 = 10, N_max = 29 | PET = 0.1493; EN = 26.1631 | - **Formula (Exact Stage-1 Futility Stopping Probability PET(p) (for r_1 in {0, 1, 2}) Formula)**: `=LET(n_1, B2, r_1, B3, p_rt, B5, IF(OR(n_1 < 2, r_1 < 0, r_1 > 2, p_rt <= 0, p_rt >= 1), "Require 0 <= r1 <= 2 & 0 < p < 1", LET(q_rt, 1 - p_rt, pr_0, q_rt^n_1, pr_1, IF(r_1 >= 1, n_1 * p_rt * (q_rt^(n_1 - 1)), 0), pr_2, IF(r_1 >= 2, (n_1 * (n_1 - 1) / 2) * (p_rt^2) * (q_rt^(n_1 - 2)), 0), ROUND(pr_0 + pr_1 + pr_2, 4))))` - **Formula (Expected Total Enrollment EN(p) = n_1 + (1 - PET(p)) * (N_max - n_1) Formula)**: `=LET(n_1, B2, r_1, B3, n_mx, B4, p_rt, B5, IF(OR(n_1 < 2, n_mx <= n_1, r_1 < 0, r_1 > 2, p_rt <= 0, p_rt >= 1), "Invalid Two-Stage Input", LET(q_rt, 1 - p_rt, pet_p, (q_rt^n_1) + IF(r_1 >= 1, n_1 * p_rt * (q_rt^(n_1 - 1)), 0) + IF(r_1 >= 2, (n_1 * (n_1 - 1) / 2) * (p_rt^2) * (q_rt^(n_1 - 2)), 0), ROUND(n_1 + (1 - pet_p) * (n_mx - n_1), 4))))` ### Simple interest formula: I = P * r * t for days, months, and years - **URL**: https://sheets.arte-soft.com/en/learn/simple-interest-principal-rate-time/ - **Summary**: Calculate non-compounding interest and maturity payoff on promissory notes under Actual/365 and commercial Actual/360 conventions. *Table — Align the time fraction t with the annual interest rate r:* | Principal (A) | AnnualRate (B) | DaysHeld (C) | Actual/365 Interest | Actual/360 Interest | | --- | --- | --- | --- | --- | | 15000 | 0.08 | 90 | 295.89 | 300.00 | | 15000 | 0.08 | 365 | 1200.00 | 1216.67 | - **Formula (Simple interest and total maturity value formulas)**: `=ROUND(A2 * B2 * (C2 / 365), 2)` - **Formula (Actual/360 commercial convention and maturity total)**: `=ROUND(A2 * B2 * (C2 / 360), 2)` ### Simply supported beam deflection (5wL^4/384EI), bending moment & L/360 check - **URL**: https://sheets.arte-soft.com/en/learn/simply-supported-beam-deflection-and-bending-moment/ - **Summary**: Explore ideal simply supported beam deflection and bending moment, with an illustrative span/360 comparison rather than a structural approval. *Table — Keep SI units consistent in N and mm so beam deflection never misses by 1,000x!:* | Structural Check (L=6 m, w=12 kN/m, E=200 GPa, I=8,100 cm^4) | Formula (in N & mm) | Result | | --- | --- | --- | | Uniform Load Deflection (mm) | 5 * 12 * 6000^4 / (384 * 200000 * 8.1e7) | 12.50 mm | | Max Bending Moment M_max (kN·m) | w * L^2 / 8 = 12 * 6^2 / 8 | 54.0 kN·m | | Illustrative span/360 comparison | 6000 mm / 360 = 16.67 mm | Within illustrative limit (12.50 <= 16.67) | | Center Point Load P = 36 kN Deflection | (36000 * 6000^3) / (48 * E * I) | 10.00 mm | - **Formula (Midspan deflection (mm) under uniform distributed load w)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<=0,D2<=0),"Invalid inputs",LET(L, A2 * 1000, w, B2, E, C2 * 1000, I, D2 * 10000, ROUND((5 * w * (L ^ 4)) / (384 * E * I), 2)))` - **Formula (Compare uniform-load deflection with an illustrative span/360 limit)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<=0,D2<=0),"Invalid inputs",LET(L, A2 * 1000, EI, (C2 * 1000) * (D2 * 10000), d, (5 * B2 * (L ^ 4)) / (384 * EI), IF(d <= L / 360, "Within illustrative limit", "Exceeds illustrative limit")))` - **Formula (Separate central point-load deflection)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<=0,D2<=0,NOT(ISNUMBER(E2)),E2<0),"Invalid inputs",LET(L, A2 * 1000, P, E2 * 1000, EI, (C2 * 1000) * (D2 * 10000), ROUND((P * (L ^ 3)) / (48 * EI), 2)))` ### Simpson's Diversity Index (1 - D) & Lincoln-Petersen Mark-Recapture formulas - **URL**: https://sheets.arte-soft.com/en/learn/simpson-diversity-index-and-mark-recapture-lincoln-petersen/ - **Summary**: Calculate finite-sample diversity and a Chapman capture–recapture estimate under explicit sampling assumptions. *Table — Diversity of a recorded sample and a separate population estimate:* | Species / Survey Input | Count / Value | Formula Term | Ecological Output | | --- | --- | --- | --- | | 4 Species Counts (B2:B5) | 40, 30, 20, 10 (N = 100) | n*(n-1): 1560 + 870 + 380 + 90 = 2,900 | N*(N-1) = 9,900 pairs | | Simpson Diversity 1 - D | 1 - 2,900 / 9,900 | 7,000 / 9,900 = 70 / 99 | 0.7071 (70.71% diversity) | | Mark-Recapture (M, C, R) | E2=49, E3=39, E4=9 | ((49+1) * (39+1)) / (9+1) - 1 | N_hat = 199 total population! | | Monoculture Edge Case | Counts [100, 0, 0, 0] | 1 - 9,900 / 9,900 | 0.0000 diversity | - **Formula (Finite-sample Simpson's Index of Diversity 1 - D)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(MIN(B2:B5)<0,SUM(B2:B5)<2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5)),"Invalid inputs",LET(totN, SUM(B2:B5), ROUND(1 - SUM(C2:C5) / (totN * (totN - 1)), 4))))` - **Formula (Chapman-adjusted capture–recapture estimate)**: `=IF(COUNT(E2:E4)<>3,"Invalid inputs",IF(OR(E2<1,E3<1,E4<0,E4>MIN(E2:E3),E2<>INT(E2),E3<>INT(E3),E4<>INT(E4)),"Invalid inputs",IF(E4=0,"No recaptures",ROUND((E2+1)*(E3+1)/(E4+1)-1,2))))` ### SIN function: calculate vertical rise from sloped length and angle - **URL**: https://sheets.arte-soft.com/en/learn/sin-function-vertical-rise/ - **Summary**: Convert degree angles with RADIANS before calling SIN to compute ramp elevation gain and wave amplitudes. *Table — Always convert degrees with RADIANS() first:* | BeltLengthM (A) | AngleDeg (B) | SIN(RADIANS(B)) | VerticalRiseM | | --- | --- | --- | --- | | 20 | 30 | 0.5 | 10 | | 20 | 90 | 1.0 | 20 | - **Formula (Compute vertical lift from belt length and incline angle)**: `=ROUND(A2 * SIN(RADIANS(B2)), 4)` - **Formula (Expose the raw-degrees mistake)**: `=ROUND(SIN(30), 3)` ### Single-Screw Extruder Drag Flow & Die Operating Point Formula - **URL**: https://sheets.arte-soft.com/en/learn/single-screw-extruder-drag-flow-back-pressure-flow-and-operating-point-formula/ - **Summary**: Calculate Open-Discharge Drag Flow Q_d (L/hr), Coupled Screw-Die Operating Throughput Q_op (L/hr), Back-Pressure Throttle Loss (%), and Die Head Melt Pressure Delta_P (MPa). *Table — Intersecting screw and die lines cancels Newtonian viscosity mu out of Q_op—yet head pressure scales directly with mu!:* | Extruder-Die Operating KPI (alpha=25, beta=0.08, Kdie=0.12, 80 RPM, 400 Pa·s) | Formula | Verified Output | | --- | --- | --- | | Open-End Drag Flow Qd (L/hr) | (alpha_cm3_rev * RPM * 60) / 1000 | 120.00 L/hr | | Operating Throughput Qop (L/hr) | Qd_L_hr * (K_die / (beta + K_die)) | 72.00 L/hr (40.00 @ Kdie = 0.04) | | Back-Pressure Loss Ratio (%) | (beta / (beta + K_die)) * 100 | 40.00% (66.67% @ Kdie = 0.04) | | Die Head Pressure dP (MPa) | (alpha*(RPM/60)*mu) / (10000*(beta+Kdie)) | 6.67 MPa (11.11 MPa @ Kdie = 0.04) | - **Formula (Coupled Screw-Die Extrusion Operating Throughput & Head Pressure Formula)**: `=LET(al_d, B2, bt_s, B3, kd_c, B4, rp_m, B5, mu_p, B6, IF(OR(al_d <= 0, bt_s <= 0, kd_c <= 0, rp_m <= 0, mu_p <= 0), "Invalid Extruder Input", LET(qd_l, (al_d * rp_m * 60) / 1000, ROUND(qd_l * (kd_c / (bt_s + kd_c)), 2))))` - **Formula (Restricted Thin-Slit Sheet Die Back-Pressure Surge Check (Set Die Conductance K_die = 0.04 cm^4))**: `=IF(ISTEXT(E3), E3, ROUND((B2 * (B5 / 60) * B6) / (10000 * (B3 + B4)), 2))` ### Sinking Fund Payment (PMT) & Growing Perpetuity Valuation CF1 / (r - g) formulas - **URL**: https://sheets.arte-soft.com/en/learn/sinking-fund-payment-and-growing-perpetuity-valuation/ - **Summary**: Calculate periodic sinking-fund savings needed to retire a future bond/capex obligation via PMT(r, n, 0, -FV) and value infinite cash flows via CF1 / (r - g). *Table — Two constant-rate cash-flow models:* | Treasury Model | Inputs | Formula | Model result | | --- | --- | --- | --- | | Sinking Fund Target FV | B2 = $500,000 | B3 = 6% rate, B4 = 10 yrs | PMT(6%, 10, 0, -500000) | | Annual sinking deposit | $37,933.98 rounded | 10 rounded deposits = $379,339.80 | Final balance may differ slightly from $500,000 | | Growing Perpetuity | CF1 B5 = $60k, r B6 = 10%, g B7 = 4% | 60,000 / (0.10 - 0.04) | $1,000,000 Present Value | | Constant Perpetuity (g = 0) | CF1 = $60k, r = 10% | 60,000 / 0.10 | $600,000 Present Value | - **Formula (Annual Sinking Fund deposit formula (PMT))**: `=IF(COUNT(B2:B4)<>3,"Invalid inputs",IF(OR(B2<0,B3<=-1,B4<1,B4<>INT(B4)),"Invalid inputs",ROUND(PMT(B3,B4,0,-B2),2)))` - **Formula (Guarded Growing Perpetuity Present Value CF1 / (r - g))**: `=IF(COUNT(B5:B7)<>3,"Invalid inputs",IF(OR(B5<0,B6<=-1,B7<=-1),"Invalid inputs",IF(B6<=B7,"Invalid (r <= g)",ROUND(B5/(B6-B7),2))))` ### Sips (Langmuir-Freundlich) & Redlich-Peterson 3-Parameter Adsorption Isotherm Formula - **URL**: https://sheets.arte-soft.com/en/learn/sips-and-redlich-peterson-three-parameter-adsorption-isotherm/ - **Summary**: Bridge heterogeneous Freundlich low-concentration behavior and finite Langmuir monolayer saturation using Robert Sips’s (1948) isotherm q_e = q_max*(K_S*C_e)^n / (1 + (K_S*C_e)^n) and the Redlich-Peterson (1959) hybrid equation. *Table — Why 3-parameter Sips and Redlich-Peterson isotherms fix Freundlich’s infinite-loading flaw!:* | 3-Parameter Hybrid Isotherm | Exact Algebraic Equation | Limiting Physical Regimes | | --- | --- | --- | | Sips (Langmuir-Freundlich, 1948) | q_max * (K_S * C_e)^n_S / (1 + (K_S * C_e)^n_S) | Low C_e -> Freundlich; High C_e -> q_max; n_S=1 -> Langmuir | | Redlich-Peterson (1959) | (K_RP * C_e) / (1 + a_RP * C_e^g) | Low C_e -> Henry’s Law; g=1 -> Langmuir; g=0 -> Linear | - **Formula (Sips (Langmuir-Freundlich) Equilibrium Uptake q_e (mg/g))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0), "Invalid Sips Isotherm Inputs", IF(B5 = 0, 0, ROUND(B2 * ((B3 * B5) ^ B4) / (1 + ((B3 * B5) ^ B4)), 4)))` - **Formula (Redlich-Peterson Hybrid Uptake q_e,RP = (K_RP * C_e) / (1 + a_RP * C_e^g))**: `=IF(OR(B5 < 0, B6 <= 0, B7 < 0, B8 <= 0, B8 > 1), "Invalid Redlich-Peterson Inputs", IF(B5 = 0, 0, ROUND((B6 * B5) / (1 + B7 * (B5 ^ B8)), 4)))` ### Siri (1956) & Brozek (1963) Body Density to Body Fat % Formula: Hydrostatic & BodPod - **URL**: https://sheets.arte-soft.com/en/learn/siri-and-brozek-hydrostatic-body-density-to-percent-body-fat/ - **Summary**: Convert two-compartment whole-body density D_b (g/cm^3) from hydrostatic underwater weighing, air-displacement plethysmography (BodPod), or skinfold equations into Percent Body Fat (%BF) and Fat-Free Mass using Siri (495/D_b - 450) and Brozek (457/D_b - 414.2). *Table — How two-compartment densitometry separates 0.900 g/cm^3 lipid from ~1.100 g/cm^3 fat-free mass!:* | Whole-Body Density D_b (g/cm^3) | Siri (1956) %BF = 495/D_b - 450 | Brozek (1963) %BF = 457/D_b - 414.2 | Fat-Free Mass on 80.0 kg Adult (Siri) | | --- | --- | --- | --- | | D_b = 1.075 g/cm^3 (Athletic) | 10.47% | 10.92% | 71.63 kg FFM | | D_b = 1.055 g/cm^3 (Fitness) | 19.19% | 18.98% | 64.64 kg FFM | | D_b = 1.030 g/cm^3 (Elevated Adiposity) | 30.58% | 29.49% | 55.53 kg FFM | - **Formula (Siri (1956) Two-Compartment Percent Body Fat (%BF))**: `=IF(OR(B2 < 0.92, B2 > 1.11), "Unphysiological Body Density D_b (Requires 0.92–1.11 g/cm^3)", ROUND((495 / B2) - 450, 2))` - **Formula (Brozek (1963) Percent Body Fat & Siri Fat-Free Mass (kg))**: `=IF(OR(B2 < 0.92, B2 > 1.11), "Unphysiological Body Density D_b (Requires 0.92–1.11 g/cm^3)", ROUND((457 / B2) - 414.2, 2))` ### SIRS (Systemic Inflammatory Response Syndrome) 4-Criterion Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/sirs-systemic-inflammatory-response-syndrome-criteria-formula/ - **Summary**: Evaluate Bone’s classic 0–4 SIRS criteria—Temperature (> 38.0°C or < 36.0°C), Heart Rate (> 90 bpm), Tachypnea/Hyperventilation (RR > 20/min or PaCO2 < 32 mmHg), and Leukocyte/Band abnormality (WBC > 12, < 4, or Bands > 10%)—with >= 2 SIRS-Positive screening. *Table — Capture both hyperthermic and hypothermic/leukopenic inflammatory responses accurately!:* | Bone (1992) SIRS Criterion | Two-Tailed / Composite Cutoff (+1 Point Each) | Clinical Alert Threshold | | --- | --- | --- | | 1. Core Temperature | > 38.0 °C OR < 36.0 °C | Hyperthermia or Hypothermia | | 2. Heart Rate | > 90 beats/min | Sinus Tachycardia | | 3. Respiratory Drive | RR > 20 /min OR PaCO2 < 32 mmHg | Tachypnea or Hyperventilation | | 4. Leukocytes / Bands | WBC > 12.0 OR < 4.0 (x10^9/L) OR Bands > 10% | >= 2 of 4 -> SIRS Positive! | - **Formula (Total SIRS Criteria Score (0 to 4 Points))**: `=IF(OR(B2 <= 20, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0, B7 < 0), "Invalid Vital/Lab Inputs", IF(OR(B2 > 38, B2 < 36), 1, 0) + IF(B3 > 90, 1, 0) + IF(OR(B4 > 20, B5 < 32), 1, 0) + IF(OR(B6 > 12, B6 < 4, B7 > 10), 1, 0))` - **Formula (SIRS Positive (>= 2 Criteria) Screening Classification)**: `=IF(OR(B2 <= 20, B3 <= 0, B4 <= 0, B5 <= 0, B6 < 0, B7 < 0), "Invalid Vital/Lab Inputs", IF((IF(OR(B2 > 38, B2 < 36), 1, 0) + IF(B3 > 90, 1, 0) + IF(OR(B4 > 20, B5 < 32), 1, 0) + IF(OR(B6 > 12, B6 < 4, B7 > 10), 1, 0)) >= 2, "SIRS Positive (>= 2 Criteria): Screen for Sepsis / Pancreatitis", "SIRS Negative (0-1 Criteria)"))` ### Six-Item Screener (SIS) Verbal Cognitive & Delirium/Dementia Score - **URL**: https://sheets.arte-soft.com/en/learn/six-item-screener-sis-rapid-cognitive-impairment-recall-orientation/ - **Summary**: Calculate Christopher Callahan’s 1-minute verbal Six-Item Screener (0–6: Year, Month, Day of Week + 3-Item Delayed Recall) requiring zero pen/paper for telephone, ambulance, and ED cognitive screening. *Table — Why ED physicians use the verbal Six-Item Screener when patients cannot draw a clock!:* | Six-Item Screener Total (0–6) | Errors Made (6 - Score) | Clinical Cognitive Screening Tier | | --- | --- | --- | | 5 – 6 Correct (0–1 Error) | 0 or 1 Error | Normal Brief Cognitive Screen (>=5) | | 4 Correct (2 Errors) | 2 Errors (<=4 Cutoff) | Borderline / Mild Impairment Screen Positive (<=4) | | 0 – 3 Correct (3–6 Errors) | 3+ Errors (<=3 Cutoff) | High-Probability Cognitive Impairment / Dementia (<=3) | - **Formula (Total Six-Item Screener Score (Orientation 0–3 + Delayed Recall 0–3))**: `=IF(OR(B2 < 0, B2 > 3, B3 < 0, B3 > 3), "Invalid SIS Subscore (0-3)", B2 + B3)` - **Formula (Six-Item Screener Clinical Tier (<=3 High-Specificity, 4 Borderline, 5–6 Normal))**: `=IF(OR(B2 < 0, B2 > 3, B3 < 0, B3 > 3), "Invalid SIS Subscore (0-3)", IF(B2 + B3 <= 3, "Positive Screen: High-Likelihood Impairment (<=3)", IF(B2 + B3 = 4, "Borderline Positive Screen (Score = 4; <=4 Cutoff)", "Negative Screen: Intact Brief Recall & Orientation (5-6)")))` ### Skellam Goal Difference & Dixon-Coles Tau Formula - **URL**: https://sheets.arte-soft.com/en/learn/skellam-goal-difference-mean-variance-and-dixon-coles-tau-formula/ - **Summary**: Calculate Skellam Poisson Goal-Difference Mean (lambda_H - lambda_A) and Variance (lambda_H + lambda_A), plus Dixon & Coles (1997) low-scoring correlation adjustment for 0-0 and 1-1 soccer draws. *Table — Correct independent Poisson under-prediction of 0-0 and 1-1 draws while preserving unit probability!:* | Soccer Scoreline Metric (lambda_H=1.50, lambda_A=1.00, rho=-0.12) | Formula | Verified Output | | --- | --- | --- | | Skellam Goal-Diff Variance Var(X - Y) | lambda_H + lambda_A | 2.5000 (Mean = +0.5000) | | Independent Poisson P(0 - 0) | EXP(-(lambda_H + lambda_A)) | 0.0821 (8.21%) | | Dixon-Coles Adjusted P_DC(0 - 0) | EXP(-(lH + lA)) * (1 - lH * lA * rho) | 0.0969 (9.69%, +18.0% Lift) | | Dixon-Coles Adjusted P_DC(1 - 1) | lH * lA * EXP(-(lH + lA)) * (1 - rho) | 0.1379 (13.79%, +12.0% Lift) | - **Formula (Feasibility-Guarded Dixon-Coles P(0-0) & P(1-1) Formula)**: `=LET(lm_h, B2, lm_a, B3, rh_d, B4, IF(OR(lm_h <= 0, lm_a <= 0, 1 - lm_h * lm_a * rh_d < 0, 1 + lm_h * rh_d < 0, 1 + lm_a * rh_d < 0, 1 - rh_d < 0), "Invalid Dixon-Coles Bound", ROUND(EXP(-(lm_h + lm_a)) * (1 - lm_h * lm_a * rh_d), 4)))` - **Formula (Dixon-Coles P(1-1) & Zero-Dependence Independence Check)**: `=IF(ISTEXT(E4), E4, ROUND(B2 * B3 * EXP(-(B2 + B3)) * (1 - B4), 4))` ### Skempton’s Pore-Pressure Parameters B & A Formula: Undrained Triaxial Soil Saturation & Shear - **URL**: https://sheets.arte-soft.com/en/learn/skempton-pore-pressure-coefficients-b-and-a-triaxial-soil-formula/ - **Summary**: Verify triaxial specimen saturation (B >= 0.95) and diagnose contractive vs. dilative undrained shear behavior using Alec W. Skempton’s 1954 equation delta_u = B * [delta_sigma3 + A * (delta_sigma1 - delta_sigma3)]. *Table — How Alec Skempton’s 1954 B-check and A-parameter govern ASTM D4767 CU triaxial soil testing!:* | Triaxial Test Response (d_sigma3 = 50 kPa, d_u_iso = 48.5 kPa) | Skempton Saturation B | Skempton Shear Parameter A | Geotechnical Clay State | | --- | --- | --- | --- | | d_sigma_d = 120 kPa, d_u_total = 82 kPa | 0.9700 (Saturated >= 0.95) | +0.2878 | Lightly Overconsolidated Clay | | d_sigma_d = 120 kPa, d_u_total = 115 kPa | 0.9700 | +0.5713 | Normally Consolidated Contractive Clay | | Invalid Isotropic Cell Increment <= 0 | Division by Zero | "Invalid Triaxial Stress Increments" | Positive Stress Guard | - **Formula (Skempton Isotropic B-Value = delta_u_isotropic / delta_sigma_3)**: `=IF(OR(B2 <= 0, B3 <= 0, B2 > B3, B5 <= 0), "Invalid Triaxial Stress Increments", ROUND(B2 / B3, 4))` - **Formula (Skempton Deviatoric Shear Parameter A = (delta_u_total - delta_u_iso) / (B * delta_sigma_d))**: `=IF(OR(B2 <= 0, B3 <= 0, B2 > B3, B5 <= 0), "Invalid Triaxial Stress Increments", ROUND((B4 - B2) / ((B2 / B3) * B5), 4))` ### Slaughter Pediatric Skinfold Body Fat % Calculator: Triceps + Subscapular (Ages 8–18) - **URL**: https://sheets.arte-soft.com/en/learn/slaughter-pediatric-triceps-subscapular-skinfold-body-fat-formula/ - **Summary**: Estimate child and adolescent Percent Body Fat (%BF) from Triceps + Subscapular skinfolds S_2 (mm) using Mary H. Slaughter et al.’s (1988, Human Biology) multicomponent-validated quadratic (S_2 <= 35 mm) and linear (S_2 > 35 mm) youth equations. *Table — Why adult Siri densitometry overestimates pediatric body fat — and how Slaughter (1988) solved it!:* | Youth Cohort & Skinfold Sum S_2 = Triceps + Subscapular | Slaughter (1988) Regime | Evaluated Body Fat (%) | | --- | --- | --- | | Pubescent Boy (Triceps 10 + Subscap 8 = 18 mm) | Quadratic <= 35 mm (-3.4 intercept) | 15.79% BF | | Girl (Triceps 12 + Subscap 10 = 22 mm) | Quadratic <= 35 mm (-2.5 intercept) | 20.47% BF | | Boy with Elevated Folds (24 + 20 = 44 mm > 35) | Linear > 35 mm (0.783 * S_2 + 1.6) | 36.05% BF | | Girl with Elevated Folds (24 + 20 = 44 mm > 35) | Linear > 35 mm (0.546 * S_2 + 9.7) | 33.72% BF | - **Formula (Slaughter (1988) Pediatric Triceps + Subscapular %BF (Quadratic <= 35 mm / Linear > 35 mm))**: `=IF(OR(B2 <= 1, B3 <= 1, B2 + B3 > 130, AND(B4 <> "M", B4 <> "F")), "Invalid Triceps/Subscapular Skinfolds (mm) or Sex (M/F)", ROUND(IF(B4 = "M", IF(B2 + B3 <= 35, 1.21 * (B2 + B3) - 0.008 * ((B2 + B3) ^ 2) - 3.4, 0.783 * (B2 + B3) + 1.6), IF(B2 + B3 <= 35, 1.33 * (B2 + B3) - 0.013 * ((B2 + B3) ^ 2) - 2.5, 0.546 * (B2 + B3) + 9.7)), 2))` - **Formula (Two-Site Pediatric Skinfold Sum S_2 (mm) & Regime Indicator)**: `=IF(OR(B2 <= 1, B3 <= 1, B2 + B3 > 130), "Invalid Skinfolds", IF(B2 + B3 <= 35, "S_2 <= 35 mm: Slaughter Quadratic Regime", "S_2 > 35 mm: Slaughter Linear High-Fold Regime"))` ### SLEDAI-2K (Systemic Lupus Erythematosus Disease Activity Index 2000) - **URL**: https://sheets.arte-soft.com/en/learn/sledai-2k-systemic-lupus-erythematosus-disease-activity-index/ - **Summary**: Compute weighted SLEDAI-2K lupus disease activity via SUMPRODUCT across 8-, 4-, 2-, and 1-point neurovascular, renal/articular, mucocutaneous/serologic, and constitutional descriptors. *Table — Why SLEDAI-2K scores persistent proteinuria, rash, and alopecia—not just brand-new onset!:* | SLEDAI-2K Weighted Total | EULAR / Gladman Activity Band | Clinical Trial Significance | | --- | --- | --- | | 0 Points | Clinical & Serologic Remission (0) | DORIS / LLDAS Remission Target | | 1 – 5 Points | Mild Lupus Activity (1–5) | LLDAS Attainment if SLEDAI-2K <= 4 | | 6 – 11 Points (e.g., 4+2+2+2+1 = 11) | Moderate Lupus Activity (6–11) | Immunosuppressive Escalation Review | | >= 12 Points (e.g., +8 Vasculitis -> 19) | Severe Lupus Activity (SLEDAI-2K >= 12) | Major Organ Flare (Increase >= 4 = Flare) | - **Formula (SLEDAI-2K Weighted Total Activity Score)**: `=IF(OR(MIN(C2:C7) < 0, MAX(C2:C7) > 1), "Presence Flags Must Be 0 or 1", SUMPRODUCT(B2:B7, C2:C7))` - **Formula (SLEDAI-2K Lupus Disease Activity Tier)**: `=IF(OR(MIN(C2:C7) < 0, MAX(C2:C7) > 1), "Presence Flags Must Be 0 or 1", IF(SUMPRODUCT(B2:B7, C2:C7) = 0, "Clinical & Serologic Remission (0)", IF(SUMPRODUCT(B2:B7, C2:C7) <= 5, "Mild Lupus Activity (1–5)", IF(SUMPRODUCT(B2:B7, C2:C7) <= 11, "Moderate Lupus Activity (6–11)", "Severe Lupus Activity (SLEDAI-2K >= 12)"))))` ### 2012 SLICC Lupus Classification Criteria: Dual-Pathway SLE Decision Formula - **URL**: https://sheets.arte-soft.com/en/learn/slicc-2012-systemic-lupus-erythematosus-clinical-immunologic-rule/ - **Summary**: Evaluate Michelle Petri’s 2012 SLICC Systemic Lupus Erythematosus classification rule: (>= 4 of 17 criteria with >= 1 Clinical AND >= 1 Immunologic) OR Biopsy-Proven Lupus Nephritis + ANA/anti-dsDNA. *Table — Why 2012 SLICC fixed two major 1997 ACR blind spots: isolated serology without clinical disease, and biopsy-proven lupus nephritis!:* | Patient SLICC Profile | Total Criteria (Clin + Imm) | Biopsy LN + ANA/dsDNA | 2012 SLICC Classification | | --- | --- | --- | --- | | 3 Clinical + 2 Immunologic, No Biopsy LN | 5 Criteria (3 + 2) | No | "Classified as SLE (2012 SLICC)" | | 1 Clinical (Renal) + 1 Imm (ANA), Biopsy LN = 1 | 2 Criteria | Yes (Pathway 2!) | "Classified as SLE (Biopsy Nephritis Pathway)" | | 4 Clinical + 0 Immunologic, No Biopsy LN | 4 Criteria (Missing Imm!) | No | "Not Classified (Fails Immunologic/Count Rule)" | - **Formula (2012 SLICC Two-Pathway SLE Classification Decision Formula)**: `=IF(OR(B2 < 0, B2 > 11, B3 < 0, B3 > 6, NOT(OR(B4 = 0, B4 = 1)), NOT(OR(B5 = 0, B5 = 1))), "Invalid SLICC Counts", IF(AND(B4 = 1, B5 = 1), "Classified as SLE (Biopsy Nephritis Pathway)", IF(AND(B2 + B3 >= 4, B2 >= 1, B3 >= 1), "Classified as SLE (2012 SLICC)", "Not Classified (Fails Immunologic/Count Rule)")))` - **Formula (Total Cumulative 2012 SLICC Criteria Count (0 to 17))**: `=IF(OR(B2 < 0, B2 > 11, B3 < 0, B3 > 6), "Invalid SLICC Counts", B2 + B3)` ### SLN function: calculate annual straight-line depreciation after salvage value - **URL**: https://sheets.arte-soft.com/en/learn/sln-function-straight-line-depreciation/ - **Summary**: Spread fixed-asset cost minus salvage value evenly across useful life periods with SLN. *Table — Depreciate only the net depreciable base (cost minus salvage):* | AssetField (A) | Value (B) | | --- | --- | | Purchase Cost | 42000 | | Salvage Value | 6000 | | Useful Life (Years) | 6 | - **Formula (Annual vs monthly straight-line expense)**: `=SLN(B1, B2, B3)` - **Formula (Zero useful life returns #DIV/0!)**: `=SLN(B1, B2, 0)` ### Sloan Accrual Anomaly & Cash-ROA Persistence Formula - **URL**: https://sheets.arte-soft.com/en/learn/sloan-operating-accrual-anomaly-cash-vs-accrual-roa-persistence-formula/ - **Summary**: Decompose Return on Assets into Cash-Flow ROA (CFO / Avg_Assets) and Operating Accrual Ratio ((NI - CFO) / Avg_Assets) to forecast next-year ROA under Richard Sloan’s (1996) differential persistence model. *Table — Why two firms with 12% ROA diverge sharply when one relies on working-capital accruals!:* | Sloan (1996) Earnings Quality Metric (NI=120, CFO=70, Assets=1,000) | Formula | Verified Output | | --- | --- | --- | | Headline Return on Assets (ROA_t) | Net_Income / Avg_Assets | 0.1200 (12.00%) | | Operating Accrual Ratio (Sloan Bloat) | (Net_Income - CFO) / Avg_Assets | +0.0500 (+5.00% Accruals) | | Sloan Forecast Next-Year ROA_{t+1} | alpha_0 + gamma_cash*Cash_ROA + gamma_acc*Acc_ROA | 0.1045 (10.45%) | | Cash-Rich Peer Comparison (CFO = 150) | Accrual_ROA = -0.0300 | 0.1165 (+120 bps Higher) | - **Formula (Sloan Operating Accrual Ratio & Differential Persistence Forecast Formula)**: `=LET(ni_yr, B2, cf_op, B3, as_av, B4, al_in, B5, gm_cs, B6, gm_ac, B7, IF(OR(as_av <= 0, gm_ac < 0, gm_cs <= gm_ac, gm_cs > 1), "Invalid Sloan Input", LET(ro_cs, cf_op / as_av, ro_ac, (ni_yr - cf_op) / as_av, ROUND(al_in + gm_cs * ro_cs + gm_ac * ro_ac, 4))))` - **Formula (Earnings Quality Signal Classification Formula)**: `=IF(ISTEXT(E4), E4, IF(E3 >= 0.05, "High Accrual Bloat (Mean-Reversion Risk)", IF(E3 < 0, "High Cash Conversion Quality (CFO > NI)", "Moderate Working-Capital Accruals")))` ### SLOPE function: estimate variable cost per unit or trend rate of change - **URL**: https://sheets.arte-soft.com/en/learn/slope-function-linear-rate-of-change/ - **Summary**: Calculate ordinary least-squares linear slope (change in Y per unit of X) using SLOPE—without reversing the Y and X arguments. *Table — Put known_y's FIRST and known_x's SECOND:* | UnitsProduced (A) | TotalCost (B) | | --- | --- | | 10 | 650 | | 20 | 800 | | 30 | 950 | | 40 | 1100 | - **Formula (Extract marginal cost per unit)**: `=SLOPE(B2:B5, A2:A5)` - **Formula (Zero X variance returns #DIV/0!)**: `=SLOPE(B2:B5, {10;10;10;10})` ### Slopegraph & Bump Chart Formula: Tie-Safe Ordinal Rank & Rank-Jump Delta - **URL**: https://sheets.arte-soft.com/en/learn/slopegraph-and-bump-chart-rank-shift-trajectory-formula/ - **Summary**: Stage multi-period Bump Charts and Tufte Slopegraphs by computing tie-broken descending ranks RANK + COUNTIF_prior - 1 and signed rank-climb deltas Rank_Prior - Rank_Current. *Table — Track competitive leaderboard overtakes cleanly with Bump Chart rank deltas!:* | Brand Row | Prior Rev ($k) -> Rank | Current Rev ($k) -> Rank | Places Climbed (Prior - Curr) | | --- | --- | --- | --- | | Brand A (Row 2) | 420 -> #4 | 540 -> #3 | +1 place climbed | | Brand B (Row 3) | 580 -> #1 | 560 -> #2 | -1 place slipped | | Brand E (Row 6) | 460 -> #3 | 610 -> #1 | +2 places climbed (New #1) | - **Formula (Signed Leaderboard Places Climbed (Prior Rank Minus Current Rank))**: `=RANK(B6, B2:B6) - RANK(C6, C2:C6)` - **Formula (Slopegraph Endpoint Label String ("Brand — #Rank ($Valuek)"))**: `=A6 & " (#" & RANK(C6, C2:C6) & ": $" & C6 & "k)"` ### Sludge Centrifuge Solids Capture % & Cake Tonnage Formula - **URL**: https://sheets.arte-soft.com/en/learn/sludge-dewatering-centrifuge-cake-solids-recovery-capture-and-filtrate-formula/ - **Summary**: Calculate Decanter Centrifuge / Belt Press Solids Capture Recovery (%) from Lab %TS Samples, Daily Dry Solids Captured (t/d), Hauled Wet Cake Tonnage (t/d), and Volume Reduction (%). *Table — Compute exact Solids Capture % from 3 grab samples—without needing flowmeters on cake conveyors!:* | Centrifuge Dewatering KPI (200 t/d Wet Feed, Cf=3.0%, Ck=25.0%, Cc=0.15%) | Formula | Verified Output | | --- | --- | --- | | Solids Capture Recovery (%) | ((Ck * (Cf - Cc)) / (Cf * (Ck - Cc))) * 100 | 95.57% (86.56% @ Cc = 0.45%) | | Captured Dry Biosolids (t/d) | Wet_Feed * (Cf / 100) * (Capture_Pct / 100) | 5.73 t/d | | Hauled Wet Cake Mass (t/d) | Captured_Dry_t_d / (Ck / 100) | 22.94 t/d (20.77 @ Cc = 0.45%) | | Wet Haulage Mass Reduction (%) | ((Wet_Feed - Wet_Cake) / Wet_Feed) * 100 | 88.53% | - **Formula (Three-Concentration Solids Capture Recovery Formula)**: `=LET(wf_t, B2, cf_p, B3, ck_p, B4, cc_p, B5, IF(OR(wf_t <= 0, cc_p < 0, cf_p <= cc_p, ck_p <= cf_p, ck_p > 60), "Invalid Dewatering Input", ROUND(((ck_p * (cf_p - cc_p)) / (cf_p * (ck_p - cc_p))) * 100, 2)))` - **Formula (Polymer Under-Dose Dirty Centrate Check (Set Centrate Solids C_c = 0.45% TS))**: `=IF(ISTEXT(E2), E2, LET(cp_f, (B4 * (B3 - B5)) / (B3 * (B4 - B5)), ck_w, (B2 * (B3 / 100) * cp_f) / (B4 / 100), ROUND(((B2 - ck_w) / B2) * 100, 2)))` ### Sludge Volume Index (SVI) & Return-Sludge RAS Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/sludge-volume-index-svi-activated-sludge-settling-and-ras-recycle-formula/ - **Summary**: Calculate Mohlman Sludge Volume Index SVI (mL/g), Theoretical Maximum Return-Sludge Concentration X_R (mg/L), Minimum RAS Recycle Ratio Q_r/Q, and Filamentous Bulking Status. *Table — Multiply 30-minute settleometer mL/L by 1,000 before dividing by MLSS—and watch SVI > 150 bulking!:* | Activated-Sludge Settling KPI (SV30 = 200 mL/L, MLSS = 2,500 mg/L) | Formula | Verified Output | | --- | --- | --- | | Sludge Volume Index SVI (mL/g) | (SV30_mL_L * 1000) / MLSS_mg_L | 80.00 mL/g (200.00 Bulking) | | Max Underflow Solids X_R (mg/L) | 1000000 / SVI_mL_g | 12,500.00 mg/L (5,000.00 Bulking) | | Minimum RAS Ratio (Q_r / Q) | MLSS / (X_R_Max - MLSS) | 0.25 (1.00 @ SV30 = 500) | | Clarifier Bulking Diagnostic | IF(SVI > 150, "BULKING: >150", "GOOD SETTLING: <=150") | GOOD SETTLING: <=150 | - **Formula (Mohlman SVI & Minimum RAS Recycle Ratio Formula)**: `=LET(sv_m, B2, ml_s, B3, IF(OR(sv_m <= 10, sv_m > 950, ml_s < 200, ml_s > 15000), "Invalid Settleometer Input", ROUND((sv_m * 1000) / ml_s, 2)))` - **Formula (Filamentous Bulking RAS Pump Overload Check (Set SV30 = 500 mL/L))**: `=IF(ISTEXT(E2), E2, IF(E2 > 150, "BULKING: >150", "GOOD SETTLING: <=150"))` ### Nth Smallest Value with Criteria & Highlight Bottom K Bids (SMALL + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/smallest-n-values-with-criteria-and-bottom-k-flag/ - **Summary**: Find the kth lowest bid in a category and flag all bids at or below that cutoff, with explicit tie handling and validation of K and matching bid data. - **Formula (Validate K and all matching bids)**: `=IF(OR(COUNTBLANK(F2)>0,NOT(ISTEXT(F2))),"Enter a category",IF(NOT(ISNUMBER(G2)),"Enter numeric K",IF(OR(G2<1,G2<>INT(G2)),"K must be a positive integer",IF(COUNTIF(B2:B7,H2)=0,"No matching bids",IF(COUNTIFS(B2:B7,H2,D2:D7,1)<>COUNTIF(B2:B7,H2),"Check category bids",IF(COUNTIF(B2:B7,H2)= 25, B6 >= 30), 1, 0) + IF(B7 >= 125, 1, 0) + IF(B8 = 1, 1, 0) + IF(IF(B2 <= 50, B9 <= 93, B9 <= 90), 2, 0) + IF(B10 < 7.35, 2, 0)` - **Formula (SMART-COP IRVS Risk Stratification Tier)**: `=IF((IF(B3 < 90, 2, 0) + IF(B4 = 1, 1, 0) + IF(B5 < 3.5, 1, 0) + IF(IF(B2 <= 50, B6 >= 25, B6 >= 30), 1, 0) + IF(B7 >= 125, 1, 0) + IF(B8 = 1, 1, 0) + IF(IF(B2 <= 50, B9 <= 93, B9 <= 90), 2, 0) + IF(B10 < 7.35, 2, 0)) >= 7, "Very High IRVS Risk (>=7)", IF((IF(B3 < 90, 2, 0) + IF(B4 = 1, 1, 0) + IF(B5 < 3.5, 1, 0) + IF(IF(B2 <= 50, B6 >= 25, B6 >= 30), 1, 0) + IF(B7 >= 125, 1, 0) + IF(B8 = 1, 1, 0) + IF(IF(B2 <= 50, B9 <= 93, B9 <= 90), 2, 0) + IF(B10 < 7.35, 2, 0)) >= 5, "High IRVS Risk (5-6)", IF((IF(B3 < 90, 2, 0) + IF(B4 = 1, 1, 0) + IF(B5 < 3.5, 1, 0) + IF(IF(B2 <= 50, B6 >= 25, B6 >= 30), 1, 0) + IF(B7 >= 125, 1, 0) + IF(B8 = 1, 1, 0) + IF(IF(B2 <= 50, B9 <= 93, B9 <= 90), 2, 0) + IF(B10 < 7.35, 2, 0)) >= 3, "Moderate IRVS Risk (3-4)", "Low IRVS Risk (0-2)")))` ### SMED Setup Reduction Formula: Internal-to-External Changeover & Lot Shrinking - **URL**: https://sheets.arte-soft.com/en/learn/smed-single-minute-exchange-of-die-setup-reduction-and-smaller-lot-size/ - **Summary**: Quantify Shigeo Shingo’s Single-Minute Exchange of Die (SMED) conversion—separating external setup from stopped-machine internal downtime to shrink economic lot sizes by SQRT(T_new / T_old) or unlock shift availability. *Table — Two strategic dividends of SMED: extra shift capacity OR smaller low-WIP batches:* | SMED Stage (480-min Shift, 3 Changeovers) | Internal Downtime T_int | Economic Lot Q_opt | Shift Run Availability | | --- | --- | --- | --- | | Baseline Unseparated Setup | 120.0 min / changeover | 1,200 units | 0.2500 (120 / 480 min) | | Stage 1+2 Post-SMED (-75 ext, -15 stream) | 30.0 min / changeover | 600 units (-50% WIP) | 0.8125 (390 / 480 min) | | Single-Digit Kaizen (-90 ext, -22.5 stream) | 7.5 min (< 10 min SMED!) | 300 units (-75% WIP) | 0.9531 (457.5 / 480 min) | - **Formula (Post-SMED Internal Downtime & Square-Root Reduced Lot Size Formula)**: `=LET(t_new, MAX(0, B2 - B3 - B4), ROUND(B5 * SQRT(t_new / B2), 0))` - **Formula (Shift Run-Time Availability Ratio Formula)**: `=LET(t_new, MAX(0, B2 - B3 - B4), ROUND(MAX(0, B7 - B6 * t_new) / B7, 4))` ### Smith (1969) Annular-Mist Slip Ratio & Void Fraction Formula: Entrained Liquid e_k = 0.40 - **URL**: https://sheets.arte-soft.com/en/learn/smith-entrained-droplet-annular-slip-ratio-and-void-fraction-formula/ - **Summary**: Calculate steam-water and refrigerant boiling cross-sectional void fraction alpha using S. L. Smith’s (1969) Momentum-Equalized Annular-Mist Slip Ratio S_Smith with entrained droplet fraction e_k = 0.40. *Table — Model real annular-mist boiling — a homogeneous gas-droplet core surrounded by a slower liquid wall film!:* | Vapor Mass Quality x (at rho_L / rho_G = 50, Entrainment e_k = 0.40) | Smith Slip Ratio S_Smith | Cross-Sectional Void Fraction alpha | | --- | --- | --- | | Low Quality Bubbly/Slug (x = 0.05) | 2.2156 | 0.5489 (54.9% vapor area) | | Mid Quality Annular-Mist (x = 0.20) | 3.0729 | 0.8027 (80.3% vapor area) | | High Quality Mist Flow (x = 0.60) | 4.1790 | 0.9472 (94.7% vapor area) | - **Formula (Smith (1969) Annular-Mist Velocity Slip Ratio S_Smith (Default e_k = 0.40))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 1, B4 < 0, B4 > 1), "Requires 0 < x < 1, rho_L/rho_G > 1, and 0 <= e_k <= 1", ROUND(B4 + (1 - B4) * SQRT((B3 + B4 * ((1 - B2) / B2)) / (1 + B4 * ((1 - B2) / B2))), 4))` - **Formula (Smith Cross-Sectional Vapor Void Fraction alpha_Smith)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 1, B4 < 0, B4 > 1), "Requires 0 < x < 1, rho_L/rho_G > 1, and 0 <= e_k <= 1", ROUND(1 / (1 + (B4 + (1 - B4) * SQRT((B3 + B4 * ((1 - B2) / B2)) / (1 + B4 * ((1 - B2) / B2)))) * ((1 - B2) / B2) / B3), 4))` ### Smith-Modified Sgarbossa Criteria for LBBB & Paced Occlusion MI (STEMI) - **URL**: https://sheets.arte-soft.com/en/learn/smith-modified-sgarbossa-lbbb-paced-stemi-discordance-formula/ - **Summary**: Evaluate acute coronary occlusion in left bundle branch block (LBBB) or right-ventricular paced rhythms using concordant ST shifts (>= 1 mm) and Stephen Smith’s proportional discordant ST/S ratio (<= -0.25). *Table — Replace the blunt >= 5 mm Sgarbossa cutoff with Smith’s proportional ST/S <= -0.25 rule!:* | 12-Lead LBBB / RV-Paced ECG Pattern | Concordant Shift or ST/S Ratio | Smith-Modified Sgarbossa Result | Emergency Cath-Lab Action | | --- | --- | --- | --- | | Concordant STE >= 1 mm (Any Lead) or Concordant STD >= 1 mm (V1-V3) | Direct Concordant Injury | Positive (100% Specific Rule) | Immediate Emergent Reperfusion | | Discordant +5.5 mm STE on -18.0 mm S-Wave | ST / S = -0.306 (<= -0.25) | Positive Proportional Discordance | Activate Cath Lab (OMI Detected) | | Giant LVH +5.0 mm STE on -25.0 mm S-Wave | ST / S = -0.200 (> -0.25) | Negative (Appropriate Discordance) | Avoid False-Positive 1996 Trigger | - **Formula (Proportional Discordant ST-Elevation / S-Wave Ratio (ST / S))**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0), "Invalid ECG Amplitude", IF(AND(B4 >= 1, B5 < 0), ROUND(B4 / B5, 3), 0))` - **Formula (Smith-Modified Sgarbossa Acute Coronary Occlusion (OMI) Decision)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0), "Invalid ECG Amplitude", IF(OR(B2 >= 1, B3 >= 1, AND(B4 >= 1, B5 < 0, (B4 / B5) <= -0.25)), "Positive Smith-Sgarbossa — Acute Coronary Occlusion (STEMI Equivalent)", "Negative Smith-Sgarbossa — Appropriate LBBB/Paced Discordance"))` ### Smith-Watson-Topper (SWT) & Morrow Fatigue Formula - **URL**: https://sheets.arte-soft.com/en/learn/smith-watson-topper-swt-and-morrow-mean-stress-strain-life-fatigue-formula/ - **Summary**: Calculate Peak Cyclic Stress sigma_max = sigma_a + sigma_m, Smith-Watson-Topper Damage Stress SQRT(MAX(0, sigma_max) * epsilon_a * E), Morrow Mean-Stress Equivalent Amplitude, and Crack-Closure Regime. *Table — Account for tensile crack opening and shot-peened compressive closure in strain-life fatigue!:* | Strain-Life Mean-Stress Metric (sa=300, sm=+100 MPa, ea=0.002, E=200GPa, sf=900) | Formula | Verified Output | | --- | --- | --- | | Peak Cyclic Stress sigma_max | sigma_a + sigma_m | 400.00 MPa (-50 MPa @ sm=-350) | | SWT Damage Stress P_SWT (MPa) | SQRT(MAX(0, sigma_max) * ea * E_MPa) | 400.00 MPa (0.00 MPa @ sm=-350) | | Morrow Equiv Reversed Stress | sigma_a / (1 - sigma_m / sigma_f_prime) | 337.50 MPa (216.00 MPa @ sm=-350) | | Crack-Closure Loading Regime | sigma_max <= 0 vs sigma_m Sign | Tensile Crack-Opening Penalty | - **Formula (Smith-Watson-Topper (SWT) Equivalent Damage Stress Formula)**: `=LET(sg_a, B2, sg_m, B3, ep_a, B4, md_e, B5, sf_p, B6, IF(OR(sg_a <= 0, ep_a <= 0, md_e <= 0, sf_p <= 0, sg_m >= sf_p), "Invalid Fatigue Cycle", LET(sg_x, sg_a + sg_m, ROUND(SQRT(MAX(0, sg_x) * ep_a * (md_e * 1000)), 2))))` - **Formula (Shot-Peening Compressive Clamping Check (sigma_max <= 0))**: `=IF(ISTEXT(E3), E3, IF(E2 <= 0, "Compressive Crack Closure (SWT = 0)", IF(B3 > 0, "Tensile Crack-Opening Penalty", IF(B3 = 0, "Fully Reversed Baseline (R = -1)", "Compressive Mean Beneficial"))))` ### SMT Reflow Oven Belt Speed, Ramp Slope & TAL Formula - **URL**: https://sheets.arte-soft.com/en/learn/smt-convection-reflow-oven-time-above-liquidus-tal-soak-slope-and-belt-speed/ - **Summary**: Calculate Preheat Zone Residence Time (s), Preheat Thermal Ramp Slope (°C/s <= 3.0 °C/s limit), Peak Zone Time Above 217 °C SAC305 Liquidus TAL (s), and J-STD-020 Profile Audit. *Table — Cranking reflow conveyor speed up to chase SMT line beat rate slashes TAL below 45 seconds—causing cold head-in-pillow BGA joints AND thermal-shock tombstoning!:* | IPC/JEDEC J-STD-020 Reflow KPI (Belt=80 cm/min, L_pre=96 cm, L_TAL=84 cm) | Formula | Verified Output | | --- | --- | --- | | Preheat Zone Residence (sec) | Preheat_Len_cm / (Belt_cm_min / 60) | 72.00 s (46.08 s @ 125 cm/min rush) | | Preheat Ramp Slope (°C/s) | (T_soak_C - T_amb_C) / Preheat_Time_s | 1.81 °C/s (2.82 °C/s @ 125 cm/min) | | Time Above 217°C Liquidus TAL (s) | Peak_217_Len_cm / (Belt_cm_min / 60) | 63.00 s (40.32 s < 45s @ 125 cm/min!) | | J-STD-020 SAC305 Window Gate | Slope <= 3.0 AND 45 <= TAL <= 90 | J-STD-020 SAC305 PASS | - **Formula (Conveyor Residence Time, Thermal Ramp Slope & SAC305 TAL Window Formula)**: `=LET(vb_m, B2, lp_c, B3, ta_c, B4, ts_c, B5, lt_c, B6, IF(OR(vb_m <= 10, vb_m > 300, lp_c <= 0, ta_c < 0, ts_c <= ta_c, ts_c > 217, lt_c <= 0), "Invalid Reflow Input", LET(vc_s, vb_m / 60, tp_s, lp_c / vc_s, sl_p, (ts_c - ta_c) / tp_s, tl_s, lt_c / vc_s, IF(AND(sl_p <= 3, tl_s >= 45, tl_s <= 90), "J-STD-020 SAC305 PASS", "OUT OF REFLOW WINDOW"))))` - **Formula (Over-Sped 125 cm/min Conveyor Cold-Solder Wetting Failure Check (Set Belt Speed B2 = 125.0 cm/min))**: `=IF(ISTEXT(E2), E2, ROUND(B6 / (B2 / 60), 2))` ### SMT Stencil Aperture Area Ratio & Paste Volume Formula - **URL**: https://sheets.arte-soft.com/en/learn/smt-solder-paste-stencil-aperture-area-ratio-aspect-ratio-and-paste-volume/ - **Summary**: Calculate IPC-7525 Aperture Area Ratio AR = (L*W)/(2*(L+W)*T), Width-to-Foil Aspect Ratio W/T, Wet Solder-Paste Brick Volume (nL), and >= 0.66 Paste-Release Gate. *Table — Why solder paste sticks inside stencil walls instead of transferring onto fine-pitch QFN pads whenever Area Ratio drops below 0.66!:* | IPC-7525 SMT Stencil KPI (L=0.80 mm, W=0.26 mm, Foil T=0.12 mm, TE=78%) | Formula | Verified Output | | --- | --- | --- | | Aperture Area Ratio AR | (L * W) / (2 * (L + W) * Foil_T) | 0.818 (0.654 < 0.66 @ T=0.15 mm!) | | Aperture Aspect Ratio (W / T) | Aperture_Width_W / Foil_Thickness_T | 2.17 (1.73 @ Foil T = 0.15 mm) | | Wet Solder Paste Deposit (nL) | L_mm * W_mm * T_mm * 1000 * TE_Frac | 19.47 nL | | IPC-7525 Release Rule (>=0.66) | AR >= 0.66 AND Aspect >= 1.50 | IPC-7525 PASTE RELEASE OK | - **Formula (IPC-7525 Stencil Aperture Area Ratio & Clogging Risk Gate Formula)**: `=LET(la_m, B2, wa_m, B3, tf_m, B4, te_f, B5, IF(OR(wa_m <= 0, la_m < wa_m, tf_m < 0.05, tf_m > 0.4, te_f <= 0.3, te_f > 1), "Invalid Stencil Input", LET(ar_v, (la_m * wa_m) / (2 * (la_m + wa_m) * tf_m), as_p, wa_m / tf_m, IF(AND(ar_v >= 0.66, as_p >= 1.5), "IPC-7525 PASTE RELEASE OK", "CLOGGING / BRIDGING RISK (<0.66)"))))` - **Formula (6-Mil (0.15 mm) Thick-Foil Fine-Pitch Clogging Trap Check (Set Foil T = 0.15 mm))**: `=IF(ISTEXT(E2), E2, ROUND(B2 * B3 * B4 * 1000 * B5, 2))` ### Palmgren-Miner damage index and a Basquin S-N life example - **URL**: https://sheets.arte-soft.com/en/learn/sn-fatigue-basquin-law-and-palmgren-miner-cumulative-damage/ - **Summary**: Sum cycle ratios in a linear fatigue model and explore a separate Basquin cycle-life calculation with an explicit reversals convention. *Table — A linear damage index, not a safety verdict:* | Spectrum Stress Block | Applied Cycles n_i | S-N Life N_i | Damage Fraction n_i / N_i | | --- | --- | --- | --- | | Block 1 (Severe Gusts) | 40,000 | 100,000 | 0.4000 damage contribution | | Block 2 (Maneuver Loads) | 150,000 | 500,000 | 0.3000 damage contribution | | Block 3 (Cruise Ripple) | 200,000 | 1,000,000 | 0.2000 damage contribution | | Total Miner Damage D | SUM(n_i / N_i) | — | 0.9000 (0.1000 model allowance) | - **Formula (Palmgren-Miner Cumulative Fatigue Damage Index D = SUM(n_i / N_i))**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B4<0,B6<0,B3<=0,B5<=0,B7<=0),"Invalid inputs",ROUND(B2/B3+B4/B5+B6/B7,4)))` - **Formula (Compare with the nominal model threshold)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B4<0,B6<0,B3<=0,B5<=0,B7<=0),"Invalid inputs",IF((B2/B3+B4/B5+B6/B7)>=1,"Nominal model threshold reached","Below nominal model threshold")))` - **Formula (Unused model damage allowance)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B4<0,B6<0,B3<=0,B5<=0,B7<=0),"Invalid inputs",MAX(0,ROUND(1-(B2/B3+B4/B5+B6/B7),4))))` - **Formula (Basquin life: cycles versus reversals)**: `=IF(COUNT(E2:E4)<>3,"Invalid inputs",IF(OR(E2<=0,E3<=0,E4>=0),"Invalid inputs",0.5*(E2/E3)^(1/E4)))` ### SNAPPE-II (Score for Neonatal Acute Physiology with Perinatal Extension-II) - **URL**: https://sheets.arte-soft.com/en/learn/snappe-ii-score-for-neonatal-acute-physiology-perinatal-mortality/ - **Summary**: Sum first-12-hour NICU physiologic and perinatal SNAPPE-II subscores (0–162) and compute Douglas Richardson et al.’s (2001) neonatal hospital mortality probability. *Table — Benchmarking NICU acuity across ALL birthweights with 6 physiologic + 3 perinatal risk factors!:* | 12-Hour NICU SNAPPE-II Total (0–162) | All-Birthweight Logit (-5.188 + 0.0632*S) | Predicted NICU Mortality (%) | NICU Acuity Tier | | --- | --- | --- | --- | | 5 Points (Mild Transitional Distress) | -4.872 | 0.76% | Low Acuity (< 20) | | 50 Points (Multi-System Perinatal Stress) | -2.028 | 11.63% | High Acuity (>= 40 High Risk) | | Negative Subscore (< 0) | Undefined | "Subscores Cannot Be Negative" | Input Validation Guard | - **Formula (Total SNAPPE-II 9-Item Physiologic + Perinatal Score (0–162))**: `=IF(MIN(B2:B6) < 0, "Subscores Cannot Be Negative", SUM(B2:B6))` - **Formula (Richardson (2001) All-Birthweight NICU Mortality Probability (%))**: `=IF(MIN(B2:B6) < 0, "Subscores Cannot Be Negative", ROUND(100 / (1 + EXP(-(-5.188 + 0.0632 * SUM(B2:B6)))), 2))` ### SNAQ Score Calculator: Simplified Nutritional Appetite Questionnaire (Wilson 4-Item) - **URL**: https://sheets.arte-soft.com/en/learn/snaq-simplified-nutritional-appetite-questionnaire-weight-loss/ - **Summary**: Screen older adults for anorexia of aging and 6-month involuntary weight loss (>= 5% and >= 10%) using Margaret-Mary G. Wilson et al.’s (2005) 4-item Simplified Nutritional Appetite Questionnaire (SNAQ, 4–20 points; <= 14 risk cutoff). *Table — Catch Anorexia of Aging BEFORE weight loss occurs — in four 1-to-5 Likert questions!:* | SNAQ 4-Item Total Score (4 to 20) | Prospective 6-Month Weight-Loss Risk | Clinical Action | | --- | --- | --- | | 15 to 20 Points | Low Risk of Weight Loss | Routine periodic appetite & weight monitoring | | <= 14 Points (Anorexia of Aging Cutoff) | Elevated Risk of >= 5% Weight Loss in 6 Months | Medication review, dental/dysphagia screen, high-density meals | | <= 12 Points (Severe Appetite Loss) | High Risk of >= 10% Weight Loss in 6 Months | Urgent dietitian intervention & reversible-cause workup | - **Formula (Total 4-Item Wilson SNAQ Appetite Score (4 to 20 Points))**: `=IF(OR(MIN(B2:B5) < 1, MAX(B2:B5) > 5, INT(B2) <> B2, INT(B3) <> B3, INT(B4) <> B4, INT(B5) <> B5), "Each SNAQ Item Must Be Integer 1 (A) to 5 (E)", SUM(B2:B5))` - **Formula (SNAQ 6-Month Involuntary Weight-Loss Risk Stratification (<= 14 Cutoff))**: `=IF(OR(MIN(B2:B5) < 1, MAX(B2:B5) > 5, INT(B2) <> B2, INT(B3) <> B3, INT(B4) <> B4, INT(B5) <> B5), "Each SNAQ Item Must Be Integer 1 (A) to 5 (E)", IF(SUM(B2:B5) <= 14, "SNAQ <= 14: Significant Risk of >= 5% Weight Loss Within 6 Months", "SNAQ >= 15: Normal Appetite — Low 6-Month Weight-Loss Risk"))` ### Snell's Law refraction angle & Total Internal Reflection critical angle - **URL**: https://sheets.arte-soft.com/en/learn/snells-law-of-refraction-and-critical-angle-optics/ - **Summary**: Calculate refracted ray angles DEGREES(ASIN((n1/n2)*SIN(RADIANS(theta1)))) and fiber-optic Total Internal Reflection critical angles safely in degrees. *Table — Convert degrees to radians AND guard ASIN against Total Internal Reflection!:* | Optical Ray Scenario | Formula | Output | | --- | --- | --- | | Air (1.00) -> Crown Glass (1.50) at 30° | DEGREES(ASIN((1.0/1.5)*SIN(RADIANS(30)))) | 19.47° refracted | | Glass (1.50) -> Air (1.00) Critical Angle | DEGREES(ASIN(1.00 / 1.50)) | 41.81° critical angle | | Glass (1.50) -> Air (1.00) at 45° (> 41.81°) | (1.5/1.0)*SIN(45°) = 1.0607 > 1 | "Total Internal Reflection" | - **Formula (Refracted angle in degrees with Total Internal Reflection guard)**: `=IF(OR(COUNT(A2:C2)<>3,A2<=0,B2<=0,C2<0,C2>90),"Invalid inputs",LET(transmittedSine, (A2 / B2) * SIN(RADIANS(C2)), IF(transmittedSine > 1+1E-12, "Total Internal Reflection", ROUND(DEGREES(ASIN(MIN(1,transmittedSine))), 2))))` - **Formula (Critical angle for Total Internal Reflection (when n1 > n2))**: `=IF(OR(COUNT(A2:B2)<>2,A2<=0,B2<=0),"Invalid inputs",IF(A2 <= B2, "No TIR (n1 <= n2)", ROUND(DEGREES(ASIN(B2 / A2)), 2)))` ### Snell’s Law Refraction Angle & Total Internal Reflection (TIR) Critical Angle - **URL**: https://sheets.arte-soft.com/en/learn/snells-law-refraction-angle-and-total-internal-reflection-critical-angle/ - **Summary**: Calculate optical refraction angle theta_2 and Total Internal Reflection critical angle theta_c = DEGREES(ASIN(n_2 / n_1)) across planar dielectric interfaces with radian-degree conversion and ASIN domain guards. *Table — Why ASIN throws #NUM! above the critical angle when light exits a denser medium:* | Interface Case | n_1 -> n_2 & Incident theta_1 | sin(theta_2) Ratio | Optical Outcome | | --- | --- | --- | --- | | Crown Glass -> Air (Sub-Critical) | 1.50 -> 1.00 at 30.00 deg | 0.7500 | Refracted at 48.59 deg (theta_c = 41.81 deg) | | Crown Glass -> Air (Super-Critical) | 1.50 -> 1.00 at 45.00 deg | 1.0607 (> 1) | TOTAL_INTERNAL_REFLECTION | | Air -> Crown Glass (External) | 1.00 -> 1.50 at 30.00 deg | 0.3333 | Refracted at 19.47 deg (NO_TIR_CRITICAL) | - **Formula (Total Internal Reflection Critical Angle Formula (Degrees))**: `=IF(B2 <= B3, "NO_TIR_CRITICAL", ROUND(DEGREES(ASIN(B3 / B2)), 2))` - **Formula (Domain-Guarded Snell’s Law Refracted Angle Formula)**: `=LET(sin_ref, (B2 / B3) * SIN(RADIANS(B4)), IF(ABS(sin_ref) > 1, "TOTAL_INTERNAL_REFLECTION", ROUND(DEGREES(ASIN(sin_ref)), 2)))` ### Soave-Redlich-Kwong (SRK) Equation of State: Alpha Cohesion & Pressure - **URL**: https://sheets.arte-soft.com/en/learn/soave-redlich-kwong-srk-acentric-alpha-and-eos-pressure-formula/ - **Summary**: Calculate Giorgio Soave’s acentric cohesion function α(T_r, ω) = [1 + (0.480 + 1.574ω - 0.176ω^2)(1 - SQRT(T / T_c))]^2 and real-gas SRK pressure P (bar) for hydrocarbon and natural-gas processing. *Table — How Giorgio Soave (1972) turned cubic equations into refinery simulation workhorses!:* | Propane State at Vm = 450 cm^3/mol (ω = 0.152) | Soave Cohesion α(Tr, ω) | Ideal Gas RT / Vm | SRK Real Pressure P (bar) | | --- | --- | --- | --- | | Subcritical Dense Gas (T = 320.0 K) | 1.1023 (> 1 Below Tc) | 59.13 bar | 23.25 bar (-60.7% Attraction!) | | Critical Isotherm (T = Tc = 369.8 K) | 1.0000 (Exact Pivot) | 68.33 bar | 38.16 bar | | Unphysical Compression (Vm <= b = 62.71) | Hard-Core Covolume Wall | "Invalid SRK State" | Requires Vm > b | - **Formula (Soave-Redlich-Kwong Real-Gas Pressure P (bar))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B6 <= 0.08664 * 83.1446 * B3 / B4), "Invalid SRK State", ROUND((83.1446 * B2) / (B6 - 0.08664 * 83.1446 * B3 / B4) - (0.42748 * (83.1446 ^ 2) * (B3 ^ 2) / B4) * ((1 + (0.48 + 1.574 * B5 - 0.176 * (B5 ^ 2)) * (1 - SQRT(B2 / B3))) ^ 2) / (B6 * (B6 + 0.08664 * 83.1446 * B3 / B4)), 2))` - **Formula (Soave Temperature-Dependent Cohesion Factor α(T_r, ω))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid SRK State", ROUND((1 + (0.48 + 1.574 * B5 - 0.176 * (B5 ^ 2)) * (1 - SQRT(B2 / B3))) ^ 2, 4))` ### SOFA Score (Sequential Organ Failure Assessment) & Sepsis-3 Criterion - **URL**: https://sheets.arte-soft.com/en/learn/sofa-sequential-organ-failure-assessment-icu-sepsis-score/ - **Summary**: Calculate the 6-system (0–24 point) ICU SOFA Score across Respiration, Coagulation, Liver, Cardiovascular, CNS, and Renal subscores, and evaluate Sepsis-3 acute Delta-SOFA >= 2 organ dysfunction. *Table — Quantify 6-organ ICU dysfunction and the Sepsis-3 Delta-SOFA >= 2 definition!:* | ICU SOFA Metric | Formula (Organ Subscores B2:B7, Baseline B8) | Sample Patient | Clinical Interpretation | | --- | --- | --- | --- | | Total 6-Organ SOFA Score (0–24) | =SUM(B2:B7) | 2+1+0+3+1+2 = 9 pts | Moderate-Severe Multi-Organ Failure | | Sepsis-3 Acute Delta-SOFA | =SUM(B2:B7) - B8 | 9 - 1 (chronic CKD) = +8 | >= 2 -> Sepsis-3 Organ Dysfunction Met! | | Subscore Bounds Check (0..4) | MIN(B2:B7)>=0 & MAX(B2:B7)<=4 | Validates 0–4 per organ | Catches raw lab entry vs 0-4 subscore | - **Formula (Total 6-System SOFA Score (0–24) with Subscore Range Audit)**: `=IF(OR(MIN(B2:B7) < 0, MAX(B2:B7) > 4), "Each Organ Subscore Must Be 0 to 4", SUM(B2:B7))` - **Formula (Sepsis-3 Acute Organ-Dysfunction Criterion (Delta-SOFA >= 2 vs Baseline))**: `=IF((SUM(B2:B7) - B8) >= 2, "Sepsis-3 Criterion Met (dSOFA >= 2)", "dSOFA < 2")` ### Soil-Nail Wall Grout Pullout Capacity & Spacing Formula - **URL**: https://sheets.arte-soft.com/en/learn/soil-nail-wall-bond-pullout-capacity-tendon-yield-and-global-facing-spacing-formula/ - **Summary**: Calculate Ultimate Grout-Soil Bond Pullout Qu (kN), FHWA ASD Allowable Pullout Resistance (FS = 2.0, kN), Tributary Facing Nail Load (kN), and Pullout Factor of Safety. *Table — Only the nail length BEHIND the active failure wedge resists pullout—counting total drilled bar length double-counts the sliding soil!:* | FHWA GEC-7 Soil-Nail KPI (Ddh=150 mm, Grid 1.5x1.5 m, sigma_a=36 kPa) | Formula | Verified Output | | --- | --- | --- | | Ultimate Bond Pullout Qu (kN) | PI() * (Ddh_mm / 1000) * Lp_m * qu_kPa | 362.9 kN (128.2 kN @ soft clay seam!) | | Allowable ASD Pullout Q_all (kN) | 0.50 * Ultimate_Pullout_Qu_kN (FS=2.0) | 181.4 kN (64.1 kN < 81 kN @ clay seam!) | | Tributary Nail Demand T_serv (kN) | Earth_Pressure_kPa * Sh_m * Sv_m | 81.0 kN | | Pullout Factor of Safety FS | Ultimate_Pullout_Qu / Tributary_Demand_T | 4.48 (1.58 < 2.0 FAIL @ clay seam!) | - **Formula (FHWA GEC-7 Resistant-Zone Bond Pullout & Tributary Grid Safety Factor Formula)**: `=LET(dd_m, B2 / 1000, lp_m, B3, qu_k, B4, sh_m, B5, sv_m, B6, sa_k, B7, qu_n, PI() * dd_m * lp_m * qu_k, ts_n, sa_k * sh_m * sv_m, IF(OR(B2 < 75, B2 > 350, lp_m <= 0.5, qu_k <= 15, sh_m < 0.5, sh_m > 3, sv_m < 0.5, sv_m > 3, sa_k <= 2), "Invalid Soil-Nail Input", ROUND(qu_n / ts_n, 2)))` - **Formula (Shortened Bond Zone in Stiff Clay Lens (Lp = 3.2 m, qu = 85 kPa) Pullout Rejection Check)**: `=IF(ISTEXT(E5), E5, ROUND(PI() * (B2 / 1000) * B3 * B4, 1))` ### Soil Sodium Adsorption Ratio (SAR) & ESP Formula - **URL**: https://sheets.arte-soft.com/en/learn/soil-sodium-adsorption-ratio-sar-and-exchangeable-sodium-esp-formula/ - **Summary**: Calculate USDA Salinity Lab Sodium Adsorption Ratio SAR = Na / SQRT((Ca + Mg) / 2) in meq/L, Empirical Exchangeable Sodium Percentage (ESP), and Normal / Saline / Sodic / Saline-Sodic soil class. *Table — Diagnose clay dispersion hazard from meq/L cations—never raw mg/L ppm!:* | USDA Soil Chemistry Metric (Na=12, Ca=4, Mg=4 meq/L, ECe=2.5 dS/m) | Formula | Verified Output | | --- | --- | --- | | Sodium Adsorption Ratio (SAR) | Na / SQRT((Ca + Mg) / 2) | 6.00 (16.00 @ Na=32) | | Predicted Exchangeable Sodium ESP | 100*k / (1 + k), k=-0.0126+0.01475*SAR | 7.05% (18.26% @ Na=32) | | Divalent Cation Share | (Ca + Mg) / (Na + Ca + Mg) | 0.4000 (40.00%) | | USDA Handbook 60 Classification | ECe >= 4 vs ESP >= 15 Matrix | Normal Soil (ECe < 4 & ESP < 15) | - **Formula (USDA SAR & Empirical ESP Formula)**: `=LET(na_c, B2, ca_c, B3, mg_c, B4, ec_e, B5, IF(OR(na_c < 0, ca_c < 0, mg_c < 0, ca_c + mg_c <= 0, ec_e < 0), "Invalid Cation Assay", LET(sr_v, na_c / SQRT((ca_c + mg_c) / 2), kp_e, -0.0126 + 0.01475 * sr_v, ROUND(MAX(0, (100 * kp_e) / (1 + kp_e)), 2))))` - **Formula (Four-Quadrant USDA Salinity-Sodicity Classifier Formula)**: `=IF(ISTEXT(E3), E3, IF(AND(B5 >= 4, E3 >= 15), "Saline-Sodic Soil", IF(E3 >= 15, "Sodic Soil (Gypsum Required)", IF(B5 >= 4, "Saline Soil (Leach Salts)", "Normal Soil (ECe < 4 & ESP < 15)"))))` ### EUTOS & Sokal CML Risk Scores: Chronic Myeloid Leukemia TKI Prognosis - **URL**: https://sheets.arte-soft.com/en/learn/sokal-and-eutos-chronic-myeloid-leukemia-prognostic-scores/ - **Summary**: Calculate the European Treatment and Outcome Study score EUTOS = 7 * Basophils_% + 4 * Spleen_cm (<= 87 Low vs. > 87 High Risk) alongside Sokal’s exponential hazard ratio in newly diagnosed chronic-phase CML. *Table — Why blood basophil % and spleen size below the costal margin drive frontline 2G-TKI selection in chronic-phase CML!:* | Chronic-Phase CML Presentation | EUTOS Score (Cutoff 87) | Sokal Hazard Ratio (<0.8 / 0.8–1.2 / >1.2) | ELN / NCCN TKI Implication | | --- | --- | --- | --- | | Age 58, Spleen 12 cm, Baso 9%, Plt 850, Blasts 4% | 111.0 (High Risk > 87) | 1.943 (High Risk > 1.2) | Favor 2nd-Generation TKI Frontline | | Age 40, Spleen 3 cm, Baso 4%, Plt 350, Blasts 1% | 40.0 (Low Risk <= 87) | 0.704 (Low Risk < 0.8) | Imatinib or 2G-TKI Appropriate | | Blasts >= 20% (Blast Crisis) or Negative Labs | Not Chronic Phase | "Requires Chronic-Phase CML Inputs" | Phase Eligibility Guard | - **Formula (EUTOS Chronic Myeloid Leukemia Score = 7 * Basophils_% + 4 * Spleen_cm)**: `=IF(OR(B2 < 18, B3 < 0, B4 < 0, B5 <= 0, B6 < 0, B6 >= 20), "Requires Chronic-Phase CML Inputs", ROUND(7 * B4 + 4 * B3, 1))` - **Formula (Sokal Exponential Relative Hazard Ratio HR_Sokal)**: `=IF(OR(B2 < 18, B3 < 0, B4 < 0, B5 <= 0, B6 < 0, B6 >= 20), "Requires Chronic-Phase CML Inputs", ROUND(EXP(0.0116 * (B2 - 43.4) + 0.0345 * (B3 - 7.51) + 0.188 * (((B5 / 700) ^ 2) - 0.563) + 0.0887 * (B6 - 2.1)), 3))` ### Solar Declination Angle, Noon Sun Altitude & PV Air Mass (AM) formulas - **URL**: https://sheets.arte-soft.com/en/learn/solar-declination-angle-and-air-mass-am-pv-formulas/ - **Summary**: Explore approximate seasonal declination, geometric solar-noon elevation and a simple relative air-mass approximation. *Table — Separate solar geometry from energy-yield design:* | Solar PV Geometry Metric | Formula | 40°N at model day 172 | Model day 81 | | --- | --- | --- | --- | | Solar Declination delta | 23.45 * SIN(RADIANS(360/365*(284+N))) | +23.45° (Tropic of Cancer) | 0.00° (Celestial Equator) | | Noon Sun Altitude alpha | 90 - ABS(Lat - delta) | 90 - \|40 - 23.45\| = 73.45° | 90 - 40 = 50.00° | | Geometric noon zenith angle | ABS(Lat - delta) (= Zenith) | 16.55° from horizontal | 40.00° (= Latitude) | | Air Mass at 60° Zenith | 1 / COS(RADIANS(60)) | AM = 2.00 (2x overhead air) | AM = 1.00 at 0° overhead | - **Formula (Cooper (1969) Solar Declination Angle delta in degrees)**: `=IF(COUNT(B2)<>1,"Invalid inputs",IF(OR(B2<>INT(B2),B2<1,B2>365),"Invalid inputs",ROUND(23.45 * SIN(RADIANS((360 / 365) * (284 + B2))), 2)))` - **Formula (Geometric elevation at local solar noon)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<>INT(B2),B2<1,B2>365,ABS(B3)>90),"Invalid inputs",ROUND(90 - ABS(B3 - (23.45 * SIN(RADIANS((360 / 365) * (284 + B2))))), 2)))` - **Formula (Simple relative air mass for zenith 0–80°)**: `=IF(COUNT(B4)<>1,"Invalid inputs",IF(OR(B4<0,B4>80),"Outside approximation",ROUND(1 / COS(RADIANS(B4)), 2)))` ### Solar PV Cell Fill Factor (FF) & Power Conversion Efficiency (PCE) - **URL**: https://sheets.arte-soft.com/en/learn/solar-pv-cell-fill-factor-power-conversion-efficiency-and-voc/ - **Summary**: Use measured maximum-power voltage and current to calculate PV output watts, fill factor and conversion efficiency, with consistent irradiance, area and measurement conditions. - **Formula (Maximum power in watts, D2)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric IV parameters",IF(OR(B2<=0,B3<=0,B4<0,B5<0),"Require positive Voc/Isc and nonnegative Vmp/Imp",IF(OR(B4>B2,B5>B3),"MPP exceeds IV limits",B4*B5)))` - **Formula (Fill factor in D3)**: `=IF(ISNUMBER(D2),D2/(B2*B3),D2)` - **Formula (Conversion efficiency in D4)**: `=IF(NOT(ISNUMBER(D2)),D2,IF(COUNT(B6:B7)<>2,"Enter numeric irradiance and area",IF(MIN(B6:B7)<=0,"Irradiance and area must be positive",IF(D2>B6*B7,"Output exceeds incident power: check measurements",D2/(B6*B7)))))` ### Solar PV NOCT Thermal Derating & IEC PR Formula - **URL**: https://sheets.arte-soft.com/en/learn/solar-pv-noct-cell-temperature-derating-and-iec-performance-ratio/ - **Summary**: Calculate operating silicon cell temperature T_cell = T_amb + ((NOCT - 20) / 800) * G, thermal-derated DC array output, and IEC 61724 plant Performance Ratio PR. *Table — Why desert summer heat cuts solar PV megawatts even under 1,000 W/m^2 clear-sky irradiance!:* | Solar PV Metric (P_STC=1,000 kWp, G=1,000, T_amb=35 C, NOCT=44 C) | Formula | Verified Output | | --- | --- | --- | | Operating Cell Temperature (T_cell) | T_amb + ((NOCT - 20) / 800) * G | 65.00 deg C (+40 C vs STC) | | Thermal Efficiency Factor | 1 + gamma_P * (T_cell - 25) | 0.8400 (-16.0% Heat Derate) | | Thermal-Derated DC Power (P_DC) | P_STC * (G / 1000) * Thermal_Factor | 840.00 kW | | IEC 61724 Performance Ratio (PR) | E_AC / (P_STC * H_POA) | 0.8100 (81.00% Plant PR) | - **Formula (NOCT Operating Cell Temperature & Thermal-Derated DC Output Formula)**: `=LET(p_st, B2, g_ir, B3, t_am, B4, noct_m, B5, gm_t, B6, IF(OR(p_st <= 0, g_ir < 0, noct_m < 20, gm_t > 0, gm_t < -0.02), "Invalid PV Input", LET(t_cl, t_am + ((noct_m - 20) / 800) * g_ir, ROUND(p_st * (g_ir / 1000) * MAX(0, 1 + gm_t * (t_cl - 25)), 2))))` - **Formula (IEC 61724 Plant Performance Ratio (PR) Formula)**: `=IF(OR(B2 <= 0, B7 <= 0, B8 < 0), "Invalid Insolation Input", ROUND(B8 / (B2 * B7), 4))` ### Solar PV panel array & battery bank (Ah) sizing calculator with ROUNDUP - **URL**: https://sheets.arte-soft.com/en/learn/solar-pv-panel-array-and-battery-bank-sizing-calculator/ - **Summary**: Build an illustrative daily-energy panel-count and nominal battery-capacity worksheet with explicit loss assumptions. This is not a complete electrical design. *Table — Account for real-world derate losses and usable Depth of Discharge (DoD):* | Solar / Storage Sizing Step (12,000 Wh/day) | Formula | Design Requirement | | --- | --- | --- | | Required DC Solar Array (W) | 12,000 / (5 PSH * 0.80 Derate) | 3,000 W (3.0 kW DC) | | 400W Solar Panel Count | ROUNDUP(3,000 / 400, 0) | 8 Panels (3,200 W installed) | | 48V Battery Bank Capacity (Ah) | ROUNDUP((12,000 * 2) / (48 * 0.80), 0) | 625 Ah (30.0 kWh nominal) | - **Formula (Number of solar panels required (rounded up to whole panels))**: `=IF(OR(COUNT(A2:D2)<>4,A2<0,B2<=0,B2>24,C2<=0,C2>1,D2<=0),"Invalid inputs",ROUNDUP(A2 / (B2 * C2 * D2), 0))` - **Formula (Battery bank capacity in Amp-Hours (Ah) for N days of autonomy)**: `=IF(OR(NOT(ISNUMBER(A2)),COUNT(E2:G2)<>3,A2<0,E2<0,F2<=0,G2<=0,G2>1),"Invalid inputs",ROUNDUP((A2 * E2) / (F2 * G2), 0))` ### Solenoid Magnetic Field & Helmholtz Coil Pair Uniform Field formulas - **URL**: https://sheets.arte-soft.com/en/learn/solenoid-magnetic-field-and-helmholtz-coil-uniform-field/ - **Summary**: Calculate axial magnetic flux density inside a long solenoid B = mu_0 * (N / L) * I, midpoint uniform field of a Helmholtz coil pair B = (4/5)^(3/2) * mu_0 * N * I / R, and magnetic energy density. *Table — Ideal air-core coil estimates:* | Electromagnet Geometry | Formula (in millitesla mT) | N = 500, I = 4 A (L=0.25m, R=0.10m) | Zero Current (I = 0 A) | | --- | --- | --- | --- | | Long Solenoid Interior B | (mu_0 * (N / L) * I) * 1000 | 10.0531 mT | 0.0000 mT | | Helmholtz Coil Midpoint B | (((4/5)^1.5) * (mu_0*N*I/R)) * 1000 | 17.9835 mT | 0.0000 mT | | Solenoid Energy Density u_B | (B_tesla ^ 2) / (2 * mu_0) | 40.2124 J/m^3 | 0.0000 J/m^3 | - **Formula (Long Solenoid Axial Magnetic Flux Density B (mT))**: `=IF(COUNT(B2:B3,B4,B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B3<>INT(B3),B4<=0),"Invalid inputs",ROUND((B2 * (B3 / B4) * B5) * 1000, 4)))` - **Formula (Helmholtz Twin-Coil Uniform Midpoint Field B (mT))**: `=IF(COUNT(B2:B3,B6,B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B3<>INT(B3),B6<=0),"Invalid inputs",ROUND((((4 / 5) ^ 1.5) * (B2 * B3 * B5 / B6)) * 1000, 4)))` - **Formula (Magnetic energy density in vacuum (J/m^3))**: `=IF(COUNT(B2:B3,B4,B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B3<>INT(B3),B4<=0),"Invalid inputs",ROUND(((B2 * (B3 / B4) * B5) ^ 2) / (2 * B2), 4)))` ### Solow-Swan Growth Model Formula: Steady-State Capital k* & Output y* per Effective Worker - **URL**: https://sheets.arte-soft.com/en/learn/solow-swan-steady-state-capital-per-effective-worker-formula/ - **Summary**: Solve Nobel laureate Robert Solow & Trevor Swan’s 1956 neoclassical growth model under Cobb-Douglas production y = k^alpha for balanced-growth steady-state capital k* = (s / (n + g + delta))^(1 / (1 - alpha)) and output y* = (k*)^alpha. *Table — Balancing gross investment s*k^alpha against break-even capital dilution (n + g + delta)*k!:* | Macroeconomic Saving Rate (n+g+delta = 8%, alpha = 1/3) | Steady-State Capital k* | Steady-State Output y* = (k*)^alpha | | --- | --- | --- | | Saving Rate s = 24% (s / 0.08 = 3.0) | 5.1962 | 1.7321 | | Higher Saving Rate s = 32% (s / 0.08 = 4.0) | 8.0000 (+54.0% deeper capital) | 2.0000 (+15.5% higher income level) | | Invalid Capital Share alpha >= 1 or s <= 0 | No Diminishing Returns | "Invalid Solow Growth Parameters" | - **Formula (Solow-Swan Steady-State Capital per Effective Worker k* = (s / (n + g + delta))^(1 / (1 - alpha)))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 + B4 + B5 <= 0, B6 <= 0, B6 >= 1), "Invalid Solow Growth Parameters", ROUND((B2 / (B3 + B4 + B5)) ^ (1 / (1 - B6)), 4))` - **Formula (Steady-State Output per Effective Worker y* = (s / (n + g + delta))^(alpha / (1 - alpha)))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 + B4 + B5 <= 0, B6 <= 0, B6 >= 1), "Invalid Solow Growth Parameters", ROUND((B2 / (B3 + B4 + B5)) ^ (B6 / (1 - B6)), 4))` ### Solvay Soda Ash Process Salt, Limestone & CaCl2 Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/solvay-ammonia-soda-ash-process-salt-limestone-stoichiometry-and-cacl2/ - **Summary**: Calculate Dense Soda Ash Na2CO3 Production (t/d), Quarried Limestone CaCO3 Kiln Feed (t/d), Byproduct Calcium Chloride CaCl2 (t/d), and Unreacted Brine NaCl Slip (t/d). *Table — Aqueous NaHCO3 precipitation equilibrium caps Solvay NaCl utilization around ~74%—generating >1 ton CaCl2 per ton soda ash!:* | Solvay Soda Ash KPI (585 t/d NaCl, 74% Utilization, 95% Pure Limestone) | Formula | Verified Output | | --- | --- | --- | | Soda Ash Na2CO3 Output (t/d) | (NaCl_t_d / 117) * Salt_Util * 106 | 392.20 t/d (360.40 @ 68% util) | | Raw Limestone Kiln Feed (t/d) | ((NaCl_t_d / 117) * Salt_Util * 100) / Purity | 389.47 t/d (357.89 @ 68% util) | | Byproduct CaCl2 Formed (t/d) | (NaCl_t_d / 117) * Salt_Util * 111 | 410.70 t/d (377.40 @ 68% util) | | Unreacted NaCl Blowdown (t/d) | NaCl_t_d * (1 - Salt_Util) | 152.10 t/d (187.20 @ 68% util) | - **Formula (Solvay Carbonation-Tower Soda Ash & Limestone Stoichiometry Formula)**: `=LET(nc_t, B2, ut_s, B3, lm_p, B4, IF(OR(nc_t <= 0, ut_s < 0.5, ut_s > 0.85, lm_p < 0.8, lm_p > 1), "Invalid Solvay Input", ROUND((nc_t / 117) * ut_s * 106, 2)))` - **Formula (Warm Cooling-Water Tower Solubility Loss Check (Set Salt Utilization = 0.68))**: `=IF(ISTEXT(E2), E2, ROUND(B2 * (1 - B3), 2))` ### Solve a system of two linear equations (Cramer's Rule formula) - **URL**: https://sheets.arte-soft.com/en/learn/solve-2x2-system-of-linear-equations-cramers-rule/ - **Summary**: Solve a1*x + b1*y = c1 and a2*x + b2*y = c2 directly in cells using determinants and guard parallel or redundant lines where det = 0. *Table — Determinant solution for resource-mix and blending equations:* | Constraint | Coeff x (A) | Coeff y (B) | RHS Total (C) | | --- | --- | --- | --- | | CNC Hours (Row 2) | 2 | 3 | 26 (2*4 + 3*6 = 26) | | Finishing Hours (Row 3) | 4 | 1 | 22 (4*4 + 1*6 = 22) | | Determinants | D = -10 | Dx = -40 (x = 4) | Dy = -60 (y = 6) | - **Formula (Zero-determinant safe formulas for x and y)**: `=LET(d, A2*B3 - B2*A3, IF(d=0, "No unique solution", ROUND((C2*B3 - B2*C3) / d, 4)))` - **Formula (Solve for variable y)**: `=LET(d, A2*B3 - B2*A3, IF(d=0, "No unique solution", ROUND((A2*C3 - C2*A3) / d, 4)))` ### Solve Implied Loan & Annuity Interest Rate from Payment, Principal, and Term - **URL**: https://sheets.arte-soft.com/en/learn/solve-annuity-and-loan-interest-rate-newton-raphson-formula/ - **Summary**: Back out the periodic interest rate and nominal APR of a level-payment loan or equipment lease using quadratic Newton-Raphson iteration and verify zero payment residual with PMT. *Table — Why loan interest rate has no algebraic closed form:* | Loan Parameter | Example Input | Solved Output | Verification | | --- | --- | --- | --- | | Principal (PV) | 10,000.00 | Monthly Rate = 0.010000 | 1.00% per month | | Term (N months) | 24 | Nominal APR = 0.1200 | 12.00% annual (12 * r) | | Monthly Payment | 470.734722 | Effective EAR = 0.1268 | (1 + r)^12 - 1 | | PMT Residual Check | ABS(PMT) - Payment | 0.00 | Exact payment tie-out | - **Formula (3-Step Newton-Raphson Periodic Rate Solver)**: `=LET(pv_amt, B2, nper, B3, pmt_amt, B4, rate_0, 2 * (nper * pmt_amt / pv_amt - 1) / (nper + 1), res_0, pv_amt * rate_0 / (1 - (1 + rate_0) ^ (-nper)) - pmt_amt, slp_0, pv_amt * ((1 - (1 + rate_0) ^ (-nper)) - rate_0 * nper * (1 + rate_0) ^ (-nper - 1)) / ((1 - (1 + rate_0) ^ (-nper)) ^ 2), rate_1, rate_0 - res_0 / slp_0, res_1, pv_amt * rate_1 / (1 - (1 + rate_1) ^ (-nper)) - pmt_amt, slp_1, pv_amt * ((1 - (1 + rate_1) ^ (-nper)) - rate_1 * nper * (1 + rate_1) ^ (-nper - 1)) / ((1 - (1 + rate_1) ^ (-nper)) ^ 2), rate_2, rate_1 - res_1 / slp_1, res_2, pv_amt * rate_2 / (1 - (1 + rate_2) ^ (-nper)) - pmt_amt, slp_2, pv_amt * ((1 - (1 + rate_2) ^ (-nper)) - rate_2 * nper * (1 + rate_2) ^ (-nper - 1)) / ((1 - (1 + rate_2) ^ (-nper)) ^ 2), IF(ABS(nper * pmt_amt - pv_amt) < 0.0001, 0, ROUND(rate_2 - res_2 / slp_2, 6)))` - **Formula (Round-Trip Payment Verification with PMT)**: `=ROUND(-PMT(E2, B3, B2) - B4, 2)` ### Solve a quadratic equation (ax^2 + bx + c = 0) with LET and SQRT - **URL**: https://sheets.arte-soft.com/en/learn/solve-quadratic-equation-discriminant-roots/ - **Summary**: Calculate the discriminant b^2 - 4ac, guard complex/linear cases cleanly, and compute both real roots (-b ± SQRT(d)) / (2a). *Table — Test the discriminant d = b^2 - 4ac before calling SQRT:* | a (A) | b (B) | c (C) | Discriminant d | Real Roots (x1, x2) | | --- | --- | --- | --- | --- | | 2 | -10 | 12 | 100 - 96 = 4 | x1 = 3, x2 = 2 | | 1 | -6 | 9 | 36 - 36 = 0 | x1 = 3, x2 = 3 | | 1 | 2 | 5 | 4 - 20 = -16 | "No real roots" | - **Formula (Quadratic root 1 (+SQRT) and root 2 (-SQRT) formulas)**: `=LET(d, B2^2 - 4 * A2 * C2, IF(A2=0, "Not quadratic", IF(d<0, "No real roots", ROUND((-B2 + SQRT(d)) / (2 * A2), 4))))` - **Formula (Second quadratic root (-SQRT))**: `=LET(d, B2^2 - 4 * A2 * C2, IF(A2=0, "Not quadratic", IF(d<0, "No real roots", ROUND((-B2 - SQRT(d)) / (2 * A2), 4))))` ### Solvency II BSCR Correlation Diversification & Coverage Formula - **URL**: https://sheets.arte-soft.com/en/learn/solvency-ii-bscr-correlation-diversification-and-risk-margin-formula/ - **Summary**: Calculate EIOPA Solvency II Standard-Formula Undiversified SCR Sum, Variance-Covariance Correlated Basic Solvency Capital Requirement SQRT(SCR_1^2 + SCR_2^2 + 2*rho*SCR_1*SCR_2), Diversification Benefit, and Solvency Coverage Ratio. *Table — Aggregate insurance risk modules via EIOPA’s quadratic correlation matrix—never simple addition!:* | Solvency II Capital Metric (Mkt=100M, Non-Life=60M, rho=0.25, EOF=200M) | Formula | Verified Output | | --- | --- | --- | | Undiversified SCR Sum (EUR M) | SCR_Market + SCR_NonLife | 160.00 EUR M | | Correlated BSCR Charge (EUR M) | SQRT(SCR_m^2 + SCR_n^2 + 2*rho*SCR_m*SCR_n) | 128.84 EUR M (160.00 @ rho=1) | | Capital Diversification Benefit | Undiversified_Sum - Correlated_BSCR | 31.16 EUR M (0.00 @ rho=1) | | Solvency II Coverage Ratio (x) | Eligible_Own_Funds / Correlated_BSCR | 1.5523 (155.23%; 1.2500 @ rho=1) | - **Formula (Solvency II Variance-Covariance BSCR Aggregation Formula)**: `=LET(sc_m, B2, sc_n, B3, rh_o, B4, eo_f, B5, IF(OR(sc_m < 0, sc_n < 0, sc_m + sc_n <= 0, rh_o < -1, rh_o > 1, eo_f <= 0), "Invalid Solvency II Input", ROUND(SQRT(sc_m ^ 2 + sc_n ^ 2 + 2 * rh_o * sc_m * sc_n), 2)))` - **Formula (Perfect-Correlation Stress Check (Set Correlation rho = 1.00))**: `=IF(ISTEXT(E3), E3, ROUND(B5 / E3, 4))` ### Sommerfeld Electronic Heat Capacity (γT) & Phonon Crossover Temperature - **URL**: https://sheets.arte-soft.com/en/learn/sommerfeld-electronic-heat-capacity-and-fermi-gas-gamma-formula/ - **Summary**: Calculate the free-electron Sommerfeld coefficient γ = (π^2 / 2) * Z * R / T_F (mJ/(mol·K^2)), linear electronic heat capacity C_el = γT, and cryogenic electron-phonon crossover temperature T_cross = SQRT(γ / A_ph). *Table — How Fermi-Dirac quantum statistics resolved the classical heat-capacity catastrophe!:* | Metal Cryogenic Regime (Cu: TF = 81,600 K, Z = 1) | Sommerfeld γ (mJ/mol·K^2) | Electronic C_el = γT | Dominant Thermal Carrier | | --- | --- | --- | --- | | Liquid Helium Bath (T = 4.0 K) | 0.5028 | 2.011 mJ/(mol·K) | Comparable to Debye A·T^3 (3.059) | | Crossover Point (T_cross = 3.24 K) | 0.5028 | 1.631 mJ/(mol·K) | Exact C_el = C_phonon Equality! | | Room Temperature (T = 300 K) | 0.5028 | 150.85 mJ/(mol·K) | Lattice Phonons Dominate (>99%) | - **Formula (Sommerfeld Electronic Molar Heat Capacity C_el = γ * T (mJ/(mol·K)))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0), "Invalid Fermi Inputs", ROUND(1000 * (PI() ^ 2 / 2) * B2 * 8.3144626 / B3 * B4, 3))` - **Formula (Cryogenic Electron-Phonon Crossover Temperature T_cross = SQRT(γ / A_ph) (K))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= 0), "Invalid Fermi Inputs", ROUND(SQRT((1000 * (PI() ^ 2 / 2) * B2 * 8.3144626 / B3) / B5), 2))` ### Sommerfeld Journal-Bearing Number (S) & Petroff Friction Torque - **URL**: https://sheets.arte-soft.com/en/learn/sommerfeld-number-and-petroff-journal-bearing-friction-torque/ - **Summary**: Calculate dimensionless hydrodynamic bearing Sommerfeld Number S = ((r / c)^2) * ((mu * N) / P) for Raimondi-Boyd eccentricity charts and Petroff's concentric viscous friction coefficient & shaft torque. *Table — Design hydrodynamic crankshaft and turbine oil-film bearings with S!:* | Journal Bearing Metric (r=40 mm, c=80 um, L=60 mm, N=25 rps, P=1.5 MPa) | Formula | mu = 0.03 Pa*s (Hot Oil) | mu = 0.09 Pa*s (Cold Oil) | | --- | --- | --- | --- | | Clearance Ratio (r / c) | 0.040 / 0.00008 | 500 | 500 | | Sommerfeld Number S | ((r/c)^2) * (mu * N / P) | 0.1250 | 0.3750 (Thicker film!) | | Petroff Friction Torque (N*m) | (4 * PI()^2 * mu * N * L * r^3) / c | 1.4212 N*m (223 W loss) | 4.2637 N*m (3x drag!) | - **Formula (Dimensionless Hydrodynamic Sommerfeld Bearing Number S)**: `=IF(OR(B3 <= 0, B6 <= 0), "Invalid Clearance or Bearing Load", ROUND(((B2 / B3) ^ 2) * ((B4 * B5) / B6), 4))` - **Formula (Petroff Concentric Journal-Bearing Drag Torque (N*m))**: `=ROUND((4 * (PI() ^ 2) * B4 * B5 * B7 * (B2 ^ 3)) / B3, 4)` ### Sort birthdays by month and day (ignoring birth year) - **URL**: https://sheets.arte-soft.com/en/learn/sort-birthdays-by-month-and-day-ignoring-year/ - **Summary**: Order team birthdays or annual renewals from January 1 to December 31 regardless of birth year using a numeric MMDD key and SORTBY. *Table — Why standard date sorting scrambles annual birthday calendars:* | Name (A) | Birthdate (B) | MMDD Key (C) | Calendar Rank | | --- | --- | --- | --- | | Maya | 1988-11-15 | 1115 | 4th (Nov 15) | | Leo | 2001-02-04 | 204 | 2nd (Feb 4) | | Zoe | 1994-02-01 | 201 | 1st (Feb 1) | | Sam | 1979-07-20 | 720 | 3rd (Jul 20) | - **Formula (MMDD sort key and SORTBY calendar order formulas)**: `=TEXTJOIN(", ", TRUE, SORTBY(A2:A5, C2:C5, 1))` - **Formula (Numeric MMDD helper key)**: `=MONTH(B2) * 100 + DAY(B2)` ### Sort by a custom list order (Critical, High, Medium, Low) with SORTBY & XMATCH - **URL**: https://sheets.arte-soft.com/en/learn/sort-by-custom-priority-list-sortby-xmatch/ - **Summary**: Sort tickets, sizes (XS, S, M, L, XL), or pipeline stages in business-defined order instead of alphabetical A–Z order. *Table — Why alphabetical SORT scrambles severity levels and garment sizes:* | Incident Ticket (A) | Severity (B) | Custom Rank =IFNA(XMATCH(B2,$E$2:$E$5),999) | Sorted Output Position | | --- | --- | --- | --- | | Fix footer typo | Low | 4 | #4 (Bottom) | | Checkout DB outage | Critical | 1 | #1 (Top!) | | Slow search API | High | 2 | #2 | | Button alignment | Medium | 3 | #3 | - **Formula (Sort rows by custom rank column with SORTBY)**: `=SORTBY(A2:B5,C2:C5,1)` - **Formula (Inspect the last ticket after custom priority sorting)**: `=INDEX(SORTBY(A2:B5, C2:C5, 1), 4, 1)` ### Sort and deduplicate comma-separated values inside a single cell - **URL**: https://sheets.arte-soft.com/en/learn/sort-comma-separated-tags-within-cell/ - **Summary**: Canonicalize messy tag strings ("urgent, billing, api, billing" -> "api, billing, urgent") using TEXTSPLIT, TRANSPOSE, UNIQUE, SORT, and TEXTJOIN. *Table — Why canonical sorted tags prevent missed exact matches:* | RawTags (A) | Pipeline Step | Normalized Output | | --- | --- | --- | | Urgent, billing, API, billing | Split -> Vertical -> Unique -> Sort -> Join | api, billing, urgent | - **Formula (Sort and deduplicate single-word tags in a cell)**: `=TEXTJOIN(", ", TRUE, SORT(UNIQUE(TRANSPOSE(TEXTSPLIT(LOWER(SUBSTITUTE(A2, " ", "")), ",")))))` - **Formula (Sort multi-word comma phrases (preserving internal spaces))**: `=TEXTJOIN(", ", TRUE, SORT(UNIQUE(TRANSPOSE(TEXTSPLIT(A2, ", ")))))` ### SORT function: build a live sorted leaderboard without editing source rows - **URL**: https://sheets.arte-soft.com/en/learn/sort-function-dynamic-table/ - **Summary**: Spill a sorted copy of a multi-column table ordered ascending or descending by any column, updating automatically whenever source numbers change. *Table — Keep raw market-stall entries in entry order:* | Stall (A) | Revenue (B) | | --- | --- | | Pear Orchard | 140 | | Berry Farm | 310 | | Herb Stand | 95 | | Stone Bakery | 225 | - **Formula (Sort by column 2 in descending order (-1))**: `=INDEX(SORT(A2:B5,2,-1),1,1)` - **Formula (Verify automatic re-ranking when a number changes)**: `=INDEX(SORT(A2:B5,2,1),1,1)` ### Sort SKUs and composite codes by an embedded substring or middle number (SORTBY) - **URL**: https://sheets.arte-soft.com/en/learn/sort-skus-and-codes-by-embedded-substring-sortby/ - **Summary**: Sort compound identifiers like "WH-1050-EUR" and "ZR-0015-USA" by their middle part number or trailing region suffix using TEXTBEFORE, TEXTAFTER, and SORTBY. *Table — Sort compound codes by the part that actually matters—without splitting your output!:* | Raw SKU (A) | Middle Part # Key (B) | Region Suffix Key (C) | Sorted by Part # Ascending | | --- | --- | --- | --- | | "ZR-0015-USA" | 15 | "USA" | 1st: ZR-0015-USA | | "AX-0080-USA" | 80 | "USA" | 2nd: AX-0080-USA | | "BL-0420-APAC" | 420 | "APAC" | 3rd: BL-0420-APAC | | "WH-1050-EUR" | 1050 | "EUR" | 4th: WH-1050-EUR | - **Formula (Sort intact SKUs ascending by embedded middle part number)**: `=SORTBY(A2:A5,B2:B5,1)` - **Formula (Two-level sort: Region suffix first, then part number ascending)**: `=SORTBY(A2:A5,C2:C5,1,B2:B5,1)` ### Sort text by character length (with alphabetical tie-breaking in SORTBY) - **URL**: https://sheets.arte-soft.com/en/learn/sort-text-by-character-length-sortby/ - **Summary**: Order product SKUs, ad copy, or domain names from shortest to longest (or longest first) and break equal-length ties A–Z using two-level SORTBY. *Table — Combine character length and alphabetical tie-breaking in SORTBY:* | Keyword (A) | Length (B) | Sorted Shortest -> Longest, A–Z | | --- | --- | --- | | plum | 4 | 1. kiwi (4 chars, K before P) | | banana | 6 | 2. plum (4 chars) | | kiwi | 4 | 3. banana (6 chars) | | strawberry | 10 | 4. strawberry (10 chars) | - **Formula (Shortest-first and longest-first multi-key SORTBY formulas)**: `=SORTBY(A2:A5, B2:B5, 1, A2:A5, 1)` - **Formula (Sort longest strings first (descending length, A–Z ties))**: `=SORTBY(A2:A5, B2:B5, -1, A2:A5, 1)` - **Formula (Additional worked calculation)**: `=TEXTJOIN(", ", TRUE, SORTBY(A2:A5, B2:B5, 1, A2:A5, 1))` - **Formula (Additional worked calculation)**: `=TEXTJOIN(", ", TRUE, SORTBY(A2:A5, B2:B5, -1, A2:A5, 1))` - **Formula (Additional worked calculation)**: `=INDEX(SORTBY(A2:A5, B2:B5, 1, A2:A5, 1), 1, 1)` ### Break Tied Ranks & Display Sorted Leaderboards (Helper Key & SORTBY) - **URL**: https://sheets.arte-soft.com/en/learn/sort-ties-deterministically-with-tie-breaker-helper-column/ - **Summary**: Build a deterministic leaderboard by revenue, margin and a unique stable ID. Use multi-key SORTBY or an integer rank helper without adding fragile decimal offsets to scores. - **Formula (Validate the example inputs once)**: `=IF(COUNT(B2:D5)<>12,"Enter numeric revenue, margin and ID",IF(OR(MIN(C2:C5)<0,MAX(C2:C5)>100),"Margin must be 0..100 points",IF(OR(COUNTIF(D2:D5,D2)>1,COUNTIF(D2:D5,D3)>1,COUNTIF(D2:D5,D4)>1,COUNTIF(D2:D5,D5)>1),"IDs must be unique","OK")))` - **Formula (Sort by three keys)**: `=IF($H$2<>"OK",$H$2,TEXTJOIN(" > ",TRUE,SORTBY(A2:A5,B2:B5,-1,C2:C5,-1,D2:D5,1)))` - **Formula (Unique helper positions without SORTBY)**: `=IF($H$2<>"OK",$H$2,1+COUNTIFS($B$2:$B$5,">"&B2)+COUNTIFS($B$2:$B$5,B2,$C$2:$C$5,">"&C2)+COUNTIFS($B$2:$B$5,B2,$C$2:$C$5,C2,$D$2:$D$5,"<"&D2))` ### SORTBY function: sort by multiple columns or by a column excluded from output - **URL**: https://sheets.arte-soft.com/en/learn/sortby-function-multiple-columns/ - **Summary**: Rank data across two or more tie-breaker columns—and return only the columns you want to display—using SORTBY. *Table — Why SORTBY goes further than SORT:* | Candidate (A) | Tier (B) | Score (C) | | --- | --- | --- | | Liam | 2 | 92 | | Maya | 1 | 85 | | Noah | 1 | 94 | | Zoe | 2 | 88 | - **Formula (Two-level sort: Tier ascending (1), then Score descending (-1))**: `=TEXTJOIN(", ", TRUE, SORTBY(A2:A5, B2:B5, 1, C2:C5, -1))` - **Formula (Mismatched range lengths return #VALUE!)**: `=SORTBY(A2:A5, B2:B4, 1)` ### Souders-Brown Equation: Knockout-Drum Max Vapor Velocity & Diameter - **URL**: https://sheets.arte-soft.com/en/learn/souders-brown-vapor-liquid-separator-maximum-gas-velocity/ - **Summary**: Size vertical vapor-liquid flash drums, demister pads, and distillation columns against droplet entrainment using V_max = K_SB * SQRT((rho_L - rho_V) / rho_V) (m/s) and minimum vessel inside diameter D_min. *Table — Prevent liquid droplet carryover into compressors with Souders & Brown’s settling balance!:* | Separator Operating Pressure (rhoL = 780 kg/m^3, K_SB = 0.107 m/s) | Density Ratio (rhoL - rhoV) / rhoV | Max Vapor Velocity V_max (m/s) | Min Vessel ID D_min (Q_V = 4.2 m^3/s) | | --- | --- | --- | --- | | Moderate Pressure Gas (rhoV = 18.5 kg/m^3) | 41.16 | 0.686 m/s | 2.791 m | | High-Pressure Dense Gas (rhoV = 45.0 kg/m^3) | 16.33 | 0.432 m/s | 3.517 m | | Supercritical Singularity (rhoL <= rhoV) | Phase-Density Guard | "Invalid Phase Densities" | Requires rho_L > rho_V > 0 | - **Formula (Maximum Allowable Superficial Vapor Velocity V_max (m/s))**: `=IF(OR(B2 <= 0, B4 <= 0, B3 <= B4, B5 <= 0), "Invalid Phase Densities", ROUND(B2 * SQRT((B3 - B4) / B4), 3))` - **Formula (Minimum Vertical Knockout-Drum Inside Diameter D_min (m))**: `=IF(OR(B2 <= 0, B4 <= 0, B3 <= B4, B5 <= 0), "Invalid Phase Densities", ROUND(SQRT((4 * B5) / (PI() * (B2 * SQRT((B3 - B4) / B4)))), 3))` ### Individuals control chart: moving-range three-sigma limits - **URL**: https://sheets.arte-soft.com/en/learn/spc-shewhart-control-chart-ucl-lcl-3-sigma-limits/ - **Summary**: Estimate individual-observation control limits using average adjacent moving range, then compare a new reading with the fixed baseline. *Table — Voice of the Process (UCL / LCL) vs Voice of the Customer (USL / LSL):* | SPC Control Limit Metric | Formula on Baseline [48,50,52,49,51] | Result | | --- | --- | --- | | Center | AVERAGE(B2:B6) | 50 | | Average moving range | AVERAGE(C3:C6) | 2.25 | | Upper limit | =ROUND(AVERAGE(B2:B6)+3*AVERAGE(C3:C6)/1.128,4) | 55.9840 | | Lower limit | =ROUND(AVERAGE(B2:B6)-3*AVERAGE(C3:C6)/1.128,4) | 44.0160 | - **Formula (3-Sigma Upper Control Limit (UCL), Lower Control Limit (LCL), and Excursion Check)**: `=ROUND(AVERAGE(B2:B6)+3*AVERAGE(C3:C6)/1.128,4)` - **Formula (Compare a new observation with the baseline limits)**: `=IF(OR(COUNT(B2:B6)<>5,NOT(ISNUMBER(D2))),"Invalid readings",LET(center,AVERAGE(B2:B6),sigma,AVERAGE(C3:C6)/1.128,IF(sigma=0,"Insufficient baseline variation",IF(OR(D2>center+3*sigma,D2= 2 Ranked Items" | - **Formula (Raw Spearman Footrule L1 Distance D = Σ |R_A,i - R_B,i|)**: `=IF(COUNT(B2:B7) < 2, "Need >= 2 Ranked Items", SUM(D2:D7))` - **Formula (Normalized Footrule Rank Similarity (1 - D / INT(n² / 2)))**: `=IF(COUNT(B2:B7) < 2, "Need >= 2 Ranked Items", ROUND(1 - (SUM(D2:D7) / INT((COUNT(B2:B7) ^ 2) / 2)), 4))` ### Spearman Rank Correlation (rho) formula: outlier-resistant CORREL on ranks - **URL**: https://sheets.arte-soft.com/en/learn/spearman-rank-correlation-formula-rank-correl/ - **Summary**: Measure monotonic non-linear relationships and resist extreme outliers by computing Pearson CORREL across RANK columns. *Table — Why Spearman rho spots perfect monotonic trends that Pearson r underestimates!:* | X (A) | Nonlinear Y (B) | RankX (C) | RankY (D) | Comparison | | --- | --- | --- | --- | --- | | 1 | 2 | 5 | 5 | Linear Pearson r = 0.7559 | | 2 | 8 | 4 | 4 | Spearman Rank rho = 1.0000! | | 3 / 4 / 5 | 25 / 90 / 1000 | 3 / 2 / 1 | 3 / 2 / 1 | Swap Y2<->Y3 -> rho = 0.9000 | - **Formula (Spearman Rank Correlation (CORREL on ranks) vs linear Pearson r)**: `=ROUND(CORREL(C2:C6, D2:D6), 4)` - **Formula (Compare against raw linear Pearson correlation on skewed values)**: `=ROUND(CORREL(A2:A6, B2:B6), 4)` - **Formula (Average ranks when values tie)**: `=RANK(A2,$A$2:$A$6)+(COUNTIF($A$2:$A$6,A2)-1)/2` ### Coffee TDS, Extraction Yield (EY %) & Brew Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/specialty-coffee-total-dissolved-solids-tds-extraction-yield-and-brew-ratio/ - **Summary**: Calculate Pour-Over & Espresso Water-to-Coffee Input Ratio, Spent-Puck Liquid Retained Ratio LRR (g/g), Extracted Coffee Solubles (g), and SCA Extraction Yield EY (%). *Table — Why a 9.8% TDS espresso shot and a 1.42% TDS V60 pour-over have the EXACT SAME 20.1% Extraction Yield!:* | SCA Coffee Extraction KPI (Dose=18.5 g: 300g/262g @ 1.42% Filter vs 65g/38g @ 9.80% Espresso) | Formula | Verified Output | | --- | --- | --- | | Water-to-Coffee Input Ratio | Pour_Water_In_g / Dry_Dose_g | 16.22 : 1 (3.51 : 1 @ espresso) | | Liquid Retained Ratio LRR (g/g) | (Pour_Water_In_g - Beverage_Out_g) / Dose_g | 2.05 g/g (1.46 g/g @ espresso puck) | | Extracted Coffee Solubles (g) | Beverage_Yield_Out_g * (TDS_Pct / 100) | 3.72 g (3.72 g identical solubles!) | | Extraction Yield EY (%) | (Extracted_Solubles_g / Dry_Dose_g) * 100 | 20.11% (20.13% identical sweet spot!) | - **Formula (SCA Beverage-Out Mass Balance Extraction Yield & Liquid Retention Formula)**: `=LET(dc_g, B2, wi_g, B3, bo_g, B4, td_p, B5, ex_g, bo_g * (td_p / 100), IF(OR(dc_g <= 2, bo_g <= 5, wi_g <= bo_g, td_p <= 0.3, td_p > 20), "Invalid Brew Input", ROUND((ex_g / dc_g) * 100, 2)))` - **Formula (9-Bar Espresso 1:2.05 Shot Equivalence Check (Set Water B3 = 65 g, Out B4 = 38 g, TDS B5 = 9.8%))**: `=IF(ISTEXT(E5), E5, ROUND((B3 - B4) / B2, 2))` ### Spence Job-Market Signaling Separating Threshold Formula - **URL**: https://sheets.arte-soft.com/en/learn/spence-job-market-signaling-separating-education-threshold/ - **Summary**: Compute the single-crossing separating education interval [e_min, e_max], Riley least-cost credential e* = (y_H - y_L)/c_L, and pooling Pareto-dominance cutoff. *Table — Enforce Spence’s single-crossing condition to separate High from Low productivity:* | Spence Signaling Quantity (y_H=120, y_L=60, c_H=10, c_L=20) | Formula | Verified Output | | --- | --- | --- | | Riley Minimum Credential (e_min) | (y_H - y_L) / c_L | 3.0000 units | | Maximum IC Credential (e_max) | (y_H - y_L) / c_H | 6.0000 units | | High-Type Riley Net Payoff | y_H - c_H * e_min | 90.00 | | Zero-Education Pooling Wage | lambda_H * y_H + (1 - lambda_H) * y_L | 84.00 (at lambda_H = 0.40) | - **Formula (Riley Least-Cost Separating Credential e_min = (y_H - y_L) / c_L Formula)**: `=LET(y_hi, B2, y_lo, B3, c_hi, B4, c_lo, B5, IF(OR(y_lo < 0, y_hi <= y_lo, c_hi <= 0, c_lo <= c_hi), "Single-Crossing Violated (Require 0 < c_H < c_L)", ROUND((y_hi - y_lo) / c_lo, 4)))` - **Formula (High-Type Riley Separating Net Payoff vs Zero-Signal Pooling Wage Formula)**: `=LET(y_hi, B2, y_lo, B3, c_hi, B4, c_lo, B5, IF(OR(y_lo < 0, y_hi <= y_lo, c_hi <= 0, c_lo <= c_hi), "Single-Crossing Violated (Require 0 < c_H < c_L)", ROUND(y_hi - c_hi * ((y_hi - y_lo) / c_lo), 4)))` ### Spengler Double Marginalization & Channel Fix Formula - **URL**: https://sheets.arte-soft.com/en/learn/spengler-double-marginalization-and-two-part-vertical-channel-fix/ - **Summary**: Quantify Joseph Spengler’s (1950) vertical double-marginalization profit loss (25%) and consumer-surplus loss (75%) and solve the wholesale w* = c + franchise fee channel fix. *Table — Why two successive monopolies hurt BOTH consumers AND their own combined profit!:* | Vertical Channel Regime (a = 100, b = 1, c = 20) | Retail Price P & Quantity Q | Combined Profit & Consumer Surplus | | --- | --- | --- | | Uncoordinated Double Marginalization | w = 60, P = 80.00, Q = 20.00 | Profit = 1,200.00 \| CS = 200.00 | | Integrated / Two-Part Franchise (w* = c) | w* = 20, P = 60.00, Q = 40.00 | Profit = 1,600.00 \| CS = 800.00 | | Channel Coordination Gain | Price -20.00, Output +20.00 (+100%) | +400.00 Profit \| +600.00 CS (+1,000 Total!) | - **Formula (Uncoordinated Double-Marginalization Combined Channel Profit Formula)**: `=LET(a_ch, B2, b_sl, B3, c_mc, B4, IF(OR(a_ch <= c_mc, c_mc < 0, b_sl <= 0), "Require a > c >= 0 and b > 0", ROUND((3 * ((a_ch - c_mc)^2)) / (16 * b_sl), 4)))` - **Formula (Total Social Welfare Gain (Profit Gain + Consumer Surplus Gain) from Eliminating Double Marginalization)**: `=LET(a_ch, B2, b_sl, B3, c_mc, B4, IF(OR(a_ch <= c_mc, c_mc < 0, b_sl <= 0), "Require a > c >= 0 and b > 0", ROUND((5 * ((a_ch - c_mc)^2)) / (32 * b_sl), 4)))` ### Spetzler-Martin Brain AVM Grading Scale (Grades I–V & Spetzler-Ponce Class) - **URL**: https://sheets.arte-soft.com/en/learn/spetzler-martin-brain-avm-surgical-grading-scale-1-to-5/ - **Summary**: Calculate Robert Spetzler and Neil Martin’s cerebral arteriovenous malformation surgical risk score (1–5: Nidus Size <3 cm = 1, 3–6 cm = 2, >6 cm = 3; Eloquent Cortex = +1; Deep Venous Drainage = +1) and 3-tier Spetzler-Ponce treatment class. *Table — How three angiographic features predict microsurgical AVM resection morbidity!:* | Spetzler-Martin Sum (1–5) | Spetzler-Ponce 3-Tier Class | Standard Cerebrovascular Strategy | | --- | --- | --- | | 1 – 2 Points (Grade I – II) | Class A (Low Operative Risk) | Microsurgical Resection First-Line | | 3 Points (Grade III; e.g., 3.5 cm + Eloquent) | Class B (Intermediate Risk) | Multimodal Embolization / Radiosurgery / Surgery | | 4 – 5 Points (Grade IV – V) | Class C (High Surgical Morbidity) | Conservative Management (Unless Bleed Rescue) | - **Formula (Spetzler-Martin Brain AVM Numeric Grade (1 to 5))**: `=IF(OR(B2 <= 0, NOT(OR(B3 = 0, B3 = 1)), NOT(OR(B4 = 0, B4 = 1))), "Invalid AVM Inputs", IF(B2 < 3, 1, IF(B2 <= 6, 2, 3)) + B3 + B4)` - **Formula (Spetzler-Ponce 3-Tier Management Class (Class A, B, or C))**: `=IF(OR(B2 <= 0, NOT(OR(B3 = 0, B3 = 1)), NOT(OR(B4 = 0, B4 = 1))), "Invalid AVM Inputs", IF(IF(B2 < 3, 1, IF(B2 <= 6, 2, 3)) + B3 + B4 <= 2, "Spetzler-Ponce Class A (Grades I-II: Microsurgery Favored)", IF(IF(B2 < 3, 1, IF(B2 <= 6, 2, 3)) + B3 + B4 = 3, "Spetzler-Ponce Class B (Grade III: Multimodal Therapy)", "Spetzler-Ponce Class C (Grades IV-V: High Surgical Risk)")))` ### Spiegelhalter’s Z-Test for Probability Calibration (Exact Brier Decomposition) - **URL**: https://sheets.arte-soft.com/en/learn/spiegelhalter-z-statistic-probability-calibration-brier-test/ - **Summary**: Test whether ML or clinical risk probabilities p_i are calibrated without arbitrary Hosmer-Lemeshow decile binning via David Spiegelhalter’s (1986) exact Z-statistic! *Table — Bin-free calibration testing—why biostatisticians prefer Spiegelhalter’s Z over Hosmer-Lemeshow deciles!:* | Binary Outcome Vector Y vs p = [0.15, 0.25, 0.65, 0.80, 0.90] | Spiegelhalter Z | Calibration Verdict (α = 0.05) | | --- | --- | --- | | Y = [0, 0, 1, 1, 1] (Aligned Outcomes) | -1.0808 (\|Z\| < 1.96) | Well-Calibrated Probabilities | | Y = [1, 1, 1, 0, 0] (Overconfident Miscalibration) | +4.1717 (\|Z\| >= 1.96) | Significant Miscalibration (Reject H0) | | All Predictions Exactly p = 0.50 | "Degenerate 0.50 Predictions" | Denominator (1 - 2p) = 0 Guard | - **Formula (Spiegelhalter Exact Brier Calibration Z-Statistic)**: `=IF(SUM(E2:E6) <= 0, "Degenerate 0.50 Predictions", ROUND(SUM(D2:D6) / SQRT(SUM(E2:E6)), 4))` - **Formula (Two-Sided α = 0.05 Probability Calibration Decision)**: `=IF(SUM(E2:E6) <= 0, "Degenerate 0.50 Predictions", IF(ABS(SUM(D2:D6) / SQRT(SUM(E2:E6))) >= 1.95996, "Significant Miscalibration (|Z| >= 1.96)", "Well-Calibrated Probabilities (|Z| < 1.96)"))` ### Split L x W x H dimensions ("24 x 18 x 12") into numbers and volume - **URL**: https://sheets.arte-soft.com/en/learn/split-dimensions-lxwxh-into-numbers/ - **Summary**: Parse 2D or 3D carton dimension text into numeric Length, Width, Height, and cubic volume using TEXTBEFORE, TEXTAFTER, and VALUE. *Table — Normalize spaces and "X"/"x" delimiters first:* | BoxSpec (A) | Length | Width | Height | Cubic Volume | | --- | --- | --- | --- | --- | | 24 x 18 x 12 | 24 | 18 | 12 | 5184 | | 10X10X5 | 10 | 10 | 5 | 500 | - **Formula (Length, Width, Height, and Cubic Volume formulas)**: `=LET(s, SUBSTITUTE(LOWER(A2), " ", ""), VALUE(TEXTBEFORE(s, "x")) * VALUE(TEXTBEFORE(TEXTAFTER(s, "x"), "x")) * VALUE(TEXTAFTER(s, "x", 2)))` - **Formula (Extract middle Width dimension)**: `=LET(s, SUBSTITUTE(LOWER(A2), " ", ""), VALUE(TEXTBEFORE(TEXTAFTER(s, "x"), "x")))` ### Split first, middle, and last names (plus "Last, First" comma format) - **URL**: https://sheets.arte-soft.com/en/learn/split-first-middle-last-name-formulas/ - **Summary**: Extract given names, optional middle names, and surnames cleanly with TEXTBEFORE and TEXTAFTER—and flip "Last, First" payroll strings. *Table — Anchor from both ends with instance_num = 1 and -1:* | FullName (A) | First Name | Middle Name | Last Name | | --- | --- | --- | --- | | Grace Brewster Hopper | Grace | Brewster | Hopper | | Ada Lovelace | Ada | (empty) | Lovelace | - **Formula (First, middle, last, and "Last, First" reversal formulas)**: `=TEXTBEFORE(TRIM(A2), " ")` - **Formula (Optional middle-name extractor)**: `=LET(t, TRIM(A2), IF(LEN(t) - LEN(SUBSTITUTE(t, " ", "")) < 2, "", TEXTBEFORE(TEXTAFTER(t, " "), " ", -1)))` ### Split a number into digits and get the digit at any place value - **URL**: https://sheets.arte-soft.com/en/learn/split-number-into-individual-digits-place-value/ - **Summary**: Extract the Nth digit from the left with MID or isolate ones, tens, and hundreds place values numerically with QUOTIENT and MOD. *Table — Left-to-right text indexing vs right-to-left place value math:* | Number (A) | 2nd From Left | Hundreds (10^2) | Tens (10^1) | Ones (10^0) | | --- | --- | --- | --- | --- | | 7482 | 4 | 4 | 8 | 2 | | 85 | 5 | 0 | 8 | 5 | - **Formula (Place-value digit and Nth-from-left digit formulas)**: `=MOD(QUOTIENT(ABS(TRUNC(A2)), 10^B2), 10)` - **Formula (Nth digit from the left)**: `=IFERROR(VALUE(MID(ABS(TRUNC(A2)), C2, 1)), 0)` ### Corporate Split-Off Exchange Offer Proration & EPS Formula - **URL**: https://sheets.arte-soft.com/en/learn/split-off-exchange-offer-share-retire-eps-accretion-and-proration-formula/ - **Summary**: Calculate IRC Section 355 Split-Off Parent Shares Retired (M), Oversubscribed Tender Proration Factor (%), Post-Split RemainCo EPS ($/sh), and EPS Lift vs Pro-Rata Spin-Off (%). *Table — Unlike a pro-rata spin-off, an IRC §355 split-off retires parent shares like a tax-free buyback!:* | IRC §355 Split-Off KPI (500M Parent, 216M SpinCo @ 4.32x, 200M Tendered, $2,250M NI) | Formula | Verified Output | | --- | --- | --- | | Parent Shares Retired (M) | MIN(Tendered_M, SpinCo_Offered_M / Exch_Ratio) | 50.00M (40.00M @ 40M Tender) | | Tender Proration Factor (%) | MIN(1, (SpinCo_M / Exch_Ratio) / Tendered_M) * 100 | 25.00% (100.00% @ 40M Tender) | | Post-Split RemainCo EPS ($/sh) | RemainCo_NI_M / (Parent_Shares_M - Retired_M) | $5.00/sh ($4.89/sh @ 40M) | | EPS Lift vs Pro-Rata Spin (%) | ((SplitOff_EPS - Spin_EPS) / Spin_EPS) * 100 | 11.11% (8.70% @ 40M Tender) | - **Formula (Split-Off Share Retirement, Proration & RemainCo EPS Formula)**: `=LET(pr_s, B2, sp_o, B3, ex_r, B4, tn_s, B5, ni_r, B6, IF(OR(pr_s <= 0, sp_o <= 0, ex_r <= 0, sp_o / ex_r >= pr_s, tn_s <= 0, ni_r <= 0), "Invalid Split-Off Input", LET(rt_s, MIN(tn_s, sp_o / ex_r), ep_s, ni_r / (pr_s - rt_s), ep_0, ni_r / pr_s, ROUND(((ep_s - ep_0) / ep_0) * 100, 2))))` - **Formula (Undersubscribed Clean-Up Spin Check (Set Parent Tendered Shares = 40.00M))**: `=IF(ISTEXT(E5), E5, ROUND(B6 / (B2 - MIN(B5, B3 / B4)), 2))` ### Split a contract payment or prepaid cost across calendar months (daily proration) - **URL**: https://sheets.arte-soft.com/en/learn/split-payment-or-cost-across-months/ - **Summary**: Allocate a hypothetical contract amount proportionally to inclusive active calendar days in each month. *Table — Exact daily overlap allocation across partial start and end months:* | Month Start (D) | Active Window | Overlap Days | Allocated Amount ($100/d) | | --- | --- | --- | --- | | 2026-04-01 | Apr 16..Apr 30 | 15 | 1500 | | 2026-05-01 | May 01..May 31 | 31 | 3100 | | 2026-06-01 | Jun 01..Jun 14 | 14 | 1400 | | 2026-07-01 | (outside term) | 0 | 0 | - **Formula (Monthly prorated allocation formula with LET)**: `=LET(mEnd, EOMONTH(D2, 0), totDays, C2 - B2 + 1, ovDays, MAX(0, MIN(C2, mEnd) - MAX(B2, D2) + 1), ROUND(A2 * ovDays / totDays, 2))` - **Formula (Active days inside the reporting month)**: `=MAX(0, MIN(C2, EOMONTH(D2, 0)) - MAX(B2, D2) + 1)` ### Split "Width x Height" Dimension Strings into Numeric Columns & Surface Area - **URL**: https://sheets.arte-soft.com/en/learn/split-width-by-height-dimensions-into-numeric-columns-find-value/ - **Summary**: Parse messy catalog dimension strings like "24.5 x 18", "120X80 cm", or "60×40" into numeric Width, Height, and Area columns using LOWER, SUBSTITUTE, FIND, LEFT, MID, and VALUE. *Table — Normalizing mixed separators ("x", "X", "×") and unit suffixes before splitting:* | Raw Spec | Normalized String | Numeric Width | Numeric Height | Area (W * H) | | --- | --- | --- | --- | --- | | "24.5 x 18" | "24.5x18" | 24.5 | 18 | 441 | | "120X80 cm" | "120x80" | 120 | 80 | 9600 | | "60 × 40 cm" | "60x40" | 60 | 40 | 2400 | - **Formula (Extract Numeric Width (Left of "x"))**: `=LET(norm, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(LOWER(A2), "×", "x"), "cm", ""), " ", ""), VALUE(LEFT(norm, FIND("x", norm) - 1)))` - **Formula (Extract Numeric Height (Right of "x"))**: `=LET(norm, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(LOWER(A2), "×", "x"), "cm", ""), " ", ""), VALUE(MID(norm, FIND("x", norm) + 1, LEN(norm))))` ### Spray Dryer Water Evaporation, Powder Output & Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/spray-dryer-evaporation-rate-solids-mass-balance-and-outlet-thermal-efficiency/ - **Summary**: Calculate Bone-Dry Solids Throughput (kg/hr), Commercial Residual-Moisture Powder Rate (kg/hr), Spray-Chamber Water Evaporated (kg/hr), and Ideal Adiabatic Thermal Efficiency (%). *Table — Pre-concentrating evaporator feed solids from 40% to 50% slashes spray-dryer water evaporation per kg of powder by 34%!:* | Spray Dryer KPI (2,000 kg/hr @ 40% Solids -> 4% Moisture, 190°C/85°C/20°C) | Formula | Verified Output | | --- | --- | --- | | Bone-Dry Solids Rate (kg/hr) | Feed_kg_hr * Feed_Solids_Frac | 800.00 kg/hr (1,000 @ 50% solids) | | Commercial Powder Output (kg/hr) | (Feed * Feed_Solids) / (1 - Moist_Frac) | 833.33 kg/hr (1,041.67 @ 50% solids) | | Chamber Water Evaporated (kg/hr) | Feed_kg_hr - Commercial_Powder_kg_hr | 1,166.67 kg/hr (958.33 @ 50% solids!) | | Adiabatic Thermal Efficiency (%) | ((T_in - T_out) / (T_in - T_amb)) * 100 | 61.76% | - **Formula (Spray-Dryer Solids Conservation & Water Evaporation Formula)**: `=LET(fd_k, B2, xf_s, B3, mw_p, B4, ti_c, B5, to_c, B6, ta_c, B7, IF(OR(fd_k <= 0, xf_s <= 0, mw_p < 0, mw_p >= 0.3, xf_s >= 1 - mw_p, ta_c >= to_c, to_c >= ti_c), "Invalid Spray Dryer Input", LET(pw_k, (fd_k * xf_s) / (1 - mw_p), ROUND(fd_k - pw_k, 2))))` - **Formula (Falling-Film Evaporator Pre-Concentration Energy Win Check (Set Feed Solids = 0.50))**: `=IF(ISTEXT(E4), E4, ROUND(((B5 - B6) / (B5 - B7)) * 100, 2))` ### Sprint Burndown Chart Formula: Ideal Remaining Line, Daily Velocity & Completion Forecast - **URL**: https://sheets.arte-soft.com/en/learn/sprint-burndown-chart-ideal-trendline-and-velocity-forecast/ - **Summary**: Build an agile Sprint Burndown table and line chart: compute Ideal Remaining Story Points P_0 * (1 - d / D), Schedule Variance, Realized Daily Velocity, and Projected Days to Zero. *Table — Pair a linear Ideal Burndown line with Realized Daily Velocity to spot scope creep early!:* | Sprint Metric (P_0 = 80 pts, D = 10 days, Day d = 4, P_rem = 52 pts) | Worksheet Formula | Evaluated Result | | --- | --- | --- | | Ideal Remaining Story Points at Day d | =B2 * (1 - B4 / B3) | 48.00 pts | | Burndown Variance (Actual - Ideal) | =B5 - B2 * (1 - B4 / B3) | +4.00 pts (Behind Ideal) | | Realized Burn Velocity (pts / day) | =(B2 - B5) / B4 | 7.00 pts/day | | Projected Total Working Days to Zero | =ROUND(B2 / ((B2 - B5) / B4), 2) | 11.43 days (> 10-day Sprint!) | - **Formula (Ideal Remaining Story Points at Elapsed Working Day d)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 > B3), "Invalid Sprint Parameters", ROUND(B2 * (1 - B4 / B3), 2))` - **Formula (Projected Sprint Working Days Required to Burn Remaining Backlog to Zero)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 > B3), "Invalid Sprint Parameters", IF(B5 >= B2, "Stalled or Scope Added: No Net Burn", ROUND(B2 / ((B2 - B5) / B4), 2)))` ### SQRT function: calculate square roots, diagonal distances, and standard error - **URL**: https://sheets.arte-soft.com/en/learn/sqrt-function-square-root/ - **Summary**: Compute principal square roots for geometry, EOQ inventory sizing, and sample standard error (s / SQRT(n)) with SQRT. *Table — Diagonal span and sample standard error:* | BayWidth (A) | BayLength (B) | SampleSD (D) | SampleSize (E) | | --- | --- | --- | --- | | 9 | 12 | 18 | 36 | - **Formula (Calculate diagonal length and standard error)**: `=SQRT(A2^2 + B2^2)` - **Formula (Negative inputs return #NUM!)**: `=SQRT(-16)` ### Square Root of n*Pi and Gaussian Normal Density Formulas (SQRTPI) - **URL**: https://sheets.arte-soft.com/en/learn/sqrtpi-gaussian-normalizing-constant-and-normal-peak-density/ - **Summary**: Calculate sqrt(n * pi) normalizing constants, standard normal peak height 1 / (sigma * sqrt(2*pi)), and Gaussian bell-curve ordinates using SQRT and PI. *Table — Where sqrt(n * pi) appears in statistics and physics:* | Multiplier (n) | Exact Meaning | SQRT(n * PI()) | Application | | --- | --- | --- | --- | | 1 | sqrt(pi) = Gamma(0.5) | 1.772454 | Chi-square df=1 & error-function scaling | | 2 | sqrt(2 * pi) | 2.506628 | Standard normal PDF denominator | | 0 | Origin check | 0.000000 | Zero radius boundary | | -1 | Negative domain | #NUM! | Invalid negative radicand guard | - **Formula (SQRTPI Formula With Negative-Domain Guard)**: `=IF(B2 < 0, "#NUM!", ROUND(SQRT(B2 * PI()), 6))` - **Formula (Gaussian Probability Density Ordinate f(x; mu, sigma))**: `=ROUND(EXP(-0.5 * POWER((B5 - B3) / B4, 2)) / (B4 * SQRT(2 * PI())), 6)` ### SRE SLO Error Budget & Burn-Rate Alert Formula - **URL**: https://sheets.arte-soft.com/en/learn/sre-slo-error-budget-and-multi-window-burn-rate-alert-formula/ - **Summary**: Calculate monthly SLO error-budget minutes, dimensionless Burn Rate = Error_Rate / (1 - SLO), hours to exhaustion, and Google SRE 14.4x fast-burn paging thresholds. *Table — Replace noisy raw error-count alerts with dimensionless SRE Error-Budget Burn Rates!:* | SRE Error-Budget Metric (SLO=99.9%, 30d, 1,440/100k Errors) | Formula | Verified Output | | --- | --- | --- | | 30-Day Error Budget (Minutes) | W_days * 1,440 * (1 - SLO) | 43.20 minutes | | Current Error-Budget Burn Rate (BR) | (Errors / Requests) / (1 - SLO) | 14.4000x (2% Budget / Hour) | | Hours Until 100% Budget Exhaustion | (W_days * 24) / BR | 50.00 hours | | Multi-Severity Alert Tier | >= 14.4x Page \| >= 1.0x Ticket \| < 1.0x OK | PAGE: Critical Fast Burn (>= 14.4x) | - **Formula (Dimensionless Error-Budget Burn Rate Formula)**: `=LET(slo_t, B2, w_dy, B3, n_rq, B4, n_er, B5, IF(OR(slo_t <= 0, slo_t >= 1, w_dy <= 0, n_rq <= 0, n_er < 0, n_er > n_rq), "Invalid SLO Input", ROUND((n_er / n_rq) / (1 - slo_t), 4)))` - **Formula (SRE Burn-Rate Alert Routing Formula)**: `=IF(ISTEXT(E3), E3, IF(E3 >= 14.4, "PAGE: Critical Fast Burn (>= 14.4x)", IF(E3 >= 1, "TICKET: Slow Burn (>= 1.0x)", "OK: Within Error Budget")))` ### Stackelberg Leader-Follower Duopoly Output & Profit Formula - **URL**: https://sheets.arte-soft.com/en/learn/stackelberg-leader-follower-sequential-duopoly-output-and-profit/ - **Summary**: Solve backward-induction Stackelberg leader output q_L* = (a - 2*c_L + c_F)/(2*b), follower output q_F* = MAX(0, (a - c_F - b*q_L*)/(2*b)), market price, and first-mover profit gain over Cournot. *Table — Internalize the follower’s best-response slope via backward induction:* | Equilibrium Quantity (a=100, b=1, c=20) | Cournot Simultaneous | Stackelberg Sequential | | --- | --- | --- | | Leader Output (q_L*) | 26.6667 units | 40.0000 units | | Follower Output (q_F*) | 26.6667 units | 20.0000 units | | Market Price (P*) | 46.6667 | 40.0000 (Lower Consumer Price!) | | Leader vs Follower Profit | 711.1111 / 711.1111 | 800.0000 / 400.0000 | - **Formula (Interior Stackelberg Leader Output q_L* and Follower Best Response q_F* Formula)**: `=LET(a_int, B2, b_sl, B3, c_ld, B4, c_fl, B5, IF(OR(b_sl <= 0, c_ld < 0, c_fl < 0, a_int <= c_ld, a_int <= c_fl), "Invalid Demand Input", IF(a_int + 2 * c_ld - 3 * c_fl <= 0, "Follower Deterred (Corner Limit Output)", ROUND((a_int - 2 * c_ld + c_fl) / (2 * b_sl), 4))))` - **Formula (Stackelberg Leader Equilibrium Profit Pi_L* Formula)**: `=LET(a_int, B2, b_sl, B3, c_ld, B4, c_fl, B5, IF(OR(b_sl <= 0, c_ld < 0, c_fl < 0, a_int <= c_ld, a_int <= c_fl), "Invalid Demand Input", IF(a_int + 2 * c_ld - 3 * c_fl <= 0, "Follower Deterred (Corner Limit Output)", ROUND(((a_int - 2 * c_ld + c_fl)^2) / (8 * b_sl), 4))))` ### Staffing FTE & shrinkage formula: why you divide by (1 - Shrinkage%) - **URL**: https://sheets.arte-soft.com/en/learn/staffing-fte-headcount-and-shrinkage-erlang-workload/ - **Summary**: Convert contact-center or back-office volume and Average Handle Time into Workload Hours, Productive FTEs, and Shrinkage-grossed Headcount. *Table — Critical WFM rule: DIVIDE by (1 - Shrinkage)—never multiply by (1 + Shrinkage)!:* | Workforce Planning Step | Formula | Result | | --- | --- | --- | | Weekly Workload Hours | =(2,800 contacts * 6 min) / 60 | 280.0 hours | | Productive Base FTEs | =280 hours / 40 hrs per FTE | 7.00 FTEs | | WRONG (Base * 1.30) | =7.00 * (1 + 0.30) | 9.1 -> 6.37 net FTEs! | | CORRECT (Base / (1 - 0.30)) | =ROUNDUP(7.00 / 0.70, 0) | 10 Paid Headcount | - **Formula (Shrinkage-grossed headcount and FTE utilization formulas)**: `=LET(hrs, (A2 * B2) / 60, baseFte, hrs / C2, ROUNDUP(baseFte / (1 - D2), 0))` - **Formula (Unadjusted productive Base FTEs required)**: `=ROUND(((A2 * B2) / 60) / C2, 2)` ### Standard Error of Measurement (SEM) & 95% Minimal Detectable Change (MDC95) - **URL**: https://sheets.arte-soft.com/en/learn/standard-error-of-measurement-sem-and-minimal-detectable-change-mdc95/ - **Summary**: Convert baseline standard deviation and test-retest reliability (ICC) into Standard Error of Measurement SEM = SD * SQRT(1 - ICC) and two-measurement Minimal Detectable Change MDC_95. *Table — Why two noisy measurements require SQRT(2) scaling in MDC95:* | Reliability Metric | Formula | Scale (SD = 12.0, ICC = 0.91) | | --- | --- | --- | | Standard Error of Measurement | SD * SQRT(1 - ICC) | 3.60 points | | 90% Minimal Detectable Change | 1.645 * SQRT(2) * SEM | 8.37 points | | 95% Minimal Detectable Change | 1.96 * SQRT(2) * SEM | 9.98 points | | Patient Gain +11.5 pts | ABS(Delta_X) >= MDC_95 | REAL_CHANGE_95 | - **Formula (Standard Error of Measurement (SEM) Formula)**: `=ROUND(B2 * SQRT(MAX(0, 1 - B3)), 4)` - **Formula (95% Minimal Detectable Change (MDC_95) Formula)**: `=ROUND(1.96 * SQRT(2) * E2, 2)` ### Z-Score Feature Normalization Formula (STANDARDIZE With AVERAGE & STDEV.S) - **URL**: https://sheets.arte-soft.com/en/learn/standardize-z-score-normalization-mean-and-stdev/ - **Summary**: Transform raw observations into dimensionless standard-deviation units z = (x - mean) / sd to compare metrics on different scales and invert Z-scores back to raw units. *Table — Compare apples and oranges on a common zero-mean unit-variance scale:* | Cohort Sample (B2:B6) | Raw Score | Cohort Mean (mu) | Sample SD (s) | Standardized Z-Score | | --- | --- | --- | --- | --- | | 66, 78, 80, 82, 94 | x = 95 | 80.0 | 10.0 | +1.50 SD | | 66, 78, 80, 82, 94 | x = 80 | 80.0 | 10.0 | 0.00 SD (Exact mean) | | 66, 78, 80, 82, 94 | x = 60 | 80.0 | 10.0 | -2.00 SD (Tail alert) | - **Formula (Sample-Anchored Z-Score Normalization (STANDARDIZE))**: `=LET(mu, AVERAGE(B2:B6), sd, STDEV.S(B2:B6), IF(sd <= 0, "Zero Dispersion", ROUND((E2 - mu) / sd, 4)))` - **Formula (Inverse Z-Score Reconstruction (Raw Value From Target Z))**: `=ROUND(AVERAGE(B2:B6) + F2 * STDEV.S(B2:B6), 4)` ### Stanton Number (St) & Chilton-Colburn jH Heat-Momentum Analogy Formula - **URL**: https://sheets.arte-soft.com/en/learn/stanton-number-and-chilton-colburn-j-factor-heat-mass-analogy/ - **Summary**: Calculate the dimensionless Stanton Number St = Nu / (Re * Pr) and Chilton-Colburn heat-transfer factor j_H = St * Pr^(2/3) to estimate convective heat transfer directly from Fanning skin-friction drag (j_H ~ f / 2). *Table — Predict convective heat transfer directly from aerodynamic skin-friction drag!:* | Turbulent Transport Metric (Nu = 185, Re = 50,000) | Fluid Prandtl Number Pr | Stanton Number St | Chilton-Colburn Factor jH | | --- | --- | --- | --- | | Turbulent Air Stream | Pr = 0.71 | 0.005211 | 0.004147 (Fanning f ~ 0.00829) | | Liquid Water Stream (Nu = 355 at Re = 50k) | Pr = 6.00 | 0.001183 | 0.003907 (Collapsed jH!) | | Invalid Reynolds or Prandtl <= 0 | Guarded Transport Error | "Invalid Transport Inputs" | Requires Nu > 0, Re > 0, Pr > 0 | - **Formula (Dimensionless Stanton Number St = Nu / (Re * Pr))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Transport Inputs", ROUND(B2 / (B3 * B4), 6))` - **Formula (Chilton-Colburn Heat-Transfer j-Factor j_H = (Nu / (Re * Pr)) * Pr^(2/3))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Transport Inputs", ROUND((B2 / (B3 * B4)) * (B4 ^ (2 / 3)), 6))` ### Starling Capillary Filtration & Oncotic Edema Formula - **URL**: https://sheets.arte-soft.com/en/learn/starling-capillary-filtration-hydrostatic-and-oncotic-edema-formula/ - **Summary**: Calculate Microvascular Outward Hydrostatic Gradient (Pc - Pi), Staverman-Weighted Inward Oncotic Pull sigma*(pi_c - pi_i), Net Starling Filtration Pressure (mmHg), and Transcapillary Fluid Flux Jv (mL/min). *Table — Balance capillary hydrostatic push against albumin oncotic pull across endothelial glycocalyx!:* | Starling Microvascular Metric (Pc=25, Pi=-2, pi_c=28, pi_i=8, sigma=0.9, Kf=0.5) | Formula | Verified Output | | --- | --- | --- | | Outward Hydrostatic Push (mmHg) | P_capillary - P_interstitial | 27.00 mmHg (12.00 @ Pc=10) | | Effective Oncotic Pull (mmHg) | sigma * (pi_capillary - pi_interstitial) | 18.00 mmHg | | Net Driving Pressure (mmHg) | (Pc - Pi) - sigma * (pi_c - pi_i) | +9.00 mmHg (-6.00 @ Pc=10) | | Transcapillary Flux Jv (mL/min) | K_f * Net_Driving_Pressure | +4.50 mL/min (-3.00 Reabsorption) | - **Formula (Starling-Landis Transcapillary Fluid Flux Formula)**: `=LET(p_cp, B2, p_in, B3, o_cp, B4, o_in, B5, sg_m, B6, k_fl, B7, IF(OR(p_cp <= 0, o_cp < 0, o_in < 0, sg_m < 0, sg_m > 1, k_fl <= 0), "Invalid Starling Microvascular Input", ROUND(k_fl * ((p_cp - p_in) - sg_m * (o_cp - o_in)), 2)))` - **Formula (Venular-End Reabsorption Check (Set Capillary Pressure Pc = 10 mmHg))**: `=IF(ISTEXT(E2), E2, ROUND((B2 - B3) - B6 * (B4 - B5), 2))` ### Population Variance & Standard Deviation (VAR.P & STDEV.P vs. Bessel N-1 Correction) - **URL**: https://sheets.arte-soft.com/en/learn/stdev-p-and-var-p-population-vs-sample-bessel-correction/ - **Summary**: Choose accurately between N-denominator population dispersion (VAR.P, STDEV.P) for complete censuses and N-1 sample estimators (VAR.S, STDEV.S), and verify the exact N/(N-1) Bessel scaling ratio. *Table — When to divide by N (census) versus N - 1 (sample):* | Function Pair | Denominator | Use Case | Result on [10, 12, 14, 16, 18] | | --- | --- | --- | --- | | VAR.P / VARP | N (5) | Complete census of a finite group | 8.0000 | | VAR.S / VAR | N - 1 (4) | Unbiased sample variance estimate | 10.0000 | | STDEV.P / STDEVP | SQRT(N) | Population root-mean-square spread | 2.8284 | | STDEV.S / STDEV | SQRT(N - 1) | Sample standard deviation | 3.1623 | - **Formula (Population Variance & Standard Deviation Formulas)**: `=ROUND(STDEV.P(B2:B6), 4)` - **Formula (Exact Bessel Variance Scaling Audit)**: `=ROUND(VAR.S(B2:B6) / VAR.P(B2:B6), 4)` ### STDEV.S vs STDEV.P: measure sample variation vs full population spread - **URL**: https://sheets.arte-soft.com/en/learn/stdev-s-vs-stdev-p-spread/ - **Summary**: Know when to divide squared deviations by n - 1 (STDEV.S for quality samples) or n (STDEV.P for complete populations), and why a single reading returns #DIV/0!. *Table — Four bag weights pulled from a production run:* | Function | Divisor | Variance | Standard deviation | | --- | --- | --- | --- | | STDEV.S(A2:A5) | n - 1 = 3 | 20 / 3 = 6.6667 | 2.5820 | | STDEV.P(A2:A5) | n = 4 | 20 / 4 = 5.0000 | 2.2361 | - **Formula (Use STDEV.S for samples and STDEV.P for complete censuses)**: `=ROUND(STDEV.S(A2:A5),4)` - **Formula (Equal values (0) and the single-observation #DIV/0! boundary)**: `=ROUND(STDEV.P(A2:A5),4)` ### Steady-State Accumulation R_ac & Loading Dose Formula - **URL**: https://sheets.arte-soft.com/en/learn/steady-state-dosing-accumulation-index-rac-and-loading-dose-formula/ - **Summary**: Calculate repeated-dosing Accumulation Index R_ac = 1 / (1 - EXP(-k_el * tau)), Steady-State Peak C_max,ss, Steady-State Trough C_min,ss, and exact Loading Dose D_load = D_maint * R_ac. *Table — Predict drug accumulation and hit steady-state target exposure on Dose 1!:* | Maintenance Regimen Metric (D_m=250 mg, t_1/2=8 hr, tau=8 hr, V_d=25 L) | Formula | Verified Output | | --- | --- | --- | | Accumulation Index (R_ac) | 1 / (1 - EXP(-LN(2) * tau / t_1/2)) | 2.0000x | | Steady-State Peak (C_max,ss) | (D_maint / V_d) * R_ac | 20.00 mg/L | | Steady-State Trough (C_min,ss) | C_max,ss * EXP(-LN(2) * tau / t_1/2) | 10.00 mg/L | | Immediate Loading Dose (D_load) | D_maint * R_ac | 500.00 mg | - **Formula (Accumulation Index R_ac Formula)**: `=LET(dm_mg, B2, th_hr, B3, tu_hr, B4, vd_lt, B5, IF(OR(dm_mg <= 0, th_hr <= 0, tu_hr <= 0, vd_lt <= 0), "Invalid Dosing Regimen", ROUND(1 / (1 - EXP(-LN(2) * (tu_hr / th_hr))), 4)))` - **Formula (Steady-State Trough C_min,ss & Exact Loading Dose Formula)**: `=LET(dm_mg, B2, th_hr, B3, tu_hr, B4, vd_lt, B5, IF(ISTEXT(E2), E2, LET(f_rs, EXP(-LN(2) * (tu_hr / th_hr)), r_ac, 1 / (1 - f_rs), ROUND((dm_mg / vd_lt) * r_ac * f_rs, 2))))` ### Steam Boiler TDS Blowdown Rate & Flash Heat Loss Formula - **URL**: https://sheets.arte-soft.com/en/learn/steam-boiler-cycles-of-concentration-tds-blowdown-and-flash-heat-loss/ - **Summary**: Calculate Steam Boiler TDS Cycles of Concentration, Continuous Drum Blowdown Mass Rate (kg/hr), Unrecovered Sensible Blowdown Heat Loss (kW), and Flash-Economizer Heat Recovery (kW). *Table — Do not confuse blowdown % of feedwater with blowdown % of steam—Steam / (COC - 1) sets drum mass balance!:* | Steam Boiler Blowdown KPI (20,000 kg/hr Steam, 250 -> 2,750 ppm TDS) | Formula | Verified Output | | --- | --- | --- | | Boiler Cycles of Concentration | Max_Drum_TDS / Feedwater_TDS | 11.00 (5.50 @ 500 ppm FW) | | Continuous Blowdown Rate (kg/hr) | Steam_kg_hr * TDS_fw / (TDS_max - TDS_fw) | 2,000.00 kg/hr (4,444.44 @ 500) | | Unrecovered Blowdown Loss (kW) | Blowdown_kg_hr * (h_drum - h_makeup) / 3600 | 400.00 kW (888.89 kW @ 500) | | Flash + HX Heat Recovered (kW) | Unrecovered_Loss_kW * Recovery_Eff | 280.00 kW | - **Formula (Steam-Basis TDS Blowdown Mass & Heat-Loss Formula)**: `=LET(st_m, B2, td_f, B3, td_d, B4, h_dr, B5, h_mk, B6, rc_e, B7, IF(OR(st_m <= 0, td_f <= 0, td_d <= td_f, h_dr <= h_mk, h_mk < 0, rc_e < 0, rc_e > 0.95), "Invalid Boiler TDS Input", LET(bd_m, st_m * td_f / (td_d - td_f), ROUND(bd_m * (h_dr - h_mk) / 3600, 2))))` - **Formula (Hardness Leakage Feedwater Spike Check (Set Feedwater TDS = 500 ppm))**: `=IF(ISTEXT(E4), E4, ROUND(E4 * B7, 2))` ### Condensate Flash Steam Percentage & Heat Recovery Formula - **URL**: https://sheets.arte-soft.com/en/learn/steam-condensate-flash-tank-recovery-flash-steam-percentage-and-heat-savings/ - **Summary**: Calculate Thermodynamic Flash Steam Mass Percentage (%Flash), Recovered Low-Pressure Flash Steam Flow (kg/hr), Recovered Latent Thermal Power (kW), and Gross Boiler Fuel Input Saved (kW). *Table — Why hot high-pressure steam-trap condensate boils violent flash steam the instant pressure drops—and venting it wastes pure boiler fuel!:* | Condensate Flash-Vessel KPI (4,000 kg/h, hf1=763, hf2=505, hfg2=2,202, Eff=82%) | Formula | Verified Output | | --- | --- | --- | | Flash Steam Mass Fraction (%) | ((hf1 - hf2) / hfg2) * 100 | 11.72% (15.99% @ 15-bar hf1=857) | | Flash Steam Generated (kg/hr) | Condensate_kg_hr * (Flash_Pct / 100) | 468.66 kg/hr (639.42 @ hf1=857) | | Recovered Steam Duty Qrec (kW) | (Flash_kg_hr * hfg2) / 3600 | 286.67 kW (391.11 kW @ hf1=857) | | Gross Fired Boiler Fuel Saved (kW) | Q_rec_kW / Boiler_Efficiency | 349.59 kW (476.96 kW @ hf1=857!) | - **Formula (Isenthalpic Flash-Vessel Mass Balance & Boiler Fuel Savings Formula)**: `=LET(mc_k, B2, hf_a, B3, hf_b, B4, fg_b, B5, ef_b, B6, IF(OR(mc_k <= 0, hf_b <= 0, hf_a <= hf_b, fg_b <= 500, ef_b < 0.5, ef_b > 0.99), "Invalid Flash-Tank Input", LET(fl_f, (hf_a - hf_b) / fg_b, mf_k, mc_k * fl_f, qr_w, (mf_k * fg_b) / 3600, ROUND(qr_w / ef_b, 2))))` - **Formula (15-Bar High-Pressure Autoclave Condensate Upgrade Check (Set h_f1 = 857.0 kJ/kg))**: `=IF(ISTEXT(E5), E5, ROUND(((B3 - B4) / B5) * 100, 2))` ### Steam Cracker Ethylene/Propylene (P/E) Ratio & Steam Formula - **URL**: https://sheets.arte-soft.com/en/learn/steam-cracker-ethylene-furnace-propylene-to-ethylene-ratio-and-yield-formula/ - **Summary**: Calculate Polymer-Grade Ethylene Output (t/hr), Co-Product Propylene Output (t/hr), Cracking Severity P/E Weight Ratio, and Furnace Dilution Steam Rate (t/hr). *Table — Cracking severity is tracked inversely by Propylene-to-Ethylene ratio (P/E)—hotter coils crack propylene into ethylene and methane!:* | Naphtha Cracker KPI (120 t/hr Feed, S/HC = 0.50, 31.0% C2=, 15.5% C3=) | Formula | Verified Output | | --- | --- | --- | | Ethylene Production C2= (t/hr) | Feed_t_hr * (Ethylene_WtPct / 100) | 37.20 t/hr (40.80 @ 34.0% high-sev) | | Propylene Production C3= (t/hr) | Feed_t_hr * (Propylene_WtPct / 100) | 18.60 t/hr (16.32 @ 13.6% high-sev) | | Cracking Severity P/E Ratio | Propylene_WtPct / Ethylene_WtPct | 0.500 (0.400 @ high severity) | | Dilution Steam Injection (t/hr) | Feed_t_hr * Steam_to_HC_Ratio | 60.00 t/hr | - **Formula (Steam-Cracker Olefins Mass Balance & P/E Severity Formula)**: `=LET(hc_f, B2, sh_r, B3, et_p, B4, pr_p, B5, IF(OR(hc_f <= 0, sh_r < 0.2, sh_r > 1.2, et_p <= 5, pr_p < 0, et_p + pr_p > 85), "Invalid Cracker Input", ROUND(pr_p / et_p, 3)))` - **Formula (High-Severity Coil Outlet Temperature Shift Check (Set C2= = 34.0%, C3= = 13.6%))**: `=IF(ISTEXT(E4), E4, ROUND(B2 * B3, 2))` ### Steam-Methane Reforming (SMR) H2 & Blue CO2 Intensity Formula - **URL**: https://sheets.arte-soft.com/en/learn/steam-methane-reforming-smr-water-gas-shift-h2-yield-and-co2-intensity/ - **Summary**: Calculate SMR Hydrogen Plant Total Methane Demand (t/day), Net Specific CO2 Intensity (kg CO2 / kg H2), Daily Captured CO2 Sequestered (t/day), and Residual Stack Emissions (t/day). *Table — Grey SMR emits ~9.9 kg CO2/kg H2—not stoichiometric 5.5—because of radiant-box burner fuel!:* | SMR Hydrogen Carbon-Balance KPI (200 t/d H2, 2.40 Feed + 1.20 Fuel CH4) | Formula | Verified Output | | --- | --- | --- | | Total Methane Feed + Fuel (t/d) | H2_t_day * (Feed_CH4 + Fuel_CH4) | 720.00 t/d | | Net Carbon Intensity (kg CO2/kg H2) | 2.75 * (Feed*(1-Cap_Syn) + Fuel*(1-Cap_Flue)) | 9.90 (3.96 Syngas CCS; 0.99 Dual) | | Captured CO2 Sequestered (t/d) | H2_t_day * 2.75 * (Feed*Cap_Syn + Fuel*Cap_Flue) | 0.00 t/d (1,188.00 Syngas; 1,782 Dual) | | Residual Stack CO2 Emitted (t/d) | H2_t_day * Net_Carbon_Intensity | 1,980.00 t/d (792.00; 198.00) | - **Formula (Dual-Stream SMR Process + Furnace Carbon Intensity Formula)**: `=LET(h2_t, B2, ch_p, B3, ch_f, B4, cp_s, B5, cp_g, B6, IF(OR(h2_t <= 0, ch_p < 2, ch_f < 0, cp_s < 0, cp_s > 0.99, cp_g < 0, cp_g > 0.99), "Invalid SMR Plant Input", ROUND(2.75 * (ch_p * (1 - cp_s) + ch_f * (1 - cp_g)), 2)))` - **Formula (Syngas-Only Amine Capture vs Full Dual-Stream Blue-H2 Checks)**: `=IF(ISTEXT(E3), E3, ROUND(B2 * 2.75 * (B3 * B5 + B4 * B6), 2))` ### Steel Gas Carburizing Harris Case-Depth & Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/steel-gas-carburizing-fick-second-law-harris-case-depth-root-time-formula/ - **Summary**: Calculate Arrhenius Carburizing Diffusion Factor KT (mm/sqrt(hr)), Required Furnace Soak Hours (t = (ECD/KT)²), Case Depth Achieved at 4 Hours (mm), and Total Cycle Minutes. *Table — Doubling carburized gear case depth takes FOUR TIMES the furnace hours—unless austenite temperature is boosted!:* | Harris Fickian Carburizing KPI (925 °C Austenite, Target ECD = 1.20 mm) | Formula | Verified Output | | --- | --- | --- | | Arrhenius Factor KT (mm/√hr) | 802.6 * EXP(-8588 / (Temp_C + 273.15)) | 0.619 mm/√hr (0.737 @ 955 °C vacuum!) | | Required Furnace Soak (hours) | (Target_ECD_mm / KT_Factor) ^ 2 | 3.76 hr (2.65 hr = -29.5% @ 955 °C!) | | Reference 4-Hour Case Depth (mm) | KT_Factor * SQRT(4) | 1.24 mm (1.47 mm @ 955 °C) | | Required Carburizing Cycle (min) | Required_Soak_Hours * 60 | 225.6 min (158.9 min @ 955 °C) | - **Formula (Harris Arrhenius Root-Time Carburizing Case-Depth & Soak Duration Formula)**: `=LET(tc_c, B2, ec_m, B3, IF(OR(tc_c < 840, tc_c > 1050, ec_m <= 0.05, ec_m > 6), "Invalid Carburizing Input", LET(kt_f, 802.6 * EXP(-8588 / (tc_c + 273.15)), hr_s, (ec_m / kt_f) ^ 2, ROUND(hr_s * 60, 1))))` - **Formula (955 °C Low-Pressure Vacuum Carburizing Temperature Boost Check (Set Temp B2 = 955.0 °C))**: `=IF(ISTEXT(E5), E5, LET(kt_f, 802.6 * EXP(-8588 / (B2 + 273.15)), ROUND((B3 / kt_f) ^ 2, 2)))` ### Steel I-Beam Lateral-Torsional Buckling (Mcr) Formula - **URL**: https://sheets.arte-soft.com/en/learn/steel-i-beam-lateral-torsional-buckling-ltb-elastic-critical-moment-mcr-formula/ - **Summary**: Calculate Pure St. Venant Torsional Buckling Term (kN·m), Combined Timoshenko Elastic Critical LTB Moment M_cr (kN·m) including Flange Warping C_w, and Warping Stiffness Boost (%). *Table — Unbraced steel I-beams twist sideways long before yielding—and flange warping C_w adds +65% capacity on 6 m spans!:* | AISC F2 Elastic LTB KPI (Lb=6 m, Cb=1.14, Iy=18e6, J=520e3, Cw=1.25e12) | Formula | Verified Output | | --- | --- | --- | | Pure St. Venant Term (kN·m) | Cb*(PI()/L)*SQRT(E*Iy*G*J) / 1e6 | 226.92 kN·m (151.28 @ Lb = 9 m) | | Full Elastic Critical Mcr (kN·m) | Cb*(PI()/L)*SQRT(E*Iy*G*J + (PI()*E/L)^2*Iy*Cw)/1e6 | 373.37 kN·m (200.62 @ Lb = 9 m!) | | Flange Warping Boost (%) | ((Mcr - Pure_StVenant) / Pure_StVenant) * 100 | 64.54% (32.62% @ Lb = 9 m) | | Design Elastic Capacity 0.9*Mcr | 0.90 * Elastic_Critical_Mcr | 336.03 kN·m | - **Formula (Timoshenko / AISC 360 Elastic Lateral-Torsional Critical Moment Formula)**: `=LET(lb_m, B2, cb_f, B3, iy_6, B4, jt_3, B5, cw_12, B6, IF(OR(lb_m <= 0.5, cb_f < 1, cb_f > 3, iy_6 <= 0, jt_3 <= 0, cw_12 < 0), "Invalid LTB Input", LET(ln_m, lb_m * 1000, iy_m, iy_6 * 1000000, jt_m, jt_3 * 1000, cw_m, cw_12 * 1000000000000, sv_t, 200000 * iy_m * 77200 * jt_m, wp_t, (((PI() * 200000) / ln_m) ^ 2) * iy_m * cw_m, ROUND((cb_f * (PI() / ln_m) * SQRT(sv_t + wp_t)) / 1000000, 2))))` - **Formula (Missing Midspan Bracing 9.0 m Span Steep Drop Check (Set Unbraced Length L_b = 9.0 m))**: `=IF(ISTEXT(E3), E3, ROUND(0.9 * E3, 2))` ### NTC Thermistor Beta & Steinhart-Hart Divider Formula - **URL**: https://sheets.arte-soft.com/en/learn/steinhart-hart-ntc-thermistor-beta-divider-temperature-formula/ - **Summary**: Calculate Microcontroller Pull-Up Voltage Divider Output V_adc = V_ref * R_ntc / (R_pull + R_ntc), Log Resistance Ratio LN(R_ntc / R_25), Absolute Kelvin Temperature 1 / (1/298.15 + LN(R/R_25)/Beta), and Celsius Temperature. *Table — Convert nonlinear EV battery-pack NTC thermistor resistance into Kelvin before subtracting 273.15!:* | NTC BMS Channel Metric (Vref=3.3V, Rpull=10k, Rntc=10k, R25=10k, Beta=3,950 K) | Formula | Verified Output | | --- | --- | --- | | ADC Voltage Divider V_adc (V) | V_ref * (R_ntc / (R_pull + R_ntc)) | 1.6500 V (0.6600 V @ R_ntc=2.5k) | | Natural Log Ratio LN(R / R_25) | LN(R_ntc / R_25) | 0.0000 (-1.3863 @ R_ntc=2.5k) | | Absolute Temperature T (Kelvin) | 1 / ((1 / 298.15) + LN(R/R25) / Beta) | 298.15 K (332.99 K @ R_ntc=2.5k) | | Pack Cell Temperature (°C) | T_Kelvin - 273.15 | 25.00 °C (59.84 °C @ R_ntc=2.5k) | - **Formula (NTC Thermistor Beta-Equation Celsius Temperature Formula)**: `=LET(v_rf, B2, r_pl, B3, r_nt, B4, r_25, B5, bt_k, B6, IF(OR(v_rf <= 0, r_pl <= 0, r_nt <= 0, r_25 <= 0, bt_k <= 0), "Invalid Thermistor Input", LET(inv_t, (1 / 298.15) + LN(r_nt / r_25) / bt_k, IF(inv_t <= 0, "Invalid Thermistor Input", ROUND((1 / inv_t) - 273.15, 2)))))` - **Formula (High-Temperature Thermal-Runaway Pre-Alarm Check (Set R_ntc = 2.5 kOhm))**: `=IF(ISTEXT(E5), E5, ROUND(1 / ((1 / 298.15) + LN(B4 / B5) / B6), 2))` ### Bertotti-Steinmetz Magnetic Core Hysteresis and Eddy Loss Formula - **URL**: https://sheets.arte-soft.com/en/learn/steinmetz-bertotti-magnetic-core-hysteresis-and-eddy-current-loss/ - **Summary**: Separate transformer and inductor core loss density into hysteresis k_h*f*B^beta, classical eddy-current k_e*(f*B)^2, and excess domain-wall k_exc*(f*B)^1.5 components. *Table — See why classical eddy-current loss overtakes hysteresis as switching frequency rises:* | Bertotti Core-Loss Mechanism | Frequency-Flux Scaling | 16 kHz vs 64 kHz (B_m = 0.25 T) | | --- | --- | --- | | Quasi-Static Hysteresis (P_hyst) | k_h * f * B_m^beta (f^1) | 30.00 -> 120.00 kW/m^3 (4x) | | Anomalous Excess Loss (P_exc) | k_exc * (f * B_m)^1.5 (f^1.5) | 12.00 -> 96.00 kW/m^3 (8x) | | Classical Eddy Current (P_eddy) | k_e * (f * B_m)^2 (f^2) | 40.00 -> 640.00 kW/m^3 (16x!) | | Total Volumetric Loss (P_total) | P_hyst + P_eddy + P_exc | 82.00 -> 856.00 kW/m^3 | - **Formula (Total Three-Term Bertotti Volumetric Core Loss Density Formula)**: `=LET(f_khz, B2, b_pk, B3, bet_s, B4, k_hy, B5, k_ed, B6, k_ex, B7, IF(OR(f_khz < 0, b_pk < 0, bet_s < 1, k_hy < 0, k_ed < 0, k_ex < 0), "Invalid Core-Loss Input", IF(OR(f_khz = 0, b_pk = 0), 0, LET(p_hy, k_hy * f_khz * POWER(b_pk, bet_s), p_ed, k_ed * ((f_khz * b_pk)^2), p_ex, k_ex * POWER(f_khz * b_pk, 1.5), ROUND(p_hy + p_ed + p_ex, 4)))))` - **Formula (Eddy-Current Fraction of Total Core Loss Formula)**: `=IF(OR(ISTEXT(E4), E4 = 0), 0, ROUND((B6 * ((B2 * B3)^2)) / E4, 4))` ### Stem-and-Leaf Plot Formula: Tens Stem Extraction, Leaf Digit & Bin Frequency - **URL**: https://sheets.arte-soft.com/en/learn/stem-and-leaf-plot-tens-stem-and-sorted-leaf-digit-formula/ - **Summary**: Construct John Tukey’s Exploratory Data Analysis (EDA) Stem-and-Leaf display in a spreadsheet by splitting observations into integer Stems INT(x / 10), Trailing Leaf Digits MOD(x, 10), and Per-Stem Bin Frequencies COUNTIFS. *Table — Preserve exact raw observations inside a histogram-shaped stem-and-leaf table!:* | Tens Stem Bin (Scale S = 10) | Lower–Upper Score Window | Sorted Leaf Digits | Stem Frequency Count | | --- | --- | --- | --- | | Stem 6 (60–69) | >= 60 and < 70 | 4, 8 | 2 scores | | Stem 7 (70–79) | >= 70 and < 80 | 2, 5, 5, 9 | 4 scores | | Stem 8 (80–89) | >= 80 and < 90 | 3, 7 | 2 scores | - **Formula (Per-Stem Bin Observation Frequency COUNTIFS)**: `=IF(E2 < 0, "Requires Non-Negative Tens Stem", COUNTIFS(B2:B9, ">=" & (E2 * 10), B2:B9, "<" & ((E2 + 1) * 10)))` - **Formula (Individual Observation Stem INT(x / 10) & Units Leaf MOD(x, 10))**: `=IF(B5 < 0, "Requires Non-Negative Score", INT(B5 / 10) * 10 + MOD(B5, 10) - INT(B5 / 10) * 10)` ### Step Chart Formula: Piecewise-Constant Rate Staircase Coordinates & Time-Weighted Average - **URL**: https://sheets.arte-soft.com/en/learn/step-chart-piecewise-constant-staircase-coordinate-table/ - **Summary**: Plot discrete jumps (central-bank policy rates, SaaS pricing tiers, inventory reorders) accurately as a true Step Chart instead of misleading diagonal slopes, and calculate the exact Time-Weighted Average Rate! *Table — Why standard Line Charts lie about interest rates and inventory — and how duplicated X-vertices create a crisp Step Chart!:* | Announcement Step k | Start Day t_k | Next Change / End Day t_{k+1} | Holding Days Delta_t_k | Policy Rate r_k (%) | Basis-Point Jump (bps) | | --- | --- | --- | --- | --- | --- | | Regime 1 | 0 | 60 | 60 days | 4.50% | — | | Regime 2 (+50 bps Hike) | 60 | 150 | 90 days | 5.00% | +50 bps | | Regime 3 (-25 bps Cut) | 150 | 180 | 30 days | 4.75% | -25 bps | - **Formula (Discrete Step Size in Basis Points: 100 * (r_k - r_{k-1}))**: `=ROUND(100 * (C3 - C2), 1)` - **Formula (Exact Time-Weighted Average Rate Across Step Intervals)**: `=IF(OR(B3 < B2, B4 < B3, B5 <= B4), "Step Timestamps Must Be Non-Decreasing With Positive Horizon", ROUND(SUMPRODUCT(B3:B5 - B2:B4, C2:C4) / (B5 - B2), 4))` ### Step across every Nth column when dragging a formula down rows (INDEX & ROW) - **URL**: https://sheets.arte-soft.com/en/learn/step-column-reference-when-dragging-formula-down-index/ - **Summary**: Pull values from every Nth horizontal column (e.g., B2, D2, F2) into a vertical summary list as you copy a formula down rows using non-volatile INDEX and ROW. *Table — Convert wide multi-column exports (Actual, Budget, Actual, Budget...) into vertical rows!:* | Vertical Summary Row | Row Offset k = ROW()-ROW($A$5) | Col Index (k * 2 + 1) | Pulled from $B$2:$G$2 | | --- | --- | --- | --- | | Q1 (Row 5) | k = 0 | 0 * 2 + 1 = Col 1 (B2) | 120 (Q1 Actual) | | Q2 (Row 6) | k = 1 | 1 * 2 + 1 = Col 3 (D2) | 150 (Q2 Actual) | | Q3 (Row 7) | k = 2 | 2 * 2 + 1 = Col 5 (F2) | 180 (Q3 Actual) | | Switch Offset = 2 (Budgets) | k * 2 + 2 | Cols 2, 4, 6 (C2, E2, G2) | 110, 140, 175 (Budgets!) | - **Formula (Pull every Nth horizontal column into vertical rows)**: `=IF(COUNT($B$4:$C$4)<>2,"Invalid configuration",IF(OR($B$4<1,$C$4<1,$C$4>6,$B$4<>INT($B$4),$C$4<>INT($C$4)),"Invalid configuration",IF((ROW(A6)-ROW($A$5))*$B$4+$C$4>6,"End of source",INDEX($B$2:$G$2, 1, (ROW(A6) - ROW($A$5)) * $B$4 + $C$4))))` - **Formula (Step 1 column per row (1:1 horizontal-to-vertical pull))**: `=IF(COUNT($B$4:$C$4)<>2,"Invalid configuration",IF(OR($B$4<1,$C$4<1,$C$4>6,$B$4<>INT($B$4),$C$4<>INT($C$4)),"Invalid configuration",IF((ROW(A5)-ROW($A$5))*$B$4+$C$4>6,"End of source",INDEX($B$2:$G$2, 1, (ROW(A5) - ROW($A$5)) * $B$4 + $C$4))))` ### Stereolithography (SLA) Jacobs Cure Depth & Overcure Formula - **URL**: https://sheets.arte-soft.com/en/learn/stereolithography-sla-jacobs-working-curve-uv-laser-cure-depth-and-overcure-formula/ - **Summary**: Calculate Gaussian Centerline Peak UV Exposure Emax (mJ/cm²), Jacobs Beer-Lambert Cure Depth Cd (um), Interlayer Stitching Overcure Cd - z (um), and Cured Line Width (um). *Table — Double an SLA galvo scan speed to halve print time and logarithmic cure depth drops BELOW the 100 um layer slice—peeling layers apart mid-print!:* | Jacobs SLA Working Curve KPI (P=120 mW, w0=0.11 mm, Dp=145 um, Ec=11.5, z=100 um) | Formula | Verified Output | | --- | --- | --- | | Peak Centerline Exposure Emax (mJ/cm²) | P_mW / (SQRT(PI()/2) * (w0/10) * (vs/10)) | 36.27 mJ/cm² (18.13 @ fast 4,800 mm/s) | | Beer-Lambert Cure Depth Cd (um) | Dp_um * LN(Emax_mJ_cm2 / Ec_mJ_cm2) | 166.5 um (66.0 um < 100 um @ 4,800 mm/s!) | | Interlayer Stitching Overcure (um) | Cure_Depth_Cd_um - Layer_Slice_z_um | +66.5 um (-34.0 um DELAMINATION GAP!) | | Gaussian Cured Line Width Lw (um) | (w0_mm * 1000) * SQRT(2 * LN(Emax / Ec)) | 166.7 um (105.0 um @ 4,800 mm/s) | - **Formula (Jacobs Gaussian Beer-Lambert Cure Depth, Overcure & Cured Track Width Formula)**: `=LET(pl_m, B2, wz_m, B3, vs_m, B4, dp_u, B5, ec_m, B6, zl_u, B7, em_x, pl_m / (SQRT(PI() / 2) * (wz_m / 10) * (vs_m / 10)), IF(OR(pl_m <= 1, wz_m < 0.01, wz_m > 1, vs_m <= 10, dp_u <= 10, ec_m <= 0.5, zl_u <= 10, em_x <= ec_m), "Invalid SLA Exposure", ROUND((wz_m * 1000) * SQRT(2 * LN(em_x / ec_m)), 1)))` - **Formula (Doubled 4,800 mm/s Galvo Speed Negative-Overcure Delamination Check (Set Scan Speed B4 = 4,800 mm/s))**: `=IF(ISTEXT(E5), E5, LET(em_x, B2 / (SQRT(PI() / 2) * (B3 / 10) * (B4 / 10)), ROUND(B5 * LN(em_x / B6) - B7, 1)))` ### Sterling Ratio & Burke Ratio: Multi-Drawdown Risk-Adjusted Portfolio Return - **URL**: https://sheets.arte-soft.com/en/learn/sterling-ratio-and-burke-ratio-multi-drawdown-risk-adjusted-return/ - **Summary**: Evaluate CTA and hedge-fund drawdown resilience across multiple historical drawdown episodes using both the classical +10%-buffered Sterling Ratio and quadratic-penalty Burke Ratio. *Table — Why single-trough Calmar is fragile and how Sterling and Burke penalize repeated drawdowns:* | Multi-Drawdown Metric | Formula (CAGR=21%, Rf=4%, DDs=[6%, 8%]) | Result | | --- | --- | --- | | Annual Excess Return | CAGR - R_f | 0.1700 (17.00%) | | Average Drawdown Magnitude | AVERAGE(ABS(DD_1..DD_k)) | 0.0700 (7.00%) | | Classical Sterling Ratio (+10%) | (CAGR - R_f) / (Avg_DD + 0.10) | 1.0000 | | Burke Ratio (Quadratic RSS) | (CAGR - R_f) / SQRT(SUM(DD_i^2)) | 1.7000 (RSS = 10.00%) | - **Formula (Classical (+10% Buffered) & Unbuffered Sterling Ratio Formula)**: `=ROUND((E2 - E3) / (AVERAGE(C2:C3) + 0.1), 4)` - **Formula (Burke Ratio (Quadratic Drawdown Root-Sum-of-Squares) Formula)**: `=IF(SUMPRODUCT(C2:C3 ^ 2) = 0, "NO_DRAWDOWN", ROUND((E2 - E3) / SQRT(SUMPRODUCT(C2:C3 ^ 2)), 4))` ### Stern-Volmer Fluorescence Quenching (I0/I) & Förster FRET Energy Transfer Efficiency - **URL**: https://sheets.arte-soft.com/en/learn/stern-volmer-fluorescence-quenching-and-fret-efficiency/ - **Summary**: Calculate collisional fluorescence quenching intensity ratio I0/I = 1 + kq * tau0 * [Q] via the Stern-Volmer equation and nanoscale Förster resonance energy transfer efficiency E = 1 / (1 + (r / R0)^6). *Table — Quantify dynamic collisional quenching and 1/r^6 spectroscopic rulers!:* | Spectroscopy Model | Parameters | Governing Equation | Calculated Result | | --- | --- | --- | --- | | Stern-Volmer Quenching | kq = 2e9, tau0 = 5 ns, [Q] = 0.15 M | I0/I = 1 + kq * tau0 * [Q] | I0/I = 2.5 (60% quenched) | | FRET Molecular Ruler | r = 4.5 nm, R0 = 5.4 nm | E = 1 / (1 + (r/R0)^6) | E = 0.7491 (74.91%) | | FRET at Förster Radius | r = 5.4 nm (= R0) | 1 / (1 + 1^6) | E = 0.50 (Exact 50% Midpoint) | - **Formula (Stern-Volmer Fluorescence Intensity Ratio I0 / I)**: `=IF(OR(B2 < 0, B3 <= 0, B4 < 0), "Invalid Photophysics Inputs", ROUND(1 + (B2 * B3 * B4), 3))` - **Formula (Förster Resonance Energy Transfer (FRET) Efficiency E)**: `=IF(OR(B5 <= 0, B6 <= 0), "Invalid Photophysics Inputs", ROUND(1 / (1 + ((B5 / B6) ^ 6)), 4))` ### Stewart Acid-Base Formula: Apparent Strong Ion Difference (SID_a) & Strong Ion Gap (SIG) - **URL**: https://sheets.arte-soft.com/en/learn/stewart-strong-ion-difference-sid-and-strong-ion-gap-acid-base/ - **Summary**: Unmask hyperchloremic acidosis and unmeasured anions in hypoalbuminemic ICU patients using Peter Stewart’s physicochemical SID_a, Figge-Fencl effective SID_e, and Strong Ion Gap SIG = SID_a - SID_e. *Table — Why 0.9% normal saline resuscitation drops SID_a toward zero—and why Figge-Fencl SID_e reveals hidden unmeasured anions!:* | ICU Plasma Chemistry Profile | Apparent SID_a (mEq/L) | Strong Ion Gap SIG = SID_a - SID_e | Stewart Physicochemical Diagnosis | | --- | --- | --- | --- | | Cl=112, Lac=5.5, HCO3=16, Alb=28, pH=7.24 | 30.70 mEq/L (Low!) | +4.25 mEq/L (> 2 Elevated!) | Hyperchloremia + Lactate + Unmeasured Anions | | Cl=102, Lac=1.2, (SID_a Normalized) | 45.00 mEq/L (Normal) | Normal <= 2.0 mEq/L Reference | Normal Strong-Ion Balance | | Invalid pH <= 6.5 or Negative Ion Level | Error Guard | "Invalid Plasma Electrolyte Panel" | Physiological Bounds Guard | - **Formula (Apparent Strong Ion Difference SID_a = (Na + K + Ca + Mg) - (Cl + Lactate) (mEq/L))**: `=IF(OR(MIN(B2:B10) < 0, B11 < 6.6, B11 > 7.9), "Invalid Plasma Electrolyte Panel", ROUND((B2 + B3 + B4 + B5) - (B6 + B7), 2))` - **Formula (Figge-Fencl-Kellum Strong Ion Gap SIG = SID_a - SID_e (mEq/L))**: `=IF(OR(MIN(B2:B10) < 0, B11 < 6.6, B11 > 7.9), "Invalid Plasma Electrolyte Panel", ROUND(((B2 + B3 + B4 + B5) - (B6 + B7)) - (B8 + B9 * (0.123 * B11 - 0.631) + B10 * (0.309 * B11 - 0.469)), 2))` ### Stiel-Thodos High-Pressure & Supercritical Gas Residual Viscosity Formula - **URL**: https://sheets.arte-soft.com/en/learn/stiel-thodos-dense-gas-residual-viscosity-density-correlation/ - **Summary**: Calculate dense-fluid and supercritical CO₂ viscosity η = η_0 + Δη(ρ_r) (µPa·s) across pipelines and compressors using Leonard Stiel & George Thodos’s (1961) reduced-density correlation. *Table — Why ideal kinetic-theory gas viscosity fails completely in supercritical CO₂ and high-pressure natural gas pipelines!:* | Supercritical CO₂ Reduced Density ρ_r = ρ / ρ_c | Residual Departure Δη (µPa·s) | Total Dense Viscosity η (µPa·s) | Pipeline Regime | | --- | --- | --- | --- | | ρ_r = 0.80 (Near-Critical Compressor) | +12.92 µPa·s | 29.42 µPa·s | +78.3% over dilute η_0 = 16.5 | | ρ_r = 1.50 (Dense Supercritical Trunkline) | +41.25 µPa·s | 57.75 µPa·s | 3.50× dilute viscosity | | Invalid ρ_r <= 0 or ρ_r >= 3.0 | Out of Correlation Band | "Outside Stiel-Thodos Density Range" | Validity Guard | - **Formula (Stiel-Thodos Dense / Supercritical Gas Viscosity η (µPa·s))**: `=IF(OR(B2 <= 0, B3 <= 0, B3 >= 3, B4 <= 0, B5 <= 0, B6 <= 0), "Outside Stiel-Thodos Density Range", ROUND(B2 + 1000 * (0.000108 * (EXP(1.439 * B3) - EXP(-1.11 * (B3 ^ 1.858)))) / ((B4 ^ (1 / 6)) / (SQRT(B6) * (B5 ^ (2 / 3)))), 2))` - **Formula (Residual Dense-Fluid Viscosity Increment Δη = η - η_0 (µPa·s))**: `=IF(OR(B3 <= 0, B3 >= 3, B4 <= 0, B5 <= 0, B6 <= 0), "Outside Stiel-Thodos Density Range", ROUND(1000 * (0.000108 * (EXP(1.439 * B3) - EXP(-1.11 * (B3 ^ 1.858)))) / ((B4 ^ (1 / 6)) / (SQRT(B6) * (B5 ^ (2 / 3)))), 2))` ### Stiff-Davis High-TDS Brine Scaling Index (SDSI) Formula - **URL**: https://sheets.arte-soft.com/en/learn/stiff-davis-high-tds-oilfield-brine-calcium-carbonate-scaling-index-formula/ - **Summary**: Calculate Molar Negative Log Calcium pCa, Molar Negative Log Bicarbonate Alkalinity pAlk, Stiff-Davis Ionic-Strength Temperature Constant K, and SDSI Scaling Index. *Table — Standard Langelier Saturation Index (LSI) fails above 10,000 mg/L TDS—use ASTM D4582 Stiff-Davis for oilfield brines and SWRO concentrates!:* | ASTM D4582 Stiff-Davis Brine KPI (Ca=4,800 mg/L, HCO3=420 mg/L, I=1.40 M) | Formula | Verified Output | | --- | --- | --- | | Molar Calcium Index pCa | -LOG10((Ca_mg_L / 1000) / 40.078) | 0.92 | | Molar Alkalinity Index pAlk | -LOG10((HCO3_mg_L / 1000) / 61.017) | 2.16 | | Salinity-Temp Constant K(I, T) | 3.82 + 0.38 * LN(Ionic_I) - 0.0155 * Temp_C | 2.86 (2.63 @ flashed 85 °C) | | Stiff-Davis Index SDSI | Brine_pH - pCa - pAlk - Constant_K | +1.00 (+1.84 severe scale @ pH 7.55, 85 °C!) | - **Formula (ASTM D4582 Stiff-Davis High-Salinity CaCO3 Saturation Index Formula)**: `=LET(ph_b, B2, ca_m, B3, hc_m, B4, is_m, B5, tc_b, B6, pc_a, -LOG10((ca_m / 1000) / 40.078), pa_k, -LOG10((hc_m / 1000) / 61.017), ks_d, 3.82 + 0.38 * LN(is_m) - 0.0155 * tc_b, IF(OR(ph_b < 4.5, ph_b > 9.5, ca_m <= 10, hc_m <= 10, is_m < 0.05, is_m > 4.5, tc_b < 0, tc_b > 120), "Invalid Brine Input", ROUND(ph_b - pc_a - pa_k - ks_d, 2)))` - **Formula (Choke-Valve CO2 Flash Degassing (pH = 7.55 & Heater-Treater T = 85 °C) Scale Surge Check)**: `=IF(ISTEXT(E5), E5, ROUND(3.82 + 0.38 * LN(B5) - 0.0155 * B6, 2))` ### Stiglitz-Weiss Credit Rationing Rate-Cap Formula - **URL**: https://sheets.arte-soft.com/en/learn/stiglitz-weiss-adverse-selection-credit-rationing-rate-cap/ - **Summary**: Calculate the Stiglitz-Weiss (1981) bank-optimal interest rate ceiling r_cap* = (R_S - u_0/p_S)/L - 1 and prove why raising loan rates above r_cap* slashes expected bank repayment. *Table — Why rational banks ration credit instead of raising interest rates to clear excess loan demand!:* | Quoted Loan Rate Regime | Active Borrower Pool | Expected Bank Repayment (Principal = 100) | | --- | --- | --- | | Moderate Rate (r = 30%, D = 130) | Both Safe + Risky (p_pool = 0.74) | 96.20 | | Stiglitz-Weiss Rate Cap (r_cap* = 40%, D = 140) | Both Safe + Risky (Knife-Edge Peak) | 103.60 (Bank Optimum!) | | Over-Priced Rate (r = 50%, D = 150) | Risky ONLY (Safe Exit -> p = 0.50) | 75.00 (-28.60 Collapse!) | - **Formula (Stiglitz-Weiss Safe-Pool Interest Rate Ceiling r_cap* Formula)**: `=LET(l_pr, B2, p_sf, B3, r_sf, B4, p_rk, B5, r_rk, B6, u_op, B7, lm_s, B8, IF(OR(l_pr <= 0, p_rk <= 0, p_sf <= p_rk, p_sf > 1, r_sf <= 0, r_rk <= r_sf, u_op < 0, lm_s <= 0, lm_s >= 1), "Invalid Credit Pool Input", ROUND(((r_sf - (u_op / p_sf)) / l_pr) - 1, 4)))` - **Formula (Regime-Switching Expected Bank Repayment at Quoted Rate r Formula)**: `=LET(l_pr, B2, p_sf, B3, r_sf, B4, p_rk, B5, r_rk, B6, u_op, B7, lm_s, B8, r_qt, B9, IF(OR(l_pr <= 0, p_rk <= 0, p_sf <= p_rk, p_sf > 1, r_sf <= 0, r_rk <= r_sf, u_op < 0, lm_s <= 0, lm_s >= 1, r_qt < 0), "Invalid Credit Pool Input", LET(d_fc, l_pr * (1 + r_qt), sf_in, p_sf * (r_sf - d_fc) >= u_op, rk_in, p_rk * (r_rk - d_fc) >= u_op, IF(sf_in, ROUND((lm_s * p_sf + (1 - lm_s) * p_rk) * d_fc, 4), IF(rk_in, ROUND(p_rk * d_fc, 4), 0)))))` ### Power-Plant Net Heat Rate (BTU/kWh & kJ/kWh) & Stirling Cycle Efficiency - **URL**: https://sheets.arte-soft.com/en/learn/stirling-engine-efficiency-and-rankine-steam-turbine-heat-rate/ - **Summary**: Convert a supplied net thermal efficiency to heat rate in Btu/kWh or kJ/kWh, and separately calculate the ideal perfectly regenerated Stirling temperature limit. - **Formula (Heat rate in Btu/kWh, D2)**: `=IF(COUNT(B4)<>1,"Enter numeric efficiency",IF(OR(B4<=0,B4>1),"Efficiency must be >0 and <=1",3412.14/B4))` - **Formula (Heat rate in kJ/kWh, D3)**: `=IF(COUNT(B4)<>1,"Enter numeric efficiency",IF(OR(B4<=0,B4>1),"Efficiency must be >0 and <=1",3600/B4))` - **Formula (Ideal Stirling efficiency, D4)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric Kelvin temperatures",IF(OR(B2<=0,B3<=0,B3>B2),"Require Th>=Tc>0 Kelvin",1-B3/B2))` ### Stokes-Einstein Nanoparticle Diffusion & RMS Walk Formula - **URL**: https://sheets.arte-soft.com/en/learn/stokes-einstein-brownian-diffusion-and-rms-displacement-formula/ - **Summary**: Calculate Stokes-Einstein Brownian Translational Diffusion Coefficient D (µm²/s) from Temperature, Dynamic Viscosity, and Hydrodynamic Radius (nm), plus 3D and 1D Root-Mean-Square (RMS) Displacement (µm) and Characteristic Diffusive Transit Time. *Table — Scale nanoparticle Brownian diffusion and Dynamic Light Scattering (DLS) sizing without SI exponent slips!:* | Stokes-Einstein Metric (300 K, η = 1.0 mPa·s, r_H = 50 nm, t = 10 s) | Formula | Verified Output | | --- | --- | --- | | Diffusion Coefficient D (µm²/s) | (13.8065 * T_K) / (6 * PI() * η_mPas * r_nm) | 4.3947 µm²/s (2.1974 @ 100 nm) | | 3D RMS Displacement (µm) | SQRT(6 * D * t_s) | 16.24 µm | | 1D Projected RMS Walk (µm) | SQRT(2 * D * t_s) | 9.38 µm | | 3D Diffusion Time for 10 µm (s) | (10^2) / (6 * D) | 3.79 s (7.58 s @ 100 nm) | - **Formula (Stokes-Einstein Diffusion Coefficient Formula (µm²/s))**: `=LET(tk_v, B2, et_m, B3, rh_n, B4, tm_s, B5, IF(OR(tk_v <= 0, et_m <= 0, rh_n <= 0, tm_s <= 0), "Invalid Brownian Input", ROUND((13.8065 * tk_v) / (6 * PI() * et_m * rh_n), 4)))` - **Formula (Aggregated Nanoparticle Doubling Check (Set Hydrodynamic Radius = 100 nm))**: `=IF(ISTEXT(E2), E2, ROUND(100 / (6 * ((13.8065 * B2) / (6 * PI() * B3 * B4))), 2))` ### Stokes's Law Terminal Settling Velocity & Particle Reynolds Check formulas - **URL**: https://sheets.arte-soft.com/en/learn/stokes-law-terminal-settling-velocity-and-drag-equation/ - **Summary**: Calculate the ideal terminal speed of an isolated sphere in a Newtonian fluid and screen the estimated particle Reynolds number. *Table — An isolated rigid sphere in creeping flow:* | Sedimentation Parameter | Formula / SI Inputs | 50 um Quartz Silt in Water | Lighter rigid sphere | | --- | --- | --- | --- | | Densities rho_p & rho_f | B2 = 2,650, B3 = 1,000 kg/m^3 | g=9.81, d=50E-6 m, mu=0.001 Pa*s | rho_p set to 900 kg/m^3 | | Settling Velocity (mm/s) | 1000 * ((B2-B3)*B4*B5^2)/(18*B6) | +2.2481 mm/s (Sinks) | -0.1363 mm/s (Rises!) | | Particle Reynolds Re_p | (B3 * ABS(v_ms) * B5) / B6 | 0.1124 (passes the chosen screen) | 0.0068 (passes the chosen screen) | - **Formula (Stokes Terminal Settling Velocity in millimeters per second (mm/s))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",ROUND(1000 * (((B2 - B3) * B4 * (B5 ^ 2)) / (18 * B6)), 4)))` - **Formula (Particle Reynolds number)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",ROUND((B3 * ABS(((B2 - B3) * B4 * (B5 ^ 2)) / (18 * B6)) * B5) / B6, 4)))` - **Formula (Screen the unrounded Reynolds estimate)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<=0,B6<=0),"Invalid inputs",IF(((B3 * ABS(((B2 - B3) * B4 * (B5 ^ 2)) / (18 * B6)) * B5) / B6) <= 0.2, "Passes Re screen", "Outside Re screen")))` ### Stokes' Law Terminal Settling Velocity & Laminar Re_p <= 1 Check - **URL**: https://sheets.arte-soft.com/en/learn/stokes-law-terminal-settling-velocity-and-particle-reynolds/ - **Summary**: Calculate creeping-flow particle settling or rising velocity v_t = (g * d^2 * (rho_p - rho_f)) / (18 * mu) (mm/s) for clarifiers, emulsions, and falling-ball viscometers—with automatic Particle Reynolds Re_p verification. *Table — Size water-treatment sedimentation basins and verify creeping-flow validity!:* | Settling Scenario (d = 50 um = 0.00005 m, g = 9.81 m/s^2) | Fluid Properties | Terminal Velocity v_t (mm/s) | Particle Re_p Check | | --- | --- | --- | --- | | Quartz Silt in Water (rho_p = 2,650) | rho_f = 998, mu = 0.001 Pa*s | +2.2508 mm/s (Sinks) | Re_p = 0.1123 (<= 1 Valid!) | | Quartz Silt in Gear Oil | rho_f = 880, mu = 0.050 Pa*s | +0.0482 mm/s (50x slower) | Re_p = 0.00004 (Pure Stokes) | | Coarse Gravel (d = 5 mm in Water) | d = 0.005 m | v_t -> Re_p > 1,000! | "Re_p > 1: Turbulent Wake" | - **Formula (Stokes Terminal Velocity in mm/s with Creeping-Flow Re_p <= 1 Guard)**: `=IF(OR(B2 <= 0, B5 <= 0), "Invalid Diameter or Viscosity", LET(vt, (9.81 * (B2 ^ 2) * (B3 - B4)) / (18 * B5), Rep, (B4 * ABS(vt) * B2) / B5, IF(Rep > 1, "Re_p > 1: Use Newton/Schiller-Naumann", ROUND(vt * 1000, 4))))` - **Formula (Particle Reynolds Number Re_p = (rho_f * |v_t| * d) / mu)**: `=LET(vt, (9.81 * (B2 ^ 2) * (B3 - B4)) / (18 * B5), ROUND((B4 * ABS(vt) * B2) / B5, 4))` ### Stokes’ Law Terminal Settling Velocity, Particle Reynolds Gate & Clarifier Capture - **URL**: https://sheets.arte-soft.com/en/learn/stokes-terminal-settling-velocity-and-particle-reynolds-check/ - **Summary**: Calculate laminar gravitational settling velocity v_s = g*(rho_p - rho_f)*d^2 / (18*mu), validate creeping flow via particle Reynolds number Re_p <= 1, and check sedimentation basin capture. *Table — Balancing submerged weight against Stokes viscous drag (6*pi*mu*r*v):* | Clarifier Metric | Formula | 100 um Quartz Silt in 20 °C Water | Status | | --- | --- | --- | --- | | Settling Velocity v_s | g * (rho_p - rho_f) * d^2 / (18 * mu) | 0.008993 m/s (8.9925 mm/s) | Downward sedimentation | | Particle Reynolds Re_p | rho_f * ABS(v_s) * d / mu | 0.8993 | Re_p <= 1 -> STOKES_LAMINAR | | Surface Overflow Rate v_o | Flow_Q / Basin_Area | 5.0000 mm/s | v_s >= v_o -> CAPTURED_100PCT | - **Formula (Stokes Terminal Velocity Formula (in mm/s))**: `=ROUND((9.81 * (B2 - B3) * (B4 ^ 2) / (18 * B5)) * 1000, 4)` - **Formula (Particle Reynolds Regime & Clarifier Capture Check)**: `=IF(E3 <= 1, "STOKES_LAMINAR", "TRANSITIONAL_DRAG")` ### Stolper-Samuelson & Rybczynski Magnification Formula - **URL**: https://sheets.arte-soft.com/en/learn/stolper-samuelson-and-rybczynski-magnification-effect-2x2-formula/ - **Summary**: Solve Ronald Jones’s (1965) 2x2 Heckscher-Ohlin hat-algebra equations to verify Stolper-Samuelson factor-price magnification and Rybczynski endowment-output magnification. *Table — Prove why a 10% goods-price shock drives a >10% real wage gain AND an absolute rental decline!:* | 2x2 Hat-Algebra Metric (Delta_theta = 0.50, Delta_lambda = 0.50) | Formula | Verified Output | | --- | --- | --- | | Stolper-Samuelson Wage Hat (w_hat) | ((1 - theta_L2)*p1_hat - (1 - theta_L1)*p2_hat) / (th_L1 - th_L2) | +0.1600 (+16.0% > +10% Price!) | | Stolper-Samuelson Rental Hat (r_hat) | (theta_L1*p2_hat - theta_L2*p1_hat) / (th_L1 - th_L2) | -0.0400 (-4.0% Real Loss!) | | Rybczynski Sector-1 Output Hat (Y1_hat) | ((1 - lam_K1)*L_hat - (1 - lam_L1)*K_hat) / (lam_L1 - lam_K1) | +0.1500 (+15.0% Expansion!) | | Rybczynski Sector-2 Output Hat (Y2_hat) | (lam_L1*K_hat - lam_K1*L_hat) / (lam_L1 - lam_K1) | -0.0500 (-5.0% Contraction!) | - **Formula (Stolper-Samuelson Magnified Factor-Price Change w_hat Formula)**: `=LET(th_1, B2, th_2, B3, p1_h, B4, p2_h, B5, IF(OR(th_1 <= 0, th_1 >= 1, th_2 <= 0, th_2 >= 1, th_1 = th_2), "Singular Equal Factor Intensity", ROUND(((1 - th_2) * p1_h - (1 - th_1) * p2_h) / (th_1 - th_2), 4)))` - **Formula (Rybczynski Magnified Sectoral Output Change Y1_hat Formula)**: `=LET(lm_l1, B6, lm_k1, B7, l_ht, B8, k_ht, B9, IF(OR(lm_l1 <= 0, lm_l1 >= 1, lm_k1 <= 0, lm_k1 >= 1, lm_l1 = lm_k1), "Singular Equal Factor Intensity", ROUND(((1 - lm_k1) * l_ht - (1 - lm_l1) * k_ht) / (lm_l1 - lm_k1), 4)))` ### STOP-BANG Obstructive Sleep Apnea (OSA) Screening Score Formula - **URL**: https://sheets.arte-soft.com/en/learn/stop-bang-obstructive-sleep-apnea-screening-score-formula/ - **Summary**: Practice validated binary inputs and conditional formulas using the published 40-cm STOP-Bang scoring variant. Calculate the total and two-step screening category without treating missing answers as a low-risk result. - **Formula (Validate before adding or classifying)**: `=IF(COUNT(B2:B9)<>8,"Complete all 8 binary inputs",IF(COUNTIF(B2:B9,0)+COUNTIF(B2:B9,1)<>8,"Use only 0 or 1","OK"))` - **Formula (Calculate the total)**: `=IF(B11<>"OK",B11,SUM(B2:B9))` - **Formula (Apply the two-step rule)**: `=IF(B11<>"OK",B11,IF(B12<=2,"Low OSA Risk",IF(OR(B12>=5,AND(SUM(B2:B5)>=2,OR(B6=1,B8=1,B9=1))),"High OSA Risk","Intermediate OSA Risk")))` ### Rent-free months: average monthly rent and discounted payment schedule - **URL**: https://sheets.arte-soft.com/en/learn/straight-line-rent-and-lease-liability-pv-ifrs16/ - **Summary**: Model a 36-month rent schedule with its first three months free, and discount the actual remaining payments rather than an unabated annuity. *Table — Use the same payment schedule in both calculations:* | Payment-schedule measure | Calculation | Result | | --- | --- | --- | | Total cash payments | 5,000 × 33 | 165,000 | | Average cash rent per month | 165,000 / 36 | 4,583.33 | | PV of payments at months 3 through 35 | =ROUND(PV(D2/12,B2-C2,-A2,0,1)/(1+D2/12)^C2,2) | 150,251.36 | - **Formula (Average contractual cash rent per month)**: `=ROUND((A2 * (B2 - C2)) / B2, 2)` - **Formula (PV of the scheduled payments including the initial rent-free period)**: `=ROUND(PV(D2/12,B2-C2,-A2,0,1)/(1+D2/12)^C2,2)` ### Streeter-Phelps Dissolved Oxygen (DO) Sag Curve & Critical Time formulas - **URL**: https://sheets.arte-soft.com/en/learn/streeter-phelps-dissolved-oxygen-sag-curve-critical-deficit/ - **Summary**: Model river dissolved oxygen depletion and recovery downstream of a wastewater discharge using Streeter-Phelps deficit D(t), remaining DO = DO_sat - D(t), and critical sag travel time t_c. *Table — A simplified oxygen-deficit model after mixing:* | Water-Quality Metric | Formula | L0=20, D0=1.5, k1=0.25, k2=0.50, t=2d (DOsat=9.2) | Outfall Mixing Point (t = 0) | | --- | --- | --- | --- | | DO Deficit D(t) (mg/L) | ((k1*L0)/(k2-k1))*(e^-k1t - e^-k2t) + D0*e^-k2t | 5.32 mg/L deficit | 1.50 mg/L (= D_0) | | Modelled DO (mg/L) | DO_sat - D(t) | 3.88 mg/L under model assumptions | 7.70 mg/L | | Critical Sag Time t_c (days) | LN((k2/k1)*(1 - D0*(k2-k1)/(k1*L0))) / (k2-k1) | 2.46 days downstream | 2.46 days | - **Formula (Streeter-Phelps Downstream Dissolved Oxygen Deficit D(t) (mg/L))**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B5<=0,B6<0,B7<=0,B3>B7),"Invalid inputs",ROUND(LET(deltaRate,B5-B4,scaledDelta,deltaRate*B6,decayTerm,IF(ABS(scaledDelta)<0.00001,B6*EXP(-B4*B6)*(1-scaledDelta/2+scaledDelta^2/6-scaledDelta^3/24),(EXP(-B4*B6)-EXP(-B5*B6))/deltaRate),B4*B2*decayTerm+B3*EXP(-B5*B6)),2)))` - **Formula (Critical Travel Time t_c to Minimum River Oxygen (Days))**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B5<=0,B6<0,B7<=0,B3>B7),"Invalid inputs",IF(OR(B2=0,B4*B2<=B5*B3),0,LET(deltaRate,B5-B4,shapeTerm,(B4*B2-B5*B3)/(B4^2*B2),logDelta,deltaRate*shapeTerm,ROUND(IF(ABS(logDelta)<0.00001,shapeTerm*(1-logDelta/2+logDelta^2/3-logDelta^3/4),LN(1+logDelta)/deltaRate),2)))))` - **Formula (Modelled remaining dissolved oxygen)**: `=IF(COUNT(B2:B7)<>6,"Invalid inputs",IF(OR(B2<0,B3<0,B4<=0,B5<=0,B6<0,B7<=0,B3>B7),"Invalid inputs",LET(deficit,LET(deltaRate,B5-B4,scaledDelta,deltaRate*B6,decayTerm,IF(ABS(scaledDelta)<0.00001,B6*EXP(-B4*B6)*(1-scaledDelta/2+scaledDelta^2/6-scaledDelta^3/24),(EXP(-B4*B6)-EXP(-B5*B6))/deltaRate),B4*B2*decayTerm+B3*EXP(-B5*B6)),IF(deficit>B7,"Outside aerobic model",ROUND(B7-deficit,2)))))` ### Strip all numeric digits (0–9) from a text string (TEXTSPLIT & TEXTJOIN) - **URL**: https://sheets.arte-soft.com/en/learn/strip-digits-from-text-or-remove-last-word/ - **Summary**: Remove digits 0–9 from display text, or replace digit and separator boundaries with spaces. Keep the original identifiers. *Table — Remove ASCII digits with multiple delimiters:* | Raw Alphanumeric Input (A2) | After Digit Strip & TRIM | Digits/hyphens removed (other characters can remain) | | --- | --- | --- | | "1450 Oakridge Blvd 402" | "Oakridge Blvd" | "Oakridge Blvd" | | "SKU-9984 Hydraulic Valve 2" | "SKU- Hydraulic Valve" | "SKU Hydraulic Valve" | | "90210" (Pure digits) | "" (Empty string, IFERROR-safe!) | "" | - **Formula (Strip all digits 0–9 and collapse extra spaces)**: `=TRIM(IFERROR(TEXTJOIN("", TRUE, TEXTSPLIT(A2, {"0","1","2","3","4","5","6","7","8","9"}, , TRUE)), ""))` - **Formula (Strip both digits 0–9 AND hyphens/underscores in one delimiter list)**: `=TRIM(IFERROR(TEXTJOIN(" ", TRUE, TEXTSPLIT(B2, {"0","1","2","3","4","5","6","7","8","9","-","_"}, , TRUE)), ""))` ### Strip HTML tags from text with a single formula (TEXTSPLIT + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/strip-html-tags-from-text-formula/ - **Summary**: Extract text from simple balanced angle-bracket markup with TEXTSPLIT and FILTER; learn the limitations of this formula approach. *Table — Split simple markup into alternating tokens:* | Raw HTML Export (A) | Clean Plain Text | | --- | --- | |

Price: $49.00

| Price: $49.00 | | Upgrade now! | Upgrade now! | | Plain text without tags | Plain text without tags | - **Formula (Formula for simple balanced markup)**: `=TRIM(MID(LET(p, TEXTSPLIT("~" & A2, {"<",">"}), k, SEQUENCE(1, COLUMNS(p)), TEXTJOIN("", TRUE, FILTER(p, (-1)^k < 0, ""))), 2, LEN(A2)))` - **Formula (Detect the presence of both angle brackets)**: `=AND(ISNUMBER(FIND("<", A2)), ISNUMBER(FIND(">", A2)))` ### Remove non-numeric characters (keep digits only, or strip all digits) - **URL**: https://sheets.arte-soft.com/en/learn/strip-non-numeric-or-numeric-characters-formula/ - **Summary**: Extract only digits 0–9 from messy IDs ("Order #482-B9" -> "4829") or strip all digits to isolate text labels using double-TEXTSPLIT. *Table — The double-TEXTSPLIT trick: split on digits, then split on non-digits:* | Raw Input (A) | Keep Digits Only | Strip Digits (Letters/Symbols) | | --- | --- | --- | | Order #482-B9 | 4829 | Order #-B | | 00940-XT | 00940 (leading 0s safe!) | -XT | | 90210 | 90210 | (empty) | | SKU-ONLY | (empty) | SKU-ONLY | - **Formula (Keep digits only (preserving leading zeros) and strip digits)**: `=IF(A2="","",LET(s, A2 & "", nonDig, TEXTSPLIT(s, {"0","1","2","3","4","5","6","7","8","9"}, , TRUE), IF(ISERROR(INDEX(nonDig,1,1)), s, IF(INDEX(nonDig,1,1)="", s, IFERROR(TEXTJOIN("", TRUE, TEXTSPLIT(s, nonDig, , TRUE)), "")))))` - **Formula (Strip all digits 0–9 and keep non-numeric text)**: `=IF(A2="","",IFERROR(TRIM(TEXTJOIN("", TRUE, TEXTSPLIT(A2, {"0","1","2","3","4","5","6","7","8","9"}, , TRUE))),""))` ### Strömgren Sphere Radius (RS) & H II Nebula Recombination Timescale - **URL**: https://sheets.arte-soft.com/en/learn/stromgren-sphere-ionization-radius-and-recombination-time/ - **Summary**: Calculate the ionization-bounded H II region Strömgren radius RS = ((3 * Q_H) / (4 * PI() * n_H^2 * alpha_B))^(1/3) in parsecs and hydrogen recombination time t_rec = 1 / (n_H * alpha_B) in years. *Table — Balance O-star Lyman-continuum UV photons against electron-proton recombination!:* | Nebular Gas Density n_H (Q_H = 10^49 s^-1) | Strömgren Radius R_S (pc) | Recombination Time t_rec (yr) | Density Scaling | | --- | --- | --- | --- | | Classic H II Region (n_H = 100 cm^-3) | 3.150 parsecs | 1,218.8 years | Baseline Orion-like nebula | | Compact H II Core (n_H = 1,000 cm^-3) | 0.679 parsecs | 121.9 years | R_S scales as n_H^(-2/3) | | Invalid Density n_H <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid Nebula Inputs" | - **Formula (Strömgren Sphere Radius R_S in Parsecs (pc))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Nebula Inputs", ROUND((((3 * B2) / (4 * PI() * (B3 ^ 2) * B4)) ^ (1 / 3)) / 3085677600000000000, 3))` - **Formula (Hydrogen Recombination Timescale t_rec = 1 / (n_H * alpha_B) in Julian Years)**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Nebula Inputs", ROUND((1 / (B3 * B4)) / 31557600, 1))` ### Strouhal Number & Karman Vortex-Shedding Frequency Formula - **URL**: https://sheets.arte-soft.com/en/learn/strouhal-number-karman-vortex-shedding-frequency-formula/ - **Summary**: Estimate stationary-cylinder shedding frequency and nominal frequency-match speed from a supplied Strouhal number, with a configurable comparison band that does not certify structural safety. - **Formula (Compute the nominal frequency-match speed)**: `=IF(COUNT(B2,B4:B5)<>3,"Enter numeric St,diameter,natural frequency",IF(OR(B2<=0,B4<=0,B5<=0),"Require St,diameter,natural frequency>0",B5*B4/B2))` - **Formula (Choose an explicit comparison tolerance)**: `=IF(NOT(ISNUMBER(E4)),E4,IF(NOT(ISNUMBER(B6)),"Enter numeric fractional tolerance",IF(OR(B6<0,B6>=1),"Require tolerance from 0 to less than 1",IF(ABS(E4-1)<=B6,"Within chosen comparison band","Outside chosen comparison band"))))` - **Formula (Check inputs and scaling)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric St,speed,diameter",IF(OR(B2<=0,B3<0,B4<=0),"Require St,diameter>0 and speed>=0",B2*B3/B4))` ### Calculate Student & Workforce Absence Rate (%) & Chronic Absence Flag - **URL**: https://sheets.arte-soft.com/en/learn/student-and-workforce-absence-rate-and-chronic-absence-flag/ - **Summary**: Calculate absence rates from validated P, T, A and E codes, distinguish missing records from zero absence, and compare a recorded-period rate with an illustrative threshold. - **Formula (Calculate the unrounded rate)**: `=IF((COUNTIF(B2:F2,"P")+COUNTIF(B2:F2,"T")+COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))+COUNTBLANK(B2:F2)<>5,"Check attendance codes",IF((COUNTIF(B2:F2,"P")+COUNTIF(B2:F2,"T")+COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))=0,"No recorded days",(COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))/(COUNTIF(B2:F2,"P")+COUNTIF(B2:F2,"T")+COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))))` - **Formula (Unexcused absence rate)**: `=IF((COUNTIF(B2:F2,"P")+COUNTIF(B2:F2,"T")+COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))+COUNTBLANK(B2:F2)<>5,"Check attendance codes",IF((COUNTIF(B2:F2,"P")+COUNTIF(B2:F2,"T")+COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))=0,"No recorded days",COUNTIF(B2:F2,"A")/(COUNTIF(B2:F2,"P")+COUNTIF(B2:F2,"T")+COUNTIF(B2:F2,"A")+COUNTIF(B2:F2,"E"))))` - **Formula (Compare with an illustrative threshold)**: `=IF(ISNUMBER(G2),IF(G2>=0.1,"At or above example threshold","Below example threshold"),G2)` ### Stutzer Performance Index: Skewness-Adjusted Sharpe & Cumulant Decay Rate - **URL**: https://sheets.arte-soft.com/en/learn/stutzer-portfolio-performance-index-skewness-adjusted-information-decay/ - **Summary**: Adjust the Sharpe ratio for third-moment crash skewness using Michael Stutzer’s (2000) large-deviations information decay rate I_P and Sharpe-equivalent SQRT(2 * I_P). *Table — Why negatively skewed carry and option-selling strategies inflate the standard Sharpe ratio:* | Return Skewness (mu=2%, sigma=5%, Raw SR=0.4000) | Information Rate I_P | Stutzer Sharpe-Equivalent | | --- | --- | --- | | Negative Crash Skew (-1.50) | 0.0686 | 0.3704 (-296 bps penalty vs Sharpe) | | Symmetric Gaussian Skew (0.00) | 0.0800 (0.5 * 0.4^2) | 0.4000 (Matches Sharpe identically) | | Positive Trend Skew (+1.00) | 0.0965 | 0.4393 (+393 bps convexity bonus) | - **Formula (Three-Cumulant Saddlepoint Information Decay Rate I_P Formula)**: `=LET(mu_ex, B2, sig, B3, skw, B4, sr_val, mu_ex / sig, IF(ABS(skw) < 0.000000001, ROUND(0.5 * (sr_val ^ 2), 4), LET(v_two, sig ^ 2, m_thr, skw * (sig ^ 3), disc, (v_two ^ 2) - 2 * mu_ex * m_thr, IF(disc < 0, "DOMAIN_LIMIT", LET(th_opt, (-v_two + SQRT(disc)) / m_thr, ROUND(-(mu_ex * th_opt + 0.5 * v_two * (th_opt ^ 2) + (1 / 6) * m_thr * (th_opt ^ 3)), 4))))))` - **Formula (Stutzer Sharpe-Equivalent Ratio SIGN(mu) * SQRT(2 * I_P))**: `=LET(mu_ex, B2, sig, B3, skw, B4, sr_val, mu_ex / sig, IF(ABS(skw) < 0.000000001, ROUND(sr_val, 4), LET(v_two, sig ^ 2, m_thr, skw * (sig ^ 3), disc, (v_two ^ 2) - 2 * mu_ex * m_thr, IF(disc < 0, "DOMAIN_LIMIT", LET(th_opt, (-v_two + SQRT(disc)) / m_thr, ip_val, -(mu_ex * th_opt + 0.5 * v_two * (th_opt ^ 2) + (1 / 6) * m_thr * (th_opt ^ 3)), ROUND(SIGN(mu_ex) * SQRT(2 * MAX(0, ip_val)), 4))))))` ### PE Subscription Line (Subline) IRR Boost vs TVPI Formula - **URL**: https://sheets.arte-soft.com/en/learn/subscription-credit-line-subline-irr-boost-vs-tvpi-dilution-formula/ - **Summary**: Calculate Unlevered Deal IRR (%), Delayed LP Capital Call With Subline Interest ($M), Subline-Levered LP IRR (%), and Net LP TVPI Multiple Dilution (x). *Table — Subscription credit lines boost LP IRR by shortening the clock—while shrinking cash TVPI!:* | ILPA Subline Attribution KPI ($100M -> $200M in 4 Yrs, 1-Yr Subline @ 8.0%) | Formula | Verified Output | | --- | --- | --- | | Unlevered (No-Subline) IRR (%) | ((Exit_M / Cost_M) ^ (1 / Hold_Yrs) - 1) * 100 | 18.92% (at 2.00x TVPI) | | Delayed LP Capital Call ($M) | Cost_M * (1 + Subline_Rate * Bridge_Yrs) | $108.00M ($100.00M @ 0 Yr) | | Subline-Levered LP IRR (%) | ((Exit_M / LP_Call) ^ (1 / (Hold - Bridge)) - 1)*100 | 22.80% (18.92% @ 0 Yr) | | Net LP TVPI Multiple (x) | Exit_Proceeds_M / Delayed_LP_Call_M | 1.85x (2.00x @ 0 Yr) | - **Formula (ILPA Unlevered vs Subline-Levered IRR & TVPI Formula)**: `=LET(cs_m, B2, ex_m, B3, hd_y, B4, br_y, B5, rt_s, B6, IF(OR(cs_m <= 0, ex_m <= 0, hd_y < 1, br_y < 0, br_y >= hd_y, rt_s < 0, rt_s > 0.25), "Invalid Subline Input", LET(lp_c, cs_m * (1 + rt_s * br_y), ROUND(((ex_m / lp_c) ^ (1 / (hd_y - br_y)) - 1) * 100, 2))))` - **Formula (Zero-Bridge Unlevered Equivalence Check (Set Subline Bridge Years = 0))**: `=IF(ISTEXT(E4), E4, ROUND(B3 / (B2 * (1 + B6 * B5)), 2))` ### MOV Surge Arrester BIL Margin & Separation Formula - **URL**: https://sheets.arte-soft.com/en/learn/substation-mov-surge-arrester-bil-protective-margin-and-separation-distance-formula/ - **Summary**: Calculate Traveling-Wave Reflected Transformer Terminal Voltage Vt (kV), IEEE C62.22 Protective Ratio (BIL / Vt), Insulation Margin (%), and Maximum Safe Arrester Separation Lmax (m). *Table — Mount a 336 kV ZnO surge arrester 38 meters away from your 650 kV BIL power transformer and open-end wave doubling adds +253 kV—flashing over HV bushings!:* | IEEE C62.22 Insulation Coordination KPI (BIL=650 kV, Vpl=336 kV, dV/dt=1,000 kV/us, v=300 m/us) | Formula | Verified Output | | --- | --- | --- | | Transformer Terminal Surge Vt (kV) | Vpl_kV + 2 * dVdt_kV_us * (Lead_L_m / v_m_us) | 392.7 kV @ 8.5 m (589.3 kV @ 38 m!) | | IEEE C62.22 Protective Ratio (PR) | Transformer_BIL_kV / Terminal_Vt_kV | 1.655 PASS (1.103 < 1.20 FAIL!) | | Protective Insulation Margin (%) | (Protective_Ratio_PR - 1) * 100 | 65.5% safe (10.3% flashover danger!) | | Max Safe Separation for PR=1.2 (m) | (((BIL / 1.20) - Vpl) * v) / (2 * dVdt) | 30.85 m maximum bus+lead length | - **Formula (IEEE C62.22 Traveling-Wave Separation Voltage & 1.20 BIL Margin Formula)**: `=LET(bl_k, B2, vp_k, B3, dv_s, B4, ls_m, B5, vw_u, B6, IF(OR(bl_k < 75, bl_k > 2550, vp_k < 20, vp_k > bl_k / 1.25, dv_s < 100, dv_s > 3000, ls_m < 0.5, ls_m > 150, vw_u < 120, vw_u > 300), "Invalid Arrester Input", ROUND((((bl_k / 1.2) - vp_k) * vw_u) / (2 * dv_s), 2)))` - **Formula (Line-Entrance Only Arrester `38` m from Transformer (`L = 38` m) Bushing Flashover Check)**: `=IF(ISTEXT(E5), E5, LET(vt_k, B3 + 2 * B4 * (B5 / B6), ROUND(B2 / vt_k, 3)))` ### SUBSTITUTE vs REPLACE: swap matching text or overwrite by position - **URL**: https://sheets.arte-soft.com/en/learn/substitute-vs-replace-text/ - **Summary**: Use SUBSTITUTE when you know which text to swap (all occurrences or a chosen Nth match), and REPLACE when you know the character start index and length. *Table — Three text-cleaning tasks with different rules:* | Input (A) | Goal | Best function | | --- | --- | --- | | 2026/03/15 | 2026-03-15 | SUBSTITUTE (all) | | WH-NORTH-04 | WH-NORTH:04 | SUBSTITUTE (2nd match) | | CARD-7781-9024 | CARD-XXXX-9024 | REPLACE (start 6, len 4) | - **Formula (Swap every match or target instance_num with SUBSTITUTE)**: `=SUBSTITUTE(A2,"/","-")` - **Formula (Overwrite a fixed character slice with REPLACE)**: `=REPLACE(A4,6,4,"XXXX")` ### Subtotal open invoices by invoice-age brackets with SUMIFS - **URL**: https://sheets.arte-soft.com/en/learn/subtotal-invoices-by-aging-bucket-sumifs/ - **Summary**: Aggregate open invoice balances into standard 30-day AR aging subtotal buckets using elapsed age DaysOld = AuditDate - InvoiceDate and SUMIFS. *Table — Turn raw open invoice dates into an auditable 30/60/90-day AR subtotal summary!:* | Invoice (A) | Invoice Date (B) | Balance (C) | Days Old vs 2026-10-30 (D) | | --- | --- | --- | --- | | INV-501 | 2026-10-15 | $4,200 | 15 days (0–30 age bucket) | | INV-502 | 2026-09-15 | $3,100 | 45 days (31–60 Bucket) | | INV-503 | 2026-09-01 | $1,900 | 59 days (31–60 Bucket -> $5,000) | | INV-504 | 2026-08-15 | $2,600 | 76 days (61–90 Bucket) | | INV-505 | 2026-06-20 | $5,400 | 132 days (Over 90 -> Total = $17,200) | - **Formula (Subtotal two-sided aging bucket (e.g., 31 to 60 days old))**: `=IF(OR(COUNT(B2:C6)<>10,NOT(ISNUMBER(F2))),"Invalid inputs",IF(OR(COUNT(B2:C6)<>10,NOT(ISNUMBER(F2)),F2<>INT(F2),MIN(B2:B6)<0,MAX(B2:B6)>F2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6)),"Invalid inputs",SUMIFS(C2:C6, D2:D6, ">=31", D2:D6, "<=60")))` - **Formula (Subtotal open-ended Over-90-Days bucket & reconciliation check)**: `=IF(OR(COUNT(B2:C6)<>10,NOT(ISNUMBER(F2))),"Invalid inputs",IF(OR(COUNT(B2:C6)<>10,NOT(ISNUMBER(F2)),F2<>INT(F2),MIN(B2:B6)<0,MAX(B2:B6)>F2,B2<>INT(B2),B3<>INT(B3),B4<>INT(B4),B5<>INT(B5),B6<>INT(B6)),"Invalid inputs",SUMIFS(C2:C6, D2:D6, ">90")))` ### Subtotal by invoice number on first row only (Prevent double-counting fees) - **URL**: https://sheets.arte-soft.com/en/learn/subtotal-once-per-invoice-number-line-items/ - **Summary**: Show one merchandise subtotal and one repeated invoice-level freight charge per invoice, with an explicit consistency check. *Table — Stop double-counting repeated order-level shipping and discounts in ERP exports!:* | Invoice (A) | SKU Line $ (B) | Repeated Freight (C) | Deduped Freight (D) & Subtotal (E) | | --- | --- | --- | --- | | INV-501 (Line 1) | $120 | $25 | Freight = $25 \| InvSubtotal = $300 | | INV-501 (Line 2) | $180 | $25 (Duplicate!) | Freight = $0 \| InvSubtotal = $0 | | INV-502 (Line 1) | $95 | $15 | Freight = $15 \| InvSubtotal = $95 | | INV-503 (Lines 1–2) | $210 + $140 | $30 repeated x2 | Freight = $30 \| InvSubtotal = $350 | - **Formula (Output invoice line-item subtotal only on the first row of each invoice)**: `=IF(COUNTBLANK(A2)>0,"Missing invoice ID",IF(COUNTIF($A$2:A2,A2)=1,SUMIF($A$2:$A$6,A2,$B$2:$B$6),0))` - **Formula (Deduplicate repeated order-level freight across multi-line invoices)**: `=IF(OR(COUNT(B2:C6)<>10,COUNTBLANK(A2:A6)>0,COUNTIF(D2:D6,"Conflicting freight")>0),"Review invoice data",SUM(D2:D6))` ### Suits Index of Tax Progressivity (S) Formula: Tax-vs-Income Trapezoidal Integral - **URL**: https://sheets.arte-soft.com/en/learn/suits-tax-progressivity-index-lorenz-concentration-trapezoid/ - **Summary**: Calculate Daniel B. Suits’s (1977) Tax Progressivity Index S = 1 - SUM((T_i + T_{i-1}) * (Y_i - Y_{i-1})) across income brackets (-1 regressive to +1 ultra-progressive, 0 flat tax) directly from cumulative income and tax shares. *Table — Why US Congressional & State Revenue Offices love Suits’s Index: it plots Cumulative Tax directly against Cumulative Income!:* | Tax Schedule Across 4 Income Groups (y = [10%, 20%, 30%, 40%]) | Tax Shares t = [t_1, t_2, t_3, t_4] | Suits Progressivity Index S = 1 - 2*L | | --- | --- | --- | | Progressive Graduated Income Tax | [2%, 10%, 28%, 60%] | +0.2540 (Progressive: S > 0) | | Proportional Flat-Rate Payroll Tax | [10%, 20%, 30%, 40%] (t_i = y_i) | 0.0000 (Exact Flat Tax Benchmark) | | Regressive Per-Pack Excise Tax | [22%, 28%, 28%, 22%] | -0.2620 (Regressive: S < 0) | - **Formula (Exact Trapezoidal Suits Tax Progressivity Index S = 1 - SUM((T_i + T_{i-1}) * y_i))**: `=IF(OR(SUM(B2:B5) <= 0, SUM(C2:C5) <= 0, MIN(B2:B5) < 0, MIN(C2:C5) < 0), "Invalid Income or Tax Bracket Totals", ROUND(1 - ((D2) * (B2 / SUM(B2:B5)) + (D2 + D3) * (B3 / SUM(B2:B5)) + (D3 + D4) * (B4 / SUM(B2:B5)) + (D4 + D5) * (B5 / SUM(B2:B5))), 4))` - **Formula (Suits Fiscal Incidence Classification (Progressive S > 0 / Proportional S = 0 / Regressive S < 0))**: `=IF(OR(SUM(B2:B5) <= 0, SUM(C2:C5) <= 0), "Invalid Totals", IF(ROUND(1 - ((D2) * (B2 / SUM(B2:B5)) + (D2 + D3) * (B3 / SUM(B2:B5)) + (D3 + D4) * (B4 / SUM(B2:B5)) + (D4 + D5) * (B5 / SUM(B2:B5))), 4) > 0.01, "Progressive Tax (Suits S > 0)", IF(ROUND(1 - ((D2) * (B2 / SUM(B2:B5)) + (D2 + D3) * (B3 / SUM(B2:B5)) + (D3 + D4) * (B4 / SUM(B2:B5)) + (D4 + D5) * (B5 / SUM(B2:B5))), 4) < -0.01, "Regressive Tax (Suits S < 0)", "Proportional / Flat Tax (Suits S ≈ 0)")))` ### Sum and average by calendar month across years - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-average-by-month-ignoring-year-seasonality/ - **Summary**: Group dated observations by month and compare a group average with the overall sample average. *Table — Pool multi-year history by calendar month (1–12) to measure seasonality!:* | Calendar Month | Pooled Multi-Year Entries ($k) | Pooled Sum & Average | Seasonality Index (vs. $155k Mean) | | --- | --- | --- | --- | | Month 12 (Dec 2024, 2025, 2026) | 180, 210, 240 | Sum = $630k \| Avg = $210k | 210 / 155 = 1.3548 (Peak +35.5%) | | Month 1 (Jan 2025, 2026) | 90, 110 | Sum = $200k \| Avg = $100k | 100 / 155 = 0.6452 (Dip -35.5%) | | Month 7 (Jul 2026) | 100 | Sum = $100k \| Avg = $100k | 100 / 155 = 0.6452 | - **Formula (Sum revenue for a calendar month (1–12) across all years)**: `=IF(OR(NOT(ISNUMBER(E2)),E2<1,E2>12,E2<>INT(E2),COUNT(C2:C7)<>6),"Invalid inputs",SUMIFS(C2:C7, B2:B7, E2))` - **Formula (Group mean relative to the sample mean)**: `=IF(OR(NOT(ISNUMBER(E2)),E2<1,E2>12,E2<>INT(E2),COUNT(C2:C7)<>6),"Invalid inputs",IF(COUNTIF(B2:B7,E2)=0,"No observations",IF(AVERAGE(C2:C7)=0,"Zero baseline",ROUND(AVERAGEIFS(C2:C7,B2:B7,E2)/AVERAGE(C2:C7),4))))` ### Sum & Average Daily Revenue by Day of Week (WEEKDAY + SUMIF) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-average-by-weekday-number-weekday-sumif/ - **Summary**: Aggregate daily POS or e-commerce transactions by ISO day of week (Monday = 1 through Sunday = 7) and split weekday vs. weekend totals using WEEKDAY(A2, 2) + SUMIF. *Table — Why WEEKDAY(date, 2) makes Monday–Friday (<= 5) and Saturday–Sunday (>= 6) effortless to aggregate!:* | Day-of-Week Aggregation Query | ISO WEEKDAY(A2, 2) Code | Exact Formula | Sample Ledger Result | | --- | --- | --- | --- | | Friday Revenue Total (2 Fridays) | F2 = 5 (Friday) | SUMIF(C2:C8, F2, B2:B8) | $4,100 ($1,950 + $2,150) | | All Weekend Sales (Sat + Sun) | >= 6 (Sat=6, Sun=7) | SUMIF(C2:C8, ">=6", B2:B8) | $5,350 ($2,900 + $2,450) | | Monday Revenue Total | F2 = 1 (Monday) | SUMIF(C2:C8, F2, B2:B8) | $1,200 | - **Formula (Sum Revenue for Any Target ISO Day of Week F2 (1 = Mon ... 7 = Sun))**: `=IF(OR(F2 < 1, F2 > 7), "ISO Day Must Be 1 (Mon) to 7 (Sun)", SUMIF(C2:C8, F2, B2:B8))` - **Formula (Sum Weekend Revenue (Saturday = 6 and Sunday = 7))**: `=SUMIF(C2:C8, ">=6", B2:B8)` ### Sum, Average & Count Comma-Delimited Numbers Inside One Cell (TEXTSPLIT) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-average-delimited-numbers-in-cell-textsplit/ - **Summary**: Parse comma- or pipe-delimited numeric lists packed inside a single cell (such as "120, 85, 95, 140") into real numbers using --TEXTSPLIT(B2, ",") and aggregate them with SUM, AVERAGE, MIN, and MAX. *Table — Aggregate CSV number lists exported inside a single spreadsheet cell!:* | Packed Cell Text (B2) | Raw TEXTSPLIT Result | Coerced --TEXTSPLIT Array | SUM & AVERAGE | | --- | --- | --- | --- | | "120, 85, 95, 140" | {"120"," 85"," 95"," 140"} (Text!) | {120, 85, 95, 140} | SUM = 440 \| AVG = 110 | | "45, 55, 80" | {"45"," 55"," 80"} | {45, 55, 80} | SUM = 180 \| AVG = 60 | | "" (Blank Cell) | #VALUE! if unguarded | Guarded by IF(TRIM(B2)="", 0, ...) | SUM = 0 | - **Formula (Sum Comma-Delimited Numbers in One Cell (with Empty-Cell Guard))**: `=IF(TRIM(B2) = "", 0, SUM(--TEXTSPLIT(B2, ",")))` - **Formula (Average & Count Delimited Numbers in One Cell)**: `=IF(TRIM(B2) = "", 0, ROUND(AVERAGE(--TEXTSPLIT(B2, ",")), 2))` ### Sum, average, or find MAX while ignoring formula errors (#DIV/0!, #N/A) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-average-ignoring-errors/ - **Summary**: Keep a single #DIV/0! or #N/A cell from poisoning summary KPIs by filtering ranges with ISNUMBER before SUM, AVERAGE, or MAX. *Table — Why one #DIV/0! breaks an entire SUM or AVERAGE:* | Row | MarginVal (A) | ISNUMBER(A) | Effect on Filtered Summary | | --- | --- | --- | --- | | 2 | 40 | TRUE | Included | | 3 | =1/0 (#DIV/0!) | FALSE | Ignored | | 4 | 60 | TRUE | Included | | 5 | =NA() (#N/A) | FALSE | Ignored | | 6 | 50 | TRUE | Included | - **Formula (Error-proof SUM, AVERAGE, and MAX formulas)**: `=SUM(FILTER(A2:A6, ISNUMBER(A2:A6), 0))` - **Formula (Error-proof AVERAGE formula)**: `=IF(COUNT(A2:A6)=0, "No numeric data", AVERAGE(FILTER(A2:A6, ISNUMBER(A2:A6))))` ### Sum and average the last N columns horizontally (rolling trailing months with TAKE) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-average-last-n-columns-take/ - **Summary**: Calculate trailing 3-month or trailing N-period sums and averages across horizontal monthly P&L columns using TAKE(row, , -N). *Table — Take the rightmost N numeric observations:* | Jan (B) | Feb (C) | Mar (D) | Apr (E) | May (F) | Jun (G) | Trailing 3-Mo KPI | | --- | --- | --- | --- | --- | --- | --- | | $40k | $45k | $50k | $55k | $65k | $80k | Last 3 Sum = $200k, Avg = $66.67k | | $40k | $45k | $50k | $55k | (blank) | (blank) | Populated Last 3 (Feb–Apr) = $150k! | - **Formula (Sum and average the last N populated horizontal columns)**: `=IF(OR(NOT(ISNUMBER(H2)),H2<1,MOD(H2,1)<>0,H2>COUNT(B2:G2)),"Invalid window",SUM(TAKE(FILTER(B2:G2, ISNUMBER(B2:G2)), , -H2)))` - **Formula (Trailing N-column average (for annualized run-rate projections))**: `=IF(OR(NOT(ISNUMBER(H2)),H2<1,MOD(H2,1)<>0,H2>COUNT(B2:G2)),"Invalid window",ROUND(AVERAGE(TAKE(FILTER(B2:G2, ISNUMBER(B2:G2)), , -H2)), 2))` ### Sum or average the last N entries in a column (skipping blank rows) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-average-last-n-rows/ - **Summary**: Extract the final N numeric observations from an expanding log with TAKE and FILTER—keeping legitimate zeros while skipping trailing blanks. *Table — Why TAKE(-N) needs FILTER(ISNUMBER) on live tracking logs:* | Day (A) | Output (B) | Included in Last 3? | | --- | --- | --- | | Mon | 120 | No (older) | | Tue | 200 | Yes (#1 of last 3) | | Wed | 0 | Yes (#2 — valid zero kept!) | | Thu | (blank) | Skipped (blank) | | Fri | 280 | Yes (#3 of last 3) | - **Formula (Sum and average last N numeric values)**: `=IF(OR(C2<1, C2<>INT(C2)), "Invalid count", IF(COUNT(B2:B6)=0, "No numeric data", SUM(TAKE(FILTER(B2:B6, ISNUMBER(B2:B6)), -C2))))` - **Formula (Trailing N-entry average)**: `=IF(OR(C2<1, C2<>INT(C2)), "Invalid count", IF(COUNT(B2:B6)=0, "No numeric data", ROUND(AVERAGE(TAKE(FILTER(B2:B6, ISNUMBER(B2:B6)), -C2)), 2)))` ### Sum and count payments by calendar year, including December 31 timestamps - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-count-payments-by-year-date-boundaries/ - **Summary**: Use an inclusive January 1 start and exclusive next-January-1 end to include every timestamp in the selected year. *Table — Use a half-open date interval:* | Payment Date (Col A) | Amount (Col B) | Year Bucket | Included for D2 = 2024? | | --- | --- | --- | --- | | 2023-12-31 | $1,200 | 2023 | Excluded (< 2024-01-01) | | 2024-01-15 | $1,500 | 2024 | Included | | 2024-02-29 (Leap Day) | $800 | 2024 | Included | | 2024-11-20 | $2,200 | 2024 | Included (2024 Total = $4,500) | | 2025-01-01 & 2025-06-10 | $950, $1,750 | 2025 | Excluded (> 2024-12-31; 2025 Total = $2,700) | - **Formula (Sum Payments in Target Calendar Year D2)**: `=IF(OR(NOT(ISNUMBER(D2)),COUNT(A2:A7)<>6,COUNT(B2:B7)<>6),"Invalid inputs",IF(OR(D2<>INT(D2),D2<1901,D2>9998,MIN(A2:A7)<0),"Invalid inputs",SUMIFS(B2:B7, A2:A7, ">=" & DATE(D2, 1, 1), A2:A7, "<" & DATE(D2+1, 1, 1))))` - **Formula (Count Transactions in Target Calendar Year D2)**: `=IF(OR(NOT(ISNUMBER(D2)),COUNT(A2:A7)<>6),"Invalid inputs",IF(OR(D2<>INT(D2),D2<1901,D2>9998,MIN(A2:A7)<0),"Invalid inputs",COUNTIFS(A2:A7, ">=" & DATE(D2, 1, 1), A2:A7, "<" & DATE(D2+1, 1, 1))))` ### Sum and find MAX of every Nth horizontal column (repeating Budget vs Actual blocks) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-max-every-nth-column-horizontal/ - **Summary**: Sum or find the maximum across columns selected by repeated headers, such as Actual and Budget. *Table — Stop clicking =C2+E2+G2+I2+K2... across 24 Budget/Actual columns!:* | Q1 Budget (B) | Q1 Actual (C) | Q2 Budget (D) | Q2 Actual (E) | Q3 Budget (F) | Q3 Actual (G) | | --- | --- | --- | --- | --- | --- | | $100k | $112k | $110k | $98k | $120k | $135k | | Total Budget = $330k | Total Actual = $345k | Peak Actual = $135k | Total Variance = +$15k | — | — | - **Formula (Horizontal SUMIFS and MAX(FILTER) across repeating column blocks)**: `=SUMIFS(B2:G2, $B$1:$G$1, "Actual")` - **Formula (Peak Actual period and YTD Actual-minus-Budget variance)**: `=IF(COUNTIF($B$1:$G$1,"Actual")=0,"No Actual columns",MAX(FILTER(B2:G2, $B$1:$G$1 = "Actual")))` ### Sum, Max & Average a Variable Column by Header (CHOOSECOLS + MATCH) - **URL**: https://sheets.arte-soft.com/en/learn/sum-and-max-of-dynamic-column-selected-by-header-choosecols/ - **Summary**: Select a numeric column by a quarter header and calculate its sum, maximum, minimum and average with missing-header checks. *Table — Switch KPI summary columns dynamically with a single dropdown cell!:* | Store | Q1 (Col B) | Q2 (Col C) | Q3 (Col D) | | --- | --- | --- | --- | | North | 120 | 150 | 180 | | South | 90 | 210 (Q2 MAX) | 160 | | West | 140 | 180 | 220 (Q3 MAX) | | Column SUM | 350 | 540 (F2 = "Q2") | 560 (F2 = "Q3") | - **Formula (Dynamic Column Sum by Matched Header Name)**: `=IF(OR(NOT(ISTEXT(F2)),COUNTBLANK(F2)>0),"Enter header",IF(IFNA(MATCH(F2,B1:D1,0),0)=0,"Header not found",IF(COUNT(CHOOSECOLS(B2:D4,MATCH(F2,B1:D1,0)))<>3,"Invalid data",SUM(CHOOSECOLS(B2:D4, MATCH(F2, B1:D1, 0))))))` - **Formula (Maximum of the selected column)**: `=IF(OR(NOT(ISTEXT(F2)),COUNTBLANK(F2)>0),"Enter header",IF(IFNA(MATCH(F2,B1:D1,0),0)=0,"Header not found",IF(COUNT(CHOOSECOLS(B2:D4,MATCH(F2,B1:D1,0)))<>3,"Invalid data",MAX(CHOOSECOLS(B2:D4, MATCH(F2, B1:D1, 0))))))` - **Formula (Average of the selected column)**: `=IF(OR(NOT(ISTEXT(F2)),COUNTBLANK(F2)>0),"Enter header",IF(IFNA(MATCH(F2,B1:D1,0),0)=0,"Header not found",IF(COUNT(CHOOSECOLS(B2:D4,MATCH(F2,B1:D1,0)))<>3,"Invalid data",ROUND(AVERAGE(CHOOSECOLS(B2:D4, MATCH(F2, B1:D1, 0))), 2))))` - **Formula (Minimum of the selected column)**: `=IF(OR(NOT(ISTEXT(F2)),COUNTBLANK(F2)>0),"Enter header",IF(IFNA(MATCH(F2,B1:D1,0),0)=0,"Header not found",IF(COUNT(CHOOSECOLS(B2:D4,MATCH(F2,B1:D1,0)))<>3,"Invalid data",MIN(CHOOSECOLS(B2:D4,MATCH(F2,B1:D1,0))))))` ### Sum top N or bottom N values (overall and with criteria) - **URL**: https://sheets.arte-soft.com/en/learn/sum-bottom-n-and-top-n-values/ - **Summary**: Total the N largest deals or N lowest vendor quotes dynamically using SUM, TAKE, SORT, and FILTER. *Table — Combine SORT and TAKE for any dynamic N:* | Region (A) | DealAmt (B) | Rank | | --- | --- | --- | | East | 500 | 1st largest | | West | 150 | Smallest | | East | 350 | 2nd largest | | West | 300 | 3rd largest | | East | 200 | 2nd smallest | - **Formula (Top N, bottom N, and conditional top N formulas)**: `=SUM(TAKE(SORT(B2:B6, 1, -1), C2))` - **Formula (Sum bottom N smallest values)**: `=SUM(TAKE(SORT(B2:B6, 1, 1), C2))` ### Sum the Bottom N Values Matching Criteria (FILTER, SORT & TAKE Pipeline) - **URL**: https://sheets.arte-soft.com/en/learn/sum-bottom-n-values-with-criteria-sum-take-sort-filter/ - **Summary**: Total the N lowest vendor quotes, fastest lap times, or smallest Regional invoices within a specific category using SUM(TAKE(SORT(FILTER(...)), N)) with graceful IFERROR handling. *Table — Why FILTER + SORT + TAKE replaces legacy Ctrl+Shift+Enter SMALL arrays:* | Category Query | Matching Quotes | Sorted Ascending | Bottom N = 2 Sum | Bottom N = 3 Sum | | --- | --- | --- | --- | --- | | Freight | 480, 320, 590, 410 | 320, 410, 480, 590 | 730 | 1,210 | | Customs (Only 2 rows) | 290, 210 | 210, 290 | 500 | 500 (Safe clamp!) | | Air (0 rows) | (None) | #CALC! -> IFERROR 0 | 0 | 0 | - **Formula (Sum Lowest N Category Values (Fewer-Than-N Safe))**: `=IFERROR(SUM(TAKE(SORT(FILTER(C2:C7, B2:B7 = E2)), F2)), 0)` - **Formula (Average Lowest N Category Values)**: `=IFERROR(AVERAGE(TAKE(SORT(FILTER(C2:C7, B2:B7 = E2)), F2)), 0)` ### Sum by fiscal year (any fiscal start month: July, October, or April) - **URL**: https://sheets.arte-soft.com/en/learn/sum-by-fiscal-year-any-start-month/ - **Summary**: Calculate Fiscal Year start and end dates dynamically from FY number and StartMonth (e.g., FY2026 = Jul 1, 2025 to Jun 30, 2026) inside SUMIFS. *Table — Derive exact [FY_Start, FY_End] bounds for any fiscal calendar convention:* | TxDate (A) | Revenue (B) | July-Start FY Label | In FY2026 (Jul 25–Jun 26)? | | --- | --- | --- | --- | | 2025-06-15 | $400 | FY2025 | No (Prior FY) | | 2025-07-10 | $950 | FY2026 | Yes | | 2026-02-20 | $1,250 | FY2026 | Yes (FY2026 Sum = $2,800) | | 2026-06-30 | $600 | FY2026 | Yes | | 2026-07-01 | $500 | FY2027 | No (Next FY) | - **Formula (Dynamic Fiscal Year SUMIFS formula (any StartMonth 1–12))**: `=LET(s, DATE(D2 - IF(E2 > 1, 1, 0), E2, 1), e, EOMONTH(s, 11)+1, SUMIFS(B2:B6, A2:A6, ">=" & s, A2:A6, "<" & e))` - **Formula (Count transactions inside the target Fiscal Year)**: `=LET(s, DATE(D2 - IF(E2 > 1, 1, 0), E2, 1), e, EOMONTH(s, 11)+1, COUNTIFS(A2:A6, ">=" & s, A2:A6, "<" & e))` ### Sum by month and year with SUMIFS and EOMONTH - **URL**: https://sheets.arte-soft.com/en/learn/sum-by-month-and-year-sumifs/ - **Summary**: Aggregate daily transaction logs into monthly totals dynamically from a Year and Month cell without helper columns. *Table — Bound a calendar month cleanly with DATE and EOMONTH:* | TxDate (A) | Revenue (B) | Target: 2026-03 | | --- | --- | --- | | 2025-03-15 | 400 | Excluded (2025) | | 2026-03-01 | 550 | Included | | 2026-03-31 | 750 | Included | | 2026-04-01 | 300 | Excluded (April) | - **Formula (Monthly SUMIFS formula)**: `=LET(m, DATE(C2, D2, 1), SUMIFS(B2:B5, A2:A5, ">=" & m, A2:A5, "<" & (EOMONTH(m, 0)+1)))` - **Formula (Monthly transaction count)**: `=LET(m, DATE(C2, D2, 1), COUNTIFS(A2:A5, ">=" & m, A2:A5, "<" & (EOMONTH(m, 0)+1)))` ### Sum an entire 2D matrix across columns matching a header tag (SUM & FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/sum-columns-based-on-adjacent-header-criteria/ - **Summary**: Total a multi-row, multi-column 2D table (B3:E5) across ONLY the columns whose Row-2 status tag equals "Active"—solving the classic 2D SUMIF limitation cleanly! *Table — Filter columns first, then aggregate all rows:* | Product Row | Store-1 ("Active") | Store-2 ("Closed") | Store-3 ("Active") | Store-4 ("Active") | | --- | --- | --- | --- | --- | | Row 2 Status Tag | Active | Closed | Active | Active | | Line A (Row 3) | 10 | 20 (Excluded) | 30 | 40 | | Line B (Row 4) | 15 | 25 (Excluded) | 35 | 45 | | Line C (Row 5) | 20 | 30 (Excluded) | 25 | 50 (Active 2D Sum = 270!) | - **Formula (Total all rows across columns matching header status G2)**: `=IF(OR(COUNT(B3:E5)<>12,COUNTBLANK(B2:E2)>0,COUNTBLANK(G2)>0),"Invalid inputs",IF(SUMPRODUCT(--(B2:E2=G2))=0,0,SUM(FILTER(B3:E5,B2:E2=G2))))` - **Formula (Average cell value across matching 2D columns)**: `=IF(OR(COUNT(B3:E5)<>12,COUNTBLANK(B2:E2)>0,COUNTBLANK(G2)>0),"Invalid inputs",IF(SUMPRODUCT(--(B2:E2=G2))=0,"No matching columns",AVERAGE(FILTER(B3:E5,B2:E2=G2))))` ### Sum matching columns across repeating headers (Actual vs Budget) - **URL**: https://sheets.arte-soft.com/en/learn/sum-columns-or-rows-matching-header-label/ - **Summary**: Total alternating Actual and Budget columns horizontally on one row with SUMIF or across an entire 2D table with SUMPRODUCT. *Table — Eliminate manual =B2+D2+F2+H2 formulas on wide financial sheets:* | Dept (A) | Actual (B) | Budget (C) | Actual (D) | Budget (E) | Row Actual Sum | | --- | --- | --- | --- | --- | --- | | Sales | 120 | 100 | 150 | 140 | 270 | | Ops | 80 | 90 | 95 | 90 | 175 | - **Formula (Row-level horizontal SUMIF and 2D matrix SUMPRODUCT)**: `=SUMIF($B$1:$E$1, "Actual", B2:E2)` - **Formula (2D grand total of all matching columns across all rows)**: `=SUMPRODUCT(($B$1:$E$1 = "Actual") * B2:E3)` ### Sum every 3 cells into quarterly totals (OFFSET & step multiplier) - **URL**: https://sheets.arte-soft.com/en/learn/sum-every-3-cells-quarterly-blocks-offset/ - **Summary**: Roll up a 12-row monthly ledger into 4 consecutive 3-month quarterly totals automatically using SUM(OFFSET($B$2, (Quarter - 1) * 3, 0, 3, 1)). *Table — Stop hand-editing =SUM(B2:B4), =SUM(B5:B7), =SUM(B8:B10) row by row!:* | Quarter Index (D) | Row Offset (D - 1) * 3 | 3-Cell Slice Evaluated | Quarterly Sum | | --- | --- | --- | --- | | 1 (Q1) | 0 rows below B2 | B2:B4 (10 + 20 + 30) | 60 | | 2 (Q2) | +3 rows below B2 | B5:B7 (40 + 50 + 60) | 150 | | 3 (Q3) | +6 rows below B2 | B8:B10 (70 + 80 + 90) | 240 | | 4 (Q4) | +9 rows below B2 | B11:B13 (100 + 110 + 120) | 330 | - **Formula (Sum every N = 3 vertical cells for Quarter index D2)**: `=IF(OR(COUNT(D2)<>1,COUNT($B$2:$B$13)<>12),"Invalid inputs",IF(OR(D2<1,D2>4,D2<>INT(D2)),"Invalid inputs",SUM(OFFSET($B$2, (D2 - 1) * 3, 0, 3, 1))))` - **Formula (Average every 3 cells per quarter)**: `=IF(OR(COUNT(D2)<>1,COUNT($B$2:$B$13)<>12),"Invalid inputs",IF(OR(D2<1,D2>4,D2<>INT(D2)),"Invalid inputs",AVERAGE(OFFSET($B$2, (D2 - 1) * 3, 0, 3, 1))))` ### Sum every Nth row: total periodic intervals with MOD, ROW, and SUMIF - **URL**: https://sheets.arte-soft.com/en/learn/sum-every-nth-row/ - **Summary**: Tag every Nth row cleanly with MOD(ROW - FirstRow + 1, N) and total matching cycle rows with SUMIF. *Table — Why relative 1-based row offsets matter:* | Month (A) | Sales (B) | CycleRem (C) | StepN (E2) | | --- | --- | --- | --- | | Jan | 100 | 1 | 3 | | Feb | 120 | 2 | | | Mar (3rd) | 150 | 0 | | | Apr | 110 | 1 | | | May | 130 | 2 | | | Jun (6th) | 180 | 0 | | - **Formula (Total every 3rd row (or switch N dynamically))**: `=SUMIF(C2:C7, 0, B2:B7)` - **Formula (Sum every Nth row starting at row 1 instead of row N)**: `=SUMIF(C2:C7, 1, B2:B7)` ### Sum first N (or last N) matching values by customer (TAKE + FILTER) - **URL**: https://sheets.arte-soft.com/en/learn/sum-first-n-matching-values-take-filter/ - **Summary**: Sum the first or last N matching orders in a chronologically sorted transaction log using TAKE and FILTER. *Table — Chronological First-N vs Value-Sorted Top-N:* | TxOrder | Account (A) | Amount (B) | Slice Role for "ACME" (N = 2) | | --- | --- | --- | --- | | 1 | ACME | $120 | 1st ACME order (First 2 = $270) | | 2 | BETA | $400 | Skipped (Different account) | | 3 | ACME | $150 | 2nd ACME order | | 4 | ACME | $220 | 3rd ACME order (Last 2 = $520) | | 5 | ACME | $300 | 4th ACME order (Latest) | - **Formula (First N and Last N matching-order sum formulas)**: `=IF(OR(E2<1,E2<>INT(E2)), "Enter a positive whole number", SUM(TAKE(FILTER(B2:B6, A2:A6 = D2, 0), E2)))` - **Formula (Sum the LAST N matching entries for account D2)**: `=IF(OR(E2<1,E2<>INT(E2)), "Enter a positive whole number", SUM(TAKE(FILTER(B2:B6, A2:A6 = D2, 0), -E2)))` ### Sum Formula-Driven Cells Only While Isolating Hardcoded Manual Overrides (ISFORMULA) - **URL**: https://sheets.arte-soft.com/en/learn/sum-formula-cells-only-excluding-hardcoded-manual-overrides-isformula/ - **Summary**: Separate formula-calculated subtotals from hardcoded manual number overrides using ISFORMULA and SUMIF so shared financial models stay 100% auditable. *Table — Catching silent manual overrides in shared budget models:* | Line Item | Units * Rate | Line Total (D) | ISFORMULA(D)? | Audit Bucket | | --- | --- | --- | --- | --- | | Core Licenses | 40 * 120 | =B2 * C2 (4,800) | TRUE | Formula Subtotal | | Onboarding Fee | 1 * 2,500 | 3000 (Typed Override) | FALSE | Manual Override Plug | | Support Retainer | 12 * 350 | =B4 * C4 (4,200) | TRUE | Formula Subtotal | | Custom Migration | 1 * 1,800 | 1500 (Typed Override) | FALSE | Manual Override Plug | | API Add-On | 25 * 80 | =B6 * C6 (2,000) | TRUE | Formula Subtotal | - **Formula (Sum Formula-Calculated Cells Only)**: `=SUMIF(E2:E6, TRUE, D2:D6)` - **Formula (Sum Hardcoded Manual Overrides & Count Plugged Cells)**: `=SUMIF(E2:E6, FALSE, D2:D6)` ### Sum timesheet hours by week and project (7-day window SUMIFS) - **URL**: https://sheets.arte-soft.com/en/learn/sum-hours-by-week-and-project-sumifs/ - **Summary**: Roll up daily employee time entries into weekly project totals using half-open [WeekStart, WeekStart + 7) date criteria. *Table — Why ">= WeekStart" and "< WeekStart + 7" beats WEEKNUM for weekly project billing:* | Work Date (A) | Project Code (B) | Hours Logged (C) | Week of 2026-05-04 Match? | | --- | --- | --- | --- | | 2026-05-03 (Sun prior) | PRJ-Alpha | 4.0 hrs | Excluded (< May 4) | | 2026-05-04 (Mon) | PRJ-Alpha | 7.5 hrs | Included! | | 2026-05-07 (Thu) | PRJ-Beta | 6.0 hrs | Excluded (Project mismatch) | | 2026-05-10 (Sun) | PRJ-Alpha | 5.0 hrs | Included! (Sum = 12.5 hrs) | | 2026-05-11 (Next Mon) | PRJ-Alpha | 8.0 hrs | Excluded (Not < May 11) | - **Formula (Weekly project hours rollup with half-open 7-day SUMIFS bounds)**: `=SUMIFS(C2:C6, A2:A6, ">=" & E2, A2:A6, "<" & (E2 + 7), B2:B6, F2)` - **Formula (Total weekly hours across the supplied projects)**: `=SUMIFS(C2:C6, A2:A6, ">=" & E2, A2:A6, "<" & (E2 + 7))` ### Sum If Begins With Prefix or Ends With Suffix (Wildcard SUMIFS Formula) - **URL**: https://sheets.arte-soft.com/en/learn/sum-if-begins-with-or-ends-with-prefix-suffix-sumifs/ - **Summary**: Total general-ledger accounts or SKU codes starting with a prefix (Prefix & "*") or ending with a regional/currency suffix ("*" & Suffix)—or matching BOTH simultaneously—using wildcard SUMIFS. *Table — Roll up GL account prefixes ("REV-*") and regional suffixes ("*-EUR") without helper columns!:* | GL Account String (Col A) | Posted Amount (Col B) | Matches Prefix "REV-"? | Matches Suffix "-EUR"? | | --- | --- | --- | --- | | REV-4100-USD | $1,000 | Yes (Begins with REV-) | No (Ends with -USD) | | REV-4200-EUR | $2,000 | Yes (Begins with REV-) | Yes (Ends with -EUR) -> Both! | | COGS-5100-EUR | $3,000 | No (Begins with COGS-) | Yes (Ends with -EUR) | | REV-4300-EUR | $4,000 | Yes (Begins with REV-) | Yes (Ends with -EUR) -> Both! | - **Formula (Sum Rows Where Text Code Begins With Prefix (Prefix & "*"))**: `=IF(D2 = "", "Enter Prefix", SUMIFS(B2:B5, A2:A5, D2 & "*"))` - **Formula (Sum Rows Where Text Code Ends With Suffix ("*" & Suffix))**: `=IF(D3 = "", "Enter Suffix", SUMIFS(B2:B5, A2:A5, "*" & D3))` - **Formula (Combined Prefix AND Suffix Wildcard SUMIFS)**: `=SUMIFS(B2:B5, A2:A5, D2 & "*", A2:A5, "*" & D3)` ### Sum If Blank ("") vs. Not Blank ("<>") With SUMIF & SUMIFS - **URL**: https://sheets.arte-soft.com/en/learn/sum-if-blank-or-not-blank-unpaid-invoices-sumifs/ - **Summary**: Total open accounts-receivable invoices where Paid_Date is blank using SUMIF(D2:D6, "", C2:C6), settled invoices where Paid_Date is non-blank using "<>", and multi-criteria open region balances with SUMIFS. *Table — Audit unpaid open invoices vs. collected cash directly from blank Paid_Date cells!:* | Ledger Aggregation Goal | Criteria Operator String | Formula Pattern | Ledger Result | | --- | --- | --- | --- | | All Unpaid Open Invoices (Blank Paid_Date) | "" (Empty String) | =SUMIF(D2:D6, "", C2:C6) | $4,150 Open AR | | All Settled Paid Invoices (Non-Blank) | "<>" (Not Empty) | =SUMIF(D2:D6, "<>", C2:C6) | $3,100 Collected | | Open EMEA Invoices Only | "EMEA" + "" | =SUMIFS(C2:C6, B2:B6, "EMEA", D2:D6, "") | $2,900 Open EMEA | - **Formula (Sum Values Where Criteria Column Is Blank: SUMIF(D2:D6, "", C2:C6))**: `=SUMIF(D2:D6, "", C2:C6)` - **Formula (Sum Values Where Criteria Column Is Not Blank ("<>") or Filtered by Region)**: `=SUMIFS(C2:C6, B2:B6, "EMEA", D2:D6, "")` ### Sum If Cells Contain Text from Another Cell ("*" & Keyword & "*") - **URL**: https://sheets.arte-soft.com/en/learn/sum-if-cell-contains-substring-from-another-cell-sumifs/ - **Summary**: Total invoices or bank transactions whose description contains a dynamic search keyword in E2 using wildcard concatenation "*" & E2 & "*"—with an empty-search-box ISBLANK guard so blank inputs do not sum the entire sheet! *Table — Beware the blank-cell wildcard trap: "*" & "" & "*" = "**" matches EVERYTHING!:* | Keyword Cell E2 | Naive =SUMIF(A2:A6, "*"&E2&"*", B2:B6) | Guarded Formula Output | Why It Matters | | --- | --- | --- | --- | | "AWS" | $340 + $85 = $425 | $425 | Matches substring anywhere in cell | | "Stripe" | $190 | $190 | Case-insensitive partial match | | "" (Cleared Search Box!) | $1,035 (Sums ALL text rows!) | $0 (Cleanly zeroed!) | Prevents "**" matching everything! | - **Formula (Blank-Safe Dynamic Substring Sum (IF + LEN + TRIM + Wildcard SUMIF))**: `=IF(LEN(TRIM(E2)) = 0, 0, SUMIF(A2:A6, "*" & TRIM(E2) & "*", B2:B6))` - **Formula (Multi-Criteria Substring + Account Filter via SUMIFS)**: `=IF(LEN(TRIM(E2)) = 0, 0, SUMIFS(B2:B6, A2:A6, "*" & TRIM(E2) & "*", C2:C6, F2))` ### Sum If Cells Contain Both Keywords (AND) or Either Keyword (OR) - **URL**: https://sheets.arte-soft.com/en/learn/sum-if-cells-contain-both-keywords-or-either-keyword/ - **Summary**: Sum rows containing both or either literal text substrings, escape wildcard characters, and avoid double-counting the intersection without silently accepting empty keywords. - **Formula (Total where both substrings occur)**: `=IF(OR(NOT(ISTEXT(D2)),NOT(ISTEXT(E2)),D2="",E2=""),"Enter two nonempty text keywords",IF(COUNT(B2:B6)<>5,"All amounts must be numeric",SUMIFS(B2:B6,A2:A6,"*"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?")&"*",A2:A6,"*"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(E2,"~","~~"),"*","~*"),"?","~?")&"*")))` - **Formula (Total where either substring occurs)**: `=IF(OR(NOT(ISTEXT(D2)),NOT(ISTEXT(E2)),D2="",E2=""),"Enter two nonempty text keywords",IF(COUNT(B2:B6)<>5,"All amounts must be numeric",SUMIF(A2:A6,"*"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?")&"*",B2:B6)+SUMIF(A2:A6,"*"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(E2,"~","~~"),"*","~*"),"?","~?")&"*",B2:B6)-SUMIFS(B2:B6,A2:A6,"*"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?")&"*",A2:A6,"*"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(E2,"~","~~"),"*","~*"),"?","~?")&"*")))` ### Sum If Not Equal To ("<>") Single or Multiple Exclusions (SUMIFS) - **URL**: https://sheets.arte-soft.com/en/learn/sum-if-not-equal-to-value-or-multiple-exclusions-sumifs/ - **Summary**: Total ledger amounts while excluding cancelled, refunded, or intercompany categories using SUMIF(Cat, "<>" & Excl, Amt) and multi-exclusion SUMIFS(Amt, Cat, "<>" & Excl1, Cat, "<>" & Excl2). *Table — Exclude one or several status codes without filtering rows out by hand!:* | Exclusion Rule (Total Gross = $1,450) | Formula | Excluded Rows | Net Sum | | --- | --- | --- | --- | | Exclude E2 ("Cancelled" = $250) | =SUMIF(A2:A6, "<>" & E2, B2:B6) | Drops $250 | $1,200 | | Exclude BOTH "Cancelled" & "Refunded" ($150) | =SUMIFS(B2:B6, A2:A6, "<>" & E2, A2:A6, "<>" & E3) | Drops $250 + $150 | $1,050 | | Exclude Any Substring "*Test*" | =SUMIF(A2:A6, "<>*Test*", B2:B6) | Wildcard exclusion | Drops test orders | - **Formula (Single Dynamic Category Exclusion via SUMIF(Range, "<>" & Cell, SumRange))**: `=SUMIF(A2:A6, "<>" & E2, B2:B6)` - **Formula (Multi-Value Exclusion ("Not X AND Not Y") via Repeated Range in SUMIFS)**: `=SUMIFS(B2:B6, A2:A6, "<>" & E2, A2:A6, "<>" & E3)` ### Sum the last 30 days (or rolling N days) with SUMIFS - **URL**: https://sheets.arte-soft.com/en/learn/sum-last-30-days-rolling-window-sumifs/ - **Summary**: Total revenue or orders inside a rolling 30-day window and avoid the classic RefDate - 30 vs RefDate - 29 off-by-one boundary mistake. *Table — Watch the inclusive fencepost rule: RefDate - (N - 1):* | OrderDate (A) | Revenue (B) | Included in Apr 1–Apr 30 (30d)? | | --- | --- | --- | | 2026-03-31 | 400 | No (30 days before the As-Of date — excluded) | | 2026-04-01 | 1200 | Yes (Day 1 of 30-day window) | | 2026-04-18 | 850 | Yes | | 2026-04-30 | 950 | Yes (Day 30 -> Total = 3,000) | | 2026-05-02 | 600 | No (future-dated — excluded) | - **Formula (Rolling 30-day SUMIFS formula anchored to an As-Of cell)**: `=SUMIFS(B2:B6, A2:A6, ">=" & (INT(D2) - 29), A2:A6, "<" & (INT(D2)+1))` - **Formula (Count orders in the same rolling 30-day window)**: `=COUNTIFS(A2:A6, ">=" & (INT(D2) - 29), A2:A6, "<" & (INT(D2)+1))` ### Lookup Hourly Rates & Sum Total Invoice Billing (XLOOKUP & SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/sum-lookup-rate-times-quantity-across-table-sumproduct-sumif/ - **Summary**: Pull role-based hourly billing rates from a master rate card with XLOOKUP and roll up total project invoice value via SUMPRODUCT(Hours, Looked_Up_Rates). *Table — Auditable rate-card invoicing across multi-role consulting timesheets!:* | Timesheet Role Code | Logged Hours (Col B) | XLOOKUP Rate Card ($/hr) | Extended Line Value | | --- | --- | --- | --- | | ENG-SR (2 Entries: 4.0 + 6.0 h) | 10.0 hours | $180 / hr | $1,800.00 | | DESIGN (1 Entry: 2.5 h) | 2.5 hours | $140 / hr | $350.00 | | PM (1 Entry: 3.0 h) | 3.0 hours | $160 / hr | $480.00 (Grand Total = $2,630) | - **Formula (Total Invoice Billing Across All Timesheet Rows)**: `=ROUND(SUMPRODUCT(B2:B5, C2:C5), 2)` - **Formula (Unmapped Role Code Audit Check)**: `=COUNTIFS(B2:B5, ">0", C2:C5, 0)` ### Sum matching rows AND columns in a 2D matrix (SUMPRODUCT outer product) - **URL**: https://sheets.arte-soft.com/en/learn/sum-matching-rows-and-columns-2d-matrix-sumproduct/ - **Summary**: Aggregate a 2D crosstab when BOTH row labels and column headers can repeat (e.g., multiple "North" rows across multiple "Q1" columns). *Table — Sum every matching intersection in a numeric matrix:* | Region (A) | Q1 Direct (B="Q1") | Q2 Direct (C="Q2") | Q1 Partner (D="Q1") | | --- | --- | --- | --- | | North (Row 2) | $10k (Match!) | $20k | $30k (Match!) | | South (Row 3) | $40k | $50k | $60k | | North (Row 4) | $5k (Match!) | $15k | $25k (Match! -> Sum = $70k!) | - **Formula (2D row-and-column criteria matrix sum with SUMPRODUCT)**: `=SUMPRODUCT((A2:A4 = F2) * (B1:D1 = G2) * B2:D4)` - **Formula (Count how many matrix cells matched both row and column criteria)**: `=SUMPRODUCT((A2:A4 = F2) * (B1:D1 = G2))` ### Sum or average numbers stored inside a single comma-separated cell - **URL**: https://sheets.arte-soft.com/en/learn/sum-numbers-inside-single-delimited-cell/ - **Summary**: Total, average, or count comma- or semicolon-delimited numbers in one cell ("120, 85, 45, 150" -> 400) using TEXTSPLIT and numeric coercion. *Table — Why SUM(TEXTSPLIT(...)) returns 0 without numeric coercion:* | Delimited Cell (A) | Item Count | Total Sum | Average | | --- | --- | --- | --- | | 120, 85, 45, 150 | 4 | 400 | 100 | | 19.50; 30.50; 25.00 | 3 | 75 | 25 | | (blank) | 0 | 0 | Undefined (No numbers) | - **Formula (Blank-safe delimited sum and average formulas)**: `=IF(OR(A2="",TRIM(A2)=""), 0, SUM(1 * TEXTSPLIT(A2, {",",";"}, , TRUE)))` - **Formula (Average delimited numbers in a single cell)**: `=IF(OR(A2="",TRIM(A2)=""), "No numbers", AVERAGE(1 * TEXTSPLIT(A2, {",",";"}, , TRUE)))` ### Sum of Squared Deviations (DEVSQ) & Pooled Within-Group Variance Formula - **URL**: https://sheets.arte-soft.com/en/learn/sum-of-squared-deviations-devsq-and-pooled-ss-formula/ - **Summary**: Compute the exact Sum of Squared Deviations from the sample mean SS = (COUNT(range) - 1) * VAR.S(range) and combine two independent group SS terms into a pooled ANOVA / t-test variance. *Table — Extract exact Sum of Squares (SS) for ANOVA, regression, and pooled t-tests!:* | Metric | Batch A [12, 15, 18, 21, 24] | Batch B [10, 14, 18, 22] | Pooled Combined | | --- | --- | --- | --- | | Count (n) / df (n - 1) | 5 / df = 4 | 4 / df = 3 | df_total = 7 | | Sample Variance (VAR.S) | 22.50 | 26.6667 | s_p^2 = 24.2857 | | Sum of Squares (DEVSQ) | 90.00 | 80.00 | SS_within = 170.00 | - **Formula (Sum of Squared Deviations (SS / DEVSQ) for Batch A)**: `=IF(COUNT(B2:B6) < 1, "Empty Sample", ROUND(COUNT(B2:B6) * VAR.P(B2:B6), 4))` - **Formula (Pooled Within-Group Variance Across Batch A (B2:B6) & Batch B (C2:C5))**: `=IF(COUNT(B2:B6) + COUNT(C2:C5) <= 2, "Insufficient df", ROUND((COUNT(B2:B6) * VAR.P(B2:B6) + COUNT(C2:C5) * VAR.P(C2:C5)) / (COUNT(B2:B6) + COUNT(C2:C5) - 2), 4))` ### Sum of Squares & Paired Vector Differences (SUMSQ, SUMXMY2, SUMX2MY2 & SUMX2PY2) - **URL**: https://sheets.arte-soft.com/en/learn/sum-of-squares-and-paired-vector-differences-sumproduct/ - **Summary**: Compute vector sum of squares (SUMSQ), squared Euclidean distance (SUMXMY2), difference of squares (SUMX2MY2), and combined squared energy (SUMX2PY2) transparently with SUMPRODUCT. *Table — One unified SUMPRODUCT pattern for all four quadratic vector functions:* | Excel Function | Algebraic Definition | SUMPRODUCT Equivalent | Result on X={3,4,5,12}, Y={1,2,3,10} | | --- | --- | --- | --- | | SUMSQ(X) | SUM(x_i^2) | SUMPRODUCT(B2:B5 ^ 2) | 9 + 16 + 25 + 144 = 194 | | SUMXMY2(X, Y) | SUM((x_i - y_i)^2) | SUMPRODUCT((B2:B5 - C2:C5) ^ 2) | 4 + 4 + 4 + 4 = 16 (Dist = 4) | | SUMX2MY2(X, Y) | SUM(x_i^2 - y_i^2) | SUMPRODUCT((B2:B5 ^ 2) - (C2:C5 ^ 2)) | 194 - 114 = 80 | | SUMX2PY2(X, Y) | SUM(x_i^2 + y_i^2) | SUMPRODUCT((B2:B5 ^ 2) + (C2:C5 ^ 2)) | 194 + 114 = 308 | - **Formula (Squared Euclidean Distance (SUMXMY2) & Euclidean Norm)**: `=SUMPRODUCT((B2:B5 - C2:C5) ^ 2)` - **Formula (Vector Sum of Squares (SUMSQ), Difference of Squares (SUMX2MY2) & Sum (SUMX2PY2))**: `=SUMPRODUCT((B2:B5 ^ 2) - (C2:C5 ^ 2))` ### Sum or count whole numbers only (exclude decimal fractions) - **URL**: https://sheets.arte-soft.com/en/learn/sum-or-count-whole-numbers-only/ - **Summary**: Flag integer vs fractional entries with MOD(number, 1) = 0 and aggregate full-unit vs partial-unit rows cleanly with SUMIFS and COUNTIF. *Table — Test fractional remainders with MOD(value, 1) = 0:* | Qty (A) | IsWhole (B) | Whole Contribution | Fractional Contribution | | --- | --- | --- | --- | | 12 | TRUE | 12 | 0 | | 4.5 | FALSE | 0 | 4.5 | | 8 | TRUE | 8 | 0 | | 2.25 | FALSE | 0 | 2.25 | | -5 | TRUE | -5 | 0 | - **Formula (Sum and count whole integers vs decimals)**: `=SUMIFS(A2:A6, B2:B6, TRUE)` - **Formula (Count whole entries and sum fractional entries)**: `=SUMIFS(A2:A6, B2:B6, FALSE)` ### Sum Text Values Like Numbers (T-Shirt Story Points & Ordinal Rating Scales) - **URL**: https://sheets.arte-soft.com/en/learn/sum-ordinal-text-ratings-and-t-shirt-sizes-like-numbers/ - **Summary**: Total and average categorical text codes such as XS/S/M/L/XL story points or Low/Medium/High risk tiers by pairing a compact lookup legend with COUNTIF frequencies and SUMPRODUCT. *Table — Translating categorical labels into weighted numeric totals without per-ticket clutter:* | Size Code | Fibonacci Weight | Ticket Count | Weighted Points | | --- | --- | --- | --- | | XS | 1 | 1 | 1 | | S | 2 | 1 | 2 | | M | 3 | 2 | 6 | | L | 5 | 1 | 5 | | XL | 8 | 1 | 8 (Total = 22 pts) | - **Formula (Scale Frequency & Weighted Total Formula)**: `=SUMPRODUCT(E2:E6, F2:F6)` - **Formula (Unmapped / Typo Label Audit Formula)**: `=COUNTA(B2:B7) - SUM(F2:F6)` ### Sum durations above a minute threshold: full durations versus excess minutes - **URL**: https://sheets.arte-soft.com/en/learn/sum-time-over-30-minutes-threshold-sumifs/ - **Summary**: Compare the total duration of qualifying sessions with only their excess minutes, including thresholds longer than one day. *Table — Two different duration measures:* | Ticket (A) | Duration TIME (B) | Exceeds >30m? | Overage Past 30m (C) | | --- | --- | --- | --- | | TKT-101 | 00:18:00 (18 min) | No | 0 min | | TKT-102 | 00:45:00 (45 min) | Yes (45 min) | 15 min | | TKT-103 | 00:30:00 (30 min) | No (exact boundary!) | 0 min | | TKT-104 | 00:50:00 (50 min) | Yes (50 min -> Sum = 95m) | 20 min (-> Sum = 35m) | | TKT-105 | 00:12:00 (12 min) | No | 0 min | - **Formula (Total minutes of all calls strictly exceeding E2 minutes)**: `=IF(OR(COUNT(B2:B6)<>5,COUNT(E2)<>1,MIN(B2:B6)<0,E2<0),"Invalid inputs",ROUND(SUMIFS(B2:B6, B2:B6, ">" & (E2 / 1440)) * 1440, 2))` - **Formula (Marginal SLA overage minutes above E2 per call)**: `=IF(OR(COUNT(B2:B6)<>5,COUNT(E2)<>1,MIN(B2:B6)<0,E2<0),"Invalid inputs",SUM(C2:C6))` ### Sum top N (or bottom N) values with criteria: FILTER + SORT + TAKE - **URL**: https://sheets.arte-soft.com/en/learn/sum-top-n-and-bottom-n-with-criteria-filter/ - **Summary**: Total the top K largest deals inside a specific region—even when that region has fewer than K rows—by chaining FILTER, SORT, and TAKE. *Table — Sum up to N matching values:* | Region (A) | DealAmount (B) | East Rank | Included in East Top 2? | | --- | --- | --- | --- | | East | 200 | 3rd | No | | West | 900 | (West) | No (only 1 West deal) | | East | 500 | 1st | Yes | | East | 100 | 4th | No | | East | 400 | 2nd | Yes (Top 2 = 500 + 400 = 900) | - **Formula (Short-group-safe conditional Top N and Bottom N sum formulas)**: `=SUM(TAKE(SORT(FILTER(B2:B6, A2:A6="East", 0), 1, -1), 2))` - **Formula (Conditional Bottom N sum (lowest 2 deals in East))**: `=SUM(TAKE(SORT(FILTER(B2:B6, A2:A6="East", 0), 1, 1), 2))` ### SUMIF & COUNTIF when cells contain a literal asterisk (*) or question mark (?) - **URL**: https://sheets.arte-soft.com/en/learn/sumif-and-countif-literal-asterisk-tilde-escape/ - **Summary**: Escape wildcard characters with a tilde ("*~**") so SUMIF and COUNTIF match literal asterisks, question marks, or tildes instead of every text row. *Table — Why =SUMIF(A2:A5, "***", B2:B5) silently sums EVERY text row—and how ~ fixes it!:* | SKU Code (A) | Units (B) | Broken "***" Match? | Escaped "*~**" Match? | | --- | --- | --- | --- | | PRO*2026 | 150 | Matched (Wildcard!) | Matched (Has literal *) | | PRO-2026 | 200 | Matched (Bug!) | Ignored (Hyphen, no *) | | STD*2026 | 90 | Matched (Wildcard!) | Matched (Has literal *) | | STD-2026 | 110 | Matched (Bug! -> Total 550) | Ignored (-> True Total 240!) | - **Formula (Sum rows containing a literal asterisk using "*~**")**: `=SUMIF(A2:A5, "*~**", B2:B5)` - **Formula (Count cells containing a literal asterisk)**: `=COUNTIF(A2:A5, "*~**")` ### SUMIF in Excel: total a category without losing refunds - **URL**: https://sheets.arte-soft.com/en/learn/sumif-category-total-refunds/ - **Summary**: Build a category total from a community-garden expense log. Keep negative returns, change the selected category, and check a zero result against the source rows. *Table — Keep purchases and returns in one consistent log:* | Row | Category | Amount | | --- | --- | --- | | 2 | Seeds | 24 | | 3 | Tools | 60 | | 4 | Seeds | 18 | | 5 | Tools | -12 | | 6 | Compost | 35 | - **Formula (Select rows by category, then add their amounts)**: `=SUMIF(A2:A6,D2,B2:B6)` - **Formula (Protect the source ranges when copying a summary)**: `=SUMIF($A$2:$A$6,D2,$B$2:$B$6)` ### SUMIFS & SUMIF across horizontal columns (multi-row column headers) - **URL**: https://sheets.arte-soft.com/en/learn/sumifs-and-sumif-with-horizontal-ranges/ - **Summary**: Sum wide horizontal budget/actual rows left-to-right where Row 1 Quarter and Row 2 Scenario headers match criteria—without transposing—using horizontal SUMIFS. *Table — SUMIFS works horizontally too—just keep every 1-row range the exact same width!:* | Row | B (Q1 Act) | C (Q1 Bud) | D (Q2 Act) | E (Q2 Bud) | F (Q3 Act) / G (Q3 Bud) | | --- | --- | --- | --- | --- | --- | | Quarter (Row 1) | Q1 | Q1 | Q2 | Q2 | Q3 / Q3 | | Scenario (Row 2) | Act | Bud | Act | Bud | Act / Bud | | Revenue (Row 3) | 120 | 110 | 150 | 140 | 180 / 170 | | Horizontal Rollups | All Act = 450 | All Bud = 420 | Q1 Act = 120 | Act != Q1 = 330 | Zero manual + signs! | - **Formula (Sum all "Act" columns horizontally across Row 3)**: `=IF(OR(COUNT(B3:G3)<>6,COUNTBLANK(B1:G2)>0),"Invalid inputs",SUMIFS(B3:G3, B2:G2, "Act"))` - **Formula (Multi-row horizontal SUMIFS (Quarter AND Scenario))**: `=IF(OR(COUNT(B3:G3)<>6,COUNTBLANK(B1:G2)>0),"Invalid inputs",SUMIFS(B3:G3, B1:G1, "<>Q1", B2:G2, "Act"))` - **Formula (The single-condition SUMIF equivalent)**: `=IF(OR(COUNT(B3:G3)<>6,COUNTBLANK(B1:G2)>0),"Invalid inputs",SUMIF(B2:G2,"Act",B3:G3))` ### SUMIFS between two dates: total amounts inside a reporting window - **URL**: https://sheets.arte-soft.com/en/learn/sumifs-between-two-dates/ - **Summary**: Add invoice payments on or after a start date and on or before an end date by joining comparison operators to boundary cells with &. Verify both endpoints and channel filters. *Table — Five wholesale payments straddling April 2026:* | Settled date (A) | Channel (B) | Amount (C) | | --- | --- | --- | | 31 March 2026 | Trade | 310 | | 1 April 2026 | Trade | 420 | | 10 April 2026 | Direct | 190 | | 30 April 2026 | Trade | 280 | | 1 May 2026 | Trade | 500 | - **Formula (Join >= and <= to the start and end cells)**: `=SUMIFS(C2:C6,A2:A6,">="&E2,A2:A6,"<="&F2,B2:B6,G2)` - **Formula (Verify the total by hand)**: `=SUMIFS(C2:C6,A2:A6,">="&E2,A2:A6,"<="&F2)` ### SUMIFS time totals: add shift durations past 24 hours without losing a day - **URL**: https://sheets.arte-soft.com/en/learn/sumifs-time-durations-over-24-hours/ - **Summary**: Spreadsheets store time durations as fractions of a 24-hour day. Sum shifts by team with SUMIFS and multiply by 24 for decimal hours—avoiding the classic clock-rollover bug where 27 hours looks like 3:00. *Table — Volunteer shift durations across two teams:* | Team (A) | Volunteer (B) | Clock duration | Stored day fraction (C) | | --- | --- | --- | --- | | Clinic | Maya | 9:00 | 0.375 | | Outreach | Tomas | 6:00 | 0.25 | | Clinic | Elena | 12:00 | 0.5 | | Clinic | Nadia | 6:00 | 0.25 | | Outreach | Sam | 7:30 | 0.3125 | - **Formula (Convert the SUMIFS serial total to decimal hours with * 24)**: `=SUMIFS(C2:C6,A2:A6,E2)*24` - **Formula (Why 27 hours often masquerades as 3:00)**: `=SUMIFS(C2:C6,A2:A6,E2)` ### SUMIFS & TEXTJOIN+FILTER vs XLOOKUP When Duplicate Keys Exist - **URL**: https://sheets.arte-soft.com/en/learn/sumifs-vs-xlookup-when-duplicate-keys-exist/ - **Summary**: Choose deliberately between one matching row, the sum of every matching amount, and a joined list of descriptions. Test literal invoice IDs, missing keys and zero totals. - **Formula (Normalize the ledger IDs in F2:F6)**: `=UPPER(A2)` - **Formula (Sum all matching amounts)**: `=IF(OR(NOT(ISTEXT(E2)),E2=""),"Enter a nonempty invoice ID",IF(COUNT(C2:C6)<>5,"All ledger amounts must be numeric",SUMIFS(C2:C6,F2:F6,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(UPPER(E2),"~","~~"),"*","~*"),"?","~?"))))` - **Formula (Return only the first matching amount)**: `=IF(OR(NOT(ISTEXT(E2)),E2=""),"Enter a nonempty invoice ID",IF(COUNT(C2:C6)<>5,"All ledger amounts must be numeric",XLOOKUP(UPPER(E2),F2:F6,C2:C6,"No Lines",0)))` - **Formula (Join matching descriptions in ledger order)**: `=IF(OR(NOT(ISTEXT(E2)),E2=""),"Enter a nonempty invoice ID",IF(COUNT(C2:C6)<>5,"All ledger amounts must be numeric",TEXTJOIN(", ",TRUE,FILTER(B2:B6,F2:F6=UPPER(E2),"No Lines"))))` - **Formula (Count matching lines)**: `=IF(OR(NOT(ISTEXT(E2)),E2=""),"Enter a nonempty invoice ID",IF(COUNT(C2:C6)<>5,"All ledger amounts must be numeric",COUNTIF(F2:F6,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(UPPER(E2),"~","~~"),"*","~*"),"?","~?"))))` ### SUMIFS with Multiple Criteria and OR Logic Without Double-Counting Rows - **URL**: https://sheets.arte-soft.com/en/learn/sumifs-with-multiple-criteria-and-or-logic-without-double-counting/ - **Summary**: Distinguish safe same-column OR addition in SUMIFS from overlapping cross-column OR conditions where naive SUMIF + SUMIF double-counts rows that satisfy both rules. *Table — Predict the total by hand before writing an OR formula:* | OR Pattern | Formula Structure | Result on Sample Table | | --- | --- | --- | | Same-Column OR + AND | SUMIFS(..., B, "West", C, "Standard") + SUMIFS(..., B, "North", C, "Standard") | 700 (Exact — mutually exclusive) | | Cross-Column Naive Sum (Bug) | SUMIF(B2:B6, "West", D2:D6) + SUMIF(C2:C6, "Rush", D2:D6) | 2,200 (Wrong — double-counts ORD-102) | | Cross-Column Boolean Union | SUMPRODUCT(--(((B2:B6 = "West") + (C2:C6 = "Rush")) > 0), D2:D6) | 1,550 (Exact — 1/0 per qualifying row) | - **Formula (Same-Column OR + Second-Column AND Formula)**: `=SUMIFS(D2:D6, B2:B6, "West", C2:C6, "Standard") + SUMIFS(D2:D6, B2:B6, "North", C2:C6, "Standard")` - **Formula (Cross-Column Deduplicated OR Union Formula & Hint Check)**: `=SUMPRODUCT(--(((B2:B6 = "West") + (C2:C6 = "Rush")) > 0), D2:D6)` ### SUMIFS: total sales that match two conditions - **URL**: https://sheets.arte-soft.com/en/learn/sumifs-multiple-conditions/ - **Summary**: A sales total is only useful when it includes the right orders. Use SUMIFS to add amounts for one region and one order status, without hiding or deleting the other rows. *Table — The question: how much has North actually shipped?:* | Region (A) | Status (B) | Amount (C) | | --- | --- | --- | | North | Shipped | 240 | | South | Shipped | 180 | | North | Pending | 95 | | North | Shipped | 160 | | South | Pending | 75 | - **Formula (Write the formula)**: `=SUMIFS(C2:C6,A2:A6,"North",B2:B6,"Shipped")` - **Formula (Make the report reusable)**: `=SUMIFS($C$2:$C$6,$A$2:$A$6,E2,$B$2:$B$6,F2)` ### Summarize Survey Results by Group: Top-2-Box % & Net Favorability (COUNTIFS) - **URL**: https://sheets.arte-soft.com/en/learn/summarize-survey-response-percentages-and-top-2-box-countifs/ - **Summary**: Aggregate 1-to-5 CSAT or employee-pulse survey responses by department into Top-2-Box satisfaction percentage (scores 4 & 5) and Net Favorability (% Top-2 minus % Bottom-2) using COUNTIFS. *Table — Why UX and market researchers report Top-2-Box % instead of raw Likert averages!:* | Department Cohort | Valid Responses (1–5) | Top-2-Box % (Scores 4–5) | Net Favorability (%4–5 minus %1–2) | | --- | --- | --- | --- | | Support ([5, 4, 5, 2, 4, 1]) | 6 responses | 66.7% (4 of 6) | +33.3 (66.7% - 33.3%) | | Onboarding ([5, 5, 4, 3]) | 4 responses | 75.0% (3 of 4) | +75.0 (75.0% - 0.0%) | | Unpolled Department (n = 0) | 0 responses | "No Responses" | Zero-Denominator Guard | - **Formula (Department Top-2-Box Satisfaction Percentage (Scores 4 & 5))**: `=IF(COUNTIFS(A2:A11, E2, B2:B11, ">=1", B2:B11, "<=5") = 0, "No Responses", ROUND(100 * COUNTIFS(A2:A11, E2, B2:B11, ">=4", B2:B11, "<=5") / COUNTIFS(A2:A11, E2, B2:B11, ">=1", B2:B11, "<=5"), 1))` - **Formula (Department Net Favorability Spread (% Top-2 Minus % Bottom-2))**: `=IF(COUNTIFS(A2:A11, E2, B2:B11, ">=1", B2:B11, "<=5") = 0, "No Responses", ROUND(100 * (COUNTIFS(A2:A11, E2, B2:B11, ">=4", B2:B11, "<=5") - COUNTIFS(A2:A11, E2, B2:B11, ">=1", B2:B11, "<=2")) / COUNTIFS(A2:A11, E2, B2:B11, ">=1", B2:B11, "<=5"), 1))` ### SUMPRODUCT with criteria: multiply and filter arrays without a helper column - **URL**: https://sheets.arte-soft.com/en/learn/sumproduct-multiple-criteria-array-math/ - **Summary**: Calculate filtered revenue across quantity and unit-price columns in one SUMPRODUCT formula using boolean (TRUE/FALSE) array multiplication. *Table — Why SUMIFS cannot multiply two columns on the fly:* | Channel (A) | ProductGroup (B) | Units (C) | UnitPrice (D) | Implied Line | | --- | --- | --- | --- | --- | | Direct | Valves | 12 | 25 | 300 | | Partner | Valves | 20 | 22 | 440 | | Direct | Pumps | 4 | 180 | 720 | | Direct | Valves | 8 | 25 | 200 | | Direct | Valves | -2 | 25 | -50 (return credit) | - **Formula (Unfiltered and multi-criteria array totals)**: `=SUMPRODUCT((A2:A6=F2)*(B2:B6=G2)*C2:C6*D2:D6)` - **Formula (Comma arguments vs asterisk multiplication on text cells)**: `=SUMPRODUCT((A2:A6=F2)*(B2:B6=G2), C2:C6, D2:D6)` ### Sunburst Chart Formula: Hierarchical Ring Angles (360°), Parent-Child Rollups & Gap Audit - **URL**: https://sheets.arte-soft.com/en/learn/sunburst-chart-hierarchical-ring-angle-and-parent-child-share-formula/ - **Summary**: Prepare and audit multi-level hierarchical data for a concentric Sunburst Chart by computing inner parent-ring rollups, outer leaf-ring 360-degree arc spans, and within-parent conditional shares. *Table — Ensure outer-ring child arcs align 1:1 with inner-ring parent wedges!:* | Hierarchy Node ($500,000 Budget) | Rollup Amount ($) | Radial Arc Span (deg) | Share of Parent | | --- | --- | --- | --- | | Parent Division: Cloud R&D (Inner Ring) | $300,000 | 216.00° | 60.0% of Total | | ├─ Leaf: Core Engine | $180,000 | 129.60° | 60.0% of Cloud R&D | | └─ Leaf: AI Platform | $120,000 | 86.40° | 40.0% of Cloud R&D (129.6° + 86.4° = 216.0°!) | | Parent Division: Go-To-Market (Inner Ring) | $200,000 | 144.00° | 40.0% of Total | - **Formula (Inner-Ring Parent Division Radial Arc Angle (Degrees out of 360°))**: `=IF(OR(SUM(C2:C5) <= 0, COUNTBLANK(A2:A5) > 0), "Invalid Total or Orphan Blank Parent Row Detected", ROUND(360 * SUMIF(A2:A5, D2, C2:C5) / SUM(C2:C5), 2))` - **Formula (Leaf Node Conditional Share (%) Within Its Parent Ring Segment)**: `=IF(SUMIF(A2:A5, A2, C2:C5) <= 0, 0, ROUND(100 * C2 / SUMIF(A2:A5, A2, C2:C5), 2))` ### Sunyaev-Zel’dovich Effect: Cluster Compton-y & CMB Temperature Decrement - **URL**: https://sheets.arte-soft.com/en/learn/sunyaev-zeldovich-cosmic-microwave-background-compton-y-decrement/ - **Summary**: Calculate the redshift-independent galaxy-cluster Compton-y parameter y = 0.0040171 * n_e * T_keV * L_Mpc and Rayleigh-Jeans CMB brightness shadow ΔT_RJ = -2 * y * T_CMB (μK). *Table — Why galaxy clusters cast cold shadows on the Cosmic Microwave Background—at ANY redshift!:* | Intracluster Plasma Sightline | Compton-y (× 10^-4) | Rayleigh-Jeans Shadow ΔT_RJ (μK) | Millimeter Survey Detectability | | --- | --- | --- | --- | | Rich Massive Cluster (ne=0.003, T=8.5 keV, L=2.0 Mpc) | 2.049 | -1,116.8 μK | High-SNR SPT / ACT / Planck Detection | | Poor Galaxy Group (ne=0.001, T=2.5 keV, L=1.0 Mpc) | 0.100 | -54.7 μK | Stacking / Deep Arcminute Survey | | Unphysical Input (ne <= 0 or T <= 0) | Domain Guard | "Invalid Cluster Inputs" | Requires Positive Plasma Parameters | - **Formula (Scaled Galaxy-Cluster Compton-y Parameter (× 10^-4))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Cluster Inputs", ROUND(10000 * 0.0040171 * B2 * B3 * B4, 3))` - **Formula (Rayleigh-Jeans Low-Frequency CMB Temperature Decrement ΔT_RJ (μK))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Cluster Inputs", ROUND(-2 * (0.0040171 * B2 * B3 * B4) * B5 * 1000000, 1))` ### Surface Grinding Specific Energy, MRR & Burn Power Formula - **URL**: https://sheets.arte-soft.com/en/learn/surface-grinding-specific-grinding-energy-mrr-and-malkin-burn-power-formula/ - **Summary**: Calculate Volumetric Grinding Removal Rate Qw (mm³/s), Specific Removal Rate Per Wheel Width Q'w (mm³/(mm·s)), Grinding Spindle Power (kW), and Workpiece Heat-Partition Burn Load (kW). *Table — Abrasive grinding consumes 10x more specific energy per mm³ than milling—and 65%–80% of that heat flows straight into the steel!:* | Malkin Surface Grinding KPI (bw=18 mm, ae=0.025 mm, vw=16 m/min, u=42 J/mm³) | Formula | Verified Output | | --- | --- | --- | | Volumetric Removal Rate Qw (mm³/s) | bw_mm * ae_mm * ((vw_m_min * 1000) / 60) | 120.00 mm³/s | | Specific Removal Q'w (mm³/mm·s) | ae_mm * ((vw_m_min * 1000) / 60) | 6.67 mm³/(mm·s) | | Grinding Spindle Power (kW) | (Specific_Energy_J_mm3 * Qw_mm3_s) / 1000 | 5.040 kW (8.160 kW @ glazed dull wheel!) | | Workpiece Thermal Burn Flux (kW) | Spindle_Power_kW * Heat_Partition_eps_w | 3.629 kW (5.875 kW triggers temper burn!) | - **Formula (Specific Removal Rate Q'w, Grinding Power & Malkin Thermal Partition Formula)**: `=LET(bw_m, B2, ae_m, B3, vw_m, B4, us_j, B5, ep_w, B6, IF(OR(bw_m <= 0, ae_m <= 0, vw_m <= 0, us_j < 10, ep_w <= 0, ep_w > 1), "Invalid Grinding Input", LET(qw_s, bw_m * ae_m * ((vw_m * 1000) / 60), pg_k, (us_j * qw_s) / 1000, ROUND(pg_k * ep_w, 3))))` - **Formula (Glazed Undressed Wheel Wear-Flat Burn Spike Check (Set Specific Energy u B5 = 68.0 J/mm³))**: `=IF(ISTEXT(E5), E5, LET(qw_s, B2 * B3 * ((B4 * 1000) / 60), ROUND((B5 * qw_s) / 1000, 3)))` ### Bench Blasting Burden, Stemming & Powder Factor Formula - **URL**: https://sheets.arte-soft.com/en/learn/surface-mine-bench-blasting-burden-subdrilling-stemming-and-powder-factor/ - **Summary**: Calculate In-Situ Bank Rock Volume Per Hole (m³), Bulk Explosive Charge Mass Per Blasthole (kg), Volumetric Powder Factor (kg/m³), and Mass Powder Factor (kg/metric ton). *Table — Why subdrilling J adds explosive cost below grade while stemming T subtracts charge—yet Bank Volume stays strictly B * S * H!:* | Bench Blast Pattern KPI (165 mm Hole, 4.5x5.2x12 m, J=1.2, T=3.4, Emulsion 1.18) | Formula | Verified Output | | --- | --- | --- | | Bank Rock Volume / Hole (m³) | Burden_m * Spacing_m * Bench_Height_m | 280.80 m³ (220.80 @ 4.0 x 4.6 m) | | Explosive Charge / Hole (kg) | (PI()/4)*(Dh/1000)^2*(H+J-T)*(rho_exp*1000) | 247.27 kg (171.83 kg @ dry ANFO 0.82) | | Volumetric Powder Factor (kg/m³) | Explosive_Charge_kg / Bank_Volume_m3 | 0.881 kg/m³ (0.778 @ dry ANFO) | | Tonnage Powder Factor (kg/t) | Explosive_kg / (Bank_Vol_m3 * Rock_t_m3) | 0.332 kg/t (0.294 kg/t @ dry ANFO) | - **Formula (Open-Pit Bench Blasting Charge Column & Powder Factor Formula)**: `=LET(dm_h, B2, br_m, B3, sp_m, B4, bh_m, B5, sb_m, B6, st_m, B7, re_g, B8, rr_t, B9, IF(OR(dm_h <= 25, br_m <= 0, sp_m <= 0, bh_m <= 0, sb_m < 0, st_m <= 0, bh_m + sb_m <= st_m, re_g < 0.6, re_g > 1.6, rr_t < 1.5, rr_t > 4.5), "Invalid Blast Pattern", LET(vb_k, br_m * sp_m * bh_m, lc_h, bh_m + sb_m - st_m, ch_k, (PI() / 4) * ((dm_h / 1000) ^ 2) * lc_h * (re_g * 1000), ROUND(ch_k / (vb_k * rr_t), 3))))` - **Formula (Dry-Season Prilled ANFO Switch & Tightened Pattern Check (Set B = 4.0, S = 4.6, rho_exp = 0.82))**: `=IF(ISTEXT(E5), E5, LET(vb_k, B3 * B4 * B5, lc_h, B5 + B6 - B7, ch_k, (PI() / 4) * ((B2 / 1000) ^ 2) * lc_h * (B8 * 1000), ROUND(ch_k / vb_k, 3)))` ### Sustainable Growth Rate (SGR) & Internal Growth Rate (IGR) corporate finance formulas - **URL**: https://sheets.arte-soft.com/en/learn/sustainable-growth-rate-sgr-and-internal-growth-rate/ - **Summary**: Explore constant-ratio financing models for growth, distinguishing beginning-equity ROE from ending-equity ROE and internal funding from constant-leverage funding. *Table — Growth depends on financing and return conventions:* | Growth Metric | Formula | ROE=20%, ROA=10%, Payout=25% | Financing Policy | | --- | --- | --- | --- | | Retention Ratio (b) | 1 - B4 | 0.75 (75% retained) | 25% paid as dividends | | Standard SGR (Beg. Equity) | B5 * (1 - B4) | 0.1500 (15.00%) | Constant D/E, no new stock | | SGR using ending equity | (ROE * b) / (1 - ROE * b) | 0.15 / 0.85 = 0.1765 (17.65%) | Ending-balance sheet convention | | Internal Growth Rate (IGR) | (ROA * b) / (1 - ROA * b) | 0.075 / 0.925 = 0.0811 (8.11%) | Ending-assets convention, no external funds | - **Formula (Sustainable growth using ending-equity ROE)**: `=IF(OR(COUNT(B2)<>1,COUNT(B4)<>1,B2<0,B4<0,B4>1),"Invalid inputs",IF(B2*(1-B4)>=1,"Outside model domain",LET(b, 1 - B4, ROUND((B2 * b) / (1 - B2 * b), 4))))` - **Formula (Internal Growth Rate (IGR) with zero external debt or equity)**: `=IF(OR(COUNT(B3)<>1,COUNT(B4)<>1,B3<0,B4<0,B4>1),"Invalid inputs",IF(B3*(1-B4)>=1,"Outside model domain",LET(b, 1 - B4, ROUND((B3 * b) / (1 - B3 * b), 4))))` ### Sutherland's Law for Gas Dynamic Viscosity vs Temperature - **URL**: https://sheets.arte-soft.com/en/learn/sutherland-gas-dynamic-viscosity-temperature-law-formula/ - **Summary**: Calculate gas dynamic viscosity with Sutherland’s temperature correlation, using a documented air parameter set, raw outputs and guards for Kelvin temperatures and reference inputs. - **Formula (Calculate the dimensionless temperature factor)**: `=IF(COUNT(B3:B5)<>3,"Enter numeric T0,S,T",IF(OR(B3<=0,B4<0,B5<=0),"Require T0,T>0 and S>=0",(B5/B3)^1.5*(B3+B4)/(B5+B4)))` - **Formula (Return dynamic viscosity in two units)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(NOT(ISNUMBER(B2)),"Enter numeric reference viscosity",IF(B2<=0,"Require reference viscosity>0",B2*E2)))` - **Formula (Experiment without changing the physical meaning)**: `=IF(ISNUMBER(E3),E3/1000000,E3)` ### Sutherland’s Law for Temperature-Dependent Gas Dynamic Viscosity - **URL**: https://sheets.arte-soft.com/en/learn/sutherlands-law-temperature-dependent-gas-dynamic-viscosity/ - **Summary**: Model gas dynamic viscosity mu(T) across wide Kelvin temperature spans using Sutherland’s three-coefficient molecular-potential law for HVAC, flue-gas, and aerodynamic Reynolds numbers. *Table — Why gas viscosity rises with temperature and departs from simple T^0.5 hard-sphere theory:* | Dry Air Parameter | Symbol / Cell | Value | Units | | --- | --- | --- | --- | | Reference Viscosity | mu_0 (B2) | 18.27 | uPa*s (at 291.15 K) | | Reference Temperature | T_0 (B3) | 291.15 | Kelvin (18.0 °C) | | Sutherland Constant (Air) | S (B4) | 120.00 | Kelvin | | Operating Temperature | T (B5) | 500.00 | Kelvin -> mu = 27.27 uPa*s | - **Formula (Sutherland’s Dynamic Viscosity Formula)**: `=ROUND(B2 * ((B5 / B3) ^ 1.5) * ((B3 + B4) / (B5 + B4)), 2)` - **Formula (Kinematic Viscosity nu = mu / rho at Ideal-Gas Density)**: `=ROUND(E2 / B6, 2)` ### Swamee-Jain Explicit Pipe Friction Factor formula (Moody Chart) - **URL**: https://sheets.arte-soft.com/en/learn/swamee-jain-explicit-turbulent-pipe-friction-factor-formula/ - **Summary**: Estimate a Darcy pipe-friction factor with explicit Swamee–Jain arithmetic in a declared turbulent range, use 64/Re for laminar flow, and leave the transition region unresolved. - **Formula (Darcy friction factor in D2)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric pipe inputs",IF(OR(B2<0,B3<=0,B4<=0),"Require roughness>=0, diameter>0 and Re>0",IF(B4<2000,64/B4,IF(B4<5000,"Transition or outside selected turbulent range",IF(OR(B4>100000000,B2/B3>0.01,AND(B2>0,B2/B3<0.000001)),"Outside selected approximation range",0.25/(LOG10(B2/(3.7*B3)+5.74/B4^0.9)^2))))))` - **Formula (Fanning friction factor in D3)**: `=IF(ISNUMBER(D2),D2/4,D2)` ### Sweet-Parker Magnetic Reconnection Rate, Lundquist Number (S) & Sheet Thickness - **URL**: https://sheets.arte-soft.com/en/learn/sweet-parker-magnetic-reconnection-rate-and-lundquist-number/ - **Summary**: Calculate the dimensionless MHD Lundquist number S = (L * vA) / eta_m, Sweet-Parker reconnection inflow speed v_in = vA / SQRT(S), and resistive current-sheet half-thickness delta = L / SQRT(S). *Table — Understand solar flares, magnetotail substorms, and the fast-reconnection puzzle!:* | MHD Current Sheet (L = 10^7 m, vA = 10^6 m/s) | Magnetic Diffusivity eta_m | Lundquist Number S | Inflow v_in & Sheet Width delta | | --- | --- | --- | --- | | High-Conductivity Coronal Sheet | eta_m = 10 m^2/s | S = 1.0e12 | v_in = 1.00 m/s, delta = 10.0 m | | Anomalous Micro-Turbulent Sheet | eta_m = 1,000 m^2/s | S = 1.0e10 | v_in = 10.00 m/s, delta = 100.0 m | | Invalid Diffusivity eta_m <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid MHD Sheet Inputs" | - **Formula (Dimensionless MHD Lundquist Number S = (L * vA) / eta_m)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid MHD Sheet Inputs", ROUND((B2 * B3) / B4, 0))` - **Formula (Sweet-Parker Reconnection Inflow Speed v_in = vA / SQRT(S) (m/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid MHD Sheet Inputs", ROUND(B3 / SQRT((B2 * B3) / B4), 2))` - **Formula (Sweet-Parker Current-Sheet Half-Thickness delta = L / SQRT(S) (Meters))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid MHD Sheet Inputs", ROUND(B2 / SQRT((B2 * B3) / B4), 2))` ### Switch Financial Scenarios (Bear, Base, Bull) with CHOOSECOLS & INDEX - **URL**: https://sheets.arte-soft.com/en/learn/switch-financial-scenarios-bear-base-bull-choosecols-index/ - **Summary**: Switch among three named cash-flow scenarios, select a full column with CHOOSECOLS, and expose each year with INDEX while validating the selector and selected data. - **Formula (Three illustrative scenarios, one consistent selector)**: `=IF(COUNTBLANK(F2)>0,"Choose a scenario",IF(NOT(ISTEXT(F2)),"Choose a scenario",SWITCH(UPPER(TRIM(F2)),"BEAR",1,"BASE",2,"BULL",3,"Unknown Scenario")))` - **Formula (Total the selected column)**: `=IF(H3<>"Ready",H3,SUM(CHOOSECOLS(B2:D4,H2)))` - **Formula (Read each year with INDEX)**: `=IF($H$3<>"Ready",$H$3,INDEX($B$2:$D$4,2,$H$2))` - **Formula (Inspect the whole selected vector)**: `=CHOOSECOLS(B2:D4,H2)` ### Switch "Last, First" names to "First Last" (and back) - **URL**: https://sheets.arte-soft.com/en/learn/switch-last-first-name-comma-format/ - **Summary**: Flip HR and payroll comma-formatted names ("Rivera, Elena M.") into natural "Elena M. Rivera" order while leaving non-comma names untouched. *Table — Swap around the comma without breaking already-clean rows:* | RawName (A) | To "First Last" | To "Last, First" | | --- | --- | --- | | Rivera, Elena M. | Elena M. Rivera | Rivera, Elena M. | | Marcus Vance | Marcus Vance (unchanged) | Vance, Marcus | - **Formula (Convert "Last, First" to "First Last" and vice versa)**: `=IF(ISNUMBER(FIND(",", A2)), TRIM(TEXTAFTER(A2, ",")) & " " & TRIM(TEXTBEFORE(A2, ",")), TRIM(A2))` - **Formula (Convert "First Middle Last" into "Last, First Middle")**: `=IF(ISNUMBER(FIND(",", A2)), TRIM(A2), IF(ISNUMBER(FIND(" ", TRIM(A2))), TEXTAFTER(TRIM(A2), " ", -1) & ", " & TEXTBEFORE(TRIM(A2), " ", -1), TRIM(A2)))` ### Switch Lookup Tables Dynamically with CHOOSE & INDEX / MATCH - **URL**: https://sheets.arte-soft.com/en/learn/switch-lookup-tables-dynamically-choose-index-match-formula/ - **Summary**: Route a two-way INDEX/MATCH lookup across Retail, Wholesale, or Enterprise rate tables dynamically based on a selected tier code using CHOOSE. *Table — Routing pricing lookups across multiple rate matrices without volatile INDIRECT()!:* | Selected Price Book & SKU | Matched Row & Col | Retail Matrix (B2:C4) | Wholesale Matrix (E2:F4) -> Active Quote | | --- | --- | --- | --- | | Wholesale \| SKU-B \| Express | Row 2, Col 2 | $145 (Ignored) | $118 (Returned by CHOOSE #2) | | Retail \| SKU-B \| Express | Row 2, Col 2 | $145 (Returned by CHOOSE #1) | $118 (Ignored) | | Unknown Tier "VIP" | MATCH -> #N/A | IFNA Trap | "Unknown Rate Table" | - **Formula (Dynamic Multi-Table Lookup via CHOOSE + INDEX / MATCH)**: `=IF(ISNA(MATCH(H1, {"Retail","Wholesale"}, 0)), "Unknown Rate Table or SKU", IFNA(CHOOSE(MATCH(H1, {"Retail","Wholesale"}, 0), INDEX(B2:C4, MATCH(H2, A2:A4, 0), MATCH(H3, B1:C1, 0)), INDEX(E2:F4, MATCH(H2, A2:A4, 0), MATCH(H3, E1:F1, 0))), "Unknown Rate Table or SKU"))` - **Formula (Compute Wholesale Savings ($) vs. Retail Matrix for Selected Item)**: `=IFNA(INDEX(B2:C4, MATCH(H2, A2:A4, 0), MATCH(H3, B1:C1, 0)) - INDEX(E2:F4, MATCH(H2, A2:A4, 0), MATCH(H3, E1:F1, 0)), "Unknown SKU")` ### SWITCH function: map exact status codes to readable labels - **URL**: https://sheets.arte-soft.com/en/learn/switch-function-exact-code-mapping/ - **Summary**: Evaluate a cell once against a list of exact code-to-label pairs, include a final default fallback for unexpected codes, and know when to use IFS instead. *Table — Compact priority codes that need clear report labels:* | Code | Target response label | | --- | --- | | P1 | Immediate | | P2 | Same day | | P3 | Next business day | | Any other code | Triage required | - **Formula (Evaluate the expression once and end with a default value)**: `=SWITCH(A2,"P1","Immediate","P2","Same day","P3","Next business day","Triage required")` - **Formula (Omitted default (#N/A), mixed case, and exact-match scope)**: `=SWITCH(UPPER(A2),"P1","Immediate","P2","Same day","P3","Next business day","Triage required")` ### Symmetric Stripline PCB Impedance Z0 & Delay Formula - **URL**: https://sheets.arte-soft.com/en/learn/symmetric-stripline-pcb-inner-layer-characteristic-impedance-z0-and-delay/ - **Summary**: Calculate Single-Side Dielectric Height h = (b - t)/2 (mm), IPC-2141 Symmetric Stripline Characteristic Impedance Z0 (ohms), Pure TEM Propagation Delay (ps/mm), and Line Capacitance (pF/cm). *Table — Unlike outer-layer microstrip, buried inner-layer stripline is sandwiched between TWO ground planes—giving pure TEM propagation at full SQRT(Dk)!:* | IPC-2141 Symmetric Stripline KPI (b=0.42 mm, w=0.14 mm, t=0.035 mm, Dk=4.10) | Formula | Verified Output | | --- | --- | --- | | Half-Dielectric Spacing h (mm) | (Plane_Spacing_b - Copper_t) / 2 | 0.1925 mm | | Characteristic Impedance Z0 (ohms) | (60/SQRT(er)) * LN((1.9*b)/(0.8*w + t)) | 50.13 ohms (55.05 ohms @ Megtron 3.4) | | Pure-TEM Flight Delay (ps/mm) | (SQRT(Dielectric_er) / 299.792458) * 1000 | 6.754 ps/mm (6.151 ps/mm @ Dk = 3.4) | | Distributed Capacitance (pF/cm) | (Delay_ps_mm * 10) / Impedance_Z0 | 1.347 pF/cm (1.117 pF/cm @ Dk = 3.4) | - **Formula (IPC-2141 Symmetric Stripline Impedance, TEM Delay & Capacitance Formula)**: `=LET(bs_m, B2, wt_m, B3, tc_m, B4, er_d, B5, IF(OR(tc_m <= 0, wt_m <= 0, bs_m <= 2 * tc_m, (0.8 * wt_m + tc_m) >= bs_m, er_d < 1.8, er_d > 12), "Invalid Stripline Input", LET(zo_h, (60 / SQRT(er_d)) * LN((1.9 * bs_m) / (0.8 * wt_m + tc_m)), td_p, (SQRT(er_d) / 299.792458) * 1000, ROUND((td_p * 10) / zo_h, 3))))` - **Formula (Low-Loss Megtron-6 (Dk = 3.40) Laminate Substitution Check (Set Dk B5 = 3.40))**: `=IF(ISTEXT(E5), E5, ROUND((60 / SQRT(B5)) * LN((1.9 * B2) / (0.8 * B3 + B4)), 2))` ### Synchronous Buck Converter Ripple & CCM Formula - **URL**: https://sheets.arte-soft.com/en/learn/synchronous-buck-converter-duty-cycle-inductor-ripple-and-ccm-formula/ - **Summary**: Calculate Step-Down Buck Converter Duty Cycle D = V_out / V_in, Peak-to-Peak Inductor Current Ripple (V_in - V_out)*D / (f_MHz * L_uH), Peak Switch Current, and Critical CCM Inductance. *Table — Size step-down Buck inductors cleanly using the exact 1 MHz * 1 uH = 1 Ohm-s identity!:* | Synchronous Buck Metric (Vin=12V, Vout=3.0V, f=0.50MHz, L=4.50uH, Iload=2.0A) | Formula | Verified Output | | --- | --- | --- | | CCM Step-Down Duty Cycle D | V_out / V_in | 0.2500 (25.00%) | | Peak-to-Peak Ripple Delta_I_L | ((V_in - V_out) * D) / (f_MHz * L_uH) | 1.00 A (50% Ripple Ratio) | | Peak Switch / Core Current I_pk | I_load + Delta_I_L / 2 | 2.50 A (Check < Inductor I_sat!) | | Critical CCM Inductance L_crit | ((V_in - V_out)*D) / (2 * I_load * f_MHz) | 1.125 uH (5.625 uH @ Iload=0.4A) | - **Formula (Buck Inductor Ripple & Critical CCM Inductance Formula)**: `=LET(v_in, B2, v_ot, B3, f_mh, B4, l_uh, B5, i_ld, B6, IF(OR(v_in <= 0, v_ot <= 0, f_mh <= 0, l_uh <= 0, i_ld <= 0), "Invalid Buck Input", IF(v_ot >= v_in, "Invalid Step-Down (Vout >= Vin)", LET(dt_c, v_ot / v_in, ROUND(((v_in - v_ot) * dt_c) / (2 * i_ld * f_mh), 3)))))` - **Formula (Light-Load Discontinuous Threshold Check (I_load = 0.40 A))**: `=IF(ISTEXT(E3), E3, ROUND(B6 + E3 / 2, 2))` ### Synchrotron Radiation: Critical X-Ray Photon Energy & Energy Loss per Turn - **URL**: https://sheets.arte-soft.com/en/learn/synchrotron-critical-photon-energy-and-energy-loss-per-turn/ - **Summary**: Calculate bending-magnet synchrotron critical photon energy E_crit = 0.665 * E_GeV^2 * B_Tesla (in keV) and relativistic electron radiative energy loss per storage-ring revolution U0 = 88.46 * E_GeV^4 / rho_m (in keV/turn). *Table — See why circular electron colliders hit an E^4 synchrotron wall—while X-ray light sources thrive on it!:* | Storage Ring Design | Beam E (GeV), Field B, Radius rho | Critical X-Ray E_crit (keV) | RF Loss per Turn U0 (keV/turn) | | --- | --- | --- | --- | | 3rd/4th-Gen Medium X-Ray Ring | 3.0 GeV, 1.40 T, rho = 7.14 m | 8.38 keV (Cu K-alpha class) | 1,003.5 keV/turn | | High-Energy Hard X-Ray Ring | 6.0 GeV, 1.40 T, rho = 14.28 m | 33.52 keV (4x harder X-rays!) | 8,028.3 keV/turn (2^4 / 2 = 8x!) | | Invalid Ring Radius rho <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid Storage Ring Inputs" | - **Formula (Bending-Magnet Critical X-Ray Photon Energy E_crit (keV))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Storage Ring Inputs", ROUND(0.665 * (B2 ^ 2) * B3, 2))` - **Formula (Electron Radiative Energy Loss per Ring Revolution U0 (keV/turn))**: `=IF(OR(B2 <= 0, B4 <= 0), "Invalid Storage Ring Inputs", ROUND((88.46 * (B2 ^ 4)) / B4, 1))` ### SYNTAX Score Coronary Complexity Tertiles (<= 22, 23–32, >= 33 PCI vs. CABG) - **URL**: https://sheets.arte-soft.com/en/learn/syntax-score-anatomical-coronary-complexity-pci-vs-cabg-tier/ - **Summary**: Sum angiographic lesion complexity weights across >= 50% stenoses in >= 1.5 mm coronary vessels and classify ESC/AHA SYNTAX tertiles guiding multivessel PCI vs. CABG. *Table — ESC/AHA Heart Team angiographic tertiles—why SYNTAX >= 33 tips multivessel CAD decisively toward CABG!:* | Total Anatomical SYNTAX Score | Complexity Tertile | ESC / ACC Revascularization Guidance (3VD / LM) | | --- | --- | --- | | <= 22 Points (e.g., 12 + 6 + 0 + 0 = 18) | Low Complexity (<= 22) | PCI Suitable Alternative to CABG | | > 22 to < 33 Points (23–32) | Intermediate Complexity (23–32) | Multidisciplinary Heart Team / Comorbidity Review | | >= 33 Points (e.g., 14 + 8.5 + 12.5 + 2 = 37) | High Complexity (>= 33) | CABG Strongly Favored Over Multivessel PCI | - **Formula (Total Anatomical SYNTAX Score Across Coronary Territories)**: `=IF(MIN(B2:B5) < 0, "Lesion Scores Cannot Be Negative", ROUND(SUM(B2:B5), 1))` - **Formula (SYNTAX Trial Revascularization Complexity Tertile)**: `=IF(MIN(B2:B5) < 0, "Lesion Scores Cannot Be Negative", IF(SUM(B2:B5) >= 33, "High Complexity (>= 33 — CABG Favored in 3VD/LM)", IF(SUM(B2:B5) > 22, "Intermediate Complexity (23–32 — Heart Team Review)", "Low Complexity (<= 22 — PCI Eligible)")))` ### Systemic & Pulmonary Vascular Resistance (SVR & PVR in dyn·s·cm⁻⁵) - **URL**: https://sheets.arte-soft.com/en/learn/systemic-and-pulmonary-vascular-resistance-svr-pvr-dynes/ - **Summary**: Calculate ICU hemodynamic Systemic Vascular Resistance SVR = 80 * (MAP - CVP) / CO and Pulmonary Vascular Resistance PVR = 80 * (mPAP - PCWP) / CO in dyn·s·cm⁻⁵ and Wood units. *Table — Differentiate distributive vasodilatory shock from cardiogenic and hypovolemic shock!:* | ICU Hemodynamic Profile | Pressures (mmHg) & CO (L/min) | SVR / PVR (dyn·s·cm^-5) | Shock / Vascular Phenotype | | --- | --- | --- | --- | | Distributive / Septic Shock | MAP = 65, CVP = 10, CO = 7.5 | 586.7 dyn·s·cm^-5 (< 800) | Pathologic Vasodilation | | Cardiogenic Shock | MAP = 75, CVP = 15, CO = 2.5 | 1,920.0 dyn·s·cm^-5 (> 1200) | Compensatory Vasoconstriction | | Pulmonary Arterial Hypertension | mPAP = 32, PCWP = 12, CO = 5.0 | 320.0 dyn·s·cm^-5 (4.0 Wood U) | Precapillary PAH (> 3 Wood U) | - **Formula (Systemic Vascular Resistance SVR = 80 * (MAP - CVP) / CO (dyn·s·cm⁻⁵))**: `=IF(OR(B4 <= 0, B2 <= B3), "Invalid CO or Pressure Gradient", ROUND((80 * (B2 - B3)) / B4, 1))` - **Formula (Pulmonary Vascular Resistance PVR (dyn·s·cm⁻⁵ & Wood Units))**: `=IF(OR(B4 <= 0, B5 <= B6), "Invalid CO or Pulmonary Gradient", ROUND((80 * (B5 - B6)) / B4, 1))` ### Tabular CUSUM Control Chart Formula: C+ / C- Cumulative Sum & h-Sigma Shift Alarm - **URL**: https://sheets.arte-soft.com/en/learn/tabular-cusum-cumulative-sum-control-chart-shift-detection-formula/ - **Summary**: Detect sustained 0.5-sigma to 1.5-sigma process drifts 3x–4x faster than Shewhart 3-sigma charts using Page’s Two-Sided Tabular CUSUM recursion C_i+ = MAX(0, x_i - (mu_0 + k*sigma) + C_{i-1}+). *Table — Catch persistent 1-sigma mean shifts that hide inside +-3-sigma Shewhart limits!:* | CUSUM Parameter (ISO 7870-4 / Montgomery) | Symbol & Value | Computed Step Result | | --- | --- | --- | | Current Observation x_i & Target mu_0 | x_i = 101.8, mu_0 = 100.0 | Raw deviation = +1.80 (inside +-3.0 Shewhart) | | Process Sigma & Reference Slack k | sigma = 1.0, k = 0.5 (K = 0.5) | Net excess above 100.5 = +1.30 | | Prior C_{i-1}^+ & Decision Limit h | C_{i-1}^+ = 3.1, h = 4.0 (H = 4.0) | C_i^+ = 4.40 > 4.00 -> Out-of-Control Upward Shift! | - **Formula (Updated Upper Tabular CUSUM Statistic C_i^+)**: `=IF(OR(B4 <= 0, B5 <= 0, B6 < 0, B7 <= 0), "Invalid CUSUM Parameters", ROUND(MAX(0, B2 - (B3 + B5 * B4) + B6), 4))` - **Formula (Decision Interval Alarm Status Against H = h * sigma)**: `=IF(MAX(0, B2 - (B3 + B5 * B4) + B6) > B7 * B4, "Out-of-Control Upward Mean Shift", "In Control")` ### Taguchi Quadratic Quality Loss Function Formula - **URL**: https://sheets.arte-soft.com/en/learn/taguchi-quadratic-quality-loss-function-and-off-target-batch-cost/ - **Summary**: Replace binary goalpost tolerance thinking with Genichi Taguchi’s quadratic loss L(y) = (A_0 / Delta_0^2)*(y - m)^2 and expected batch loss k * (sigma^2 + (mu - m)^2). *Table — Why parts barely inside USL/LSL "goalposts" still cost real warranty and field-failure money!:* | Taguchi Quality Metric (m=50, Delta_0=0.50, A_0=$25, mu=50.20, sigma=0.15) | Formula | Verified Output | | --- | --- | --- | | Taguchi Loss Coefficient (k) | A_0 / (Delta_0^2) = 25 / 0.25 | 100.00 $ / mm^2 | | Dispersion / Variance Loss per Unit | k * sigma^2 = 100 * 0.0225 | 2.25 $ / unit | | Off-Target Centering Loss per Unit | k * (mu - m)^2 = 100 * 0.0400 | 4.00 $ / unit (64% of Loss!) | | Expected Batch Quality Loss E[L] | k * (sigma^2 + (mu - m)^2) | 6.25 $ / unit | - **Formula (Taguchi Loss Constant k = A_0 / Delta_0^2 Formula)**: `=IF(OR(B3 <= 0, B4 <= 0), "Invalid Taguchi Input", ROUND(B4 / (B3 ^ 2), 4))` - **Formula (Expected Per-Unit Batch Loss E[L] = k * (sigma^2 + (mu - m)^2) Formula)**: `=LET(m_tg, B2, dl_tl, B3, a_sc, B4, mu_pr, B5, sg_pr, B6, IF(OR(dl_tl <= 0, a_sc <= 0, sg_pr < 0), "Invalid Taguchi Input", LET(k_ls, a_sc / (dl_tl ^ 2), ROUND(k_ls * ((sg_pr ^ 2) + ((mu_pr - m_tg) ^ 2)), 2))))` ### Tail-at-Scale Fan-Out Latency & Hedged Request Formula - **URL**: https://sheets.arte-soft.com/en/learn/tail-at-scale-fan-out-p99-latency-amplification-and-hedged-requests/ - **Summary**: Calculate Jeffrey Dean & Luiz André Barroso’s (2013) microservice fan-out tail probability 1 - (1 - p)^K and prove how r-way hedged requests collapse p99 amplification to 1 - (1 - p^r)^K. *Table — Why 99%-fast leaf microservices still make 40–63% of parent fan-out requests slow!:* | Fan-Out Architecture (p_leaf = 0.01) | Unhedged Parent Tail 1 - (1 - p)^K | 2-Way Hedged Tail 1 - (1 - p^2)^K | | --- | --- | --- | | Single Backend Call (K = 1) | 0.0100 (1.00%) | 0.0001 (0.01%) | | Moderate Microservice Fan-Out (K = 50) | 0.3950 (39.50% Slow!) | 0.0050 (0.50% Slow — 79x Better!) | | Large Search / Ad Fan-Out (K = 100) | 0.6340 (63.40% Slow!) | 0.0100 (1.00% Slow) | - **Formula (Unhedged Parallel Fan-Out Tail Breach Probability Formula)**: `=LET(k_sh, B2, p_tl, B3, IF(OR(k_sh < 1, INT(k_sh) <> k_sh, p_tl < 0, p_tl > 1), "Invalid Fan-Out Input", ROUND(1 - ((1 - p_tl)^k_sh), 4)))` - **Formula (r-Way Hedged Fan-Out Tail Breach Probability Formula)**: `=LET(k_sh, B2, p_tl, B3, r_hg, B4, IF(OR(k_sh < 1, INT(k_sh) <> k_sh, p_tl < 0, p_tl > 1, r_hg < 1, INT(r_hg) <> r_hg), "Invalid Fan-Out Input", ROUND(1 - ((1 - (p_tl^r_hg))^k_sh), 4)))` ### Takagi M/G/1 Server-Vacation Queue Waiting-Time Formula - **URL**: https://sheets.arte-soft.com/en/learn/takagi-m-g-1-server-vacation-queue-waiting-time-decomposition-formula/ - **Summary**: Calculate Server Utilization rho = lambda*E[S], Pollaczek-Khinchine Non-Vacation M/G/1 Waiting Time W_q0, Mean Residual Vacation Life E[V]*(1 + CV_V^2)/2, and Takagi / Fuhrmann-Cooper Decomposed Queue Delay. *Table — Model JVM garbage-collection pauses and CNC maintenance windows with Takagi’s Vacation Decomposition!:* | M/G/1 Vacation Queue Metric (lam=4/ms, E[S]=0.15ms, CVs=1, E[V]=0.8ms, CVv=0.5) | Formula | Verified Output | | --- | --- | --- | | Traffic Intensity Utilization rho | Arrival_lambda * Mean_Service_ES | 0.6000 (60.0% Busy) | | Base M/G/1 Pollaczek Wait (ms) | (lam * ES^2 * (1 + CVs^2)) / (2*(1 - rho)) | 0.2250 ms | | Mean Residual Vacation R_V (ms) | (Mean_Vac_EV * (1 + CVv^2)) / 2 | 0.5000 ms (0.4000 @ CVv=0) | | Total Decomposed Wait W_q (ms) | Base_Pollaczek_Wait + Residual_Vac_RV | 0.7250 ms (0.6250 @ CVv=0) | - **Formula (Takagi / Fuhrmann-Cooper M/G/1 Vacation Waiting-Time Formula)**: `=LET(lm_r, B2, sv_m, B3, cv_s, B4, vc_m, B5, cv_v, B6, rh_u, lm_r * sv_m, IF(OR(lm_r <= 0, sv_m <= 0, rh_u >= 1, cv_s < 0, vc_m <= 0, cv_v < 0), "Unstable or Invalid Vacation Queue", LET(wq_b, (lm_r * (sv_m ^ 2) * (1 + cv_s ^ 2)) / (2 * (1 - rh_u)), vr_m, (vc_m * (1 + cv_v ^ 2)) / 2, ROUND(wq_b + vr_m, 4))))` - **Formula (Deterministic Fixed-Timer Vacation Check (Set Vacation CV = 0))**: `=IF(ISTEXT(E2), E2, ROUND((B5 * (1 + B6 ^ 2)) / 2, 4))` ### TAKE function: slice the first N or last N rows from a table - **URL**: https://sheets.arte-soft.com/en/learn/take-function-first-last-rows/ - **Summary**: Keep a contiguous block of rows or columns from the start or end of a range—or pair TAKE with SORT for clean Top-N summaries. *Table — Positive counts slice from the top; negative counts slice from the bottom:* | Day (A) | Tickets (B) | | --- | --- | | Mon | 48 | | Tue | 52 | | Wed | 39 | | Thu | 61 | | Fri | 55 | - **Formula (Summarize opening days, trailing days, or Top-N peaks)**: `=SUM(TAKE(B2:B6, 3))` - **Formula (Zero rows or columns returns #CALC!)**: `=AVERAGE(TAKE(B2:B6, -2))` ### Talcott Risk Classification for Febrile Neutropenia (Groups I–IV Triage) - **URL**: https://sheets.arte-soft.com/en/learn/talcott-risk-classification-febrile-neutropenia-groups-1-to-4/ - **Summary**: Classify chemotherapy-induced febrile neutropenia into Talcott Groups I–IV to identify Group IV low-risk outpatients (< 5% serious medical complication rate). *Table — Hierarchical sequential exclusion—why outpatient febrile neutropenia requires clearing all three Talcott gates!:* | Inpatient Onset (B2) | Acute Comorbidity (B3) | Uncontrolled Cancer (B4) | Talcott Risk Group & Disposition | | --- | --- | --- | --- | | 0 (Outpatient) | 0 (None) | 0 (Controlled) | Group IV (Low Risk — Outpatient Eligible) | | 0 (Outpatient) | 1 (Present) | 0 or 1 | Group II (Acute Comorbidity — High Risk) | | 1 (Inpatient) | 0 or 1 | 0 or 1 | Group I (Inpatient Onset — High Risk) | - **Formula (Talcott Hierarchical Febrile Neutropenia Group (I–IV))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, B4 < 0, B4 > 1), "Binary Flags Must Be 0 or 1", IF(B2 = 1, "Group I (Inpatient Onset — High Risk)", IF(B3 = 1, "Group II (Acute Comorbidity — High Risk)", IF(B4 = 1, "Group III (Uncontrolled Cancer — High Risk)", "Group IV (Low Risk — Outpatient Eligible)"))))` - **Formula (Count of High-Risk Exclusion Criteria Present (0–3))**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, B4 < 0, B4 > 1), "Binary Flags Must Be 0 or 1", SUM(B2:B4))` ### Tallian Specific Film Thickness Lambda and Stribeck Regime Formula - **URL**: https://sheets.arte-soft.com/en/learn/tallian-lambda-specific-film-thickness-and-stribeck-lubrication-regime/ - **Summary**: Calculate composite RMS surface roughness SQRT(Rq_1^2 + Rq_2^2), Tallian’s specific oil-film ratio Lambda, and Stribeck lubrication regime (Boundary, Mixed, or Full Film). *Table — Add surface roughnesses in quadrature — never by linear addition!:* | Tallian Parameter Range | Stribeck Tribological Regime | Asperity & Wear Consequence | | --- | --- | --- | | Lambda < 1.0 | Boundary Lubrication | Direct metal-on-metal asperity load; anti-wear additives essential | | 1.0 <= Lambda < 3.0 | Mixed / Partial EHL Lubrication | Intermittent asperity contact; micro-pitting risk | | Lambda >= 3.0 | Full-Film EHL / Hydrodynamic | Complete fluid film separation; maximum fatigue life | - **Formula (Composite RMS Surface Roughness & Tallian Lambda Formula)**: `=LET(h_oil, B2, rq_a, B3, rq_b, B4, IF(OR(h_oil < 0, rq_a <= 0, rq_b <= 0), "Invalid Surface Input", ROUND(h_oil / SQRT((rq_a^2) + (rq_b^2)), 4)))` - **Formula (Stribeck Lubrication Regime Classification Formula)**: `=IF(ISNUMBER(E3), IF(E3 < 1, "Boundary Lubrication", IF(E3 < 3, "Mixed Lubrication", "Full-Film EHL")), E3)` ### TAN function: calculate mast or roof height from horizontal run and angle - **URL**: https://sheets.arte-soft.com/en/learn/tan-function-height-from-angle/ - **Summary**: Multiply horizontal ground distance by TAN(RADIANS(angle)) to find vertical height, and guard 90-degree vertical asymptotes. *Table — Turn horizontal run and sight angle into vertical height:* | GroundRunM (A) | SightAngleDeg (B) | EyeHeightM (C) | TotalHeightM | | --- | --- | --- | --- | | 40 | 45 | 1.6 | 41.6 | - **Formula (Calculate total structure height)**: `=ROUND(A2 * TAN(RADIANS(B2)) + C2, 2)` - **Formula (Guard 90° vertical angles where tangent is undefined)**: `=IF(MOD(ABS(B2), 180)=90, "Vertical undefined", ROUND(A2 * TAN(RADIANS(B2)) + C2, 2))` ### Tangential-Flow Diafiltration Diavolume Formula - **URL**: https://sheets.arte-soft.com/en/learn/tangential-flow-diafiltration-diavolumes-sieving-and-buffer-exchange-formula/ - **Summary**: Calculate Constant-Volume Diafiltration Residual Impurity C_end = C_0 * EXP(-N_dv * S), Required Diavolumes LN(C_0 / C_target) / S with Non-Ideal Sieving S, Buffer Volume, and Spec Gate. *Table — Account for Donnan and steric sieving S < 1 when sizing mAb diafiltration buffer exchange!:* | TFF Diafiltration Metric (Vret=50L, C0=100mM, Target=0.10mM, Ndv=6, S=1.00) | Formula | Verified Output | | --- | --- | --- | | Residual Impurity C_end (mM) | C_0 * EXP(-N_dv * S) | 0.2479 mM (0.8230 mM @ S=0.80) | | Required Diavolumes for Spec | LN(C_0 / C_target) / S | 6.91 DV (8.63 DV @ S=0.80) | | Diafiltration Buffer Volume (L) | V_retentate * N_dv | 300.00 L (350.00 L @ 7 DV) | | GMP Buffer-Exchange Release Gate | C_end <= C_target | Continue Diafiltration (Exceeds Target) | - **Formula (Constant-Volume Diafiltration Residual Concentration Formula)**: `=LET(v_rt, B2, c_in, B3, c_tg, B4, n_dv, B5, sv_c, B6, IF(OR(v_rt <= 0, c_tg <= 0, c_in <= c_tg, n_dv < 0, sv_c <= 0, sv_c > 1), "Invalid TFF Parameter", ROUND(c_in * EXP(-n_dv * sv_c), 4)))` - **Formula (Donnan Exclusion Sieving Check (S = 0.80) & 7-Diavolume Pass Check)**: `=IF(ISTEXT(E2), E2, IF(E2 <= B4, "Pass: Impurity <= Target", "Continue Diafiltration (Exceeds Target)"))` ### Tarone’s Homogeneity Test Correction: Exact Asymptotic χ² Adjustment to Breslow-Day - **URL**: https://sheets.arte-soft.com/en/learn/tarone-score-test-homogeneity-of-odds-ratios-correction/ - **Summary**: Correct the conservative inefficiency of the Mantel-Haenszel Breslow-Day test using Robert Tarone’s (1985) score adjustment χ²_Tarone = χ²_BD - [Σ(a_k - E_k)]² / ΣVar_k. *Table — Why SAS PROC FREQ and R DescTools print Breslow-Day WITH Tarone’s 1985 correction!:* | Stratified Homogeneity Input (K = 3, df = 2) | Tarone Adjustment Δ_T | Tarone-Corrected χ²_T | Homogeneity Decision (α = 0.05, Crit = 5.991) | | --- | --- | --- | --- | | χ²_BD = 6.84, Σ(a-E) = 4.20, ΣVar = 14.50 | 1.2166 | 5.6234 | Homogeneous (< 5.991 — Pool Safely) | | Exact Conditional MLE Limit Σ(a-E) = 0 | 0.0000 | 6.8400 | Coincides with unadjusted χ²_BD | | Invalid ΣVar <= 0 or Negative χ²_T | Error Guard | "Invalid Stratified Variance Inputs" | Numerical Consistency Guard | - **Formula (Tarone-Corrected Homogeneity Chi-Square Statistic χ²_Tarone)**: `=IF(OR(B2 < 0, B4 <= 0, B2 - (B3 ^ 2) / B4 < 0), "Invalid Stratified Variance Inputs", ROUND(B2 - (B3 ^ 2) / B4, 4))` - **Formula (Tarone Score Non-MLE Penalty Term Δ_T = [Σ(a_k - E_k)]² / ΣVar_k)**: `=IF(B4 <= 0, "Invalid Stratified Variance Inputs", ROUND((B3 ^ 2) / B4, 4))` ### Tarone-Ware and Gehan-Breslow Weighted Log-Rank Survival Formula - **URL**: https://sheets.arte-soft.com/en/learn/tarone-ware-and-gehan-breslow-weighted-log-rank-survival-test-formula/ - **Summary**: Compare standard Mantel-Haenszel (w=1), Tarone-Ware (w=SQRT(n_j)), and Gehan-Breslow (w=n_j) weighted log-rank Z statistics across discrete failure risk sets. *Table — Understand how risk-set weights shift power toward early vs late survival differences:* | Weighted Survival Test | Risk-Set Weight w_j | Squared Variance Weight w_j^2 | | --- | --- | --- | | Mantel-Haenszel Log-Rank | w_j = 1 (Proportional hazards optimum) | 1 | | Tarone-Ware (1977) | w_j = SQRT(n_j) (Balanced early/mid power) | n_j | | Gehan-Breslow Wilcoxon | w_j = n_j (Strong early-event emphasis) | n_j^2 | - **Formula (Exact Hypergeometric Risk-Set Variance v_1j Formula)**: `=IF(B2 <= 1, 0, (C2 * (B2 - C2) * D2 * (B2 - D2)) / ((B2^2) * (B2 - 1)))` - **Formula (Tarone-Ware Z_TW vs Unweighted Log-Rank Z_LR Formula)**: `=LET(v_tw, SUMPRODUCT(B2:B5, G2:G5), IF(v_tw <= 0, "Zero Event Variance", ROUND(SUM(H2:H5) / SQRT(v_tw), 4)))` ### Tauc Plot Optical Bandgap Calculator: Photon Energy & (alpha*h*nu)^n - **URL**: https://sheets.arte-soft.com/en/learn/tauc-plot-optical-bandgap-photon-energy-and-absorption-formula/ - **Summary**: Transform UV-Vis spectrophotometer wavelength (nm) and absorption coefficient alpha (cm^-1) into Tauc abscissa h*nu = 1239.842 / lambda_nm (eV) and direct ((alpha * h*nu)^2) vs. indirect (SQRT(alpha * h*nu)) ordinates. *Table — Convert raw UV-Vis thin-film spectra into linear Tauc bandgap plots!:* | UV-Vis Wavelength lambda (nm) | Photon Energy h*nu (eV) | Normalized Direct Ordinate ((alpha/1e4)*h*nu)^2 | Band-Edge Transition Use | | --- | --- | --- | --- | | 450 nm Blue Edge (alpha = 25,000 cm^-1) | 2.7552 eV | 47.445 (10^4 eV/cm)^2 | Direct Allowed (r = 1/2 -> Power 2) | | 380 nm Near-UV (alpha = 25,000 cm^-1) | 3.2627 eV | 66.534 (10^4 eV/cm)^2 | Wide-Gap Oxide Edge (ZnO / GaN) | | Invalid Wavelength (lambda <= 0 or alpha < 0) | Spectra Guard | "Invalid UV-Vis Input" | Requires lambda > 0, alpha >= 0 | - **Formula (Tauc X-Axis Photon Energy h * nu (eV) = 1239.842 / Wavelength_nm)**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid UV-Vis Input", ROUND(1239.842 / B2, 4))` - **Formula (Direct-Bandgap Tauc Y-Axis Ordinate ((alpha / 10^4) * h * nu)^2)**: `=IF(OR(B2 <= 0, B3 < 0), "Invalid UV-Vis Input", ROUND(((B3 / 10000) * (1239.842 / B2)) ^ 2, 3))` ### Tax-Loss Harvesting & IRC §1091 Partial Wash-Sale Formula - **URL**: https://sheets.arte-soft.com/en/learn/tax-loss-harvesting-irc-section-1091-wash-sale-disallowed-basis-formula/ - **Summary**: Calculate Realized Harvested Capital Loss ($), IRC Section 1091 Share-Matched Disallowed Wash-Sale Loss ($), Deductible Current-Year Loss ($), and Adjusted Replacement Lot Basis ($/sh). *Table — Partial DRIP buys inside the 61-day window only disallow loss share-for-share—and step up new basis!:* | IRC §1091 Wash-Sale KPI (Sell 1,000 @ $85->$65, Buy 250 @ $66 in 61d) | Formula | Verified Output | | --- | --- | --- | | Total Realized Capital Loss ($) | Shares_Sold * (Orig_Cost - Sale_Price) | $20,000.00 | | Disallowed Wash-Sale Loss ($) | MIN(Shares_Sold, Repl_Shares) * Loss_Per_Sh | $5,000.00 ($0.00 if 0 Repl) | | Deductible Current Tax Loss ($) | Realized_Loss - Disallowed_Wash_Loss | $15,000.00 ($20,000.00 Clean) | | Matched Replacement Basis ($/sh) | IF(Repl_Sh=0, 0, Buy_Price + Loss_Per_Sh) | $86.00/sh ($0.00 if 0 Repl) | - **Formula (IRC §1091 Share-Matched Deductible Loss & Stepped-Up Basis Formula)**: `=LET(sh_s, B2, cs_0, B3, sl_p, B4, sh_r, B5, by_p, B6, IF(OR(sh_s <= 0, cs_0 <= sl_p, sl_p <= 0, sh_r < 0, by_p < 0), "Invalid Loss Harvest Input", LET(ls_p, cs_0 - sl_p, ws_s, MIN(sh_s, sh_r), ROUND((sh_s - ws_s) * ls_p, 2))))` - **Formula (Clean Zero-Replacement Harvest vs Full 100% Wash-Sale Checks)**: `=IF(ISTEXT(E4), E4, IF(B5 = 0, 0, ROUND(B6 + (B3 - B4), 2)))` ### Taylor-Couette Rotating Annulus: Taylor Number & Toroidal Vortex Onset - **URL**: https://sheets.arte-soft.com/en/learn/taylor-couette-rotating-annulus-taylor-number-vortex-onset/ - **Summary**: Calculate the root Taylor Number Ta_1/2 = ((Omega * R_i * d) / nu) * SQRT(d / R_i) for concentric journal bearings and chemical Taylor-vortex reactors against G. I. Taylor’s 1923 critical instability threshold (Ta_1/2 >= 41.3). *Table — Predict exact toroidal Taylor-vortex roll formation inside journal bearings & Couette reactors!:* | Inner Cylinder Angular Speed (Ri = 40 mm, Gap d = 4 mm, nu = 2 mm^2/s) | Inner Couette Re_i | Root Taylor Number Ta_1/2 | Annular Flow Regime | | --- | --- | --- | --- | | Slow Rotation (Omega = 1.0 rad/s) | 80.0 | 25.3 (< 41.3) | Stable Laminar Circular Couette | | Critical Threshold (Omega ~ 1.63 rad/s) | 130.6 | 41.3 (Ta = 1,708) | G. I. Taylor Toroidal Vortex Onset | | Moderate Reactor Spin (Omega = 5.0 rad/s) | 400.0 | 126.5 (>= 41.3) | Laminar / Wavy Taylor Vortex Rolls | - **Formula (Dimensionless Root Taylor Number Ta_1/2 = ((Omega * R_i * d) / nu) * SQRT(d / R_i))**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Couette Inputs", ROUND(((B2 * B3 * B4) / B5) * SQRT(B4 / B3), 1))` - **Formula (Taylor-Couette Hydrodynamic Stability Regime Classification)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Couette Inputs", IF((((B2 * B3 * B4) / B5) * SQRT(B4 / B3)) >= 400, "Turbulent Taylor Vortices (Ta_1/2 >= 400)", IF((((B2 * B3 * B4) / B5) * SQRT(B4 / B3)) >= 41.3, "Taylor Vortex Flow Active (41.3 <= Ta_1/2 < 400)", "Stable Circular Couette Flow (Ta_1/2 < 41.3)")))` ### Taylor Tool Life & Minimum-Cost Cutting Speed Formula - **URL**: https://sheets.arte-soft.com/en/learn/taylor-metal-cutting-tool-life-exponent-and-minimum-cost-speed-formula/ - **Summary**: Calculate F.W. Taylor’s Cutting Tool Life T = (C / V)^(1/n), Gilbert’s Minimum-Cost Economic Tool Life T_opt = ((1 - n)/n) * (t_chg + C_edge / R_mach), and Optimal Cutting Speed V_opt. *Table — Balance CNC spindle cycle time against carbide insert replacement with Taylor’s V*T^n = C!:* | Taylor-Gilbert Machining Metric (C=450, n=0.25, V=225 m/min, t_chg=3m, Edge=$48, Rate=$2/m) | Formula | Verified Output | | --- | --- | --- | | Operating Insert Life T (min) | (C / V) ^ (1 / n) | 16.00 min (81.00 min @ V=150) | | Minimum-Cost Tool Life T_opt | ((1 - n)/n) * (t_chg + Edge/Rate) | 81.00 min | | Minimum-Cost Speed V_opt (m/min) | C / (T_opt ^ n) | 150.00 m/min | | CNC Spindle Economic Diagnostic | Compare V_operating vs V_opt | Over-Speeding: Above Cost Optimum | - **Formula (Gilbert Minimum-Cost Cutting Speed Formula)**: `=LET(c_tl, B2, ex_n, B3, vl_c, B4, t_ch, B5, cs_e, B6, rt_m, B7, IF(OR(c_tl <= 0, ex_n <= 0, ex_n >= 1, vl_c <= 0, t_ch <= 0, cs_e < 0, rt_m <= 0), "Invalid Machining Parameter", LET(t_op, ((1 - ex_n) / ex_n) * (t_ch + cs_e / rt_m), ROUND(c_tl / (t_op ^ ex_n), 2))))` - **Formula (Exact Optimum Verification (Set V = 150 m/min))**: `=IF(ISTEXT(E4), E4, IF(ABS(B4 - E4) < 0.01, "Optimal Minimum-Cost Speed", IF(B4 > E4, "Over-Speeding: Above Cost Optimum", "Under-Speeding: Below Cost Optimum")))` ### Taylor Rule formula: central bank policy interest rate & ZLB floor - **URL**: https://sheets.arte-soft.com/en/learn/taylor-rule-central-bank-policy-interest-rate-formula/ - **Summary**: Explore a Taylor-style policy-rule benchmark with supplied neutral rate, inflation target and output gap, plus an optional zero-floor scenario. *Table — Understand the 1.5x Taylor Principle on inflation and 0.5x output-gap response:* | Macro Regime (r* = 2.0%, Target pi* = 2.0%) | Inputs (pi, OutputGap) | Prescribed Taylor Rate | | --- | --- | --- | | Overheating Boom | pi = 3.6%, Gap = +1.0% | 2% + 3.6% + 0.8% + 0.5% = 6.90% | | Balanced Steady State | pi = 2.0%, Gap = 0.0% | 2% + 2.0% + 0% + 0% = 4.00% | | Mild Recession | pi = 1.4%, Gap = -3.0% | 2% + 1.4% - 0.3% - 1.5% = 1.60% | | Deflationary Slump (ZLB) | pi = 0.0%, Gap = -6.0% | Raw = -2.0% -> MAX(0, i) = 0.00% | - **Formula (Unconstrained Taylor Rule policy interest rate)**: `=IF(COUNT(A2:D2)<>4,"Invalid inputs",ROUND(A2 + B2 + 0.5 * (B2 - C2) + 0.5 * D2, 4))` - **Formula (Optional zero-floor scenario)**: `=IF(COUNT(A2:D2)<>4,"Invalid inputs",MAX(0, ROUND(A2 + B2 + 0.5 * (B2 - C2) + 0.5 * D2, 4)))` ### Taylor Tool-Life & Gilbert Minimum-Cost Cutting Speed - **URL**: https://sheets.arte-soft.com/en/learn/taylor-tool-life-exponent-minimum-cost-cutting-speed-and-tool-change-optimization/ - **Summary**: Calculate Predicted Carbide Insert Edge Life T (min), Gilbert Economic Minimum-Cost Tool Life Topt (min), Optimum Minimum-Cost Cutting Speed Vopt (m/min), and Overspeed Penalty (%). *Table — Cranking CNC turning speed up 37.5% from 240 to 330 m/min on n = 0.25 carbide collapses insert life (330/240)^4 = 3.58x down to 2.62 minutes—burning $14.50 edges faster than parts!:* | Taylor-Gilbert Machining Economics KPI (C=420 m/min, n=0.25, Cm=1.85/min, Ce=14.50) | Formula | Verified Output | | --- | --- | --- | | Predicted Insert Life T (min) | (Taylor_C / Cutting_Speed_V) ^ (1 / n) | 9.38 min @ 240 m/min (2.62 min @ 330 m/min!) | | Gilbert Min-Cost Life Topt (min) | ((1 / n) - 1) * (Change_tc + (Edge_Ce / Rate_Cm)) | 31.01 min economic edge life | | Min-Cost Speed Vopt (m/min) | Taylor_C / (MinCost_Life_Topt ^ n) | 178.0 m/min economic sweet spot | | Overspeed vs Economic Vopt (%) | ((Operating_V - MinCost_Vopt) / Vopt) * 100 | +34.8% (+85.4% insert-burning overdrive!) | - **Formula (F.W. Taylor (1906) V·T^n = C & Gilbert (1950) Minimum-Cost Speed Formula)**: `=LET(cs_t, B2, nx_t, B3, vs_m, B4, cm_d, B5, tc_m, B6, ce_d, B7, to_m, ((1 / nx_t) - 1) * (tc_m + (ce_d / cm_d)), vo_s, cs_t / (to_m ^ nx_t), IF(OR(cs_t < 30, cs_t > 3000, nx_t < 0.08, nx_t > 0.75, vs_m < 10, vs_m > 2500, cm_d <= 0, tc_m < 0.1, ce_d < 0), "Invalid Taylor Input", ROUND(((vs_m - vo_s) / vo_s) * 100, 1)))` - **Formula (Aggressive Cycle-Time Push (`V = 330` m/min) Fourth-Power Crater-Wear Collapse Check)**: `=IF(ISTEXT(E5), E5, ROUND((B2 / B4) ^ (1 / B3), 2))` ### TBA Mortgage Dollar Roll Drop & Specialness Formula - **URL**: https://sheets.arte-soft.com/en/learn/tba-mortgage-dollar-roll-drop-financing-breakeven-and-specialness-formula/ - **Summary**: Calculate Agency TBA Dollar Roll Price Drop (P_front - P_back), Breakeven Carry Drop, Net Roll Advantage Points, and Implied Dollar-Roll Financing Rate ("Trading Special"). *Table — Spot when an Agency TBA mortgage dollar roll trades "on special" below repo!:* | TBA Dollar Roll Metric (Front=100.00, Back=99.75, Carry=0.50, GC Repo=4.80%) | Formula | Verified Output | | --- | --- | --- | | Actual TBA Price Drop (pts) | P_front - P_back | 0.2500 pts (8/32nds) | | Breakeven Carry Drop (pts) | Foregone_Carry - P_front*r_repo*(30/360) | 0.1000 pts | | Net Roll Advantage (pts) | Actual_Drop - Breakeven_Drop | +0.1500 pts (-0.0500 @ Back=99.95) | | Implied Roll Financing APR | ((Foregone_Carry - Drop)/P_front)*12 | 0.0300 (3.00% Special vs 4.80% Repo) | - **Formula (Implied TBA Dollar-Roll Financing Rate (ACT/360) Formula)**: `=LET(p_fr, B2, p_bk, B3, cr_f, B4, rp_m, B5, IF(OR(p_fr <= 0, p_bk <= 0, cr_f < 0, rp_m < 0), "Invalid TBA Roll Quote", LET(dr_p, p_fr - p_bk, ROUND(((cr_f - dr_p) / p_fr) * 12, 4))))` - **Formula (Take-Delivery vs Roll Decision Check (Back = 99.95))**: `=IF(ISTEXT(E3), E3, ROUND(E2 - E3, 4))` ### TCP Bandwidth-Delay Product (BDP) & Mathis Throughput Formula - **URL**: https://sheets.arte-soft.com/en/learn/tcp-bandwidth-delay-product-bdp-and-mathis-throughput-limit/ - **Summary**: Calculate bandwidth-delay product in decimal MB and explore a simplified Reno-style loss model, with explicit units and limits rather than a universal TCP speed prediction. - **Formula (Bandwidth-delay product is a volume of data)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric link and RTT",IF(OR(B2<=0,B3<=0),"Link and RTT must be positive",B2*B3/8000))` - **Formula (Simplified Mathis loss model)**: `=IF(COUNT(B2:B5)<>4,"Enter numeric network inputs",IF(OR(B2<=0,B3<=0,B4<=0,B4<>INT(B4),B5<0,B5>1),"Invalid network inputs",IF(B5=0,"Undefined at zero loss",IF(B5>0.01,"Outside this low-loss exercise",MIN(B2,(B4*8)/((B3/1000)*SQRT(B5))/1000000)))))` ### Temkin & Dubinin-Radushkevich (D-R) Adsorption Isotherm Energy Formula - **URL**: https://sheets.arte-soft.com/en/learn/temkin-and-dubinin-radushkevich-adsorption-energy-formula/ - **Summary**: Distinguish physical micropore filling (< 8 kJ/mol) from ion-exchange / chemisorption (8–16+ kJ/mol) using Dubinin-Radushkevich mean free adsorption energy E = 1 / SQRT(2 * B_DR) and Temkin surface uptake q_e = ((R * T) / b_T) * LN(A_T * C_e). *Table — Diagnose physisorption vs. chemisorption in activated carbon & zeolite water treatment!:* | D-R Slope Constant B_DR (mol^2/kJ^2) | Mean Adsorption Energy E_DR | Mechanism Threshold | Sorption Classification | | --- | --- | --- | --- | | B_DR = 0.0120 mol^2/kJ^2 | 6.45 kJ/mol | E_DR < 8 kJ/mol | Physical Adsorption (Physisorption) | | B_DR = 0.0025 mol^2/kJ^2 | 14.14 kJ/mol | 8 <= E_DR <= 16 kJ/mol | Ion-Exchange Sorption | | B_DR = 0.0010 mol^2/kJ^2 | 22.36 kJ/mol | E_DR > 16 kJ/mol | Strong Covalent Chemisorption | - **Formula (Dubinin-Radushkevich Mean Free Adsorption Energy E_DR = 1 / SQRT(2 * B_DR) (kJ/mol))**: `=IF(B2 <= 0, "Invalid B_DR Constant", ROUND(1 / SQRT(2 * B2), 2))` - **Formula (Temkin Equilibrium Surface Uptake q_e = ((R * T) / b_T) * LN(A_T * C_e) (mg/g))**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, (B5 * B6) <= 1), "Outside Temkin Domain", ROUND(((8.31446 * B3) / B4) * LN(B5 * B6), 2))` ### Terzaghi Effective Soil Stress & Rankine Earth Pressure (Ka & Kp) formulas - **URL**: https://sheets.arte-soft.com/en/learn/terzaghi-effective-soil-stress-and-rankine-earth-pressure/ - **Summary**: Explore a simplified hydrostatic effective-stress calculation and Rankine coefficients for level cohesionless backfill. *Table — State the soil profile and wall assumptions first:* | Geotechnical Metric | Formula | z = 6 m, z_w = 2 m, gamma = 20, phi = 30 deg | Dry Soil (Water Table > 6 m) | | --- | --- | --- | --- | | Total Overburden Stress sigma_v | B3 * B2 | 20 * 6 = 120.00 kPa | 120.00 kPa | | Pore Water Pressure u | MAX(0, (B2 - B4) * B5) | 4 * 9.81 = 39.24 kPa | 0.00 kPa | | Effective Stress sigma'_v | (B3 * B2) - MAX(0, (B2-B4)*B5) | 120 - 39.24 = 80.76 kPa | 120.00 kPa | | Rankine Active / Passive Ka, Kp | (1 -/+ SIN(phi)) / (1 +/- SIN(phi)) | Ka = 0.3333 \| Kp = 3.0000 | Ka = 0.3333 \| Kp = 3.0000 | - **Formula (Terzaghi Effective Vertical Stress sigma'_v (kPa))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B4<0,B3<=0,B5<=0,B3<=B5),"Invalid inputs",ROUND((B3 * B2) - MAX(0, (B2 - B4) * B5), 2)))` - **Formula (Rankine active coefficient Ka)**: `=IF(NOT(ISNUMBER(B6)),"Invalid inputs",IF(OR(B6<0,B6>=90),"Invalid inputs",ROUND((1 - SIN(RADIANS(B6))) / (1 + SIN(RADIANS(B6))), 4)))` - **Formula (Rankine passive coefficient Kp)**: `=IF(NOT(ISNUMBER(B6)),"Invalid inputs",IF(OR(B6<0,B6>=90),"Invalid inputs",ROUND((1 + SIN(RADIANS(B6))) / (1 - SIN(RADIANS(B6))), 4)))` - **Formula (Hydrostatic pore pressure)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B4<0,B3<=0,B5<=0,B3<=B5),"Invalid inputs",MAX(0,(B2-B4)*B5)))` - **Formula (Total vertical stress)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B4<0,B3<=0,B5<=0,B3<=B5),"Invalid inputs",B3*B2))` ### Terzaghi Shallow Foundation Bearing Capacity (q_u & Allowable q_all) - **URL**: https://sheets.arte-soft.com/en/learn/terzaghi-shallow-foundation-ultimate-bearing-capacity-formula/ - **Summary**: Calculate strip and square footing ultimate pressures from supplied bearing-capacity factors, then distinguish net and gross allowable shear pressures with an explicit safety-factor convention. - **Formula (Enter consistent units and supplied factors)**: `=IF(COUNT(B2:B9)<>8,"Check numeric inputs",IF(OR(B2<0,B3<=0,B4<0,B5<=0,B6<=0,B7<1,B8<0,B9<=1),"Check input ranges",IF(B4>B5,"Outside shallow example","OK")))` - **Formula (Calculate surcharge and strip ultimate pressure)**: `=IF(B11<>"OK",B11,B2*B6+B13*B7+0.5*B3*B5*B8)` - **Formula (Calculate the square-footing variant)**: `=IF(B11<>"OK",B11,1.3*B2*B6+B13*B7+0.4*B3*B5*B8)` - **Formula (Distinguish net and gross allowable pressures)**: `=IF(B11<>"OK",B11,B13+B18)` - **Formula (Apply the same convention to a square footing)**: `=IF(B11<>"OK",B11,B13+(B15-B13)/B9)` ### Terzaghi Critical Hydraulic Gradient & Quicksand Formula - **URL**: https://sheets.arte-soft.com/en/learn/terzaghi-upward-seepage-critical-hydraulic-gradient-quicksand-piping-formula/ - **Summary**: Calculate Terzaghi Critical Hydraulic Gradient i_cr = (Gs - 1)/(1 + e), Cofferdam Upward Exit Gradient dh/L, Piping Factor of Safety FS, and Sand-Boiling Heave Audit. *Table — Quicksand is NOT a special mineral—it is ordinary sand where upward seepage drag cancels submerged grain weight to ZERO effective stress!:* | Terzaghi Seepage Piping KPI (Gs=2.66, Void Ratio e=0.68, Head dh=4.2 m, L=11.5 vs 6.0 m) | Formula | Verified Output | | --- | --- | --- | | Critical Gradient i_cr (Boiling) | (Specific_Gravity_Gs - 1) / (1 + Void_Ratio_e) | 0.988 (near unity for quartz sand) | | Upward Exit Gradient i_exit | Total_Head_Diff_dh_m / Flow_Path_L_m | 0.365 (0.700 @ shallow L=6.0 m cutoff!) | | Piping Factor of Safety FS | Critical_Gradient_icr / Exit_Gradient_i | 2.71 (1.41 < 2.5 @ shallow L=6.0 m!) | | Cofferdam Sand-Boil Audit | FS >= 2.5 USACE Dewatering Threshold | SAFE AGAINST PIPING (FS>=2.5) | - **Formula (Terzaghi Zero-Effective-Stress Critical Gradient & Cofferdam Piping FS Formula)**: `=LET(gs_s, B2, vr_e, B3, dh_m, B4, lp_m, B5, ic_r, (gs_s - 1) / (1 + vr_e), ie_x, dh_m / lp_m, fs_p, ic_r / ie_x, IF(OR(gs_s < 2.3, gs_s > 3.2, vr_e < 0.25, vr_e > 1.5, dh_m <= 0, lp_m <= 0), "Invalid Seepage Input", IF(fs_p >= 2.5, "SAFE AGAINST PIPING (FS>=2.5)", "QUICKSAND BOILING RISK")))` - **Formula (Under-Driven Sheet-Pile Cutoff (L = 6.0 m) Sand-Boiling Blowout Check (Set Seepage Path B5 = 6.0 m))**: `=IF(ISTEXT(E2), E2, LET(ic_r, (B2 - 1) / (1 + B3), ie_x, B4 / B5, ROUND(ic_r / ie_x, 2)))` ### Test Whether a Range Contains Any Substring from a Keyword List (COUNTIF) - **URL**: https://sheets.arte-soft.com/en/learn/test-whether-range-contains-any-substring-from-list/ - **Summary**: Check whether any cell across an entire column or log range contains at least one keyword from a watchlist using wildcard COUNTIF checks, returning a clean TRUE/FALSE flag or total keyword hits. *Table — Scan an entire batch of log lines against multiple alert substrings:* | Incident Log Entry (B2:B6) | Watchlist Keyword (D2:D4) | Range Hit Count | Alert Triggered? | | --- | --- | --- | --- | | 2026-05-01 Auth token refreshed | timeout | 1 (Row 4) | TRUE | | 2026-05-01 Cache warmup complete | deadlock | 0 | — | | 2026-05-01 Gateway timeout on node-3 | corrupt | 0 | — | | 2026-05-01 Nightly backup verified | (Total hits = 1) | 1 > 0 | Alert Active | - **Formula (Blank-Safe Multi-Keyword Substring Scan Across a Range)**: `=LET(h1, IF(LEN(TRIM(D2)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(D2) & "*")), h2, IF(LEN(TRIM(D3)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(D3) & "*")), h3, IF(LEN(TRIM(D4)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(D4) & "*")), (h1 + h2 + h3) > 0)` - **Formula (Total Keyword-Row Hit Count Across the Range)**: `=IF(LEN(TRIM(D2)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(D2) & "*")) + IF(LEN(TRIM(D3)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(D3) & "*")) + IF(LEN(TRIM(D4)) = 0, 0, COUNTIF(B2:B6, "*" & TRIM(D4) & "*"))` ### Test Whether a Range Contains One of Many Exact Values (Set Overlap Audit) - **URL**: https://sheets.arte-soft.com/en/learn/test-whether-range-contains-one-of-many-exact-values/ - **Summary**: Determine whether an entire column or manifest range contains at least one exact code from a restricted or priority list using whole-cell equality or COUNTIF checks without partial-prefix false positives. *Table — Whole-cell membership across two ranges vs substring wildcards:* | Manifest Item Code (B2:B6) | Hazmat Watchlist (D2:D4) | Exact Matches | Hold Shipment? | | --- | --- | --- | --- | | UN-1203 | UN-12 | 0 (Prefix only, not exact) | No | | PKG-440 | UN-1950 | 1 (Matches Row 5) | Yes | | BOX-810 | UN-3480 | 0 | No | | UN-1950 | (Batch status) | Total = 1 | Hold Required | - **Formula (Exact Range-to-List Set Intersection Flag)**: `=SUMPRODUCT(((B2:B6 = D2) * (LEN(D2) > 0)) + ((B2:B6 = D3) * (LEN(D3) > 0)) + ((B2:B6 = D4) * (LEN(D4) > 0))) > 0` - **Formula (Count of Restricted Line Items in the Manifest)**: `=SUMPRODUCT(((B2:B6 = D2) * (LEN(D2) > 0)) + ((B2:B6 = D3) * (LEN(D3) > 0)) + ((B2:B6 = D4) * (LEN(D4) > 0)))` ### Test Whether a Schedule Range Contains a Specific Date (Date & Timestamp Safe) - **URL**: https://sheets.arte-soft.com/en/learn/test-whether-range-contains-specific-date/ - **Summary**: Check whether a target calendar date appears inside a holiday or blackout range using COUNTIFS whole-day bounds so fractional timestamps never cause missed matches. *Table — Guard against fractional timestamps when testing date membership:* | Blackout Entry | Stored Value | Exact COUNTIF(DATE(2026,7,3)) | Day-Window COUNTIFS Match? | | --- | --- | --- | --- | | New Year Observe | 2026-01-01 00:00 | 0 | No | | Spring Maintenance | 2026-04-19 00:00 | 0 | No | | Midyear Freeze (2:30 PM) | 2026-07-03 14:30 | 0 (Missed!) | Yes (Matched!) | | Autumn Cutover | 2026-10-12 00:00 | 0 | No | | Year-End Freeze | 2026-12-24 00:00 | 0 | No | - **Formula (Timestamp-Safe Date Membership Flag)**: `=IF(NOT(ISNUMBER(B8)), "Valid Date Required", IF(COUNTIFS(B2:B6, ">=" & INT(B8), B2:B6, "<" & (INT(B8) + 1)) > 0, "Blackout Date", "Open Date"))` - **Formula (Count of Events Falling on Target Calendar Day)**: `=COUNTIFS(B2:B6, ">=" & INT(B8), B2:B6, "<" & (INT(B8) + 1))` ### TEXTBEFORE and TEXTAFTER: extract variable-length text around delimiters - **URL**: https://sheets.arte-soft.com/en/learn/textbefore-textafter-split-by-delimiter/ - **Summary**: Pull city prefixes and trailing status tags from hyphenated codes of any length without nesting FIND inside LEFT or RIGHT, and handle rows missing a delimiter. *Table — Variable-length prefixes where fixed LEFT(text, 3) fails:* | Tag (A) | Before 1st "-" | After last "-" | | --- | --- | --- | | BERLIN-4029-URGENT | BERLIN | URGENT | | OSLO-88-STD | OSLO | STD | | MANUALENTRY | Missing delimiter | Missing delimiter | - **Formula (Read before the first delimiter and after the last (-1))**: `=TEXTBEFORE(A2,"-")` - **Formula (Supply if_not_found when manual entries omit the delimiter)**: `=TEXTBEFORE(A4,"-",1,0,0,"Missing delimiter")` ### Textile Yarn Tex, Denier, Ne & Moisture Regain Formula - **URL**: https://sheets.arte-soft.com/en/learn/textile-yarn-count-tex-denier-cotton-ne-and-moisture-regain-weight-formula/ - **Summary**: Convert Direct Linear Density Tex (g/1,000 m) into Synthetic Filament Denier (9 * Tex) and Indirect English Cotton Count Ne (590.5 / Tex), and calculate ASTM/BISFA Commercial Moisture Regain Invoice Weight. *Table — Never mix up direct filament Denier/Tex with inverse spun English Cotton Count Ne!:* | Textile Sourcing Metric (25 Tex, 1,000 kg Dry, 8.5% Std Regain, 10.5% Actual) | Formula | Verified Output | | --- | --- | --- | | Direct Filament Denier (g/9,000m) | 9 * Tex | 225.00 Denier (112.50 @ 12.5 Tex) | | Indirect English Cotton Count Ne | 590.5 / Tex (Inverse!) | 23.62 Ne (47.24 Ne @ 12.5 Tex!) | | Commercial Invoice Weight (kg) | Oven_Dry_kg * (1 + Official_Regain) | 1,085.00 kg | | Excess Humid Scale Water (kg) | Oven_Dry_kg * (Actual - Official) | +20.00 kg Unbillable Water | - **Formula (Textile Yarn Count Conversion & Commercial Invoice Mass Formula)**: `=LET(tx_y, B2, dr_m, B3, rg_s, B4, rg_a, B5, IF(OR(tx_y <= 0, dr_m <= 0, rg_s < 0, rg_s > 0.5, rg_a < 0, rg_a > 0.5), "Invalid Yarn Specification", ROUND(dr_m * (1 + rg_s), 2)))` - **Formula (Finer-Yarn Inverse Direction Check (Halve Tex to 12.5))**: `=IF(ISTEXT(E4), E4, ROUND(590.5 / B2, 2))` ### TEXTJOIN function: combine optional address fields without double commas - **URL**: https://sheets.arte-soft.com/en/learn/textjoin-ignore-empty-cells/ - **Summary**: Join street, optional unit, and city with a comma-space delimiter while automatically skipping genuinely blank cells—and check how zero and space-only cells behave. *Table — Dispatch labels with an optional unit column:* | Street (A) | Unit (B) | City (C) | | --- | --- | --- | | 14 Cedar Rd | | Varna | | 8 Harbour Way | Unit 3B | Burgas | - **Formula (Set ignore_empty to TRUE)**: `=TEXTJOIN(", ",TRUE,A2:C2)` ### TEXTSPLIT function: split semicolon or comma strings into columns - **URL**: https://sheets.arte-soft.com/en/learn/textsplit-split-text-into-columns/ - **Summary**: Break a delimited import string across columns dynamically with TEXTSPLIT, and control whether consecutive delimiters keep blank slots or collapse. *Table — Semicolon-separated fields pasted into a single column:* | Raw line | 3rd field (keep empty) | Token count (ignore_empty=TRUE) | | --- | --- | --- | | Ada;Lin;Berlin;92 (A2) | Berlin | 4 | | Omar;;Oslo;88 (A3) | Oslo | 3 | - **Formula (Keep column alignment when fields can be blank)**: `=INDEX(TEXTSPLIT(A2,";"),1,3)` - **Formula (Count non-empty tags with ignore_empty = TRUE)**: `=COUNTA(TEXTSPLIT(A3,";",,TRUE))` ### Theatrical Box-Office 90/10 Split & P&A Formula - **URL**: https://sheets.arte-soft.com/en/learn/theatrical-box-office-sliding-exhibitor-split-and-print-and-ad-recoupment/ - **Summary**: Calculate Distributor Theatrical Film Rentals MAX(Floor_Pct * GBO, 0.90 * MAX(0, GBO - House_Nut)), Effective Cinema Exhibitor Retention, Post-Fee Studio Receipts, and Net Producer P&A Recoupment. *Table — Model the Hollywood 90/10 over House Nut vs Percentage Floor clause accurately!:* | Theatrical Waterfall Metric ($10M GBO, $3M Nut, 55% Floor, 25% Dist Fee, $4M P&A) | Formula | Verified Output | | --- | --- | --- | | Distributor Film Rentals ($) | MAX(Floor*GBO, 0.90*MAX(0, GBO - Nut)) | $6,300,000.00 ($2.75M @ $5M GBO) | | Effective Exhibitor Keep Share | (GBO - Film_Rentals) / GBO | 0.3700 (37.00% Theatre Share) | | Post-Fee Distributor Net ($) | Film_Rentals * (1 - Studio_Fee_Pct) | $4,725,000.00 | | Net Producer P&A Corridor ($) | Post_Fee_Net - PA_Marketing_Spend | +$725,000.00 (-$1,937,500 @ $5M GBO) | - **Formula (90/10 Over House Nut & P&A Recoupment Waterfall Formula)**: `=LET(gb_o, B2, hs_n, B3, fl_p, B4, st_f, B5, pa_s, B6, IF(OR(gb_o <= 0, hs_n < 0, fl_p <= 0, fl_p > 0.9, st_f < 0, st_f >= 1, pa_s < 0), "Invalid Theatrical Deal", LET(rn_t, MAX(fl_p * gb_o, 0.9 * MAX(0, gb_o - hs_n)), nt_d, rn_t * (1 - st_f), ROUND(nt_d - pa_s, 2))))` - **Formula (Effective Exhibitor Retention Share Formula)**: `=IF(ISTEXT(E2), E2, ROUND((B2 - E2) / B2, 4))` ### Theil–Sen median pairwise slope and a separate-median intercept - **URL**: https://sheets.arte-soft.com/en/learn/theil-sen-robust-median-slope-and-intercept-estimator/ - **Summary**: Compare a median pairwise slope with ordinary least squares in a five-point example containing one large deviation. *Table — Compare sensitivity to a large deviation in this five-point sample:* | Estimator / Pair Group | Formula / Pairs | With Glitch y5 = 100 | Clean y5 = 24 | | --- | --- | --- | --- | | 6 Clean Pairs (rows 2–5) | (1,2),(1,3),(1,4),(2,3),(2,4),(3,4) | All 6 slopes = 3.00 | All 6 slopes = 3.00 | | 4 Glitch Pairs (involving x=5) | (1,5)=22, (2,5)=28.33, (3,5)=41, (4,5)=79 | 4 upper-tail slopes | All 4 slopes = 3.00 | | Theil-Sen Robust Slope b_TS | MEDIAN(D2:D11) | 3.00 in this sample | 3.00 | | Ordinary OLS Slope vs Conover a_TS | SLOPE(B2:B6, A2:A6) | OLS = 18.20 \| separate-median intercept = 9 | OLS = 3.00 \| a_TS = 9 | - **Formula (Theil-Sen Robust Slope = MEDIAN of all C(N, 2) pairwise slopes)**: `=IF(COUNT(A2:B6)<>10,"Invalid inputs",IF(COUNT(D2:D11)=0,"Undefined slope",ROUND(MEDIAN(D2:D11), 2)))` - **Formula (Separate-median intercept)**: `=IF(COUNT(A2:B6)<>10,"Invalid inputs",IF(COUNT(D2:D11)=0,"Undefined slope",ROUND(MEDIAN(B2:B6) - MEDIAN(D2:D11) * MEDIAN(A2:A6), 2)))` ### Theil T & Theil L (Mean Log Deviation) Entropy Inequality Indices - **URL**: https://sheets.arte-soft.com/en/learn/theil-t-and-theil-l-mean-log-deviation-entropy-inequality-index/ - **Summary**: Quantify revenue, wage, or regional resource concentration using Theil’s GE(1) T index, GE(0) Mean Log Deviation L, and normalized [0, 1] Shannon inequality share. *Table — Why Theil’s entropy indices succeed where Gini cannot decompose additively:* | Inequality Metric | Formula | Values [20, 40, 60, 120] | Equal [60, 60, 60, 60] | | --- | --- | --- | --- | | Mean (mu) | AVERAGE(B2:B5) | 60.00 | 60.00 | | Theil T Index GE(1) | ROUND(AVERAGE(C2:C5), 4) | 0.1874 | 0.0000 | | Theil L Index GE(0) | ROUND(AVERAGE(D2:D5), 4) | 0.2027 | 0.0000 | | Normalized T / LN(N) | Theil_T / LN(N) | 0.1352 (13.52% of max) | 0.0000 | - **Formula (Row-Level Theil T & Theil L Entropy Terms)**: `=(B2 / $G$2) * LN(B2 / $G$2)` - **Formula (Normalized [0, 1] Upper-Bound Entropy Share)**: `=ROUND(G3 / LN(COUNT(B2:B5)), 4)` ### Theil T Index GE(1) & Theil L Mean Log Deviation GE(0) Income Inequality Formula - **URL**: https://sheets.arte-soft.com/en/learn/theil-t-and-theil-l-mean-log-deviation-inequality-indices/ - **Summary**: Calculate Henri Theil’s (1967) information-theoretic inequality measures — income-weighted Theil T = (1 / N) * SUM((y_i / mu) * LN(y_i / mu)) and population-weighted Mean Log Deviation Theil L = (1 / N) * SUM(LN(mu / y_i)). *Table — Why economists report BOTH Theil T (GE(1)) and Theil L / Mean Log Deviation (GE(0))!:* | Entropy Inequality Metric on Incomes [20, 30, 50, 100] (mu = 50) | Formula Structure | Evaluated Nats | | --- | --- | --- | | Theil T Index GE(1) (Top-Tail Sensitive) | (1/N) * SUM((y_i / mu) * LN(y_i / mu)) | 0.1783 | | Theil L Mean Log Deviation GE(0) (Bottom-Tail Sensitive) | (1/N) * SUM(LN(mu / y_i)) | 0.1835 | | Maximum Possible Theil T for N = 4 (One Person Holds All) | LN(4) | 1.3863 | - **Formula (Theil T Inequality Index GE(1) = (1 / N) * SUM((y_i / mu) * LN(y_i / mu)))**: `=IF(MIN(B2:B5) <= 0, "Requires Strictly Positive Incomes", ROUND(((B2 / AVERAGE(B2:B5)) * LN(B2 / AVERAGE(B2:B5)) + (B3 / AVERAGE(B2:B5)) * LN(B3 / AVERAGE(B2:B5)) + (B4 / AVERAGE(B2:B5)) * LN(B4 / AVERAGE(B2:B5)) + (B5 / AVERAGE(B2:B5)) * LN(B5 / AVERAGE(B2:B5))) / 4, 4))` - **Formula (Theil L Mean Log Deviation GE(0) = (1 / N) * SUM(LN(mu / y_i)))**: `=IF(MIN(B2:B5) <= 0, "Requires Strictly Positive Incomes", ROUND((LN(AVERAGE(B2:B5) / B2) + LN(AVERAGE(B2:B5) / B3) + LN(AVERAGE(B2:B5) / B4) + LN(AVERAGE(B2:B5) / B5)) / 4, 4))` ### Thermal Glass Tempering Quench Stress & ASTM C1048 Formula - **URL**: https://sheets.arte-soft.com/en/learn/thermal-glass-tempering-air-quench-surface-compressive-stress-and-fragmentation-formula/ - **Summary**: Calculate Half-Plate Air-Quench Biot Number Bi, Parabolic Surface Compressive Residual Stress (MPa), Mid-Plane Core Tensile Stress (MPa), and ASTM C1048 / EN 12150 Safety Glass Class. *Table — Why 3 mm thin glass needs MORE than 2x the air-jet blower pressure of 6 mm float glass to lock in 69 MPa ASTM C1048 safety temper!:* | ASTM C1048 Glass Tempering KPI (6 mm Soda-Lime Float, k=1.05 W/m·K, beta=0.82 MPa/K) | Formula | Verified Output | | --- | --- | --- | | Half-Plate Quench Biot Number Bi | (Quench_h * (Thickness_mm / 2000)) / Glass_k | 0.971 (0.457 weak quench @ h=160) | | Surface Compressive Stress (MPa) | (2 / 3) * Thermoelastic_beta * Frozen_dT_K | 84.73 MPa (44.83 MPa heat-strengthened) | | Mid-Plane Core Tension (MPa) | Surface_Compression_MPa / 2 (Parabolic 2:1) | 42.37 MPa (22.41 MPa core tension) | | ASTM C1048 Glazing Classification | Surface_Compression >= 69 MPa FT Safety Gate | ASTM C1048 FULLY TEMPERED | - **Formula (Gardon Thermoelastic Air-Quench Biot Number & Parabolic 2:1 Temper Stress Formula)**: `=LET(dm_m, B2, hq_w, B3, kg_w, B4, dt_k, B5, bt_m, B6, sc_m, (2 / 3) * bt_m * dt_k, IF(OR(dm_m < 2, dm_m > 25, hq_w < 20, hq_w > 1500, kg_w < 0.5, kg_w > 2.5, dt_k < 10, dt_k > 350, bt_m < 0.3, bt_m > 1.5), "Invalid Tempering Input", IF(sc_m >= 69, "ASTM C1048 FULLY TEMPERED", "BELOW 69 MPa TEMPER FLOOR")))` - **Formula (Low-Pressure Heat-Strengthening Quench (`h = 160` W/m²·K, `dT = 82` K) Non-Safety Check)**: `=IF(ISTEXT(E2), E2, ROUND((2 / 3) * B6 * B5, 2))` ### Sensible heat Q = mcΔT: convert kJ to kWh and estimate ideal heating time - **URL**: https://sheets.arte-soft.com/en/learn/thermal-heat-energy-q-mc-delta-t-and-btu-kw/ - **Summary**: Calculate thermal energy Q = m * Cp * (T_out - T_in) in kilojoules, convert to kWh (/ 3600), and solve heating recovery time at Heater kW. *Table — Bridge thermodynamics (kJ) to electrical engineering (kWh & kW) via 3,600!:* | Thermal / HVAC Step (150 kg Water, 15°C -> 55°C) | Formula | Result | | --- | --- | --- | | Sensible Heat Energy (kJ) | =150 * 4.184 * (55 - 15) | 25,104 kJ | | Electrical Energy Equivalent (kWh) | =25,104 / 3600 | 6.9733 kWh | | Recovery Time @ 4.5 kW Element | =6.9733 / 4.5 | 1.5496 hours (~93 min) | - **Formula (Thermal energy (kWh) and heater recovery-time formulas)**: `=ROUND((A2 * B2 * (D2 - C2)) / 3600, 4)` - **Formula (Heater recovery hours required at Power Rating E2 (kW))**: `=IF(OR(E2<=0,D2 1, ep_2 <= 0, ep_2 > 1, n_sh < 0, INT(n_sh) <> n_sh, ep_s <= 0, ep_s > 1), "Invalid Radiation Shield Input", LET(r_un, 1 / ep_1 + 1 / ep_2 - 1, r_tot, r_un + n_sh * (2 / ep_s - 1), ROUND(eb_d / r_tot, 2))))` - **Formula (Zero-Shield Uninsulated Baseline Check (Set Shield Count N = 0))**: `=IF(ISTEXT(E4), E4, ROUND(1 - (E4 / E3), 4))` ### Thermal Sterilization D-Value, z-Value & F0 Formula - **URL**: https://sheets.arte-soft.com/en/learn/thermal-sterilization-d-value-z-value-and-12d-botulinum-lethality-formula/ - **Summary**: Calculate Temperature-Shifted Decimal Reduction Time D_T = D_ref * 10^((T_ref - T) / z), Bigelow Equivalent Lethality F_0 = t_hold * 10^((T - T_ref) / z), Log-Spore Reduction, and FDA 12D Commercial Sterility. *Table — Verify FDA 12D low-acid canned food and USP autoclave lethality across retort temperatures!:* | Retort Lethality Metric (D_121.1=0.25 min, z=10°C, T=131.1°C for 0.45 min) | Formula | Verified Output | | --- | --- | --- | | Shifted Decimal Reduction D_T (min) | D_ref * 10^((T_ref - T_proc) / z_val) | 0.0250 min (1.5 sec/log) | | Equivalent Sterilization Value F_0 | t_hold * 10^((T_proc - T_ref) / z_val) | 4.50 min (@ 121.1°C eq) | | Delivered Spore Log-Reduction | F_0 / D_ref = t_hold / D_T | 18.00 log10 cycles | | 12D Commercial Sterility Gate | Log_Reduction >= 12 ? | Pass: >= 12D Commercial Sterility | - **Formula (Bigelow Equivalent Lethality F_0 & Spore Log-Reduction Formula)**: `=LET(d_rf, B2, t_rf, B3, z_vl, B4, t_pr, B5, t_hd, B6, IF(OR(d_rf <= 0, t_rf <= 0, z_vl <= 0, t_pr <= 0, t_hd < 0), "Invalid Retort Cycle", ROUND(t_hd * (10 ^ ((t_pr - t_rf) / z_vl)), 4)))` - **Formula (12D Commercial Sterility Validation Formula)**: `=IF(ISTEXT(E3), E3, IF(E4 >= 12, "Pass: >= 12D Commercial Sterility", "Fail: Sub-Lethal (< 12D)"))` ### Thermoelectric Figure of Merit (ZT) & Ioffe Maximum Generator Efficiency - **URL**: https://sheets.arte-soft.com/en/learn/thermoelectric-figure-of-merit-zt-and-maximum-carnot-efficiency/ - **Summary**: Calculate the dimensionless thermoelectric figure of merit ZT = (S^2 * sigma * T_avg) / kappa and Abram Ioffe’s maximum solid-state heat-to-electricity conversion efficiency eta_max (%) relative to Carnot. *Table — Balance Seebeck voltage, electrical conductivity, and phonon thermal leakage in ZT!:* | Thermoelectric Semiconductor (Th = 750 K, Tc = 450 K, S = 220 uV/K) | Thermal Cond. kappa (W/(m*K)) | Figure of Merit ZT | Max Generator Efficiency eta_max (%) | | --- | --- | --- | --- | | Nanostructured Phonon-Glass (SnSe/PbTe) | 1.80 W/(m*K) | 1.613 | 11.13% (27.8% of Carnot) | | Conventional Bulk Alloy | 5.20 W/(m*K) | 0.558 | 5.38% | | Invalid Temps (Th <= Tc or Tc <= 0) | Thermodynamic Guard | "Invalid TEG Inputs" | Requires Th > Tc > 0 and kappa > 0 | - **Formula (Dimensionless Thermoelectric Figure of Merit ZT at Mean Temperature T_avg)**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= B6, B6 <= 0), "Invalid TEG Inputs", ROUND((((B2 * 0.000001) ^ 2) * B3 * ((B5 + B6) / 2)) / B4, 3))` - **Formula (Ioffe Maximum Thermoelectric Conversion Efficiency eta_max (%))**: `=IF(OR(B3 <= 0, B4 <= 0, B5 <= B6, B6 <= 0), "Invalid TEG Inputs", ROUND(100 * ((B5 - B6) / B5) * ((SQRT(1 + ((((B2 * 0.000001) ^ 2) * B3 * ((B5 + B6) / 2)) / B4)) - 1) / (SQRT(1 + ((((B2 * 0.000001) ^ 2) * B3 * ((B5 + B6) / 2)) / B4)) + (B6 / B5))), 2))` ### Thermometer Goal Chart Formulas: Capped Fill Percentage, Remaining Gap & Stretch Surplus - **URL**: https://sheets.arte-soft.com/en/learn/thermometer-goal-progress-chart-cap-and-overachievement-formula/ - **Summary**: Prepare clean 0–100% fundraising and sales thermometer column charts using MIN(1, Raised / Goal) * 100, remaining gap MAX(0, Goal - Raised), and overachievement surplus MAX(0, Raised - Goal). *Table — Why raw Raised / Goal breaks fixed-scale 100% thermometer charts when campaigns exceed target!:* | Campaign Progress vs. $250,000 Goal | Capped Thermometer Fill % | Remaining Gap MAX(0, Goal-Actual) | Stretch Surplus MAX(0, Actual-Goal) | | --- | --- | --- | --- | | Actual = $184,000 (In Progress) | 73.60% | $66,000 Remaining | $0 | | Actual = $275,000 (Goal Exceeded!) | 100.00% (Capped cleanly) | $0 | $25,000 Overachievement | | Invalid Goal <= 0 | Division Guard | "Goal Must Exceed Zero" | Positive Target Check | - **Formula (Capped 0–100% Thermometer Mercury Fill Formula = ROUND(MIN(1, MAX(0, Actual / Goal)) * 100, 2))**: `=IF(OR(B2 < 0, B3 <= 0), "Goal Must Exceed Zero", ROUND(MIN(1, B2 / B3) * 100, 2))` - **Formula (Remaining Dollars Needed to Reach Goal = MAX(0, Goal - Actual))**: `=IF(OR(B2 < 0, B3 <= 0), "Goal Must Exceed Zero", MAX(0, B3 - B2))` ### Thermosonic Wire Bonding FAB & MIL-STD-883 Pull Formula - **URL**: https://sheets.arte-soft.com/en/learn/thermosonic-gold-wire-bonding-ball-diameter-loop-span-and-stitch-pull-force-formula/ - **Summary**: Calculate EFO Free-Air Ball Diameter (um), Bonded Mashed-Ball Diameter (um), Nominal Wire Breaking Force (gf), and Vector-Resolved Axial Wire Tension (gf). *Table — Pulling a flat low-loop bond wire upward with a 9.2 gf hook actually stresses the gold neck past 24 gf—snapping good bonds via trigonometric amplification!:* | MIL-STD-883 Method 2011 Wire-Bond KPI (d=25.4 um, UTS=240 MPa, Hook=9.20 gf) | Formula | Verified Output | | --- | --- | --- | | EFO Free-Air Ball DFAB (um) | 2.1 * Wire_Diameter_d_um | 53.3 um | | Bonded Mashed Ball Dmash (um) | 2.8 * Wire_Diameter_d_um | 71.1 um (fits >= 80 um bond-pad pitch) | | Intrinsic Wire Breaking Load (gf) | UTS_MPa * ((PI()/4)*(d/1000)^2)*(1000/9.80665) | 12.40 gf | | Resolved Axial Wire Tension (gf) | Hook_Pull_gf / (SIN(th1_rad) + SIN(th2_rad)) | 9.82 gf (24.11 gf > UTS @ flat 12°/10° loop!) | - **Formula (Wire-Bond Ball Geometry & MIL-STD-883 Trigonometric Hook-Pull Resolution Formula)**: `=LET(dw_u, B2, ut_m, B3, fh_g, B4, t1_r, B5 * (PI() / 180), t2_r, B6 * (PI() / 180), IF(OR(dw_u < 12, dw_u > 500, ut_m < 100, ut_m > 1200, fh_g <= 0.2, B5 < 5, B5 > 75, B6 < 5, B6 > 75), "Invalid Wire-Bond Input", ROUND(fh_g / (SIN(t1_r) + SIN(t2_r)), 2)))` - **Formula (Ultra-Low QFN Loop Profile (theta1 = 12°, theta2 = 10°) Trigonometric Neck-Snap Check)**: `=IF(ISTEXT(E5), E5, ROUND((B3 * (PI() / 4) * ((B2 / 1000) ^ 2)) * (1000 / 9.80665), 2))` ### Thiele Modulus (phi) & Catalyst Pore Diffusion Effectiveness Factor (eta) - **URL**: https://sheets.arte-soft.com/en/learn/thiele-modulus-and-internal-catalyst-effectiveness-factor/ - **Summary**: Calculate the isothermal first-order catalyst Thiele modulus phi = L * SQRT(k / D_eff) and internal pore-diffusion effectiveness factor eta = tanh(phi) / phi (%) using exact exponential hyperbolic tangent. *Table — Stop wasting precious platinum inside diffusion-starved catalyst pellets!:* | Catalyst Characteristic Thickness L (k = 2.5 s^-1, Deff = 10^-6 m^2/s) | Thiele Modulus phi | Effectiveness Factor eta (%) | Mass-Transfer Regime | | --- | --- | --- | --- | | Thick Pellet / Washcoat (L = 2.0 mm) | 3.162 (> 3) | 31.51% (~1 / phi) | Strong Internal Pore Diffusion Limit! | | Thin Monolith Washcoat (L = 0.5 mm) | 0.791 (< 1) | 83.32% | Near-kinetic utilization | | Invalid Diffusivity D_eff <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid Catalyst Inputs" | - **Formula (Dimensionless First-Order Catalyst Thiele Modulus phi = L * SQRT(k / D_eff))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Catalyst Inputs", ROUND(B2 * SQRT(B3 / B4), 3))` - **Formula (Internal Catalyst Effectiveness Factor eta (%) = 100 * tanh(phi) / phi)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Catalyst Inputs", ROUND(100 * (((EXP(2 * B2 * SQRT(B3 / B4)) - 1) / (EXP(2 * B2 * SQRT(B3 / B4)) + 1)) / (B2 * SQRT(B3 / B4))), 2))` ### Thiem Equilibrium Aquifer Pumping Test: Transmissivity (T) & K - **URL**: https://sheets.arte-soft.com/en/learn/thiem-steady-confined-and-unconfined-aquifer-pumping-well/ - **Summary**: Estimate confined transmissivity and conductivity from two steady observation-well drawdowns, then compare a separate unconfined calculation using saturated heights above the aquifer base. - **Formula (Confined transmissivity and conductivity)**: `=IF(B9<>"OK",B9,IF(B10<>"OK",B10,B2*LN(B4/B3)/(2*PI()*(B5-B6))))` - **Formula (Separate unconfined calculation)**: `=IF(B9<>"OK",B9,IF(E5<>"OK",E5,B2*LN(B4/B3)/(PI()*(E3-E2)*(E3+E2))))` ### Thiessen and Isohyetal Area-Weighted Rainfall in Excel - **URL**: https://sheets.arte-soft.com/en/learn/thiessen-polygon-and-isohyetal-area-weighted-watershed-rainfall/ - **Summary**: Estimate basin rainfall and rainfall volume using polygon areas or isohyetal bands, with working spreadsheet examples and input checks. - **Formula (Calculate weighted depth and rainfall volume)**: `=IF(E3="OK",SUMPRODUCT(B2:B5,C2:C5)/SUM(B2:B5),E3)` *Table — Calculate weighted depth and rainfall volume:* | Output cell | Meaning | Initial result | | --- | --- | --- | | E3 | Input check | OK | | E4 | Weighted depth | 52.912 mm | | E5 | Rainfall volume | 6,614,000 m3 | | E6 | Arithmetic minus weighted depth | 20.838 mm | - **Formula (A separate isohyetal-band example)**: `=IF(E8="OK",SUMPRODUCT(H2:H4,K2:K4)/SUM(H2:H4),E8)` ### Thin-Lens Equation (1/f = 1/do + 1/di), Magnification & Diopter formulas - **URL**: https://sheets.arte-soft.com/en/learn/thin-lens-equation-focal-length-and-magnification-optics/ - **Summary**: Solve image distance di = (f * do) / (do - f), transverse magnification M = -di / do, optical power (Diopters), and Real vs Virtual image type. *Table — Machine-vision & optical bench calculations: Real inverted vs Virtual upright images:* | Lens Setup (f = +50 mm = +20 Diopters) | Image Distance di (mm) | Magnification M = -di/do | Image Classification | | --- | --- | --- | --- | | Object do = 150 mm (> 2f) | +75.00 mm | -0.50× (Reduced, Inverted) | Real Image (di > 0) | | Object do = 100 mm (= 2f, 1:1 macro) | +100.00 mm | -1.00× (1:1 Life-Size) | Real Image | | Object do = 30 mm (< f, loupe) | -75.00 mm | +2.50× (Magnified, Upright!) | Virtual Image (di < 0) | - **Formula (Image Distance di (mm) and Transverse Magnification M formulas)**: `=IF(OR(COUNT(A2:B2)<>2,A2=0,B2<=0),"Invalid inputs",IF(B2=A2,"Infinity",ROUND(A2*B2/(B2-A2),2)))` - **Formula (Transverse Linear Magnification M = -di / do)**: `=IF(OR(COUNT(A2:B2)<>2,A2=0,B2<=0),"Invalid inputs",IF(B2=A2,"No finite image",ROUND(-A2/(B2-A2),4)))` ### Thin-Walled Pressure Vessel Stress formulas: Hoop (Pr/t) vs Axial (Pr/2t) - **URL**: https://sheets.arte-soft.com/en/learn/thin-walled-pressure-vessel-hoop-and-longitudinal-stress/ - **Summary**: Calculate pressure-only membrane stresses in an ideal thin-walled closed cylinder and distinguish a yield-to-hoop ratio from a design safety assessment. *Table — State the closed-cylinder membrane assumptions:* | Vessel Design Parameter | Cell / Formula | Cylindrical Tank Input | Stress / Safety Output | | --- | --- | --- | --- | | Internal Pressure P & Radius r | B2 = 2.4 MPa, B3 = 0.50 m | Wall thickness B4 t = 0.012 m | r / t = 41.67 (passes screening threshold) | | Circumferential Hoop Stress | (B2 * B3) / B4 | (2.4 * 0.50) / 0.012 | 100.00 MPa (hoop component) | | Longitudinal Axial Stress | (B2 * B3) / (2 * B4) | (2.4 * 0.50) / 0.024 | 50.00 MPa (Half of hoop) | | Yield Strength S_y & FoS | B5 = 250 MPa -> B5 / sigma_h | 250 / 100 (or 1.25 at 4.8 MPa) | Yield/hoop ratio = 2.50 | - **Formula (Pressure-only hoop membrane stress in MPa)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0),"Invalid inputs",IF(B3/B4<10,"Outside thin-wall model",ROUND((B2*B3)/B4,2))))` - **Formula (Yield-strength-to-hoop-stress ratio)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0),"Invalid inputs",IF(B3/B4<10,"Outside thin-wall model",IF(B2=0,"Undefined (zero pressure)",ROUND(B5 / ((B2 * B3) / B4), 2)))))` - **Formula (Axial membrane stress for closed ends)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0),"Invalid inputs",IF(B3/B4<10,"Outside thin-wall model",ROUND((B2 * B3) / (2 * B4), 2))))` ### Thirlwall Balance-of-Payments Growth Law Formula - **URL**: https://sheets.arte-soft.com/en/learn/thirlwall-balance-of-payments-constrained-gdp-growth-elasticity-formula/ - **Summary**: Calculate Structural Export Growth epsilon_x * z_world, Thirlwall’s Balance-of-Payments Constrained GDP Growth Rate y_B = (epsilon_x * z_world) / pi_m, Import-Export Drift Gap, and External Sustainability. *Table — Test whether domestic GDP targets breach Thirlwall’s foreign-trade elasticity ceiling!:* | Thirlwall Growth Law Metric (z_world=3.0%, eps_x=1.60, pi_m=1.20, Target y_T=5.5%) | Formula | Verified Output | | --- | --- | --- | | Structural Export Growth x | epsilon_x * z_world | 0.0480 (4.80% / yr) | | Thirlwall BoP Growth Ceiling y_B | (epsilon_x * z_world) / pi_m | 0.0400 (4.00% / yr; 6.00% @ eps_x=2.4) | | Net Import-Export Growth Drift | pi_m * y_T - epsilon_x * z_world | +0.0180 (+1.80% Deficit Drift) | | External Sustainability Regime | Compare y_T vs Thirlwall y_B | BoP Deficit Constraint Binding (y_T > y_B) | - **Formula (Thirlwall Balance-of-Payments Constrained Growth Formula)**: `=LET(z_wd, B2, ep_x, B3, pi_m, B4, y_tg, B5, IF(OR(z_wd <= 0, ep_x <= 0, pi_m <= 0), "Invalid Trade Elasticity", ROUND((ep_x * z_wd) / pi_m, 4)))` - **Formula (High-Value-Added Export Upgrading Test (epsilon_x = 2.40))**: `=IF(ISTEXT(E3), E3, IF(B5 > E3, "BoP Deficit Constraint Binding (y_T > y_B)", "External Surplus Headroom (y_T <= y_B)"))` ### Body Roundness Index (BRI) Calculator: Thomas Waist-Height Ellipse Eccentricity Formula - **URL**: https://sheets.arte-soft.com/en/learn/thomas-body-roundness-index-bri-waist-height-eccentricity/ - **Summary**: Compute Diana M. Thomas et al.’s (2013) geometric Body Roundness Index BRI = 364.2 - 365.5 * SQRT(1 - ((WC / (2 * PI()))^2) / ((0.5 * Height)^2)) and sagittal ellipse eccentricity e from Waist and Height. *Table — Model torso geometry as a prolate ellipse to quantify visceral adiposity and U-shaped mortality risk!:* | Anthropometric Profile (Height = 175 cm) | Torso Eccentricity e | Body Roundness Index (BRI) | Geometric / Clinical Tier | | --- | --- | --- | --- | | Slender Adult (Waist = 76 cm) | 0.9904 | 2.21 | Lean Reference Silhouette | | Moderate Central Gain (Waist = 92 cm) | 0.9859 | 3.85 | Mid-Range Silhouette | | Severe Central Obesity (Waist = 108 cm) | 0.9805 | 5.82 | Elevated Central Adiposity | - **Formula (Thomas (2013) Body Roundness Index (BRI))**: `=IF(OR(B2 < 100, B2 > 240, B3 < 40, B3 >= B2 * PI()), "Invalid Height or Waist Circumference", ROUND(364.2 - 365.5 * SQRT(1 - (((B3 / (2 * PI())) ^ 2) / ((0.5 * B2) ^ 2))), 2))` - **Formula (Torso Sagittal Ellipse Eccentricity e (0 < e < 1))**: `=IF(OR(B2 < 100, B2 > 240, B3 < 40, B3 >= B2 * PI()), "Invalid Height or Waist Circumference", ROUND(SQRT(1 - (((B3 / (2 * PI())) ^ 2) / ((0.5 * B2) ^ 2))), 4))` ### Thomson Electron Scattering Optical Depth (tau_es) & Photon Mean Free Path - **URL**: https://sheets.arte-soft.com/en/learn/thomson-electron-scattering-cross-section-and-optical-depth/ - **Summary**: Calculate electron-scattering optical depth tau_es = n_e * sigma_T * L and photon mean free path l_mfp = 1 / (n_e * sigma_T) using the exact classical Thomson cross section sigma_T = 6.6524587e-29 m^2. *Table — Why photons take thousands of years to escape the Sun's core—and why the CMB polarized!:* | Ionized Plasma Column (L = 5.0e8 m) | Electron Density n_e (m^-3) | Thomson Optical Depth tau_es | Photon Mean Free Path (km) | | --- | --- | --- | --- | | Optically Thick Envelope | 1.0e20 m^-3 | 3.3262 (tau > 1: Diffusive!) | 150,320.4 km | | Optically Thin Corona | 1.0e19 m^-3 | 0.3326 (tau < 1: Transparent) | 1,503,203.6 km | | Invalid Density n_e <= 0 | Division by Zero Guard | Guarded Input Error | "Invalid Plasma Column" | - **Formula (Thomson Electron-Scattering Optical Depth tau_es = n_e * sigma_T * L)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Plasma Column", ROUND(B2 * 6.6524587e-29 * B3, 4))` - **Formula (Thomson Photon Mean Free Path l_mfp = 1 / (n_e * sigma_T) in Kilometers)**: `=IF(B2 <= 0, "Invalid Plasma Column", ROUND((1 / (B2 * 6.6524587e-29)) / 1000, 1))` ### Hargreaves-Samani Reference Evapotranspiration and Crop ET in Excel - **URL**: https://sheets.arte-soft.com/en/learn/thornthwaite-and-hargreaves-potential-evapotranspiration-pet/ - **Summary**: Estimate reference ET0 from daily temperatures and extraterrestrial radiation, apply a crop coefficient, and distinguish crop evapotranspiration from irrigation water to apply. - **Formula (Use the raw ET0 output before applying Kc)**: `=IF(E2="OK",0.0023*E4*(E3+17.8)*SQRT(B3-B4),E2)` - **Formula (Crop ET is not the irrigation depth to apply)**: `=IF(E2<>"OK",E2,IF(OR(COUNT(B5)<>1,N(B5)<0),"Invalid Kc",B5*E5))` ### Three-phase AC power (kW, kVA, kVAR) & Power Factor capacitor sizing - **URL**: https://sheets.arte-soft.com/en/learn/three-phase-ac-power-kw-kva-and-power-factor-correction/ - **Summary**: Calculate balanced 3-phase Apparent Power (kVA), Real Power (kW = SQRT(3)*V*I*PF/1000), and capacitor bank kVAR required to raise lagging Power Factor. *Table — Never forget SQRT(3) in 3-phase power—and size PF correction capacitors in kVAR!:* | 3-Phase Feeder Metric (480 V_LL, 100 A, PF = 0.80 -> 0.95) | Formula | Result | | --- | --- | --- | | Apparent Power (S in kVA) | SQRT(3) * 480 * 100 / 1000 | 83.14 kVA | | Real Working Power (P in kW) | SQRT(3) * 480 * 100 * 0.80 / 1000 | 66.51 kW | | Capacitor Bank to Reach 0.95 PF | kW * (TAN(ACOS(0.80)) - TAN(ACOS(0.95))) | 28.02 kVAR | - **Formula (Balanced 3-phase Real Power (kW))**: `=IF(OR(COUNT(A2:C2)<>3,A2<=0,B2<0,C2<=0,C2>1),"Invalid inputs",ROUND(SQRT(3) * A2 * B2 * C2 / 1000, 2))` - **Formula (Capacitor bank kVAR needed to correct Power Factor from PF1 to PF2)**: `=IF(OR(COUNT(A2:D2)<>4,A2<=0,B2<0,C2<=0,C2>1,D21),"Invalid inputs",LET(kw, SQRT(3) * A2 * B2 * C2 / 1000, ROUND(kw * (TAN(ACOS(C2)) - TAN(ACOS(D2))), 2)))` ### Three-Point Beta-PERT Expected Duration, Critical-Path Variance & P95 Buffer - **URL**: https://sheets.arte-soft.com/en/learn/three-point-beta-pert-expected-duration-variance-and-risk-buffer/ - **Summary**: Estimate asymmetric task durations with Beta-PERT weighted mean (O + 4M + P)/6 and variance ((P - O)/6)^2, then aggregate critical-path standard deviation via root-sum-of-squares. *Table — Why PERT weights Most Likely 4x and adds task variances rather than standard deviations:* | Critical-Path Task | (O, M, P) Days | PERT Mean (O+4M+P)/6 | Task Variance ((P-O)/6)^2 | | --- | --- | --- | --- | | Schema Migration | (3, 6, 21) | 8.00 days | 9.00 (SD = 3) | | API Cutover | (2, 8, 26) | 10.00 days | 16.00 (SD = 4) | | Smoke Freeze | (4, 4, 4) | 4.00 days | 0.00 (SD = 0) | | Critical Path Rollup | Total = 22.00 days | Path Var = 25 -> Path SD = 5.00 | P95 = 22 + 1.645*5 = 30.23 days | - **Formula (Task PERT Expected Mean & Variance Formulas)**: `=(B2 + 4 * C2 + D2) / 6` - **Formula (Root-Sum-of-Squares Path SD & 95th Percentile Completion Date Buffer)**: `=ROUND(SUM(E2:E4) + 1.645 * SQRT(SUM(F2:F4)), 2)` ### THRIVE Score Formula: Endovascular Stroke Thrombectomy 90-Day Outcome (0 to 9) - **URL**: https://sheets.arte-soft.com/en/learn/thrive-score-chronic-stroke-endovascular-thrombectomy-outcome/ - **Summary**: Predict 90-day functional independence (mRS 0–2) and mortality in large-vessel occlusion ischemic stroke using Alexander Flint’s 0–9 THRIVE score (NIHSS + Age + Chronic Disease Scale: HTN, DM, AF). *Table — Why adding the 3-comorbidity Chronic Disease Scale (HTN + DM + AF) sharpens thrombectomy prognosis!:* | THRIVE Total Score (0–9) | 90-Day mRS 0–2 Independence Profile | Clinical Prognostic Stratification | | --- | --- | --- | | THRIVE 0–2 (Good Prognosis) | ~65%–80% Functional Independence | Low Baseline Neurovascular Burden | | THRIVE 3–5 (Moderate Prognosis) | ~35%–50% Functional Independence | Intermediate Baseline Severity / Age | | THRIVE 6–9 (Guarded Prognosis, e.g., 7) | High 90-Day Dependency / Mortality Risk | Severe NIHSS + Comorbidity Burden | - **Formula (Total Flint THRIVE Endovascular Stroke Score (0 to 9 Points))**: `=IF(OR(MIN(B2:B6) < 0, NOT(OR(B2 = 0, B2 = 2, B2 = 4)), B3 > 2, MAX(B4:B6) > 1), "Invalid THRIVE Input", SUM(B2:B6))` - **Formula (THRIVE 90-Day Stroke Outcome Tier (0–2, 3–5, 6–9))**: `=IF(OR(MIN(B2:B6) < 0, NOT(OR(B2 = 0, B2 = 2, B2 = 4)), B3 > 2, MAX(B4:B6) > 1), "Invalid THRIVE Input", IF(SUM(B2:B6) >= 6, "Guarded Prognosis (THRIVE 6–9 — High 90-Day Dependency Risk)", IF(SUM(B2:B6) >= 3, "Moderate Prognosis (THRIVE 3–5)", "Good Prognosis (THRIVE 0–2 — High mRS 0–2 Likelihood)")))` ### Centerless Grinding Through-Feed & Workrest Angle Formula - **URL**: https://sheets.arte-soft.com/en/learn/through-feed-centerless-grinding-regulating-wheel-helix-feed-and-workrest-height/ - **Summary**: Calculate Regulating-Wheel Surface Speed (m/min), Axial Through-Feed Rate (mm/min and m/min), and Above-Center Tangency Rounding Angle Beta (deg). *Table — Setting a centerless grinder workrest blade right on wheel centerline (beta = 0.29°) copies every incoming bump into a constant-width Reuleaux 3-lobe triangle!:* | Centerless Grinding Kinematics KPI (Dr=300 mm @ 32 RPM, Dg=500 mm, dw=24 mm) | Formula | Verified Output | | --- | --- | --- | | Regulating Surface Speed (m/min) | (PI() * Dr_mm * Nr_RPM) / 1000 | 30.16 m/min | | Axial Through-Feed Rate (mm/min) | PI() * Dr_mm * Nr_RPM * SIN(alpha_rad) | 1,841.2 mm/min (3,152.5 @ 6° tilt) | | Axial Through-Feed Rate (m/min) | Through_Feed_mm_min / 1000 | 1.841 m/min (3.153 m/min) | | Tangency Rounding Angle Beta (deg) | DEGREES(ASIN(2*hw/(Dg+dw)) + ASIN(2*hw/(Dr+dw))) | 6.30° IDEAL (0.29° 3-LOBE POLYGON!) | - **Formula (Centerless Regulating-Wheel Helix Feed & Dall/Rowe Rounding-Angle Formula)**: `=LET(dr_m, B2, nr_p, B3, al_d, B4, dg_m, B5, dw_m, B6, hw_m, B7, IF(OR(dr_m < 100, dr_m > 600, nr_p < 5, nr_p > 300, al_d < 0.5, al_d > 10, dg_m < 200, dg_m > 800, dw_m < 1, dw_m > 200, hw_m < 0, hw_m > 0.25 * (dr_m + dw_m)), "Invalid Centerless Input", ROUND(((ASIN(hw_m / ((dg_m + dw_m) / 2)) + ASIN(hw_m / ((dr_m + dw_m) / 2))) * 180) / PI(), 2)))` - **Formula (Dropped Workrest Blade (`h_w = 0.5` mm) + Steep `6°` Feed 3-Lobe Out-of-Roundness Check)**: `=IF(ISTEXT(E5), E5, ROUND(PI() * B2 * B3 * SIN((B4 * PI()) / 180), 1))` ### Thurstone Case V Law of Comparative Judgment Formula: Probit Scale Separation - **URL**: https://sheets.arte-soft.com/en/learn/thurstone-case-v-paired-comparison-normal-scale-difference/ - **Summary**: Convert empirical paired-comparison win proportions p_AB into Thurstone Case V psychological/sensory scale distances S_A - S_B = SQRT(2) * z(p_AB) using high-precision rational inverse-normal conversion. *Table — How L. L. Thurstone (1927) turned subjective A-vs-B preferences into a metric interval scale!:* | Observed Preference Proportion p_AB = Wins_A / N | Standard Normal Deviate z_AB = Phi^-1(p_AB) | Thurstone Case V Scale Separation S_A - S_B = SQRT(2)*z | | --- | --- | --- | | p_AB = 0.5000 (50 / 100 Exact Indifference) | 0.0000 | 0.0000 (Identical Perceived Intensity) | | p_AB = 0.7500 (75 / 100 — 1 JND Threshold) | +0.6745 | +0.9539 sigma units | | p_AB = 0.8413 (84.13% Preference) | +1.0000 | +1.4142 sigma units | - **Formula (Standard Normal Probit Deviate z_AB = Phi^-1(p_AB) (Winitzki Closed-Form Inverse Error Function))**: `=IF(OR(B3 <= 0, B2 <= 0, B2 >= B3), "Requires 0 < Wins < Trials (Apply 0.5 Continuity Correction if Unbeaten)", ROUND(SIGN(2 * (B2 / B3) - 1) * SQRT(2) * SQRT(SQRT((2 / (PI() * 0.147) + LN(1 - (2 * (B2 / B3) - 1) ^ 2) / 2) ^ 2 - LN(1 - (2 * (B2 / B3) - 1) ^ 2) / 0.147) - (2 / (PI() * 0.147) + LN(1 - (2 * (B2 / B3) - 1) ^ 2) / 2)), 4))` - **Formula (Thurstone Case V Scale Separation S_A - S_B = SQRT(2) * z_AB)**: `=IF(OR(B3 <= 0, B2 <= 0, B2 >= B3), "Requires 0 < Wins < Trials (Apply 0.5 Continuity Correction if Unbeaten)", ROUND(2 * SIGN(2 * (B2 / B3) - 1) * SQRT(SQRT((2 / (PI() * 0.147) + LN(1 - (2 * (B2 / B3) - 1) ^ 2) / 2) ^ 2 - LN(1 - (2 * (B2 / B3) - 1) ^ 2) / 0.147) - (2 / (PI() * 0.147) + LN(1 - (2 * (B2 / B3) - 1) ^ 2) / 2)), 4))` ### Tiebout Capitalization & Median Voter Spending Formula - **URL**: https://sheets.arte-soft.com/en/learn/tiebout-sorting-and-median-voter-local-public-spending-formula/ - **Summary**: Calculate majority-rule local public spending via the Bowen-Black Median Voter Theorem, derive equilibrium municipal millage rates, and value Tiebout-Oates house-price capitalization. *Table — Why majority-rule referendums select MEDIAN (not average!) spending — and capitalize fiscal surplus into home prices!:* | Local Public-Finance Metric | Formula | Verified Output | | --- | --- | --- | | Majority-Rule Cohort Spending (G_med) | MEDIAN(C2:C6) | 8,000.00 (vs Mean 11,000.00!) | | Equilibrium Municipal Millage Rate | (ROWS(C2:C6) * MEDIAN(C2:C6)) / SUM(B2:B6) | 0.0267 (2.67% of Assessed Base) | | Mean-vs-Median Skew Bias | AVERAGE(C2:C6) - MEDIAN(C2:C6) | +3,000.00 Over-Prediction | | Tiebout-Oates House Capitalization | (Delta_B - Delta_Bill) / r | +30,000.00 Home-Value Premium | - **Formula (Equilibrium Majority-Rule Municipal Millage Rate Formula)**: `=LET(tot_base, SUM(B2:B6), g_med, MEDIAN(C2:C6), n_coh, ROWS(C2:C6), IF(OR(tot_base <= 0, g_med < 0), "Invalid Municipal Roll", ROUND((n_coh * g_med) / tot_base, 4)))` - **Formula (Tiebout-Oates Fiscal-Surplus Property Capitalization Formula)**: `=LET(db_ben, F2, dt_bil, F3, r_cap, F4, IF(r_cap <= 0, "Require Discount Rate r > 0", ROUND((db_ben - dt_bil) / r_cap, 2)))` ### Tiered volume discounts: all-units XLOOKUP vs marginal block pricing - **URL**: https://sheets.arte-soft.com/en/learn/tiered-volume-discount-unit-vs-slab-pricing/ - **Summary**: Calculate wholesale order totals under both all-units volume discounts (XLOOKUP match_mode -1) and progressive marginal slab tiers (SUMPRODUCT). *Table — All-units volume discount vs marginal block/slab pricing:* | MinQty (A) | UnitPrice (B) | SlabDiff (C) | 150 Units All-Units | 150 Units Marginal Slab | | --- | --- | --- | --- | --- | | 0 | 10 | 10 | — | 150 * 10 = 1,500 | | 100 | 8 | -2 | 150 * 8 = 1,200 | 50 * (-2) = -100 (Net 1,400) | | 500 | 6 | -2 | — | 0 * (-2) = 0 | - **Formula (All-units XLOOKUP and marginal SUMPRODUCT formulas)**: `=D2 * XLOOKUP(D2, A2:A4, B2:B4, B2, -1)` - **Formula (Marginal slab / block pricing total)**: `=SUMPRODUCT(--(D2 > A2:A4), D2 - A2:A4, C2:C4)` ### TIME function: build valid clock times from hour, minute, and second columns - **URL**: https://sheets.arte-soft.com/en/learn/time-function-hours-minutes-seconds/ - **Summary**: Assemble numeric hour, minute, and second fields into spreadsheet time fractions with TIME, including automatic 60-minute rollover. *Table — How spreadsheet time fractions work:* | Hour (A) | Minute (B) | Second (C) | Decimal Hours (*24) | | --- | --- | --- | --- | | 14 | 30 | 0 | 14.5 | | 9 | 90 | 0 | 10.5 (rolls to 10:30) | - **Formula (Convert TIME output to decimal hours and roll minutes)**: `=ROUND(TIME(A2, B2, C2) * 24, 2)` - **Formula (24-hour wrap and negative-unit guard)**: `=IF(MIN(A2:C2)<0, "Invalid negative unit", ROUND(TIME(A2, B2, C2) * 24, 2))` ### Time Duration With Days, Hours & Minutes (Multi-Day SLA & Outage Timestamps) - **URL**: https://sheets.arte-soft.com/en/learn/time-duration-in-days-hours-minutes-from-timestamps/ - **Summary**: Calculate multi-day elapsed duration between start and end timestamps as "Xd Yh Zm" and total decimal hours using INT(end - start), HOUR(end - start), and MINUTE(end - start) without 24-hour rollover bugs. *Table — Never let a 77-hour server outage display as "05:45" because of 24-hour clock wrap!:* | Incident Start (B2) | Incident Resolved (B3) | Formatted "Xd Yh Zm" | Total Decimal Hours | | --- | --- | --- | --- | | 2026-05-01 08:30 | 2026-05-04 14:15 | 3d 5h 45m | 77.75 hours | | 2026-05-01 08:30 | 2026-05-01 11:05 | 0d 2h 35m | 2.58 hours | | 2026-05-04 14:15 | 2026-05-01 08:30 (Reversed!) | "End Before Start" | Guarded Timestamp Error | - **Formula (Multi-Day Elapsed Duration String ("Xd Yh Zm"))**: `=IF(B3 < B2, "End Before Start", INT(B3 - B2) & "d " & HOUR(B3 - B2) & "h " & MINUTE(B3 - B2) & "m")` - **Formula (Total Unwrapped Elapsed Decimal Hours)**: `=IF(B3 < B2, "End Before Start", ROUND((B3 - B2) * 24, 2))` ### Classify elapsed calendar days into 0–30, 31–60, 61–90 and 91+ buckets - **URL**: https://sheets.arte-soft.com/en/learn/time-since-start-date-in-day-range-buckets/ - **Summary**: Calculate elapsed days between an onboarding, ticket, or trial start date and a report cutoff date, then map into clean tenure bands via table-driven XLOOKUP. *Table — Replace brittle 5-level nested IFs with a maintainable day-bucket lookup table!:* | Start Date (A) | Cutoff (2026-06-01) | Elapsed Days | Assigned Cohort Band | | --- | --- | --- | --- | | 2026-05-20 | 2026-06-01 | 12 days | "0-30 Days" (Cutoff >= 0) | | 2026-04-15 | 2026-06-01 | 47 days | "31-60 Days" (Cutoff >= 31) | | 2026-03-10 | 2026-06-01 | 83 days | "61-90 Days" (Cutoff >= 61) | | 2026-01-15 | 2026-06-01 | 137 days | "90+ Days" (Cutoff >= 91) | - **Formula (Assign elapsed day-range bucket from Start Date A2 and Cutoff E2)**: `=IF(OR(COUNT(A2,$E$2)<>2,COUNT(G2:G5)<>4),"Invalid inputs",IF(OR(A2<0,$E$2<0,A2<>INT(A2),$E$2<>INT($E$2),G2<>0,G3<>31,G4<>61,G5<>91,COUNTBLANK(H2:H5)>0),"Invalid inputs",IF(A2 > $E$2, "Future Date", XLOOKUP($E$2 - A2, $G$2:$G$5, $H$2:$H$5, "Invalid", -1))))` - **Formula (Exact elapsed calendar days since start)**: `=IF(COUNT(A3,$E$2)<>2,"Invalid inputs",IF(OR(A3<0,$E$2<0,A3<>INT(A3),$E$2<>INT($E$2)),"Invalid inputs",$E$2 - A3))` ### Timeline Chart Formula: 4-Tier Alternating Callout Stem Heights Without Label Overlap - **URL**: https://sheets.arte-soft.com/en/learn/timeline-milestone-staggered-callout-stem-height-formula/ - **Summary**: Stage collision-free horizontal Milestone Timeline Charts by cycling vertical error-bar/scatter stem heights across four alternating tiers (+H, -H, +0.5H, -0.5H) using MOD(Index - 1, 4). *Table — Prevent overlapping milestone date labels on horizontal project timelines!:* | Milestone Sequence k | MOD(k - 1, 4) | Assigned Stem Height (Base H = 20) | Callout Placement | | --- | --- | --- | --- | | Milestone 1, 5, 9... | 0 | +20 | Outer Upper Tier | | Milestone 2, 6, 10... | 1 | -20 | Outer Lower Tier | | Milestone 3, 7, 11... | 2 | +10 | Inner Upper Tier | | Milestone 4, 8, 12... | 3 | -10 | Inner Lower Tier | - **Formula (4-Tier Staggered Milestone Stem Height Formula)**: `=IF(OR(B2 < 1, MOD(B2, 1) <> 0, B3 <= 0), "Milestone Index Must Be Integer >= 1 and H > 0", IF(MOD(B2 - 1, 4) = 0, B3, IF(MOD(B2 - 1, 4) = 1, -B3, IF(MOD(B2 - 1, 4) = 2, ROUND(0.5 * B3, 2), ROUND(-0.5 * B3, 2)))))` - **Formula (Calendar Days Elapsed Since Project Kickoff Date)**: `=B5 - B4` ### Timesheet formula with breaks: calculate net hours including overnight shifts - **URL**: https://sheets.arte-soft.com/en/learn/timesheet-formula-with-breaks/ - **Summary**: Use MOD(End - Start, 1) * 24 - (BreakMinutes / 60) so day shifts and midnight-crossing night shifts both calculate accurately. *Table — Why naive (End - Start) * 24 breaks on night shifts:* | Shift (A) | Start (B) | End (C) | BreakMin (D) | Net Hours | | --- | --- | --- | --- | --- | | Day Shift | 08:30 | 17:00 | 30 | 8.00 | | Night Shift | 22:00 | 06:30 | 30 | 8.00 | - **Formula (Midnight-safe net payroll hours formula)**: `=ROUND(MOD(C2 - B2, 1) * 24 - (D2 / 60), 2)` - **Formula (Guard excessive break entries)**: `=MAX(0, ROUND(MOD(C3 - B3, 1) * 24 - (D3 / 60), 2))` ### Timesheet overtime formula: split regular, 1.5x overtime, and 2x double-time - **URL**: https://sheets.arte-soft.com/en/learn/timesheet-overtime-regular-and-double-time/ - **Summary**: Cap regular hours at 40, isolate 1.5x overtime hours in a middle band, and calculate 2.0x double-time and gross pay with MIN and MAX. *Table — Decompose total weekly hours into three non-overlapping pay bands:* | WorkedHrs (A) | Regular (<=40) | 1.5x OT (40–50) | 2.0x DT (>50) | Gross @ $30/hr | | --- | --- | --- | --- | --- | | 52 | 40 | 10 | 2 | (40 + 15 + 4) * 30 = 1,770 | | 44 | 40 | 4 | 0 | (40 + 6 + 0) * 30 = 1,380 | | 38 | 38 | 0 | 0 | (38 + 0 + 0) * 30 = 1,140 | - **Formula (Overtime band and total gross pay formulas)**: `=(MIN(A2, B2) + MAX(0, MIN(A2, C2) - B2) * 1.5 + MAX(0, A2 - C2) * 2) * D2` - **Formula (Isolate 1.5x overtime hours only)**: `=MAX(0, MIN(A2, C2) - B2)` ### TIMI UA/NSTEMI spreadsheet exercise with seven validated flags - **URL**: https://sheets.arte-soft.com/en/learn/timi-risk-score-ua-nstemi-acute-coronary-syndrome/ - **Summary**: Calculate the seven-item UA/NSTEMI TIMI total from fictional pre-assessed inputs and display completion only when every flag is valid. - **Formula (Validate each binary input before summing)**: `=IF(COUNT(B2:B8)<>7,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1)),"Invalid inputs",SUM(B2:B8)))` - **Formula (Show a completed result only for complete valid inputs)**: `=IF(COUNT(B2:B8)<>7,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1)),"Invalid inputs","Complete: 7 valid flags; score "&SUM(B2:B8)))` ### Timoshenko Deep-Beam Deflection Formula: Bending Plus Transverse Shear - **URL**: https://sheets.arte-soft.com/en/learn/timoshenko-shear-deformable-beam-deflection-and-cowper-shear-factor/ - **Summary**: Add transverse shear deformation F*L / (4*kappa*G*A) to Euler-Bernoulli bending F*L^3 / (48*E*I) for short deep beams and sandwich cores in Excel and Arte Sheets. *Table — Predict the exact 20% shear deflection missed by Euler-Bernoulli on a deep beam:* | Deflection Component (L/h = 4) | Formula (in mm) | Exact Output | | --- | --- | --- | | Euler-Bernoulli Bending w_EB | 1000 * F * L^3 / (48 * E_GPa*10^9 * (b*h^3/12)) | 0.1200 mm | | Timoshenko Shear w_shear | 1000 * F * L / (4 * kappa * G_GPa*10^9 * (b*h)) | 0.0240 mm | | Total Timoshenko Deflection | w_EB + w_shear | 0.1440 mm | | Shear-to-Bending Ratio | w_shear / w_EB = (E / (kappa*G)) * (h / L)^2 | 0.2000 (20.0% shear boost) | - **Formula (Total Timoshenko Midspan Deflection (mm) Formula)**: `=LET(b_m, B2, h_m, B3, l_m, B4, f_n, B5, e_pa, B6 * 10^9, g_pa, B7 * 10^9, kap, B8, IF(OR(b_m <= 0, h_m <= 0, l_m <= 0, e_pa <= 0, g_pa <= 0, kap <= 0), "Invalid Beam Input", LET(area_s, b_m * h_m, iner_i, b_m * (h_m^3) / 12, w_eb, (f_n * (l_m^3)) / (48 * e_pa * iner_i), w_sh, (f_n * l_m) / (4 * kap * g_pa * area_s), ROUND(1000 * (w_eb + w_sh), 4))))` - **Formula (Dimensionless Shear-to-Bending Ratio & Slenderness Check)**: `=ROUND((B6 / (B8 * B7)) * ((B3 / B4)^2), 4)` ### Tinetti Balance & Gait Assessment (POMA) Fall Risk Score (0–28) - **URL**: https://sheets.arte-soft.com/en/learn/tinetti-performance-oriented-mobility-assessment-poma-fall-score/ - **Summary**: Combine Tinetti Balance Subscore (9 maneuvers, 0–16 pts) and Gait Subscore (7 parameters, 0–12 pts) into total 28-point POMA and classify High (<=18), Moderate (19–23), or Low (>=24) geriatric fall risk. *Table — Why physical therapists separate static/transitional Balance (0–16) from dynamic Gait (0–12)!:* | Total Tinetti POMA Score (0–28) | Balance (0–16) + Gait (0–12) | Geriatric Fall Risk Tier | | --- | --- | --- | | <= 18 Points (e.g., Balance 10 + Gait 7 = 17) | Impaired Transfers & Stepping | High Fall Risk (<=18: Assistive Device & PT) | | 19 – 23 Points (e.g., Balance 12 + Gait 9 = 21) | Mild-Moderate Instability | Moderate Fall Risk (19–23: Targeted Balance Rx) | | >= 24 Points (e.g., Balance 15 + Gait 11 = 26) | Intact Postural & Stride Control | Low Fall Risk (>=24) | - **Formula (Total 28-Point Tinetti POMA Mobility Score)**: `=IF(OR(B2 < 0, B2 > 16, B3 < 0, B3 > 12), "Invalid Tinetti Subscore", B2 + B3)` - **Formula (Tinetti POMA Fall-Risk Tier Classification)**: `=IF(OR(B2 < 0, B2 > 16, B3 < 0, B3 > 12), "Invalid Tinetti Subscore", IF(B2 + B3 <= 18, "High Fall Risk (<=18)", IF(B2 + B3 <= 23, "Moderate Fall Risk (19-23)", "Low Fall Risk (>=24)")))` ### Tinseth Hop Utilization & IBU Bitterness Formula - **URL**: https://sheets.arte-soft.com/en/learn/tinseth-hop-alpha-acid-utilization-boil-gravity-and-ibu-bitterness-formula/ - **Summary**: Calculate Kettle Added Alpha Acids (mg/L), Glenn Tinseth’s Wort-Gravity & Boil-Time Utilization 1.65*(0.000125^(SG - 1))*((1 - EXP(-0.04*t))/4.15), International Bitterness Units (IBU), and BU:GU Balance Ratio. *Table — Account for both high-gravity wort suppression and exponential iso-alpha isomerization!:* | Tinseth Kettle Hop Metric (SG=1.050, t=60m, 50g @ 10% AA, 20L Wort) | Formula | Verified Output | | --- | --- | --- | | Added Alpha Acids (mg/L) | (Hop_g * Alpha_Frac * 1000) / Wort_L | 250.00 mg/L | | Tinseth Decimal Utilization | 1.65*(0.000125^(SG-1))*((1-EXP(-0.04*t))/4.15) | 0.2307 (23.07%; 0.0000 @ t=0) | | International Bitterness (IBU) | Added_Alpha_mg_L * Utilization | 57.67 IBU (0.00 IBU @ t=0) | | Bitterness Ratio (BU : GU) | IBU / ((SG - 1) * 1000) | 1.15 BU:GU | - **Formula (Glenn Tinseth International Bitterness Units (IBU) Formula)**: `=LET(sg_w, B2, t_mn, B3, hp_g, B4, aa_f, B5, vl_l, B6, IF(OR(sg_w <= 1, sg_w > 1.2, t_mn < 0, hp_g <= 0, aa_f <= 0, aa_f >= 1, vl_l <= 0), "Invalid Kettle Hop Schedule", LET(ad_a, (hp_g * aa_f * 1000) / vl_l, bg_f, 1.65 * (0.000125 ^ (sg_w - 1)), tm_f, (1 - EXP(-0.04 * t_mn)) / 4.15, ROUND(ad_a * bg_f * tm_f, 2))))` - **Formula (Zero-Minute Flameout Baseline Check (t = 0 min))**: `=IF(ISTEXT(E4), E4, ROUND(E4 / ((B2 - 1) * 1000), 2))` ### TIPS Index Ratio, Deflation Par Floor & Coupon Formula - **URL**: https://sheets.arte-soft.com/en/learn/tips-inflation-indexed-bond-index-ratio-principal-and-coupon-formula/ - **Summary**: Calculate US Treasury Inflation-Protected Securities (TIPS) CPI Index Ratio, Maturity Deflation-Floored Principal ($), Semiannual Inflation-Indexed Coupon ($), and Exact Fisher Breakeven Inflation Rate. *Table — Distinguish TIPS maturity par-floor protection from unfloored semiannual coupons!:* | US TIPS Metric ($1,000 Par, CPI 250 -> 310, 2.0% Real Coupon, 4.4% Nominal Tsy) | Formula | Verified Output | | --- | --- | --- | | Reference CPI Index Ratio | ROUND(CPI_ref / CPI_base, 5) | 1.24000 (0.90000 @ CPI=225) | | Maturity Protected Principal ($) | Par * MAX(1, Index_Ratio) | $1,240.00 ($1,000.00 Floor @ 225) | | Semiannual Indexed Coupon ($) | (Par * Index_Ratio) * (Real_Coupon / 2) | $12.40 ($9.00 Unfloored @ 225) | | Exact Fisher Breakeven Inflation | ((1 + Nominal_Yield) / (1 + Real_Yield)) - 1 | 0.0235 (2.35% Compounded) | - **Formula (TIPS Maturity Protected Principal & Semiannual Coupon Formula)**: `=LET(pr_0, B2, cp_0, B3, cp_t, B4, rl_c, B5, nm_y, B6, IF(OR(pr_0 <= 0, cp_0 <= 0, cp_t <= 0, rl_c < 0, nm_y <= -0.5), "Invalid TIPS Bond Input", LET(ix_r, ROUND(cp_t / cp_0, 5), ROUND(pr_0 * MAX(1, ix_r), 2))))` - **Formula (-10% Deflation Asymmetry Check (Set Reference CPI = 225.00))**: `=IF(ISTEXT(E3), E3, ROUND((B2 * ROUND(B4 / B3, 5)) * (B5 / 2), 2))` ### TOCOL function: flatten a 2D schedule grid into a single clean column - **URL**: https://sheets.arte-soft.com/en/learn/tocol-function-flatten-range/ - **Summary**: Unroll a multi-column table into one vertical list with TOCOL, remove blank slots with FILTER, and switch to column-major order with TRANSPOSE. *Table — Turn multi-column rosters into a clean 1D list:* | Desk1 (A) | Desk2 (B) | Desk3 (C) | | --- | --- | --- | | Ava | Ben | Cara | | Dan | (blank) | Eva | - **Formula (Row-by-row vs column-by-column flattening)**: `=TEXTJOIN(", ", TRUE, FILTER(TOCOL(A2:C3), (TOCOL(A2:C3)<>"")*(TOCOL(A2:C3)<>0)))` - **Formula (Compare populated count vs full grid slots)**: `=ROWS(FILTER(TOCOL(A2:C3), (TOCOL(A2:C3)<>"")*(TOCOL(A2:C3)<>0)))` ### TODAY function: calculate live invoice days overdue and rolling deadlines - **URL**: https://sheets.arte-soft.com/en/learn/today-function-days-overdue/ - **Summary**: Compare due dates against TODAY() for live accounts-receivable aging without time-of-day fraction bugs. *Table — Why TODAY() beats NOW() for calendar-day aging:* | Invoice (A) | DueDate (B) | TODAY() - B | Status | | --- | --- | --- | --- | | INV-401 | =TODAY() - 35 | 35 | Overdue 30+ | | INV-402 | =TODAY() + 10 | -10 | Upcoming | - **Formula (Flag 30+ day overdue invoices automatically)**: `=IF(TODAY() - B2 >= 30, "Overdue 30+", "Current")` - **Formula (Verify zero-time integer invariant)**: `=TODAY() = INT(NOW())` ### Token Bucket Max Burst Duration & Volume Formula - **URL**: https://sheets.arte-soft.com/en/learn/token-bucket-rate-limiter-max-burst-duration-and-sustained-rate/ - **Summary**: Calculate exact unthrottled burst duration T_burst = B / (P - r), total passed burst requests M_max = (B * P) / (P - r), and full recovery time B / r for API token-bucket limiters. *Table — Avoid the #1 API gateway mistake: a B-token bucket passes MORE than B requests during a peak burst!:* | Token-Bucket Metric (B=120, r=2/sec, P=10/sec) | Formula | Verified Output | | --- | --- | --- | | Net Drain Rate During Burst | P - r | 8.0000 tokens / sec | | Unthrottled Burst Duration (T_burst) | B / (P - r) | 15.0000 seconds | | Total Requests Passed in Burst (M_max) | (B * P) / (P - r) | 150.00 requests (vs Naive 120!) | | Idle Full-Bucket Refill Time | B / r | 60.00 seconds | - **Formula (Exact Unthrottled Burst Duration T_burst = B / (P - r) Formula)**: `=LET(b_cp, B2, r_rf, B3, p_pk, B4, IF(OR(b_cp <= 0, r_rf <= 0, p_pk <= 0), "Invalid Token Bucket Input", IF(p_pk <= r_rf, "Infinite: Arrival <= Refill Rate", ROUND(b_cp / (p_pk - r_rf), 4))))` - **Formula (Maximum Contiguous Burst Requests Passed M_max = (B * P) / (P - r) Formula)**: `=LET(b_cp, B2, r_rf, B3, p_pk, B4, IF(OR(b_cp <= 0, r_rf <= 0, p_pk <= 0), "Invalid Token Bucket Input", IF(p_pk <= r_rf, "Infinite: Arrival <= Refill Rate", ROUND((b_cp * p_pk) / (p_pk - r_rf), 4))))` ### Tokyo Guidelines (TG18) Acute Cholangitis Formula: Diagnosis & Grade I–III ERCP Triage - **URL**: https://sheets.arte-soft.com/en/learn/tokyo-guidelines-tg18-acute-cholangitis-charcot-severity-grade/ - **Summary**: Apply the 2018 Tokyo Guidelines (TG18, Kiriyama et al.) diagnostic rule across Systemic Inflammation (A), Cholestasis (B), and Biliary Imaging (C) alongside Grade I, II, and III urgent ERCP biliary-drainage severity grading. *Table — Why TG18 replaced low-sensitivity classic Charcot’s Triad (~26%–60%) with A+B+C diagnosis and 3-tier ERCP grading!:* | TG18 Diagnostic Domains (A, B, C) & Severity Counts | TG18 Diagnostic Certainty | TG18 Severity & Biliary Drainage Timing | | --- | --- | --- | | A=1, B=1, C=1; Organ_Dysf=1 (Platelets 72k) | Definite Acute Cholangitis | Grade III Severe — Urgent ERCP / Biliary Drainage | | A=1, B=1, C=1; Organ_Dysf=0, Moderate_Factors=3 | Definite Acute Cholangitis | Grade II Moderate — Early Drainage (< 24–48h) | | A=1, B=1, C=1; Organ_Dysf=0, Moderate_Factors=1 | Definite Acute Cholangitis | Grade I Mild — Antimicrobials + Drainage Assessment | - **Formula (TG18 Acute Cholangitis Severity Classifier (Grade III Severe, Grade II Moderate, Grade I Mild))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1, B5 < 0, B6 < 0, B6 > 5), "Invalid TG18 Inputs", IF(OR(B2 = 0, AND(B3 = 0, B4 = 0)), "Does Not Meet TG18 Cholangitis Criteria", IF(B5 >= 1, "Grade III Severe Cholangitis (Urgent Biliary Drainage + Organ Support)", IF(B6 >= 2, "Grade II Moderate Cholangitis (Early Endoscopic/Percutaneous Drainage)", "Grade I Mild Cholangitis (Antimicrobials & Standard Drainage)"))))` - **Formula (TG18 Diagnostic Certainty Status (Definite A+B+C vs. Suspected A + B/C))**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1, B5 < 0, B6 < 0, B6 > 5), "Invalid TG18 Inputs", IF(AND(B2 = 1, B3 = 1, B4 = 1), "Definite TG18 Acute Cholangitis", IF(AND(B2 = 1, OR(B3 = 1, B4 = 1)), "Suspected TG18 Acute Cholangitis", "Does Not Meet TG18 Cholangitis Criteria")))` ### Plus-or-Minus (+/-) Tolerance Check & Count Out-of-Spec Values - **URL**: https://sheets.arte-soft.com/en/learn/tolerance-band-check-and-count-out-of-spec-parts/ - **Summary**: Classify measurements using an explicit six-decimal comparison policy and count rejected parts from the same classifications. *Table — Choose a measurement precision policy before comparing:* | Part ID | Diameter (mm) | ROUND(ABS(B - 25.00), 6) | Status (+/- 0.05 mm Spec) | | --- | --- | --- | --- | | P-1 | 25.02 mm | 0.02 mm <= 0.05 | In Spec | | P-2 | 24.94 mm | 0.06 mm > 0.05 (< LSL 24.95) | Reject (Undersize) | | P-3 | 25.00 mm | 0.00 mm <= 0.05 | In Spec (Nominal) | | P-4 | 25.08 mm | 0.08 mm > 0.05 (> USL 25.05) | Reject (Oversize) | | P-5 | 24.97 mm | 0.03 mm <= 0.05 | In Spec | - **Formula (Classify each part in column C)**: `=IF(OR(NOT(ISNUMBER(B2)),NOT(ISNUMBER($D$2)),NOT(ISNUMBER($D$3))),"Invalid inputs",IF($D$3<0,"Invalid inputs",IF(ROUND(ABS(B2-$D$2),6)<=ROUND($D$3,6),"In Spec","Reject")))` - **Formula (Total Count of Out-of-Tolerance Rejects Across Batch)**: `=IF(COUNTIF(C2:C6,"Invalid inputs")>0,"Invalid inputs",COUNTIF(C2:C6,"Reject"))` ### Neutron Star Relativistic Compactness (Ξ), Surface Redshift & Buchdahl Limit - **URL**: https://sheets.arte-soft.com/en/learn/tolman-oppenheimer-volkoff-neutron-star-compactness-redshift/ - **Summary**: Calculate general-relativistic compactness Ξ = G*M / (R*c^2), NICER X-ray surface gravitational redshift z_surf = (1 - 2*Ξ)^(-1/2) - 1, and Hans Buchdahl’s Ξ < 4/9 collapse limit. *Table — Probing dense nuclear equations of state with NICER X-ray redshifts and Buchdahl’s 4/9 general-relativity ceiling!:* | Relativistic Star Configuration | Compactness Ξ = GM/(Rc²) | Surface Redshift z_surf | General-Relativity Stability | | --- | --- | --- | --- | | Canonical Pulsar (1.40 M_☉, R = 12.0 km) | 0.1723 | 0.2352 | Stable Neutron Star (Ξ < 4/9) | | Heavy Pulsar J0740+6620 (2.08 M_☉, R = 12.4 km) | 0.2477 | 0.4077 | Stiff Nuclear EOS Regime | | Over-Compact Sphere (3.20 M_☉, R = 10.0 km) | 0.4725 (>= 0.4444!) | "Violates Buchdahl Stability Limit (Xi >= 4/9)" | Mandatory Gravitational Collapse | - **Formula (General-Relativistic Surface Gravitational Redshift z_surf)**: `=IF(OR(B2 <= 0, B3 <= 0, (1.476625 * B2 / B3) >= (4 / 9)), "Violates Buchdahl Stability Limit (Xi >= 4/9)", ROUND((1 / SQRT(1 - 2 * (1.476625 * B2 / B3))) - 1, 4))` - **Formula (Dimensionless Relativistic Compactness Parameter Ξ = G M / (R c²))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Stellar Mass or Radius", ROUND(1.476625 * B2 / B3, 4))` ### Toothed Timing Belt Pitch Diameter & Teeth-in-Mesh Formula - **URL**: https://sheets.arte-soft.com/en/learn/toothed-timing-belt-pulley-pitch-diameter-tooth-mesh-engagement-and-span-length/ - **Summary**: Calculate Driver & Driven Timing-Pulley Pitch Diameters (mm), Small-Pulley Engaged Teeth-in-Mesh TIM, and Exact Belt Tooth Count Lp/p across Center Distance C. *Table — Engage fewer than 6 belt teeth on a servo motor timing pulley and elastomeric roots shear off under peak indexing torque!:* | ISO 5294 HTD-8M Timing Belt KPI (p=8 mm, Z2=72: Z1=28/C=320 vs Z1=14/C=190 mm) | Formula | Verified Output | | --- | --- | --- | | Driver Pitch Diameter d1 (mm) | (Tooth_Pitch_p_mm * Driver_Z1) / PI() | 71.30 mm (35.65 mm @ Z1=14) | | Driven Pitch Diameter d2 (mm) | (Tooth_Pitch_p_mm * Driven_Z2) / PI() | 183.35 mm | | Engaged Teeth-in-Mesh TIM | Z1 * (Small_Wrap_deg / 360) (req >= 6.0!) | 12.43 teeth (5.22 < 6 SHEAR RISK @ Z1=14!) | | Exact Belt Tooth Count (Lp / p) | (2*C + (PI()/2)*(d2+d1) + (d2-d1)^2/(4*C)) / p | 131.2 teeth (94.1 teeth @ C=190 mm) | - **Formula (Timing-Pulley Circular Pitch Diameter, Engaged TIM & Belt Tooth-Count Formula)**: `=LET(pt_m, B2, zd_r, B3, zv_n, B4, cd_m, B5, d1_m, (pt_m * zd_r) / PI(), d2_m, (pt_m * zv_n) / PI(), lp_m, 2 * cd_m + (PI() / 2) * (d2_m + d1_m) + (((d2_m - d1_m) ^ 2) / (4 * cd_m)), IF(OR(pt_m <= 1, zd_r < 10, zv_n < zd_r, cd_m <= (d2_m + d1_m) / 2), "Invalid Timing Drive", ROUND(lp_m / pt_m, 1)))` - **Formula (Undersized 14-Tooth Pinion on Short 190 mm Centers (< 6 Teeth-in-Mesh) Check (Set Z1 B3 = 14, C B5 = 190 mm))**: `=IF(ISTEXT(E5), E5, LET(d1_m, (B2 * B3) / PI(), d2_m, (B2 * B4) / PI(), wr_d, 180 - 2 * (ASIN((d2_m - d1_m) / (2 * B5)) * (180 / PI())), ROUND((B3 * wr_d) / 360, 2)))` ### Tornado Sensitivity Chart Formula: Base-Centered Downside/Upside Deviations & Swing Share % - **URL**: https://sheets.arte-soft.com/en/learn/tornado-sensitivity-chart-downside-upside-swing-and-rank/ - **Summary**: Build a DCF / project-finance Tornado Diagram: center Low-Case and High-Case NPV outputs around Base Case (Y - Y_base), calculate Total Swing |Y_high - Y_low|, and compute Squared-Swing Variance Contribution %. *Table — Center bars at Y_base and sort by Total Swing |Y_high - Y_low| to form a true Tornado!:* | Sensitivity Driver (Base NPV = $120M) | Low-Input NPV ($M) | High-Input NPV ($M) | Left/Right Deviations vs Base | Total Swing S_i ($M) | Variance Share S_i^2 / SUM(S^2) | | --- | --- | --- | --- | --- | --- | | Unit Selling Price | 82 | 162 | -38 / +42 | 80 | 66.67% | | Discount Rate (WACC, Inverse!) | 145 | 100 | +25 / -20 | 45 | 21.09% | | Initial CapEx (Inverse!) | 136 | 102 | +16 / -18 | 34 | 12.04% | - **Formula (Total One-Way Sensitivity Swing Range S_i = ABS(Y_high - Y_low))**: `=ABS(C2 - B2)` - **Formula (Approximate Variance Contribution Share (%) = 100 * S_i^2 / SUM(S_k^2))**: `=IF(SUMPRODUCT((C2:C4 - B2:B4) ^ 2) <= 0, "Zero Sensitivity Swing Across All Drivers", ROUND(100 * ((C2 - B2) ^ 2) / SUMPRODUCT((C2:C4 - B2:B4) ^ 2), 2))` ### TOROW function: flatten a 2D block into a single horizontal header or tag row - **URL**: https://sheets.arte-soft.com/en/learn/torow-function-flatten-horizontal/ - **Summary**: Convert a multi-row grid of SKU codes or tags into one horizontal row with TOROW and TRANSPOSE. *Table — Generate horizontal column headers from a 2D matrix:* | BinA (A) | BinB (B) | | --- | --- | | SKU-10 | SKU-20 | | SKU-30 | SKU-40 | - **Formula (Compare row-major vs column-major horizontal output)**: `=TEXTJOIN(", ", TRUE, TOROW(A2:B3))` - **Formula (Count resulting horizontal slots and index items)**: `=COLUMNS(TOROW(A2:B3))` ### Torricelli Orifice Jet Velocity, Vena-Contracta Flow & Tank Drain Time - **URL**: https://sheets.arte-soft.com/en/learn/torricelli-orifice-discharge-velocity-vena-contracta-and-tank-drain-time/ - **Summary**: Compute sharp-edged orifice efflux velocity, contracted discharge rate Q = C_d * A_o * SQRT(2*g*h), and exact falling-head cylindrical tank drain time between two liquid levels. *Table — Why falling-head tank drain time scales with SQRT(h_1) - SQRT(h_2) rather than volume / Q_initial:* | Orifice / Tank Metric | Formula | Example (h1=5 m, Ao=0.01 m2, Atank=2 m2) | | --- | --- | --- | | Discharge Coefficient C_d | C_v * C_c | 0.6076 (0.98 * 0.62) | | Actual Jet Velocity v_jet | C_v * SQRT(2 * 9.81 * h_1) | 9.71 m/s (Ideal = 9.90 m/s) | | Initial Flow Rate Q(h_1) | C_d * A_o * SQRT(2 * 9.81 * h_1) * 1000 | 60.18 L/s | | Full Empty Time (5 m -> 0 m) | (2*A_tank / (C_d*A_o*SQRT(19.62))) * SQRT(h_1) | 332.34 s (vs naive 166.17 s) | - **Formula (Vena-Contracta Volumetric Orifice Flow Rate (L/s))**: `=ROUND(B4 * B5 * B2 * SQRT(2 * 9.81 * B6) * 1000, 2)` - **Formula (Exact Falling-Head Tank Drain Time Formula (Seconds))**: `=IF(B6 <= B7, 0, ROUND(((2 * B3) / (B4 * B5 * B2 * SQRT(2 * 9.81))) * (SQRT(B6) - SQRT(B7)), 2))` ### Torricelli's Law tank orifice velocity SQRT(2gh) & discharge flow (L/s) - **URL**: https://sheets.arte-soft.com/en/learn/torricellis-law-orifice-drain-velocity-and-discharge/ - **Summary**: Calculate ideal gravity efflux velocity SQRT(2*g*h) and real orifice volumetric discharge Cd * Area * SQRT(2*g*h) in liters per second. *Table — Estimate instantaneous discharge from a specified liquid head:* | Tank Orifice Parameter (Head h = 5 m, d = 0.05 m, Cd = 0.62) | Formula | Result | | --- | --- | --- | | Ideal Torricelli Jet Velocity (m/s) | SQRT(2 * 9.81 * 5) | 9.90 m/s | | Circular Orifice Area (m^2) | PI() * (0.05 / 2)^2 | 0.001963 m^2 | | Estimated discharge flow (L/s) | 0.62 * Area * 9.9045 * 1000 | 12.06 L/s | | Rounded Bellmouth Nozzle (Cd = 0.98) | 0.98 * Area * 9.9045 * 1000 | 19.06 L/s | - **Formula (Ideal Torricelli efflux velocity (m/s))**: `=IF(OR(COUNT(A2:B2)<>2,A2<0,B2<=0),"Invalid inputs",ROUND(SQRT(2 * B2 * A2), 2))` - **Formula (Estimated volumetric discharge (L/s))**: `=IF(OR(COUNT(A2:D2)<>4,A2<0,B2<=0,C2<=0,D2<=0,D2>1),"Invalid inputs",ROUND(D2 * PI() * ((C2 / 2) ^ 2) * SQRT(2 * B2 * A2) * 1000, 2))` ### Total Return Swap (TRS) Equity Leg & SOFR Settlement Formula - **URL**: https://sheets.arte-soft.com/en/learn/total-return-swap-trs-equity-leg-sofr-funding-leg-and-net-settlement/ - **Summary**: Calculate ISDA Total Return Swap (TRS) Quarterly Total-Return Leg (Price Return + Dividend Pass-Through), ACT/360 SOFR + Spread Financing Leg, Net Periodic Cash Settlement ($M), and Return on Initial Margin (Independent Amount). *Table — Model two-way Total Return Swap cash settlements—when stocks drop, you pay BOTH legs!:* | Quarterly TRS Metric ($40M Notional, +4.5% Px + 0.5% Div, 5.8% SOFR+Spd, 90d, 15% IM) | Formula | Verified Output | | --- | --- | --- | | Total Return Leg ($M) | Notional * (Price_Return + Div_Yield) | +$2.0000M (-$2.2000M @ -6% Drop) | | SOFR+Spread Funding Leg ($M) | Notional * Funding_Rate * (Days / 360) | $0.5800M | | Net Cash Settlement ($M) | Total_Return_Leg - Funding_Leg | +$1.4200M (-$2.7800M @ -6% Drop) | | Return on Initial Margin | Net_Settlement / (Notional * Margin_Pct) | +0.2367 (-0.4633 @ -6% Drop) | - **Formula (Total Return Swap Net Cash Settlement Formula)**: `=LET(nt_m, B2, pr_r, B3, dv_y, B4, fn_r, B5, dy_a, B6, im_p, B7, IF(OR(nt_m <= 0, pr_r <= -1, dv_y < 0, fn_r <= -0.05, dy_a < 1, im_p <= 0, im_p > 1), "Invalid TRS Swap Input", LET(tr_l, nt_m * (pr_r + dv_y), fd_l, nt_m * fn_r * (dy_a / 360), ROUND(tr_l - fd_l, 4))))` - **Formula (-6.0% Equity Drawdown Double-Payment Stress Check)**: `=IF(ISTEXT(E4), E4, ROUND(E4 / (B2 * B7), 4))` ### Toth (1971) 3-Parameter Adsorption Isotherm Formula: Henry’s Law & Monolayer Limit - **URL**: https://sheets.arte-soft.com/en/learn/toth-three-parameter-heterogeneous-gas-solid-adsorption-isotherm/ - **Summary**: Model sub-monolayer gas adsorption (CO2 capture, CH4 shale/coalbed storage, VOC zeolites) using József Tóth’s (1971) thermodynamically consistent 3-parameter isotherm q = q_max * b * P / (1 + (b * P)^t)^(1/t). *Table — Why József Tóth’s (1971) isotherm beats Sips at ultra-low pressure: it satisfies BOTH Henry’s Law AND finite saturation!:* | Heterogeneity Exponent t (q_max = 6.5 mmol/g, b = 0.8 bar^-1, P = 5 bar) | Tóth Uptake q(P) (mmol/g) | Zero-Pressure Henry Constant K_H = q_max * b | | --- | --- | --- | | t = 1.00 (Homogeneous Langmuir Surface) | 5.2000 mmol/g (80.0% Saturation) | 5.2000 mmol/(g*bar) | | t = 0.60 (Moderately Heterogeneous Zeolite/MOF) | 4.4446 mmol/g (68.4% Saturation) | 5.2000 mmol/(g*bar) — Finite Henry Slope Preserved! | | t = 0.35 (Strongly Heterogeneous Activated Carbon) | 3.2982 mmol/g | 5.2000 mmol/(g*bar) | - **Formula (Tóth (1971) Equilibrium Gas Uptake q(P) = (q_max * b * P) / (1 + (b * P)^t)^(1 / t))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B4 > 1, B5 < 0), "Invalid Toth Isotherm Parameters (Requires 0 < t <= 1)", IF(B5 = 0, 0, ROUND((B2 * B3 * B5) / ((1 + ((B3 * B5) ^ B4)) ^ (1 / B4)), 4)))` - **Formula (Thermodynamic Henry’s Law Slope K_H = lim_{P->0} (q / P) = q_max * b (mmol/(g*bar)))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Capacity or Affinity", ROUND(B2 * B3, 4))` ### Townsend Electron Avalanche Current & Spark Breakdown Criterion Formula - **URL**: https://sheets.arte-soft.com/en/learn/townsend-avalanche-first-and-second-ionization-current/ - **Summary**: Calculate pre-breakdown Townsend gas-discharge current I = (I0 * EXP(alpha * d)) / (1 - gamma * (EXP(alpha * d) - 1)) and test the Townsend self-sustaining spark criterion gamma * (EXP(alpha * d) - 1) >= 1. *Table — Track primary electron avalanches and secondary cathode feedback up to sparkover!:* | Discharge Regime (I0 = 10 pA, d = 0.50 cm) | Alpha (cm^-1) & Gamma | Feedback Term gamma*(e^(ad)-1) | Anode Current I (pA) | | --- | --- | --- | --- | | Pure Primary Avalanche (No Secondary) | alpha = 8, gamma = 0.00 | 0.0000 (< 1) | 545.98 pA (54.6x gain) | | Sub-Breakdown Proportional Gain | alpha = 8, gamma = 0.01 | 0.5360 (< 1) | 1,176.64 pA (117.7x gain) | | Self-Sustained Spark Breakdown! | alpha = 10, gamma = 0.01 | 1.4741 (>= 1!) | "Self-Sustained Breakdown!" | - **Formula (Townsend Pre-Breakdown Anode Current I (Same Units as I0))**: `=IF(OR(B2 < 0, B3 < 0, B4 <= 0, B5 < 0), "Invalid Discharge Inputs", IF(B5 * (EXP(B3 * B4) - 1) >= 1, "Self-Sustained Breakdown!", ROUND((B2 * EXP(B3 * B4)) / (1 - B5 * (EXP(B3 * B4) - 1)), 2)))` - **Formula (Townsend Feedback Loop Gain L_loop = gamma * (EXP(alpha * d) - 1))**: `=IF(OR(B3 < 0, B4 <= 0, B5 < 0), "Invalid Discharge Inputs", ROUND(B5 * (EXP(B3 * B4) - 1), 4))` ### Townsend Costly State Verification Debt Formula - **URL**: https://sheets.arte-soft.com/en/learn/townsend-costly-state-verification-standard-debt-contract-formula/ - **Summary**: Solve Robert Townsend’s (1979) optimal standard debt face value D* and expected bankruptcy audit cost K*(D*/Y_max) under costly state verification. *Table — Prove why costly bankruptcy auditing makes a Standard Debt Contract uniquely optimal!:* | Townsend CSV Metric (Y_max=100, K=20, B_req=24) | Formula | Verified Output | | --- | --- | --- | | Max Pledgeable Debt Capacity (B_max) | (Y_max - K)^2 / (2 * Y_max) | 32.00 | | Optimal Debt Face Value (D*) | Y_max * ((1 - K/Y_max) - SQRT(disc)) | 40.00 | | Equilibrium Default Probability | D* / Y_max | 0.4000 (40.00%) | | Expected Deadweight Audit Cost | K * (D* / Y_max) | 8.00 | - **Formula (Townsend Optimal Debt Face Value D* Formula)**: `=LET(y_mx, B2, k_au, B3, b_rq, B4, IF(OR(y_mx <= 0, k_au < 0, k_au >= y_mx, b_rq <= 0), "Invalid CSV Input", LET(b_mx, ((y_mx - k_au)^2) / (2 * y_mx), IF(b_rq > b_mx, "Infeasible: Exceeds Max Pledgeable Debt Capacity", LET(m_net, 1 - (k_au / y_mx), d_sc, (m_net^2) - (2 * b_rq / y_mx), ROUND(y_mx * (m_net - SQRT(MAX(0, d_sc))), 4))))))` - **Formula (Expected Deadweight Bankruptcy Verification Cost K * (D* / Y_max) Formula)**: `=IF(ISTEXT(E3), E3, ROUND(B3 * (E3 / B2), 4))` ### TSAT and Ganzoni Iron Deficit: Spreadsheet Arithmetic and Units - **URL**: https://sheets.arte-soft.com/en/learn/transferrin-saturation-tsat-and-ganzoni-iv-iron-deficit/ - **Summary**: Calculate transferrin saturation and a Ganzoni iron estimate using explicit units, supplied target hemoglobin and storage iron, with missing-input checks. - **Formula (Calculate transferrin saturation)**: `=IF(COUNT(B2:B3)<>2,"Enter numeric iron and TIBC",IF(OR(B2<0,B3<=0),"Require iron>=0 and TIBC>0",100*B2/B3))` - **Formula (Estimate the iron amount with supplied assumptions)**: `=IF(COUNT(B4:B7)<>4,"Complete numeric Ganzoni inputs",IF(OR(B4<=0,B5<=0,B6<=0,B7<0),"Require positive weight and Hb; stores>=0",IF(B5<=B6,"Review target and stores; no automatic dose",B4*(B5-B6)*2.4+B7)))` ### Transformer All-Day Efficiency: Core vs Copper Loss Formula - **URL**: https://sheets.arte-soft.com/en/learn/transformer-all-day-energy-efficiency-iron-core-vs-copper-loss-formula/ - **Summary**: Calculate distribution transformer peak-efficiency load fraction x_opt = SQRT(P_core / P_cu,fl), peak instantaneous efficiency, and 24-hour duty-cycle All-Day Energy Efficiency. *Table — Why distribution transformers peak at 50% load rather than 100% rated kVA!:* | Transformer Energy Metric (100 kVA, P_fe=1 kW, P_cu=4 kW, PF=0.80) | Formula | Verified Output | | --- | --- | --- | | Peak-Efficiency Load Fraction (x_opt) | SQRT(P_fe / P_cu,fl) | 0.5000 (50.0% Rated kVA) | | Maximum Instantaneous Efficiency | (x_opt*S_r*PF) / (x_opt*S_r*PF + 2*P_fe) | 0.9524 (95.24%) | | 24-Hour Delivered Energy (W_out) | (h_100*1.0 + h_50*0.5) * S_r * PF | 960.00 kWh / day | | 24-Hour All-Day Energy Efficiency | W_out / (W_out + 24*P_fe + W_cu) | 0.9375 (93.75%; 64 kWh Loss) | - **Formula (Peak-Efficiency Load Fraction & Instantaneous Peak Efficiency Formula)**: `=LET(sr_kv, B2, pf_fe, B3, pc_fl, B4, pf_ld, B5, IF(OR(sr_kv <= 0, pf_fe <= 0, pc_fl <= 0, pf_ld <= 0, pf_ld > 1, B6 < 0, B7 < 0, B8 < 0, B6 + B7 + B8 <> 24), "Invalid Transformer Cycle", ROUND(SQRT(pf_fe / pc_fl), 4)))` - **Formula (24-Hour All-Day Energy Efficiency Formula)**: `=LET(sr_kv, B2, pf_fe, B3, pc_fl, B4, pf_ld, B5, h_fl, B6, h_hl, B7, IF(ISTEXT(E2), E2, LET(w_ot, (h_fl * 1 + h_hl * 0.5) * sr_kv * pf_ld, w_ls, 24 * pf_fe + (h_fl * 1 + h_hl * 0.25) * pc_fl, ROUND(w_ot / (w_ot + w_ls), 4))))` ### Transformer Conservator Expansion & Buchholz Gas Formula - **URL**: https://sheets.arte-soft.com/en/learn/transformer-conservator-tank-oil-thermal-expansion-and-buchholz-gas-alarm-formula/ - **Summary**: Calculate Mineral-Oil Seasonal/Load Volume Swing dV (L), Required Overhead Conservator Tank Capacity (L and % of Main Tank), and Buchholz Relay Gas Evolution Rate (mL/h). *Table — Seal an 18,400 L oil-filled substation transformer completely full without a 1,898 L conservator cushion and a 110°C load swing bursts main-tank weld seams!:* | IEC 60076 Conservator & Buchholz KPI (V0=18,400 L, -15°C to +95°C, beta=0.00075/K) | Formula | Verified Output | | --- | --- | --- | | Active Oil Volume Swing dV (L) | Oil_Vol_L * beta_K * (Hot_C - Cold_C) | 1,518.0 L | | Required Conservator Drum (L) | Oil_Swing_dV_L * Safety_Factor_SF | 1,897.5 L | | Conservator-to-Tank Ratio (%) | (Conservator_Vol_L / Total_Oil_Vol_L) * 100 | 10.31% (~10% IEC rule of thumb!) | | Buchholz Gas Evolution Rate (mL/h) | Trapped_Gas_mL / Elapsed_Hours_h | 30.0 mL/h alarm (1,300.0 mL/h ARCING!) | - **Formula (IEC 60076 Conservator Volumetric Expansion & Buchholz Gas Rate Formula)**: `=LET(vo_l, B2, tc_c, B3, th_c, B4, bt_k, B5, sf_c, B6, gv_m, B7, dt_h, B8, IF(OR(vo_l < 200, tc_c < -50, tc_c > 40, th_c < tc_c + 30, th_c > 130, bt_k < 0.0006, bt_k > 0.001, sf_c < 1.1, sf_c > 1.6, gv_m < 0, dt_h <= 0.05), "Invalid Conservator Input", ROUND(gv_m / dt_h, 1)))` - **Formula (Turn-to-Turn Winding Fault (`650` mL Acetylene/H2 in `0.5` h) Emergency Trip Check)**: `=IF(ISTEXT(E5), E5, ROUND(B2 * B5 * (B4 - B3) * B6, 1))` ### Transformer Magnetizing Inrush Peak & Joule I²t Formula - **URL**: https://sheets.arte-soft.com/en/learn/transformer-magnetizing-inrush-peak-current-remnance-flux-and-joule-i2t-fuse-formula/ - **Summary**: Calculate Rated Primary RMS Current (A), Worst-Case Zero-Crossing Peak Inrush Multiple (pu), First-Cycle Peak Inrush Current (kA), and Exponential-Decay Joule Integral I²t (kA²·s). *Table — Closing a breaker at a voltage zero-crossing onto +1.15 T core remanence drives grain-oriented silicon steel 2.4 T past knee saturation—tripping 50/51 relays at 8.6x rated current!:* | IEEE C37.91 Transformer Inrush KPI (10 MVA @ 13.8 kV, Bn=1.65 T, Bsat=2.03 T, Xair=0.24 pu) | Formula | Verified Output | | --- | --- | --- | | Rated Primary Current Ir (A) | (Rating_MVA * 1000) / (SQRT(3) * Primary_kV) | 418.4 A RMS | | 1st-Cycle Peak Inrush Multiple (pu) | (SQRT(2)/Xair) * ((2*Bn + Br - Bsat) / Bn) | 8.64 pu @ Br=1.15 T (4.54 pu @ Br=0!) | | 1st-Cycle Peak Inrush Current (kA) | (Rated_I_A * Peak_Inrush_pu) / 1000 | 3.62 kA peak (1.90 kA demagnetized) | | Inrush Fuse Ride-Through I²t (kA²·s) | ((Peak_Inrush_kA ^ 2) / 4) * Decay_Tau_s | 0.588 kA²·s (3.6x higher than Br=0!) | - **Formula (Blume-Specht Core Saturation Inrush Peak & Fuse Coordination I²t Formula)**: `=LET(vl_k, B2, sm_v, B3, bn_t, B4, br_t, B5, bs_t, B6, xa_p, B7, td_s, B8, ir_a, (sm_v * 1000) / (SQRT(3) * vl_k), ip_u, (SQRT(2) / xa_p) * ((2 * bn_t + br_t - bs_t) / bn_t), ik_a, (ir_a * ip_u) / 1000, IF(OR(vl_k < 0.4, sm_v <= 0.05, bn_t < 1, bn_t > 1.9, br_t < 0, br_t > 0.9 * bn_t, bs_t <= bn_t, bs_t > 2.3, (2 * bn_t + br_t) <= bs_t, xa_p < 0.08, xa_p > 0.8, td_s <= 0.02), "Invalid Inrush Input", ROUND(((ik_a ^ 2) / 4) * td_s, 3)))` - **Formula (Point-on-Wave Controlled Switching / Demagnetized Core (`B_r = 0` T) Mitigation Check (Set Br B5 = 0))**: `=IF(ISTEXT(E5), E5, ROUND((SQRT(2) / B7) * ((2 * B4 + B5 - B6) / B4), 2))` ### Convert letters to numbers (A=1 to Z=26 and phone keypad digits) - **URL**: https://sheets.arte-soft.com/en/learn/translate-letters-to-phone-keypad-or-numbers/ - **Summary**: Map letters A–Z to 1–26 using CODE(UPPER(ch)) - 64, convert 1–26 back to letters with CHAR(n + 64), or map letters to T9 phone digits. *Table — ASCII offset 64 turns A–Z into 1–26 instantly:* | Letter (A) | UPPER ASCII Code | A=1..Z=26 | Phone Keypad (2–9) | | --- | --- | --- | --- | | A | 65 | 1 | 2 (ABC) | | m | 77 | 13 | 6 (MNO) | | Z | 90 | 26 | 9 (WXYZ) | - **Formula (Alphabet index (1–26), reverse CHAR, and T9 keypad lookup)**: `=IF(OR(LEN(A2)<>1,LEN(UPPER(A2))<>1), "Not A-Z", LET(n, CODE(UPPER(A2))-64, IF(AND(n>=1,n<=26),n,"Not A-Z")))` - **Formula (Reverse 1–26 integer back to uppercase letter)**: `=IF(OR(B2<1,B2>26,B2<>INT(B2)), "Invalid index", CHAR(B2+64))` - **Formula (Telephone keypad digit)**: `=IF(ISNUMBER(IF(OR(LEN(A2)<>1,LEN(UPPER(A2))<>1), "Not A-Z", LET(n, CODE(UPPER(A2))-64, IF(AND(n>=1,n<=26),n,"Not A-Z")))), XLOOKUP(UPPER(A2), {"A","D","G","J","M","P","T","W"}, {2,3,4,5,6,7,8,9}, "Not A-Z", -1), "Not A-Z")` ### Transmission Line SIL & Ferranti Voltage Rise Formula - **URL**: https://sheets.arte-soft.com/en/learn/transmission-line-surge-impedance-loading-sil-and-ferranti-voltage-rise-formula/ - **Summary**: Calculate Characteristic Surge Impedance Z_c (Ohms), Surge Impedance Loading SIL (MW), Open-Circuit Receiving-End Ferranti Voltage V_r (kV), and Overvoltage Percentage (%). *Table — Why lightly loaded long 500 kV lines suffer dangerous receiving-end overvoltage—while loading right at SIL achieves flat voltage!:* | 500 kV EHV Line KPI (L=0.90 mH/km, C=12.5 nF/km, 400 km, 50 Hz) | Formula | Verified Output | | --- | --- | --- | | Characteristic Surge Impedance Zc | SQRT((L_mH_km * 1e-3) / (C_nF_km * 1e-9)) | 268.33 Ohms | | Surge Impedance Loading SIL (MW) | (Sending_kV ^ 2) / Zc_Ohms | 931.69 MW | | Open-End Ferranti Voltage Vr (kV) | Vs_kV / COS(2*PI()*f*SQRT(L*C*1e-12)*Len) | 547.96 kV (619.80 kV @ 600 km!) | | Ferranti Overvoltage Rise (%) | ((Vr_kV - Vs_kV) / Vs_kV) * 100 | 9.59% (23.96% @ 600 km!) | - **Formula (Distributed-Parameter SIL & Exact Hyperbolic-Cosine Lossless Ferranti Formula)**: `=LET(vs_k, B2, lm_h, B3, cn_f, B4, ln_k, B5, fr_q, B6, IF(OR(vs_k <= 0, lm_h <= 0, cn_f <= 0, ln_k <= 0, fr_q < 16, fr_q > 400), "Invalid EHV Line Input", LET(bt_l, 2 * PI() * fr_q * SQRT((lm_h * 0.001) * (cn_f * 0.000000001)) * ln_k, IF(bt_l >= 1.3, "NEAR QUARTER-WAVE RESONANCE", LET(vr_k, vs_k / COS(bt_l), ROUND(((vr_k - vs_k) / vs_k) * 100, 2))))))` - **Formula (600 km Uncompensated Corridor Severe Ferranti Surge Check (Set Length = 600.0 km))**: `=IF(ISTEXT(E5), E5, LET(bt_l, 2 * PI() * B6 * SQRT((B3 * 0.001) * (B4 * 0.000000001)) * B5, ROUND(B2 / COS(bt_l), 2)))` ### TRANSPOSE function: rotate horizontal tables into vertical columns live - **URL**: https://sheets.arte-soft.com/en/learn/transpose-function-rows-to-columns/ - **Summary**: Flip a wide horizontal table into a vertical column layout with TRANSPOSE while keeping live formula links to the source cells. *Table — Live TRANSPOSE formula vs static Paste Transpose:* | Jan (A) | Feb (B) | Mar (C) | | --- | --- | --- | | 120 | 150 | 180 | - **Formula (Verify flipped dimensions and live cell link)**: `=INDEX(TRANSPOSE(A1:C2), 3, 2)` - **Formula (Row and column counts swap cleanly)**: `=ROWS(TRANSPOSE(A1:C2)) & "x" & COLUMNS(TRANSPOSE(A1:C2))` ### Transpose a table without zeros: suppress blank-to-0 coercion with LET & IF - **URL**: https://sheets.arte-soft.com/en/learn/transpose-table-and-replace-zeros-with-blanks/ - **Summary**: Extract a coordinate from a transposed numeric grid and display a blank string for either an empty source cell or an explicit zero. *Table — Choose whether zero values should be hidden:* | Source Grid (Rows x Cols) | Raw TRANSPOSE Output | Zero-Suppressed Output | Cell Coordinate | | --- | --- | --- | --- | | A2 = 120, B2 = "" (blank), C2 = 85 | Col 1: [120; 0; 85] | Col 1: [120; ""; 85] | Row 2, Col 1 -> "" | | A3 = 0, B3 = 90, C3 = "" | Col 2: [0; 90; 0] | Col 2: [""; 90; ""] | Row 2, Col 2 -> 90 | | A4 = 150, B4 = 110, C4 = 95 | Col 3: [150; 110; 95] | Col 3: [150; 110; 95] | Row 3, Col 3 -> 95 | - **Formula (Extract zero-suppressed transposed cell at (row, col))**: `=IF(COUNT(E2:F2)<>2,"Invalid coordinates",IF(OR(E2<1,E2>3,F2<1,F2>3,E2<>INT(E2),F2<>INT(F2)),"Invalid coordinates",LET(v, INDEX(TRANSPOSE(A2:C4), E2, F2), IF(v = 0, "", v))))` - **Formula (Count positive source values only)**: `=COUNTIF(A2:C4, ">0")` ### Transtubular Potassium Gradient (TTKG) & Urine Anion Gap (UAG) - **URL**: https://sheets.arte-soft.com/en/learn/transtubular-potassium-gradient-ttkg-and-urine-anion-gap/ - **Summary**: Calculate aldosterone-mediated Transtubular Potassium Gradient TTKG = (U_K / P_K) / (U_Osm / P_Osm) (valid when U_Osm > P_Osm) and Urine Anion Gap UAG = U_Na + U_K - U_Cl for renal tubular acidosis. *Table — Assess cortical collecting duct K+ secretion and urinary NH4+ excretion!:* | Electrolyte Workup Metric | Lab Inputs | Calculated Value | Physiological Interpretation | | --- | --- | --- | --- | | TTKG in Hyperkalemia (Intact Aldosterone) | UK=45, PK=5.5, UOsm=600, POsm=300 | 4.09 | Collecting duct secreting K+ (check intake/shift) | | TTKG in Hypoaldosteronism / Type 4 RTA | UK=12, PK=5.5, UOsm=600, POsm=300 | 1.09 (< 3!) | Blunted renal K+ excretion | | Urine Anion Gap (Diarrhea vs Distal RTA) | UNa=40, UK=45, UCl=105 | -20 mEq/L | Negative UAG -> Intact GI-loss NH4+ response | - **Formula (Transtubular Potassium Gradient TTKG (with Osmolality Validity Guard))**: `=IF(OR(B3 <= 0, B5 <= 0), "Invalid Plasma Input", IF(B4 <= B5, "Invalid TTKG (U_Osm Must Exceed P_Osm)", ROUND((B2 / B3) / (B4 / B5), 2)))` - **Formula (Urine Anion Gap UAG = U_Na + U_K - U_Cl (mEq/L))**: `=B6 + B2 - B7` ### Trapezoidal Rule Area Under the Curve (AUC) With SUMPRODUCT - **URL**: https://sheets.arte-soft.com/en/learn/trapezoidal-rule-area-under-curve-uneven-intervals-sumproduct/ - **Summary**: Integrate discrete sensor, pharmacokinetic (AUC), or power-load curves across uneven X-intervals without helper columns using 0.5 * SUMPRODUCT(A3:A6 - A2:A5, B2:B5 + B3:B6). *Table — Integrate unevenly spaced clinical PK, battery, and hydrograph curves in a single cell!:* | Interval [t_i, t_{i+1}] (Hours) | Width Delta_t (h) | Endpoint Heights y_i + y_{i+1} | Trapezoid Area = 0.5 * dt * (y_i + y_{i+1}) | | --- | --- | --- | --- | | [0, 1] h & [1, 3] h | 1 h & 2 h | (4 + 8) & (8 + 14) mg/L | 6.0 + 22.0 = 28.0 mg*h/L | | [3, 6] h & [6, 10] h | 3 h & 4 h | (14 + 10) & (10 + 6) mg/L | 36.0 + 32.0 = 68.0 mg*h/L | | Total Composite AUC [0, 10] h | Total Span = 10 h | Time-Weighted Mean = 9.60 mg/L | 96.0 mg*h/L | - **Formula (Single-Cell Uneven-Interval Trapezoidal AUC Formula)**: `=IF(A6 <= A2, "Invalid X Span", ROUND(0.5 * SUMPRODUCT(A3:A6 - A2:A5, B2:B5 + B3:B6), 2))` - **Formula (Time-Weighted Mean Value = Trapezoidal AUC / (X_end - X_start))**: `=IF(A6 <= A2, "Invalid X Span", ROUND((0.5 * SUMPRODUCT(A3:A6 - A2:A5, B2:B5 + B3:B6)) / (A6 - A2), 2))` ### Treasury 32nds Fractional Bond Quote Conversion (DOLLARDE & DOLLARFR Formula) - **URL**: https://sheets.arte-soft.com/en/learn/treasury-32nd-fractional-bond-quote-dollarde-dollarfr/ - **Summary**: Convert US Treasury fractional handle-and-ticks quotes (such as 99.16 = 99 and 16/32 = 99.50) to exact decimal prices and back using closed-form INT, LEN, and power-of-10 arithmetic. *Table — Decode 32nds and 64ths bond quotes without mispricing 99.16 as $99.16!:* | Fractional Quote (F = 32) | Extracted Ticks (/32) | True Decimal Price | $1M Par Clean Value | | --- | --- | --- | --- | | 99.08 (99-08) | 8 / 32 | 99.25000 | $992,500.00 | | 99.16 (99-16) | 16 / 32 | 99.50000 | $995,000.00 | | 101.24 (101-24) | 24 / 32 | 101.75000 | $1,017,500.00 | - **Formula (Fractional Quote to Decimal Price (Closed-Form DOLLARDE))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Quote or Denominator", ROUND(INT(B2) + ((B2 - INT(B2)) * (10 ^ LEN(B3))) / B3, 5))` - **Formula (Decimal Price to Fractional Quote (Closed-Form DOLLARFR))**: `=IF(OR(B4 < 0, B3 <= 0), "Invalid Quote or Denominator", ROUND(INT(B4) + ((B4 - INT(B4)) * B3) / (10 ^ LEN(B3)), 5))` ### Treasury Bill Bank Discount Rate (DISC) & Bond Equivalent Yield Formula - **URL**: https://sheets.arte-soft.com/en/learn/treasury-bill-bank-discount-rate-and-bond-equivalent-yield/ - **Summary**: Calculate the 360-day money-market Bank Discount Rate (DISC) alongside the 365-day Bond Equivalent Yield (BEY) to compare zero-coupon T-bills fairly against coupon-bearing notes. *Table — Reconcile 360-day par discount quotes with true 365-day investment return!:* | 90-Day T-Bill Price (Par = 100) | Dollar Discount | Bank Discount Rate (360d) | Bond Equivalent Yield (365d) | | --- | --- | --- | --- | | 99.00 | 1.00 | 4.0000% | 4.0965% | | 98.50 | 1.50 | 6.0000% | 6.1760% | | 97.75 | 2.25 | 9.0000% | 9.3350% | - **Formula (Bank Discount Rate % (360-Day Actual/360 DISC Convention))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Bill Inputs", ROUND(((B3 - B2) / B3) * (360 / B4) * 100, 4))` - **Formula (365-Day Bond Equivalent Yield % (BEY))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Bill Inputs", ROUND(((B3 - B2) / B2) * (365 / B4) * 100, 4))` ### Treasury Bond Futures Gross Basis & BNOC Formula - **URL**: https://sheets.arte-soft.com/en/learn/treasury-bond-futures-net-basis-bnoc-and-implied-repo-ctd-formula/ - **Summary**: Calculate Deliverable Bond Gross Price Basis (Clean_Price - Futures * CF), Net Coupon-Minus-Repo Carry, Basis Net of Carry (BNOC), and Cheapest-to-Deliver (CTD) Cash-and-Carry Arbitrage Status. *Table — Identify Cheapest-to-Deliver (CTD) Treasury bonds by minimizing Basis Net of Carry (BNOC)!:* | Treasury Cash-Futures Basis Metric (Cash=102.50, Fut=100.00, CF=1.015, Carry 2.25 - 1.60) | Formula | Verified Output | | --- | --- | --- | | Gross Price Basis (pts) | Clean_Bond_Price - Futures_Price * CF | 1.0000 pt (0.3000 @ Cash=101.80) | | Net Holding Carry (pts) | Coupon_Income_Pts - Repo_Cost_Pts | +0.6500 pt Positive Carry | | Basis Net of Carry BNOC (pts) | Gross_Basis - Net_Carry | +0.3500 pt (-0.3500 @ Cash=101.80) | | Desk Basis Arbitrage Signal | BNOC < 0 vs BNOC = 0 vs BNOC > 0 | Positive BNOC (Embedded Delivery Option Value) | - **Formula (Treasury Futures Basis Net of Carry (BNOC) Formula)**: `=LET(pr_c, B2, ft_p, B3, cf_b, B4, cp_y, B5, rp_c, B6, IF(OR(pr_c <= 0, ft_p <= 0, cf_b <= 0, cp_y < 0, rp_c < 0), "Invalid Bond Basis Input", LET(gr_b, pr_c - ft_p * cf_b, nt_c, cp_y - rp_c, ROUND(gr_b - nt_c, 4))))` - **Formula (Cash-and-Carry Arbitrage Trigger Check (BNOC < 0))**: `=IF(ISTEXT(E4), E4, IF(E4 < 0, "Long Basis Arbitrage (Implied Repo > Market Repo)", IF(E4 = 0, "Zero-Option Fair Basis (BNOC = 0)", "Positive BNOC (Embedded Delivery Option Value)")))` ### Treasury Stock & If-Converted Diluted EPS Formula - **URL**: https://sheets.arte-soft.com/en/learn/treasury-stock-method-and-if-converted-diluted-eps-antidilution-formula/ - **Summary**: Calculate Basic EPS, Treasury-Stock-Method Incremental Option Shares MAX(0, N_opt*(1 - Strike/Avg_Price)), and ASC 260 / IAS 33 Antidilution-Guarded Diluted EPS across Convertible Debt. *Table — Sequence options before convertible bonds—and exclude antidilutive securities from Diluted EPS!:* | ASC 260 Diluted EPS Metric ($10M NI, 2.0M Sh, 250k Opt@$30 vs $50, 100k Conv@$600k Int) | Formula | Verified Output | | --- | --- | --- | | Basic Earnings Per Share ($/sh) | Net_Income / Basic_Shares | $5.00/sh | | Treasury Stock Option Shares | IF(Price <= Strike, 0, N*(1 - Strike/Price)) | 100,000 sh (0 sh @ Price=$25) | | GAAP Diluted EPS ($/sh) | MIN(Opt_Diluted_EPS, If_Converted_EPS) | $4.76/sh ($4.64/sh @ $200k Int) | | Convertible Bond Sequencing Gate | Bond_Inc_EPS < Opt_Diluted_EPS | Exclude Bond: Antidilutive | - **Formula (ASC 260 Antidilution-Guarded Diluted EPS Formula)**: `=LET(nt_i, B2, bs_s, B3, op_n, B4, st_k, B5, av_p, B6, cp_s, B7, IF(OR(nt_i <= 0, bs_s <= 0, op_n < 0, st_k <= 0, av_p <= 0, cp_s < 0), "Invalid ASC 260 EPS Input", LET(ts_s, IF(av_p <= st_k, 0, op_n * (1 - st_k / av_p)), ep_o, nt_i / (bs_s + ts_s), ep_c, (nt_i + cp_s) / (bs_s + ts_s + 100000), ROUND(MIN(ep_o, ep_c), 2))))` - **Formula (Low-Coupon Dilutive Bond ($200k Interest) & Out-of-the-Money Option ($25 Stock) Checks)**: `=IF(ISTEXT(E4), E4, IF((B2 + B7) / (B3 + E3 + 100000) < B2 / (B3 + E3), "Include Bond: Dilutive", "Exclude Bond: Antidilutive"))` ### Treemap Chart Formula: Proportional Tile Area (px^2) & Squarified Aspect Ratio - **URL**: https://sheets.arte-soft.com/en/learn/treemap-chart-squarified-tile-area-and-aspect-ratio-formula/ - **Summary**: Calculate exact rectangular tile pixel areas, strip thicknesses, and Bruls-Huizing-van Wijk Squarified Aspect Ratios MAX(w/h, h/w) for hierarchical Treemap Charts without negative-value distortions. *Table — Why modern Treemaps optimize tile squareness (Aspect Ratio -> 1.0) instead of skinny slice-and-dice ribbons!:* | Treemap Layout Metric (600 × 400 px Canvas = 240,000 px^2, Total = $1,000) | Formula | Evaluated Value | | --- | --- | --- | | Item #1 Area ($250 = 25% Share) | W * H * (Val_1 / Total) | 60,000 px^2 | | Strip Subtotal ($250 + $150 = $400 -> 96,000 px^2 along L_short = 400 px) | t = S_strip / MIN(W, H) | Strip Width t = 240.0 px | | Item #1 Tile Height along Strip (s_1 = A_1 / t) | 60,000 / 240 | 250.0 px | | Item #1 Squarified Aspect Ratio MAX(t/s_1, s_1/t) | MAX(240/250, 250/240) | 1.0417 (Nearly Perfect Square!) | - **Formula (Proportional Treemap Tile Pixel Area A_i (Excluding <= 0 Entries))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < B4), "Treemap Tiles Require Positive Dimensions and 0 < Item <= Positive Total", ROUND((B2 * B3) * (B4 / B5), 1))` - **Formula (Squarified Strip Tile Aspect Ratio MAX(t / s_i, s_i / t) (>= 1.0))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < B6, B6 < B4), "Invalid Treemap Strip Inputs", ROUND(MAX((((B2 * B3) * (B6 / B5)) / MIN(B2, B3)) / (((B2 * B3) * (B4 / B5)) / (((B2 * B3) * (B6 / B5)) / MIN(B2, B3))), (((B2 * B3) * (B4 / B5)) / (((B2 * B3) * (B6 / B5)) / MIN(B2, B3))) / (((B2 * B3) * (B6 / B5)) / MIN(B2, B3))), 4))` ### Treynor-Black Model formulas: Appraisal Ratio & Optimal Active Sleeve Weight - **URL**: https://sheets.arte-soft.com/en/learn/treynor-black-appraisal-ratio-and-active-portfolio-weight/ - **Summary**: Explore the model-implied active weight, appraisal ratio and theoretical Sharpe ratio under a single-index portfolio model. *Table — A model calculation for an active sleeve and market portfolio:* | Core-Satellite Parameter | Cell / Formula | Institutional Inputs | Treynor-Black Output | | --- | --- | --- | --- | | Active Alpha & Residual Vol | B2 = 2.4%, B3 = 12.0% | AR = B2 / B3 | Appraisal Ratio = 0.20 | | Market Risk Prem & Vol | B4 = 6.0%, B5 = 15.0% | Passive Sharpe = 0.40 | Market ratio = 2.6667 | | Optimal Active Weight w_A* | beta_A B6 = 1.0 | (0.024/0.0144) / (0.06/0.0225) | 62.5% Active / 37.5% Index | | Combined Portfolio Sharpe | SQRT((B4/B5)^2 + (B2/B3)^2) | SQRT(0.16 + 0.04) | 0.4472 (up from 0.4000!) | - **Formula (Treynor-Black Optimal Active Sleeve Weight w_A*)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B3<=0,B4<=0,B5<=0),"Invalid inputs",LET(rawWeight,(B2/(B3^2))/(B4/(B5^2)),normalizer,1+(1-B6)*rawWeight,IF(ABS(normalizer)<1E-10,"Undefined weight",ROUND(rawWeight/normalizer,4)))))` - **Formula (Appraisal Ratio (alpha / sigma_e) and Combined Sharpe Ratio)**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B3<=0,B4<=0,B5<=0),"Invalid inputs",ROUND(SQRT(((B4 / B5) ^ 2) + ((B2 / B3) ^ 2)), 4)))` - **Formula (Appraisal ratio from alpha and residual volatility)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(B3<=0,"Invalid inputs",ROUND(B2 / B3, 4)))` ### Information Ratio, Tracking Error, and Treynor Ratio formulas - **URL**: https://sheets.arte-soft.com/en/learn/treynor-ratio-and-information-ratio-tracking-error/ - **Summary**: Evaluate active portfolio managers against a benchmark index using Active Return, Tracking Error (STDEV.S of active diffs), Information Ratio, and Beta-adjusted Treynor Ratio. *Table — Sharpe (total volatility) vs Information Ratio (benchmark Tracking Error) vs Treynor (Beta):* | Portfolio Attribution Metric (5 yrs) | Formula | Sample Result | | --- | --- | --- | | Mean annual active return | =AVERAGE(C2:C6) | +2.00% (0.0200) | | Annual Tracking Error (Active Risk) | =STDEV.S(C2:C6) | 2.12% (0.0212) | | Information Ratio (Active / TE) | =AVERAGE(C2:C6) / STDEV.S(C2:C6) | 0.9428 (sample ratio) | | Treynor Ratio ((Rp - Rf) / Beta) | =(AVERAGE(A2:A6) - E2) / F2 | 0.0750 (9% excess / 1.20 Beta) | - **Formula (Information Ratio (Active Return / Tracking Error) and Treynor Ratio formulas)**: `=IF(COUNT(C2:C6)<2,"Too few observations",IF(STDEV.S(C2:C6)=0,"Undefined zero tracking error",ROUND(AVERAGE(C2:C6) / STDEV.S(C2:C6), 4)))` - **Formula (Treynor Ratio (excess return over Risk-Free Rate E2 per unit of Beta F2))**: `=IF(OR(NOT(ISNUMBER(F2)),F2<=0),"Use positive beta",ROUND((AVERAGE(A2:A6) - E2) / F2, 4))` ### Prepare a Trial Balance from journal entries (SUMIFS + balance check) - **URL**: https://sheets.arte-soft.com/en/learn/trial-balance-debit-credit-check-journal/ - **Summary**: Aggregate general-ledger Debit and Credit lines by account with SUMIFS and verify double-entry balance to the cent. *Table — Roll up journal lines by account and verify Debits = Credits:* | Account (A) | Debit (B) | Credit (C) | Debit minus credit movement | | --- | --- | --- | --- | | Cash | 5000 | 0 | +5,000 | | Revenue | 0 | 5000 | -5,000 (Credit normal) | | Rent | 1200 | 0 | +1,200 | | Cash | 0 | 1200 | -1,200 (Ending Cash = 3,800) | - **Formula (Account ending balance and ledger balance-gate formulas)**: `=SUMIFS(B2:B5, A2:A5, "Cash") - SUMIFS(C2:C5, A2:A5, "Cash")` - **Formula (Two-decimal trial balance check)**: `=IF(ROUND(SUM(B2:B5) - SUM(C2:C5), 2) = 0, "Balanced", "Out by " & ROUND(SUM(B2:B5) - SUM(C2:C5), 2))` ### Triglyceride-Glucose (TyG) Index & TyG-BMI Insulin Resistance Formula - **URL**: https://sheets.arte-soft.com/en/learn/triglyceride-glucose-tyg-index-and-tyg-bmi-insulin-resistance/ - **Summary**: Screen for insulin resistance and MASLD without fasting insulin assays using Simental-Mendía’s logarithmic TyG = LN((Fasting_TG_mgdL * Fasting_Glucose_mgdL) / 2) and composite TyG-BMI index. *Table — Screen insulin resistance from a routine lipid + metabolic panel without ordering fasting insulin!:* | Fasting Metabolic Profile (mg/dL) | TyG Index = LN((TG * Glu) / 2) | Composite TyG-BMI | Metabolic Insulin Sensitivity | | --- | --- | --- | --- | | Optimal Metabolic Health (TG 85, Glu 88, BMI 22.5) | 8.227 (< 8.50) | 185.1 | Insulin Sensitive | | Borderline Dysglycemia (TG 130, Glu 98, BMI 26.0) | 8.759 (8.50–8.79) | 227.7 | Early Adipose/Hepatic IR | | Overt Insulin Resistance (TG 165, Glu 108, BMI 29.4) | 9.095 (>= 8.80) | 267.4 | High IR & MASLD / ASCVD Risk | - **Formula (Logarithmic Triglyceride-Glucose Index TyG = LN((TG_mgdL * Glucose_mgdL) / 2))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Fasting Lab / BMI", ROUND(LN((B2 * B3) / 2), 3))` - **Formula (Composite Adiposity-Coupled TyG-BMI Index = TyG * BMI)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Fasting Lab / BMI", ROUND(LN((B2 * B3) / 2) * B4, 1))` ### TRIM in Excel: clean extra spaces without joining words - **URL**: https://sheets.arte-soft.com/en/learn/trim-extra-spaces-imported-text/ - **Summary**: Clean inconsistent customer labels while preserving the space between words. Then handle a nonbreaking space copied from a web page and check what the cleanup changes. - **Formula (Remove ordinary extra spaces)**: `=TRIM(A2)` - **Formula (Handle a space copied from a web page)**: `=TRIM(SUBSTITUTE(A3,CHAR(160)," "))` ### Trim text to the first N words (or extract the last N words) - **URL**: https://sheets.arte-soft.com/en/learn/trim-text-to-first-n-words-meta-snippet/ - **Summary**: Shorten long product titles and descriptions cleanly at word boundaries using TEXTBEFORE(..., " ", N) without slicing words mid-syllable. *Table — Why TEXTBEFORE(..., " ", N) beats fixed LEFT(A2, 40) previews:* | Full Title (A) | First 4 Words (+ "..." if truncated) | Last 2 Words | | --- | --- | --- | | Wireless Noise Cancelling Studio Headphones | Wireless Noise Cancelling Studio... | Studio Headphones | | USB-C Travel Charger | USB-C Travel Charger (<= 4 words!) | Travel Charger | - **Formula (Smart N-word preview (adds "..." only when truncated) and last-N-words)**: `=IF(OR(B2<1,B2<>INT(B2)),"Invalid word limit",IF(A2="","",LET(s, TRIM(A2), p, IFERROR(TEXTBEFORE(s, " ", B2), CHAR(1)), IF(p=CHAR(1), s, p & "..."))))` - **Formula (Extract the last N words from a cell)**: `=IF(A2="","",LET(s, TRIM(A2), IFERROR(TEXTAFTER(s, " ", -2), s)))` ### TRISS Trauma Survival Probability Formula: Blunt vs Penetrating RTS + ISS + Age Logit - **URL**: https://sheets.arte-soft.com/en/learn/triss-trauma-and-injury-severity-score-blunt-penetrating-survival/ - **Summary**: Compute Carl R. Boyd et al.’s (1987, MTOS) Trauma and Injury Severity Score (TRISS) hospital survival probability P_s = 1 / (1 + EXP(-b)) combining physiological RTS, anatomical ISS, Age >= 55, and Blunt vs Penetrating trauma coefficients. *Table — Unify physiology (RTS), anatomy (ISS), patient age, and mechanism into a single Trauma Survival Benchmark!:* | TRISS Parameter | Classic MTOS Blunt Coefficients | Classic MTOS Penetrating Coefficients | | --- | --- | --- | | Intercept b_0 | -1.2470 | -0.6029 | | Physiological Weight b_1 * RTS (0..7.8408) | +0.9544 * RTS | +1.1430 * RTS | | Anatomical Weight b_2 * ISS (1..75) | -0.0768 * ISS | -0.1516 * ISS | | Senior Reserve Penalty b_3 * I(Age >= 55) | -1.9052 (if Age >= 55) | -2.6676 (if Age >= 55) | - **Formula (TRISS Log-Odds Linear Predictor b (Blunt vs Penetrating MTOS Coefficients))**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "BLUNT", UPPER(TRIM(B2 & "")) <> "PENETRATING"), B3 < 0, B3 > 7.85, B4 < 1, B4 > 75, B5 < 0, B5 > 120), "Invalid TRISS Inputs", ROUND(IF(UPPER(TRIM(B2 & "")) = "BLUNT", -1.247 + 0.9544 * B3 - 0.0768 * B4 - 1.9052 * IF(B5 >= 55, 1, 0), -0.6029 + 1.143 * B3 - 0.1516 * B4 - 2.6676 * IF(B5 >= 55, 1, 0)), 4))` - **Formula (TRISS Predicted Hospital Survival Probability P_s (%))**: `=IF(OR(AND(UPPER(TRIM(B2 & "")) <> "BLUNT", UPPER(TRIM(B2 & "")) <> "PENETRATING"), B3 < 0, B3 > 7.85, B4 < 1, B4 > 75, B5 < 0, B5 > 120), "Invalid TRISS Inputs", ROUND(100 / (1 + EXP(-IF(UPPER(TRIM(B2 & "")) = "BLUNT", -1.247 + 0.9544 * B3 - 0.0768 * B4 - 1.9052 * IF(B5 >= 55, 1, 0), -0.6029 + 1.143 * B3 - 0.1516 * B4 - 2.6676 * IF(B5 >= 55, 1, 0)))), 2))` ### Diagnose XLOOKUP #N/A: Text Numbers and Unwanted Spaces - **URL**: https://sheets.arte-soft.com/en/learn/troubleshoot-xlookup-and-vlookup-text-vs-number-na-errors/ - **Summary**: Test a deliberate text-first, numeric-fallback lookup policy, distinguish true text from numeric cell entry, and avoid silently changing meaningful identifiers. - **Formula (Two-stage lookup when numeric normalization is intentional)**: `=IF(COUNTBLANK(D2)>0,"Enter a key",LET(keyText,TRIM(SUBSTITUTE(D2,CHAR(160)," ")),IF(keyText="","Enter a key",IFNA(XLOOKUP(keyText,A2:A5,B2:B5),IF(IFERROR(ISNUMBER(VALUE(keyText)),FALSE),XLOOKUP(VALUE(keyText),A2:A5,B2:B5,"Key Not Found"),"Key Not Found")))))` - **Formula (Diagnostic Check: Detect Text-vs-Number Type Mismatch)**: `=IF(TYPE(D2) = TYPE(A2), "Types Match", "Type Mismatch: Text vs Number")` ### Trouton’s Rule vs Kistiakowsky Equation: Boiling ΔHvap & ΔSvap - **URL**: https://sheets.arte-soft.com/en/learn/troutons-rule-and-kistiakowsky-boiling-enthalpy-of-vaporization/ - **Summary**: Estimate normal-boiling enthalpy of vaporization ΔH_vap,b (kJ/mol) from normal boiling temperature T_b (K) alone using George Kistiakowsky’s logarithmic entropy law ΔS_vap,b = 36.61 + R * LN(T_b) vs Frederick Trouton’s 88 J/(mol·K) constant. *Table — Why Kistiakowsky’s R·ln(Tb) correction fixes Trouton’s low- and high-boiling drift!:* | Non-Polar Liquid & Normal Boiling Point Tb | Kistiakowsky ΔSvap (J/mol·K) | Kistiakowsky ΔHvap (kJ/mol) | Trouton 0.088·Tb Estimate | | --- | --- | --- | --- | | n-Hexane (Tb = 341.88 K; Expt 28.85) | 85.12 J/(mol·K) | 29.10 kJ/mol (0.9% Err) | 30.09 kJ/mol | | Benzene (Tb = 353.25 K; Expt 30.72) | 85.39 J/(mol·K) | 30.16 kJ/mol (1.8% Err) | 31.09 kJ/mol | | Cryogenic Liquid N2 (Tb = 77.36 K; Expt 5.58) | 72.76 J/(mol·K) | 5.63 kJ/mol (0.9% Err!) | 6.81 kJ/mol (+22% Err!) | - **Formula (Kistiakowsky Predicted Boiling Enthalpy of Vaporization ΔH_vap,b (kJ/mol))**: `=IF(B2 <= 1, "Invalid Boiling Point Tb", ROUND(B2 * (36.61 + 8.3144626 * LN(B2)) / 1000, 2))` - **Formula (Kistiakowsky Molar Entropy of Vaporization ΔS_vap,b (J/(mol·K)))**: `=IF(B2 <= 1, "Invalid Boiling Point Tb", ROUND(36.61 + 8.3144626 * LN(B2), 2))` ### Truelove and Witts Criteria for Acute Severe Ulcerative Colitis (ASUC) - **URL**: https://sheets.arte-soft.com/en/learn/truelove-and-witts-acute-severe-ulcerative-colitis-asuc-criteria/ - **Summary**: Classify ulcerative colitis flares into Mild, Moderate, or Acute Severe UC (ASUC: >= 6 bloody stools/day plus >= 1 systemic toxicity marker: T > 37.8 °C, HR > 90, Hgb < 10.5 g/dL, or CRP/ESR > 30). *Table — Why a 1955 BMJ bedside rule still defines emergency IV corticosteroid admission in ulcerative colitis!:* | Truelove & Witts Severity Tier | Bloody Stools / Day | Systemic Toxicity Markers (0–4) | Inpatient Management | | --- | --- | --- | --- | | Mild Flare | < 4 stools/day | 0 markers (Afebrile, Normal HR/Hgb/CRP) | Outpatient Oral/Rectal 5-ASA | | Moderate Flare | 4 – 5 stools/day (or >=6 w/ 0 toxicity) | 0 systemic toxicity criteria | Oral Prednisolone / Outpatient Biologic | | Acute Severe UC (ASUC) | >= 6 bloody stools/day | >= 1 marker (Temp>37.8, HR>90, Hgb<10.5, CRP>30) | Urgent Inpatient IV Steroids + Day-3 Check | - **Formula (Truelove & Witts Systemic Toxicity Marker Count (0 to 4))**: `=IF(OR(B2 < 0, B3 < 32, B4 <= 20, B5 <= 2, B6 < 0), "Invalid Clinical Inputs", IF(B3 > 37.8, 1, 0) + IF(B4 > 90, 1, 0) + IF(B5 < 10.5, 1, 0) + IF(B6 > 30, 1, 0))` - **Formula (Truelove & Witts Ulcerative Colitis Flare Classification (Mild / Moderate / ASUC))**: `=IF(OR(B2 < 0, B3 < 32, B4 <= 20, B5 <= 2, B6 < 0), "Invalid Clinical Inputs", IF(AND(B2 >= 6, (IF(B3 > 37.8, 1, 0) + IF(B4 > 90, 1, 0) + IF(B5 < 10.5, 1, 0) + IF(B6 > 30, 1, 0)) >= 1), "Acute Severe UC (ASUC — Urgent IV Steroids)", IF(AND(B2 < 4, (IF(B3 > 37.8, 1, 0) + IF(B4 > 90, 1, 0) + IF(B5 < 10.5, 1, 0) + IF(B6 > 30, 1, 0)) = 0), "Mild UC Flare", "Moderate UC Flare")))` ### TRUNC vs INT: chop decimal places without rounding and handle negative values - **URL**: https://sheets.arte-soft.com/en/learn/trunc-vs-int-negative-numbers/ - **Summary**: Understand why TRUNC(-4.89) gives -4 while INT(-4.89) gives -5, and use TRUNC's second argument to cut at N decimal places. *Table — Two crucial differences between TRUNC and INT:* | Input (A) | TRUNC(x) | INT(x) | TRUNC(x, 2) | | --- | --- | --- | --- | | 14.897 | 14 | 14 | 14.89 | | -4.89 | -4 | -5 | -4.89 | - **Formula (Extract exact fractional part of positive or negative numbers)**: `=TRUNC(A2, 2)` - **Formula (Truncate to tens or hundreds with negative num_digits)**: `=TRUNC(148.9, -1)` ### Tsai-Hill Orthotropic Composite Ply Failure Index & Strength Ratio - **URL**: https://sheets.arte-soft.com/en/learn/tsai-hill-anisotropic-composite-ply-failure-index-formula/ - **Summary**: Evaluate biaxial + shear lamina failure under combined in-plane stresses (sigma_1, sigma_2, tau_12) using the quadratic Tsai-Hill failure index FI and reserve strength factor SF = 1 / SQRT(FI). *Table — Account for stress interaction when checking composite plies!:* | Load Case (X=1500, Y=50, S=70 MPa) | Applied (s1, s2, t12) | Tsai-Hill Index FI | Strength Factor SF = 1/SQRT(FI) | | --- | --- | --- | --- | | Design Flight Load | (600, 30, 40) MPa | 0.8385 (< 1.0 Safe) | SF = 1.092 (+9.2% Margin) | | Thermal + Transverse Overload | (600, 45, 40) MPa | 1.2845 (>= 1.0 Failure!) | SF = 0.882 (First-Ply Matrix Crack) | | Invalid Zero/Negative Strength | Y <= 0 | Guarded Input Error | "Invalid Strength Allowables" | - **Formula (Tsai-Hill Quadratic Failure Index FI (Safe < 1.0, Failure >= 1.0))**: `=IF(OR(B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Strength Allowables", ROUND(((B2 / B5) ^ 2) - ((B2 * B3) / (B5 ^ 2)) + ((B3 / B6) ^ 2) + ((B4 / B7) ^ 2), 4))` - **Formula (Linear Reserve Strength Factor SF = 1 / SQRT(FI))**: `=IF(OR(B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Strength Allowables", ROUND(1 / SQRT(((B2 / B5) ^ 2) - ((B2 * B3) / (B5 ^ 2)) + ((B3 / B6) ^ 2) + ((B4 / B7) ^ 2)), 3))` ### Tsai-Wu Tensor Composite Failure Criterion (Tension vs Compression Asymmetry) - **URL**: https://sheets.arte-soft.com/en/learn/tsai-wu-tensor-composite-failure-tension-compression-formula/ - **Summary**: Calculate the Tsai-Wu orthotropic lamina failure index FI = F1*s1 + F2*s2 + F11*s1^2 + F22*s2^2 + F66*t12^2 + 2*F12*s1*s2 accounting for unequal tensile (Xt, Yt) and compressive (Xc, Yc) composite strengths. *Table — Why carbon-epoxy needs Tsai-Wu when transverse compression is 4x stronger than tension!:* | Signed Stress State (s1, s2, t12) | Transverse Mode | Tsai-Wu Index FI | Structural Verdict | | --- | --- | --- | --- | | (+600, -80, 35) MPa | Transverse Compression (Yc = 200) | FI = 0.1478 (< 1.0) | Safe (Linear F2*s2 = -1.20 helps!) | | (+600, +45, 35) MPa | Transverse Tension (Yt = 50) | FI = 1.0263 (>= 1.0) | First-Ply Matrix Failure! | | Zero/Negative Strength Input | Yt <= 0 or Yc <= 0 | Guarded Input Error | "Invalid Strength Allowables" | - **Formula (Tsai-Wu Tensor Polynomial Failure Index FI (Signed Tension + / Compression -))**: `=IF(OR(B5 <= 0, B6 <= 0, B7 <= 0, B8 <= 0, B9 <= 0), "Invalid Strength Allowables", ROUND((((1 / B5) - (1 / B6)) * B2) + (((1 / B7) - (1 / B8)) * B3) + ((B2 ^ 2) / (B5 * B6)) + ((B3 ^ 2) / (B7 * B8)) + ((B4 / B9) ^ 2) - (SQRT(1 / (B5 * B6 * B7 * B8)) * B2 * B3), 4))` - **Formula (Tsai-Wu Ply Failure Verdict (< 1.0 Safe vs >= 1.0 Failure))**: `=IF((((1 / B5) - (1 / B6)) * B2) + (((1 / B7) - (1 / B8)) * B3) + ((B2 ^ 2) / (B5 * B6)) + ((B3 ^ 2) / (B7 * B8)) + ((B4 / B9) ^ 2) - (SQRT(1 / (B5 * B6 * B7 * B8)) * B2 * B3) >= 1, "First-Ply Failure (FI >= 1)", "Safe Lamina (FI < 1)")` ### Tschuprow-Neyman Optimal Stratified Allocation Formula - **URL**: https://sheets.arte-soft.com/en/learn/tschuprow-neyman-optimal-stratified-sample-allocation-formula/ - **Summary**: Calculate Cost-Adjusted Optimal Stratified Sample Sizes n_h* proportional to W_h * S_h / SQRT(c_h), Minimum Estimator Variance under fixed budget B_tot, and Variance Reduction vs Proportional Allocation. *Table — Oversample noisy strata and undersample expensive strata by SQRT(cost)!:* | Stratified Survey Metric (W1=0.8, S1=10, c1=$4; W2=0.2, S2=30, c2=$9; B=$1,700) | Formula | Verified Output | | --- | --- | --- | | Optimal Stratum 1 Sample Size n_1* | B_tot * (W1*S1/SQRT(c1)) / (c1*u1 + c2*u2) | 200 interviews ($800) | | Optimal Stratum 2 Sample Size n_2* | B_tot * (W2*S2/SQRT(c2)) / (c1*u1 + c2*u2) | 100 interviews ($900) | | Optimal Stratified Variance V_opt | (W1*S1*SQRT(c1) + W2*S2*SQRT(c2))^2 / B_tot | 0.6800 | | Proportional Allocation Variance V_prop | (W1*S1^2 + W2*S2^2)*(W1*c1 + W2*c2) / B_tot | 0.7647 (+12.5% Higher Var) | - **Formula (Optimal Cost-Constrained Stratum Sample Size & Minimum Variance Formula)**: `=LET(w_s1, B2, sd_1, B3, cs_1, B4, sd_2, B5, cs_2, B6, bg_t, B7, IF(OR(w_s1 <= 0, w_s1 >= 1, sd_1 <= 0, cs_1 <= 0, sd_2 <= 0, cs_2 <= 0, bg_t <= 0), "Invalid Survey Design", LET(w_s2, 1 - w_s1, ROUND((w_s1 * sd_1 * SQRT(cs_1) + w_s2 * sd_2 * SQRT(cs_2)) ^ 2 / bg_t, 4))))` - **Formula (Proportional-Allocation Benchmark Variance Formula)**: `=LET(w_s1, B2, w_s2, 1 - B2, IF(ISTEXT(E4), E4, ROUND((w_s1 * B3 ^ 2 + w_s2 * B5 ^ 2) * (w_s1 * B4 + w_s2 * B6) / B7, 4)))` ### Tsiolkovsky Ideal Rocket Equation formula: Delta-v = Isp * g0 * LN(m0 / mf) - **URL**: https://sheets.arte-soft.com/en/learn/tsiolkovsky-ideal-rocket-equation-delta-v-and-mass-ratio/ - **Summary**: Calculate ideal delta-v from initial and final mass at constant specific impulse, and invert the model for a propellant fraction. *Table — Define the masses and the ideal model:* | Spacecraft Stage Input | Cell / Formula | Orbital Stage Spec | Astrodynamics Output | | --- | --- | --- | --- | | Engine Isp & Standard g0 | B2 = 320 s, B3 = 9.80665 m/s^2 | Exhaust velocity v_e = B2 * B3 | 3,138.13 m/s | | Initial m0 & Final Mass mf | B4 = 100,000 kg, B5 = 20,000 kg | Mass ratio 5 (80% expelled propellant) | LN(5) = 1.6094 | | Stage Delta-v Capability | B2 * B3 * LN(B4 / B5) | 3,138.128 * 1.609438 | 5,050.62 m/s | | Propellant Fraction for 3 km/s | 1 - EXP(-B6 / (B2 * B3)) | Target B6 = 3,000 m/s | 61.56% initial-mass propellant fraction | - **Formula (Tsiolkovsky stage Delta-v in meters per second (m/s))**: `=IF(COUNT(B2:B6)<>5,"Invalid inputs",IF(OR(B2<=0,B3<>9.80665,B4<=0,B5<=0,B45,"Invalid inputs",IF(OR(B2<=0,B3<>9.80665,B4<=0,B5<=0,B4 4, dp_m < 0.8, dp_m > 6, fm_b < 0.4, fm_b > 0.9, rt_t <= 1), "Invalid Tug Input", ROUND(((bp_t - rt_t) / rt_t) * 100, 1)))` - **Formula (Un-Ducted Open-Wheel Propeller (`FM = 0.56`) Storm-Tow Deficit Check (Set FM B5 = 0.56))**: `=IF(ISTEXT(E5), E5, LET(a1_m, (PI() / 4) * (B4 ^ 2), p1_w, (B2 * 1000) / B3, ti_n, (2 * 1025 * a1_m * (p1_w ^ 2)) ^ (1 / 3), ROUND((B3 * B5 * ti_n) / 9806.65, 2)))` ### Tukey HSD & Tukey-Kramer Post-Hoc ANOVA Pairwise Test Formula - **URL**: https://sheets.arte-soft.com/en/learn/tukey-hsd-and-tukey-kramer-post-hoc-anova-test-formula/ - **Summary**: Calculate Tukey Honestly Significant Difference HSD = q_crit * SQRT(MS_W / n) for balanced groups and the Tukey-Kramer Studentized Range statistic q = ABS(M1 - M2) / SQRT((MS_W / 2) * (1/n1 + 1/n2)) for unequal sample sizes. *Table — Pinpoint WHICH treatment pairs differ after a significant One-Way ANOVA!:* | Pairwise Comparison (MS_W = 18.0, q_crit = 3.53 at alpha = 0.05) | Sample Sizes (n1, n2) | Tukey-Kramer q_stat | Decision vs q_crit = 3.53 | | --- | --- | --- | --- | | Balanced A (84.2) vs B (76.5) | n1 = 10, n2 = 10 | 7.7 / 1.3416 = 5.739 (HSD = 4.736) | Significant (5.739 > 3.53) | | Unbalanced A (84.2) vs C (76.5) | n1 = 10, n2 = 6 | 7.7 / 1.5492 = 4.970 | Significant (4.970 > 3.53) | | Small Gap D (79.0) vs B (76.5) | n1 = 10, n2 = 10 | 2.5 / 1.3416 = 1.863 | Not Significant (<= 3.53) | - **Formula (Tukey-Kramer Studentized Range Statistic q_stat (Equal or Unequal n))**: `=IF(OR(B4 < 2, B5 < 2, B6 <= 0), "Invalid Sample Size or MS_Within", ROUND(ABS(B2 - B3) / SQRT((B6 / 2) * ((1 / B4) + (1 / B5))), 3))` - **Formula (Balanced Tukey Minimum Significant Difference HSD & Pairwise Verdict)**: `=IF((ABS(B2 - B3) / SQRT((B6 / 2) * ((1 / B4) + (1 / B5)))) > B7, "Significant Difference (Reject H0)", "Not Significant")` ### Tullock Rent-Seeking Contest Effort & Dissipation Formula - **URL**: https://sheets.arte-soft.com/en/learn/tullock-rent-seeking-contest-equilibrium-dissipation-formula/ - **Summary**: Calculate symmetric N-player Tullock contest expenditure x* = ((N - 1)*r / N^2)*V, aggregate rent dissipation ((N - 1)/N)*r, and asymmetric two-rival lottery outlays. *Table — Measure how lobbying, patent races, and litigation dissipate prize value V:* | Tullock Contest Metric (V=1,000, N=4) | Lottery r = 1.00 | Threshold r = 4/3 | | --- | --- | --- | | Individual Bid Outlay (x*) | 187.50 | 250.00 | | Total Contest Outlay (N * x*) | 750.00 | 1,000.00 | | Rent Dissipation Ratio (D_rat) | 0.7500 (75.00%) | 1.0000 (100.00% Burned!) | | Individual Expected Net Payoff | 62.50 | 0.00 | - **Formula (Symmetric Pure-Strategy Tullock Individual Outlay x* Formula)**: `=LET(v_prz, B2, n_riv, B3, r_dec, B4, IF(OR(v_prz <= 0, n_riv < 2, r_dec <= 0), "Invalid Contest Input", IF(r_dec > n_riv / (n_riv - 1) + 1E-9, "Over-Dissipation (Mixed Equilibrium Only)", ROUND(((n_riv - 1) * r_dec / (n_riv^2)) * v_prz, 4))))` - **Formula (Aggregate Rent Dissipation Ratio ((N - 1) / N) * r and Expected Net Payoff Formula)**: `=LET(v_prz, B2, n_riv, B3, r_dec, B4, IF(OR(v_prz <= 0, n_riv < 2, r_dec <= 0), "Invalid Contest Input", IF(r_dec > n_riv / (n_riv - 1) + 1E-9, "Over-Dissipation (Mixed Equilibrium Only)", ROUND(((n_riv - 1) / n_riv) * r_dec, 4))))` ### SAG & Ball Mill Critical Centrifuging Speed (%Nc) Formula - **URL**: https://sheets.arte-soft.com/en/learn/tumbling-sag-and-ball-mill-critical-centrifuging-speed-cataracting-formula/ - **Summary**: Calculate Effective Ball-Center Orbit Diameter (D - d), Critical Centrifuging Speed N_c (RPM), Operating Percent Critical Speed (%Nc), and Grinding Motion Regime. *Table — Run a ball mill at 100% Critical Speed and grinding stops dead—steel balls centrifuge against the shell!:* | Tumbling Mill Speed KPI (D = 8.00 m, d_ball = 0.12 m, N_op = 11.0 RPM) | Formula | Verified Output | | --- | --- | --- | | Effective Orbit Diameter (m) | Inside_Liner_D_m - Ball_Dia_d_m | 7.88 m | | Critical Centrifuging Speed Nc | (30 / PI()) * SQRT(19.62 / (D - d)) | 15.07 RPM | | Operating % Critical Speed (%Nc) | (Operating_RPM / Critical_RPM) * 100 | 73.00% (106.18% @ 16.0 RPM!) | | Charge Motion Grinding Regime | 65%–80% Cataracting vs >=100% Lockup | OPTIMAL CATARACTING | - **Formula (Exact Ball-Center Critical Speed & %Nc Cataracting Formula)**: `=LET(dm_i, B2, db_l, B3, n_op, B4, IF(OR(dm_i <= 0.5, db_l < 0, db_l >= 0.25 * dm_i, n_op <= 0), "Invalid Mill Geometry", LET(nc_r, (30 / PI()) * SQRT((2 * 9.81) / (dm_i - db_l)), ROUND((n_op / nc_r) * 100, 2))))` - **Formula (VFD Overspeed Centrifuging Lockup Warning Check (Set Mill Speed = 16.0 RPM))**: `=IF(ISTEXT(E4), E4, LET(nc_r, (30 / PI()) * SQRT((2 * 9.81) / (B2 - B3)), pc_n, (B4 / nc_r) * 100, IF(pc_n >= 100, "CENTRIFUGING LOCKUP", IF(AND(pc_n >= 65, pc_n <= 80), "OPTIMAL CATARACTING", "CASCADING ATTRITION"))))` ### NATM Shotcrete Rebound Delivery & Rockbolt Safety Formula - **URL**: https://sheets.arte-soft.com/en/learn/tunnel-shotcrete-rebound-mass-balance-adhesion-shear-and-rockbolt-tributary-safety/ - **Summary**: Calculate In-Place Crown Shotcrete Volume (m³), Rebound-Adjusted Batch-Plant Delivery Volume (m³), Tributary Dead-Weight Rock-Wedge Load per Bolt (kN), and Rockbolt Factor of Safety. *Table — Multiplying 6.5 m³ of crown shotcrete by 1.18 instead of dividing by (1 - 0.18) leaves the nozzle short—while widening rockbolts from 1.5 to 2.2 m drops wedge safety to 0.78!:* | NATM Shotcrete & Rockbolt Support KPI (65 m² x 100 mm, h_w=1.8 m, Ty=180 kN) | Formula | Verified Output | | --- | --- | --- | | In-Place Shotcrete Volume (m³) | Sprayed_Area_m2 * (Thickness_mm / 1000) | 6.50 m³ neat shell | | Batch-Plant Delivery Vol (m³) | InPlace_Vol_m3 / (1 - Rebound_Pct / 100) | 7.93 m³ (10.16 m³ @ 36% dry-mix!) | | Tributary Wedge Load / Bolt (kN) | (Bolt_Grid_s_m ^ 2) * Depth_hw_m * gamma_r | 107.3 kN (230.9 kN @ 2.2 m grid!) | | Rockbolt Factor of Safety (FS) | Bolt_Yield_kN / Tributary_Wedge_Load_kN | 1.68 SAFE (0.78 < 1.0 ROOF FALLOUT!) | - **Formula (ACI 506R Shotcrete Rebound Mass Balance & Tributary Rockbolt Suspension Formula)**: `=LET(ac_m, B2, th_m, B3, rb_p, B4, sb_m, B5, hw_m, B6, gr_k, B7, ty_k, B8, wb_k, (sb_m ^ 2) * hw_m * gr_k, IF(OR(ac_m < 5, ac_m > 1000, th_m < 30, th_m > 400, rb_p < 2, rb_p > 55, sb_m < 0.6, sb_m > 3.5, hw_m < 0.3, hw_m > 6, gr_k < 18, gr_k > 34, ty_k < 50, ty_k > 600), "Invalid Support Input", ROUND(ty_k / wb_k, 2)))` - **Formula (Dry-Mix Overhead Rebound (`36%`) + Stretched Bolt Grid (`s = 2.2` m) Crown Collapse Check)**: `=IF(ISTEXT(E5), E5, ROUND((B2 * (B3 / 1000)) / (1 - B4 / 100), 2))` ### Turbomachinery Labyrinth Seal Martin Leakage Formula - **URL**: https://sheets.arte-soft.com/en/learn/turbomachinery-stepped-labyrinth-seal-martin-carryover-gas-leakage-formula/ - **Summary**: Calculate Annular Tooth-Tip Clearance Area (mm²), Martin Compressible Expansion-Throttling Factor, Parasitic Gas Leakage Mass Flow (kg/s), and Hourly Leakage Loss (kg/h). *Table — How 12 non-contacting knife-edge labyrinth teeth choke high-pressure turbine leakage—and why a rotor rub doubles steam loss!:* | Martin Labyrinth Seal KPI (D=160 mm, c=0.35 mm, 18 -> 3 bar(a), 620 K, N=12 Teeth) | Formula | Verified Output | | --- | --- | --- | | Annular Gap Area A_cl (mm²) | PI() * Shaft_D_mm * Radial_c_mm | 175.93 mm² (376.99 mm² @ worn 0.75 mm!) | | Martin Expansion Factor | SQRT((1 - (P2/P1)^2) / (N - LN(P2/P1))) | 0.2655 | | Parasitic Leakage Flow (kg/s) | Cd * A_m2 * (P1_Pa/SQRT(R*T1)) * Factor | 0.1435 kg/s (0.3075 kg/s @ worn 0.75 mm!) | | Hourly Parasitic Loss (kg/h) | Leakage_Mass_Flow_kg_s * 3600 | 516.6 kg/h (1,107.0 kg/h = +114% loss!) | - **Formula (H. M. Martin Multi-Tooth Compressible Labyrinth Leakage Formula)**: `=LET(dm_m, B2 / 1000, cl_m, B3 / 1000, pu_p, B4 * 100000, pr_r, B5 / B4, tk_g, B6, rg_j, B7, nt_c, B8, cd_f, B9, ac_m, PI() * dm_m * cl_m, mf_t, SQRT((1 - (pr_r ^ 2)) / (nt_c - LN(pr_r))), ms_k, cd_f * ac_m * (pu_p / SQRT(rg_j * tk_g)) * mf_t, IF(OR(B2 <= 10, B3 <= 0.02, B3 > 5, B5 <= 0, B4 <= B5, tk_g <= 100, rg_j <= 50, nt_c < 2, cd_f < 0.4, cd_f > 1), "Invalid Labyrinth Input", ROUND(ms_k * 3600, 1)))` - **Formula (Critical-Speed Rotor Rub Worn Clearance (c = 0.75 mm) Efficiency Loss Check (Set Clearance B3 = 0.75 mm))**: `=IF(ISTEXT(E5), E5, LET(ac_m, PI() * (B2 / 1000) * (B3 / 1000), pr_r, B5 / B4, mf_t, SQRT((1 - (pr_r ^ 2)) / (B8 - LN(pr_r))), ROUND(B9 * ac_m * ((B4 * 100000) / SQRT(B7 * B6)) * mf_t, 4)))` ### Turbomolecular Pump Compression Ratio & H2 Back-Streaming - **URL**: https://sheets.arte-soft.com/en/learn/turbomolecular-vacuum-pump-compression-ratio-rotor-blade-speed-and-foreline-pressure/ - **Summary**: Calculate Rotor Blade Linear Speed vb (m/s), Maxwell Most-Probable Molecular Speed vm (m/s), Blade-to-Molecular Speed Ratio, and Log10 Zero-Flow Compression Ratio log10(K0). *Table — Why a turbomolecular pump with 100,000,000:1 compression on Nitrogen drops to ~160:1 on Hydrogen—letting H2 back-stream out of your roughing foreline!:* | Kruger-Shapiro TMP Compression KPI (60,000 RPM, R=0.068 m, T=295 K, G=18.5) | Formula | Verified Output | | --- | --- | --- | | Rotor Blade Linear Speed vb (m/s) | 2 * PI() * Mean_Radius_m * (RPM / 60) | 427.3 m/s | | Most-Probable Gas Speed vm (m/s) | SQRT((2 * 8.3144626 * T_K) / (MW_g_mol / 1000)) | 418.5 m/s N2 (1,559.9 m/s H2!) | | Blade-to-Gas Speed Ratio (vb / vm) | Blade_Speed_vb / Molecular_Speed_vm | 1.021 N2 (0.274 H2 supersonic gas!) | | Log10 Max Compression log10(K0) | (Geom_G * (vb / vm)) / LN(10) | 8.20 -> 1.58x10⁸ N2 (2.20 -> 158x H2!) | - **Formula (Kruger-Shapiro Exponential Molecular Compression & Molar-Mass Scaling Formula)**: `=LET(nr_p, B2, rb_m, B3, mw_g, B4, tk_g, B5, gf_s, B6, vb_s, 2 * PI() * rb_m * (nr_p / 60), vm_s, SQRT((2 * 8.3144626 * tk_g) / (mw_g / 1000)), IF(OR(nr_p < 5000, nr_p > 120000, rb_m < 0.02, rb_m > 0.3, vb_s > 620, mw_g < 2, mw_g > 350, tk_g < 77, tk_g > 500, gf_s < 3, gf_s > 35), "Invalid TMP Input", ROUND((gf_s * (vb_s / vm_s)) / LN(10), 2)))` - **Formula (Hydrogen (M = 2.016 g/mol) 6-Decade Compression Collapse Check (Set Gas MW B4 = 2.016))**: `=IF(ISTEXT(E5), E5, ROUND(SQRT((2 * 8.3144626 * B5) / (B4 / 1000)), 1))` ### Turc (1954) & Budyko Curve Watershed Water-Balance Formula: Annual AET & Runoff Yield - **URL**: https://sheets.arte-soft.com/en/learn/turc-and-budyko-annual-watershed-actual-evapotranspiration-balance/ - **Summary**: Partition long-term annual catchment precipitation P into Actual Evapotranspiration (AET) and Streamflow Runoff Q = P - AET using Mikhail I. Budyko’s (1974) Aridity Curve (P, PET) and Lucien Turc’s (1954) Temperature-Precipitation Law. *Table — Enforce simultaneous energy-limit (AET <= PET) and water-limit (AET <= P) catchment bounds!:* | Catchment Climate Regime | Annual P & PET (mm/yr) | Aridity Index phi = PET / P | Budyko AET & Annual Runoff Q = P - AET | | --- | --- | --- | --- | | Humid Temperate Basin | P = 1,200, PET = 720 | phi = 0.60 (Energy-Limited) | AET = 602.5 mm \| Runoff Q = 597.5 mm | | Balanced Semi-Humid Basin | P = 800, PET = 800 | phi = 1.00 (Equilibrium) | AET = 555.1 mm \| Runoff Q = 244.9 mm | | Semi-Arid Steppe Basin | P = 400, PET = 1,200 | phi = 3.00 (Water-Limited) | AET = 382.9 mm \| Runoff Q = 17.1 mm | - **Formula (Budyko (1974) Mean Annual Actual Evapotranspiration AET (mm/yr))**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Annual Precipitation P > 0 and PET > 0 mm/yr", ROUND(B2 * SQRT((B3 / B2) * ((1 - EXP(-2 * (B2 / B3))) / (1 + EXP(-2 * (B2 / B3)))) * (1 - EXP(-(B3 / B2)))), 1))` - **Formula (Turc (1954) Temperature-Based Annual AET (mm/yr) & Budyko Runoff Q = P - AET)**: `=IF(OR(B2 <= 0, B4 <= -5, B4 > 40), "Requires P > 0 and Mean Annual Temp -5 < T <= 40 °C", ROUND(B2 / SQRT(0.9 + ((B2 / (300 + 25 * B4 + 0.05 * (B4 ^ 3))) ^ 2)), 1))` ### Discrete Geometric Asian Option and Arithmetic Forward Moment Formula - **URL**: https://sheets.arte-soft.com/en/learn/turnbull-wakeman-geometric-and-moment-matched-asian-option-price/ - **Summary**: Price discrete n-fixing Geometric Asian calls exactly via Kemna-Vorst volatility scaling and compute the Turnbull-Wakeman discrete arithmetic forward mean M1. *Table — Distinguish discrete n-fixing Asian volatility from the continuous sig / SQRT(3) limit:* | Asian Quantity (n = 12 Monthly) | Exact Formula | Sample Output | | --- | --- | --- | | Discrete Geometric Vol sig_G | sig * SQRT((n + 1)*(2*n + 1) / (6*n^2)) | 0.1840 (vs continuous 0.1732) | | Effective Geometric Carry b_G | 0.5*((n+1)/n)*(b - 0.5*sig^2) + 0.5*sig_G^2 | 0.0251 | | Kemna-Vorst Geometric Call C_Geo | Generalized BSM(S, K, r, b_G, sig_G, T) | 8.2498 (Strict lower bound on Arith) | | Turnbull-Wakeman Arith Forward M1 | S * (1/n) * dt_1 * (1 - EXP(b*T)) / (1 - dt_1) | 103.3188 (where dt_1 = EXP(b*T/n)) | - **Formula (Discrete Geometric Asian Volatility Formula)**: `=IF(OR(B6 <= 0, B7 <= 0, B8 < 1), "Invalid Asian Input", ROUND(B6 * SQRT(((B8 + 1) * (2 * B8 + 1)) / (6 * B8^2)), 4))` - **Formula (Kemna-Vorst Discrete Geometric Asian Call Price Formula)**: `=LET(s_px, B2, k_str, B3, r_rf, B4, b_car, B5, sig_v, B6, t_yr, B7, n_fx, B8, IF(OR(sig_v <= 0, t_yr <= 0, n_fx < 1), "Invalid Asian Input", LET(var_g, (sig_v^2) * ((n_fx + 1) * (2 * n_fx + 1)) / (6 * n_fx^2), sig_g, SQRT(var_g), b_geo, 0.5 * ((n_fx + 1) / n_fx) * (b_car - 0.5 * sig_v^2) + 0.5 * var_g, sig_t, sig_g * SQRT(t_yr), d_1, (LN(s_px / k_str) + (b_geo + 0.5 * var_g) * t_yr) / sig_t, d_2, d_1 - sig_t, t_1, 1 / (1 + 0.2316419 * ABS(d_1)), p_1, 0.3989422804014327 * EXP(-0.5 * d_1^2) * t_1 * (0.31938153 + t_1 * (-0.356563782 + t_1 * (1.781477937 + t_1 * (-1.821255978 + 1.330274429 * t_1)))), nd_1, IF(d_1 >= 0, 1 - p_1, p_1), t_2, 1 / (1 + 0.2316419 * ABS(d_2)), p_2, 0.3989422804014327 * EXP(-0.5 * d_2^2) * t_2 * (0.31938153 + t_2 * (-0.356563782 + t_2 * (1.781477937 + t_2 * (-1.821255978 + 1.330274429 * t_2)))), nd_2, IF(d_2 >= 0, 1 - p_2, p_2), ROUND(s_px * EXP((b_geo - r_rf) * t_yr) * nd_1 - k_str * EXP(-r_rf * t_yr) * nd_2, 4))))` ### Two-Dice Sum Probability Distribution, Tail Thresholds & Expected Payoff Formulas - **URL**: https://sheets.arte-soft.com/en/learn/two-dice-and-three-dice-sum-probability-distribution-and-expected-payoff/ - **Summary**: Calculate exact 2d6 discrete convolution ways 6 - ABS(Sum - 7), closed-form tail probabilities P(Sum >= Target), and expected game value without volatile RANDARRAY recalculation. *Table — Why exact combinatorial formulas beat volatile Monte Carlo dice sheets:* | Target Sum T | Exact Ways (= T) | Exact Ways (>= T) | P(Sum >= T) | | --- | --- | --- | --- | | T = 2 | 1 / 36 | 36 / 36 | 1.0000 | | T = 7 (Mode) | 6 / 36 | 21 / 36 | 0.5833 | | T = 10 | 3 / 36 | 6 / 36 | 0.1667 | | T = 12 | 1 / 36 | 1 / 36 | 0.0278 | - **Formula (Exact 2d6 Point & Upper-Tail Probability Formulas)**: `=ROUND(IF(B2 >= 7, (13 - B2) * (14 - B2) / 2, 36 - (B2 - 1) * (B2 - 2) / 2) / 36, 4)` - **Formula (Expected Net Payoff Across Outcome Buckets (SUMPRODUCT))**: `=ROUND(SUMPRODUCT(E2:E4, F2:F4) / 36, 4)` ### Two-Dimensional VLOOKUP + MATCH Formula: Dynamic Row & Column Matrix Lookup - **URL**: https://sheets.arte-soft.com/en/learn/two-dimensional-vlookup-match-column-selector-matrix/ - **Summary**: Replace brittle hardcoded VLOOKUP column numbers with MATCH(ColHeader, A1:D1, 0) or INDEX + MATCH + MATCH to query any row-and-column intersection dynamically. *Table — Why hardcoding col_index_num = 3 breaks the moment someone inserts a column!:* | Query Pair (Zone F2, Service F3) | MATCH(F3, A1:D1, 0) Col Index | Returned Freight Rate ($) | Why Dynamic Wins | | --- | --- | --- | --- | | ("Zone_3", "2_Day_Air") | Col 3 of A1:D1 | $48.50 | No manual column counting | | ("Zone_4", "Overnight") | Col 4 of A1:D1 | $94.00 | Updates instantaneously on F2/F3 edits | | ("Zone_9", "Ground") — Missing | #N/A -> IFNA Guard | "Invalid Zone or Service Tier" | Clean audit message | - **Formula (Two-Dimensional VLOOKUP + MATCH Dynamic Column Formula)**: `=IFNA(VLOOKUP(F2, A2:D5, MATCH(F3, A1:D1, 0), FALSE), "Invalid Zone or Service Tier")` - **Formula (Equivalent INDEX + MATCH + MATCH Matrix Intersection Formula)**: `=IFNA(INDEX(B2:D5, MATCH(F2, A2:A5, 0), MATCH(F3, B1:D1, 0)), "Invalid Zone or Service Tier")` ### Two-Leg Bridle Sling Angle Tension & WLL Formula - **URL**: https://sheets.arte-soft.com/en/learn/two-leg-bridle-sling-angle-tension-multiplier-and-horizontal-compression/ - **Summary**: Calculate Per-Leg Sling Angle Multiplier 1/(2*SIN(theta)), Actual Tension Per Sling Leg (t), Inward Horizontal Crushing Force on Load (t), and Derated Hitch Working Load Limit (t). *Table — Rigging a two-leg bridle sling at a flat 30° horizontal angle puts the ENTIRE 100% payload tension into EACH leg—overloading slings!:* | ASME B30.9 Bridle Sling KPI (Load W=12.0 t, Angle=60° vs 30°, Single-Leg WLL=8.0 t) | Formula | Verified Output | | --- | --- | --- | | Per-Leg Tension Multiplier | 1 / (2 * SIN(Angle_deg * PI()/180)) | 0.5774 (1.0000 @ flat 30° angle!) | | Actual Tension Per Sling Leg (t) | Payload_t / (2 * SIN(Angle_rad)) | 6.93 t (12.00 t > 8t WLL @ 30°!) | | Inward Horizontal Pinch Force (t) | (Payload_t / 2) / TAN(Angle_rad) | 3.46 t (10.39 t buckling @ 30°!) | | Derated Two-Leg Hitch WLL (t) | 2 * Single_Leg_WLL_t * SIN(Angle_rad) | 13.86 t (8.00 t < 12t OVERLOAD @ 30°!) | - **Formula (ASME B30.9 Horizontal Sling-Angle Trigonometry & Derated Bridle WLL Formula)**: `=LET(wt_t, B2, an_d, B3, wl_s, B4, IF(OR(wt_t <= 0, an_d < 30, an_d > 90, wl_s <= 0), "Invalid or <30 deg Prohibited Sling Angle", ROUND(2 * wl_s * SIN(an_d * (PI() / 180)), 2)))` - **Formula (Low-Headroom 30° Sling Angle Overload Trap Check (Set Sling Angle B3 = 30.0°))**: `=IF(ISTEXT(E5), E5, ROUND(B2 / (2 * SIN(B3 * (PI() / 180))), 2))` ### Two-Part Tariff Access Fee & Usage Price Formula (Oi Rule) - **URL**: https://sheets.arte-soft.com/en/learn/two-part-tariff-access-fee-and-usage-price-oi-monopoly-formula/ - **Summary**: Optimize a subscription + usage two-part tariff (T*, p*) across homogeneous and heterogeneous customer segments using Walter Oi’s (1971) Disneyland Dilemma formula. *Table — Why heterogeneous customers push optimal usage price strictly ABOVE marginal cost!:* | Two-Part Tariff Metric (a_L=20, a_H=30, b=1, c=4) | lambda_L = 1.00 (Homogeneous) | lambda_L = 0.60 (Mass Market) | | --- | --- | --- | | Optimal Usage Price (p*) | 4.00 (= Marginal Cost c) | 8.00 (> Marginal Cost!) | | Optimal Access / Base Fee (T*) | 128.00 | 72.00 | | Inclusive Profit per Buyer | 128.00 | 136.00 (vs 135.20 Exclusive) | - **Formula (Inclusive Two-Segment Optimal Usage Price p* = c + (1 - lambda_L)*(a_H - a_L)/b Formula)**: `=LET(a_lo, B2, a_hi, B3, b_sl, B4, c_mc, B5, lam_l, B6, IF(OR(b_sl <= 0, c_mc < 0, a_lo <= b_sl * c_mc, a_hi < a_lo, lam_l <= 0, lam_l > 1), "Invalid Tariff Input", LET(p_inc, c_mc + (1 - lam_l) * (a_hi - a_lo) / b_sl, IF(a_lo <= b_sl * p_inc, "Low Segment Excluded at Interior Price", ROUND(p_inc, 4)))))` - **Formula (Global Optimal Profit per Potential Buyer MAX(Inclusive_Profit, Exclusive_High_Profit) Formula)**: `=LET(a_lo, B2, a_hi, B3, b_sl, B4, c_mc, B5, lam_l, B6, IF(OR(b_sl <= 0, c_mc < 0, a_lo <= b_sl * c_mc, a_hi < a_lo, lam_l <= 0, lam_l > 1), "Invalid Tariff Input", LET(p_inc, c_mc + (1 - lam_l) * (a_hi - a_lo) / b_sl, pi_ex, (1 - lam_l) * ((a_hi - b_sl * c_mc)^2) / (2 * b_sl), pi_in, IF(a_lo <= b_sl * p_inc, 0, ((a_lo - b_sl * p_inc)^2) / (2 * b_sl) + (p_inc - c_mc) * (lam_l * (a_lo - b_sl * p_inc) + (1 - lam_l) * (a_hi - b_sl * p_inc))), ROUND(MAX(pi_in, pi_ex), 4))))` ### Two-Product Froth Flotation Mass Pull & Metal Recovery Formula - **URL**: https://sheets.arte-soft.com/en/learn/two-product-mineral-froth-flotation-mass-pull-metallurgical-recovery-formula/ - **Summary**: Calculate Concentrate Mass Pull C/F (%), Metallurgical Metal Recovery R (%), Ratio of Concentration K, and Hourly Concentrate Filter-Cake Tonnage (t/hr) from Feed, Concentrate & Tailings Assays. *Table — Three XRF chemical assays (f, c, t) lock metallurgical recovery R without weighing concentrate slurry!:* | Flotation Circuit KPI (500 t/hr Ore, f = 0.80% Cu, c = 26.0%, t = 0.08%) | Formula | Verified Output | | --- | --- | --- | | Concentrate Mass Pull C/F (%) | ((f - t) / (c - t)) * 100 | 2.78% (2.33% @ t = 0.20% Cu) | | Metallurgical Cu Recovery (%) | ((c * (f - t)) / (f * (c - t))) * 100 | 90.28% (75.58% @ t = 0.20% Cu!) | | Ratio of Concentration K (t/t) | (c - t) / (f - t) | 36.00 (43.00 @ t = 0.20% Cu) | | Concentrate Tonnage C (t/hr) | Feed_t_hr * ((f - t) / (c - t)) | 13.89 t/hr (11.63 @ t = 0.20% Cu) | - **Formula (Exact Three-Assay Metallurgical Recovery Formula)**: `=LET(fd_t, B2, fg_p, B3, cg_p, B4, tg_p, B5, IF(OR(fd_t <= 0, tg_p < 0, fg_p <= tg_p, cg_p <= fg_p, cg_p > 100), "Invalid Assay Ordering", ROUND(((cg_p * (fg_p - tg_p)) / (fg_p * (cg_p - tg_p))) * 100, 2)))` - **Formula (Coarse Grind Unliberated Sulfide Tailings Loss Check (Set Tailings Grade t = 0.20% Cu))**: `=IF(ISTEXT(E3), E3, ROUND(B2 * ((B3 - B5) / (B4 - B5)), 2))` ### Calculate a fictional two-rate marginal charge with MIN and MAX - **URL**: https://sheets.arte-soft.com/en/learn/two-rate-marginal-tax-and-overtime-threshold-formula/ - **Summary**: Split an amount at a threshold, apply one rate to each slice, and compare rounded charges with the underlying blended rate. *Table — Replace nested IFs with the branchless MIN + MAX kinked-schedule pattern!:* | Input amount | First slice at0.15 | Excess at0.25 | Charge and blended rate | | --- | --- | --- | --- | | $75,000 | $50,000 * 15% = $7,500 | $25,000 * 25% = $6,250 | $13,750 (18.33% effective) | | $40,000 (Below kink) | $40,000 * 15% = $6,000 | $0 * 25% = $0 | $6,000 (15.00% effective) | | -5000 | 0 by chosen example policy | 0 | 0; blended rate displayed as0 by convention | - **Formula (Calculate the marginal charge, rounded to cents)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B3<0,B4<0,B5<0),"Invalid inputs",ROUND(MAX(0, MIN(B2, B3)) * B4 + MAX(0, B2 - B3) * B5, 2)))` - **Formula (Underlying blended rate before cent rounding)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B3<0,B4<0,B5<0),"Invalid inputs",IF(B2 <= 0, 0, ROUND((MAX(0, MIN(B2, B3)) * B4 + MAX(0, B2 - B3) * B5) / B2, 4))))` ### Margules Non-Ideal Liquid Activity Coefficients (gamma1 & gamma2 VLE) - **URL**: https://sheets.arte-soft.com/en/learn/two-suffix-margules-non-ideal-vle-activity-coefficients/ - **Summary**: Calculate asymmetric binary vapor-liquid equilibrium (VLE) activity coefficients gamma_1 = EXP((1 - x_1)^2 * (A_12 + 2*(A_21 - A_12)*x_1)) and gamma_2 = EXP(x_1^2 * (A_21 + 2*(A_12 - A_21)*(1 - x_1))) for azeotropic distillation columns. *Table — Capture positive & negative Raoult’s Law deviations in non-ideal binary distillation!:* | Liquid Mole Fraction x1 (A12 = 1.45, A21 = 0.95) | Activity Coefficient gamma1 | Activity Coefficient gamma2 | Thermodynamic VLE Limit | | --- | --- | --- | --- | | Infinite Dilution of 1 (x1 = 0.00) | 4.2631 (= EXP(A12)) | 1.0000 (Pure Component 2) | Henry’s Law Infinite Dilution | | Operating Tray Composition (x1 = 0.30) | 1.7568 (> 1 Positive Dev.) | 1.1601 | Enhanced Relative Volatility | | Pure Component 1 (x1 = 1.00) | 1.0000 (Raoult’s Limit) | 2.5857 (= EXP(A21)) | Gibbs-Duhem Boundary Verified | - **Formula (Asymmetric Margules Activity Coefficient gamma_1 for Component 1)**: `=IF(OR(B2 < 0, B2 > 1), "Invalid Mole Fraction (0-1)", ROUND(EXP(((1 - B2) ^ 2) * (B3 + 2 * (B4 - B3) * B2)), 4))` - **Formula (Asymmetric Margules Activity Coefficient gamma_2 for Component 2)**: `=IF(OR(B2 < 0, B2 > 1), "Invalid Mole Fraction (0-1)", ROUND(EXP((B2 ^ 2) * (B4 + 2 * (B3 - B4) * (1 - B2))), 4))` ### 2D Matrix Dynamic Row Sum, Column Sum & Two-Way Lookup (SUMPRODUCT) - **URL**: https://sheets.arte-soft.com/en/learn/two-way-2d-matrix-lookup-and-sum-row-or-column-sumproduct/ - **Summary**: Sum an entire dynamically matched row, sum an entire dynamically matched column, or retrieve a two-way matrix intersection across a 2D table using boolean-broadcast SUMPRODUCT. *Table — Broadcast 1D header comparisons across a 2D budget matrix without volatile OFFSET!:* | Dynamic Selector Query | Boolean Broadcast Expression | Evaluated Slice | Result ($k) | | --- | --- | --- | --- | | Full Row Sum (Region G2 = "South") | (A2:A5 = G2) * B2:E5 | 200 + 210 + 240 + 250 | 900 | | Full Column Sum (Quarter G3 = "Q3") | (B1:E1 = G3) * B2:E5 | 180 + 240 + 160 + 190 | 770 | | 2D Intersection ("South" & "Q3") | (A2:A5 = G2) * (B1:E1 = G3) * B2:E5 | Single Cell D3 | 240 | - **Formula (Dynamic Full-Row Matrix Sum = SUMPRODUCT((Row_Headers = Target) * Matrix_2D))**: `=IF(COUNTIF(A2:A5, G2) = 0, "Unknown Row Label", SUMPRODUCT((A2:A5 = G2) * B2:E5))` - **Formula (Dynamic Full-Column Matrix Sum = SUMPRODUCT((Col_Headers = Target) * Matrix_2D))**: `=IF(COUNTIF(B1:E1, G3) = 0, "Unknown Column Header", SUMPRODUCT((B1:E1 = G3) * B2:E5))` ### Two-way approximate match lookup: 2D bracket grid (INDEX & XMATCH) - **URL**: https://sheets.arte-soft.com/en/learn/two-way-approximate-match-lookup-grid/ - **Summary**: Look up rates in a 2D bracket matrix (such as Order Weight × Credit Tier or LTV × FICO Score) where both row and column headers are numeric thresholds. *Table — Why 2D rate cards need approximate matching in BOTH directions:* | Min Weight kg (A) | Score 620+ (B) | Score 700+ (C) | Score 760+ (D) | | --- | --- | --- | --- | | 0 kg | 7.50% | 6.80% | 6.20% | | 10 kg (25 kg lands here) | 7.10% | 6.50% (720 lands here!) | 5.90% | | 50 kg | 6.70% | 6.10% | 5.50% | - **Formula (Two-way approximate tier lookup with INDEX and XMATCH (-1))**: `=INDEX(B2:D4, XMATCH(F2, A2:A4, -1), XMATCH(G2, B1:D1, -1))` - **Formula (Handle inputs below the supplied thresholds)**: `=LET(rowIndex, XMATCH(F2, A2:A4, -1), colIndex, XMATCH(G2, B1:D1, -1), IF(ISNA(rowIndex) + ISNA(colIndex) > 0, "Below supplied thresholds", INDEX(B2:D4, rowIndex, colIndex)))` ### Two-Way Slab Punching Shear Critical Perimeter (b0) Formula - **URL**: https://sheets.arte-soft.com/en/learn/two-way-concrete-slab-punching-shear-critical-perimeter-b0-capacity-formula/ - **Summary**: Calculate ACI 318 Critical d/2 Perimeter b_0 (mm) around an Interior Column, Nominal Two-Way Shear Strength V_c (kN), Factored Shear Resistance phi*V_c (kN), and Demand-to-Capacity Ratio. *Table — Offset the punching shear cone by d/2 on ALL sides—adding d to EACH column dimension!:* | Two-Way Punching KPI (450x450 mm Col, d=200 mm, fc'=30 MPa, Vu=650 kN) | Formula | Verified Output | | --- | --- | --- | | Critical Perimeter b0 at d/2 (mm) | 2 * (c1 + d) + 2 * (c2 + d) | 2,600.00 mm (2,800 @ d = 250 mm) | | Nominal Concrete Shear Vc (kN) | (0.33 * SQRT(fc') * b0 * d) / 1000 | 939.89 kN (1,265.24 @ d = 250 mm) | | Design Punching phi*Vc (kN) | 0.75 * Nominal_Vc_kN | 704.92 kN (948.93 @ d = 250 mm) | | Punching DCR Ratio Vu / (phi*Vc) | Factored_Shear_Vu / (0.75 * Vc) | 0.922 (0.685 @ d = 250 mm) | - **Formula (ACI 318 Interior-Column Two-Way Punching Capacity & DCR Formula)**: `=LET(c1_m, B2, c2_m, B3, dp_s, B4, fc_m, B5, vu_k, B6, IF(OR(c1_m < 150, c2_m < 150, MAX(c1_m, c2_m) / MIN(c1_m, c2_m) > 2, dp_s < 100, fc_m < 17, fc_m > 68, vu_k <= 0), "Invalid Slab Input", LET(b0_p, 2 * (c1_m + dp_s) + 2 * (c2_m + dp_s), vc_n, (0.33 * SQRT(fc_m) * b0_p * dp_s) / 1000, ROUND(0.75 * vc_n, 2))))` - **Formula (Drop-Panel +50 mm Slab Thickening Quadratic Gain Check (Set Effective Depth d = 250 mm))**: `=IF(ISTEXT(E4), E4, LET(b0_p, 2 * (B2 + B4) + 2 * (B3 + B4), pv_c, 0.75 * ((0.33 * SQRT(B5) * b0_p * B4) / 1000), ROUND(B6 / pv_c, 3)))` ### Two-way summary matrix with SUMIFS and COUNTIFS (live cross-tab table) - **URL**: https://sheets.arte-soft.com/en/learn/two-way-summary-matrix-sumifs-countifs/ - **Summary**: Build a live PivotTable-style Region x Category grid that updates automatically without manual refresh using mixed references ($E2 and F$1). *Table — Lock the row header column ($E2) and column header row (F$1):* | Region \ Category | Hardware (F$1) | Software (G$1) | Row Total | | --- | --- | --- | --- | | North ($E2) | $1,450 (2 deals) | $900 (1 deal) | $2,350 | | South ($E3) | $600 (1 deal) | $1,250 (2 deals) | $1,850 | - **Formula (Mixed-reference two-way SUMIFS and COUNTIFS formulas)**: `=SUMIFS($C$2:$C$7, $A$2:$A$7, $E2, $B$2:$B$7, F$1)` - **Formula (Two-way transaction count (COUNTIFS cross-tab))**: `=COUNTIFS($A$2:$A$7, $E2, $B$2:$B$7, F$1)` ### Tyn-Calus Liquid Diffusivity Correlation (Molar Volume & Surface Tension) - **URL**: https://sheets.arte-soft.com/en/learn/tyn-calus-liquid-diffusivity-surface-tension-correlation/ - **Summary**: Estimate dilute liquid molecular diffusivity D_AB = 0.00893 * (V_B^0.267 / V_A^0.433) * (T / μ_B) * (σ_B / σ_A)^0.15 (× 10^-5 cm^2/s) without empirical association factors! *Table — Replacing Wilke-Chang’s guessed association factor φ with measurable parachor / surface tension!:* | Acetone in Water Condition (VA=77.5, VB=18.7, σB/σA=72/23.7) | Water Viscosity μB | Tyn-Calus D_AB (× 10^-5 cm^2/s) | Experimental Comparison | | --- | --- | --- | --- | | 25 °C Ambient (298.15 K) | 0.890 cP | 1.174 × 10^-5 cm^2/s | 1.16 × 10^-5 cm^2/s (+1.2% Error) | | 50 °C Extraction Column (323.15 K) | 0.547 cP | 2.071 × 10^-5 cm^2/s | +76.4% Faster Stripping | | Invalid μB <= 0 or σ <= 0 | Undefined | "Invalid Tyn-Calus Inputs" | Positivity Guard | - **Formula (Tyn-Calus Dilute Liquid Diffusivity D_AB (in units of 10^-5 cm^2/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Tyn-Calus Inputs", ROUND(0.00893 * ((B3 ^ 0.267) / (B2 ^ 0.433)) * (B4 / B5) * ((B7 / B6) ^ 0.15), 3))` - **Formula (Surface-Tension Parachor Correction Factor (σ_B / σ_A)^0.15)**: `=IF(OR(B6 <= 0, B7 <= 0), "Invalid Tyn-Calus Inputs", ROUND((B7 / B6) ^ 0.15, 4))` ### TYPE function: classify any cell into numeric codes 1, 2, 4, or 16 - **URL**: https://sheets.arte-soft.com/en/learn/type-function-data-type-codes/ - **Summary**: Branch on cell data types in one SWITCH expression using TYPE codes (1 = Number, 2 = Text, 4 = Logical, 16 = Error). *Table — Replace chained ISNUMBER / ISTEXT / ISLOGICAL checks:* | Sample (A) | Stored Value (B) | TYPE(B) | Diagnostic Label | | --- | --- | --- | --- | | Price | 200 | 1 | Number | | Region | North | 2 | Text | | Active | TRUE | 4 | Logical | | Broken | =1/0 | 16 | Error | - **Formula (Map TYPE codes with SWITCH)**: `=SWITCH(TYPE(B2), 1, "Number", 2, "Text", 4, "Logical", 16, "Error", "Other")` - **Formula (TYPE never propagates errors—it returns 16)**: `=TYPE(B5)` ### UHV Chamber Outgassing Load & Ultimate Base Pressure Formula - **URL**: https://sheets.arte-soft.com/en/learn/uhv-vacuum-chamber-wall-outgassing-load-base-pressure-and-bakeout-gain-formula/ - **Summary**: Calculate Power-Law Wall Outgassing Gas Load Q(t) (10⁻⁶ mbar·L/s), Ultimate Chamber Base Pressure P_base (10⁻⁹ mbar), Area-Specific Pumping Speed (L/s·m²), and UHV Target Ratio. *Table — Below 10⁻⁴ mbar, chamber volume stops mattering—adsorbed water monolayers desorbing off stainless-steel walls set your ultimate vacuum floor!:* | UHV Outgassing Balance KPI (A=45,000 cm², t=10 h, S_eff=420 L/s) | Formula | Verified Output | | --- | --- | --- | | Wall Gas Load Q (10⁻⁶ mbar·L/s) | ((q1_1e10 * 1e-10 * Area_cm2) / (t^alpha)) * 1e6 | 14.400 (0.189 after 200°C bakeout!) | | Ultimate Base Pressure (10⁻⁹ mbar) | (Gas_Load_mbar_L_s / Seff_L_s) * 1e9 | 34.286 nbar? 3.43e-8 mbar (0.450e-9 baked!) | | Area-Specific Speed (L/(s·m²)) | Seff_L_s / (Wall_Area_cm2 / 10000) | 93.33 L/(s·m²) | | Multiple of 5x10⁻¹¹ mbar UHV Gate | Base_Pressure_1e9_mbar / 0.05 | 685.71x unbaked (9.00x baked) | - **Formula (Dayton Power-Law Water Desorption Outgassing & Throughput Base-Pressure Formula)**: `=LET(q1_u, B2, aw_c, B3, tp_h, B4, al_p, B5, se_l, B6, qt_m, ((q1_u * 0.0000000001) * aw_c) / (tp_h ^ al_p), pb_9, (qt_m / se_l) * 1000000000, IF(OR(q1_u <= 0, aw_c < 100, tp_h < 0.1, al_p < 0.3, al_p > 1.5, se_l <= 1), "Invalid Outgas Input", ROUND(pb_9 / 0.05, 2)))` - **Formula (48-Hour 200°C Bakeout Water-Stripping Gain Check (Set q1 B2 = 0.42 x 10⁻¹⁰))**: `=IF(ISTEXT(E5), E5, LET(qt_m, ((B2 * 0.0000000001) * B3) / (B4 ^ B5), ROUND((qt_m / B6) * 1000000000, 3)))` ### UKELD Score (UK Model for End-Stage Liver Disease & >= 49 Listing Cutoff) - **URL**: https://sheets.arte-soft.com/en/learn/ukeld-united-kingdom-end-stage-liver-disease-transplant-score/ - **Summary**: Calculate NHS Blood and Transplant’s SI-unit UKELD score = 5.395*LN(INR) + 1.485*LN(Creat_µmol_L) + 3.130*LN(Bili_µmol_L) - 81.565*LN(Na_mmol_L) + 435 and >= 49 transplant eligibility. *Table — Native SI micromolar liver transplant prioritization with hyponatremia built directly into the log-linear equation!:* | SI Cirrhosis Labs [INR, Cr µmol/L, Bili µmol/L, Na mmol/L] | UKELD Score | NHS Transplant Eligibility (>= 49) | | --- | --- | --- | | [1.1, 80, 22, 139] — Borderline Cirrhosis | 49.2 | Meets Minimum UKELD >= 49 Listing Threshold | | [1.8, 115, 85, 131] — Decompensated Hyponatremic | 61.5 | High 1-Year Mortality (> 60 Urgent Priority) | | Invalid Zero/Negative Lab Value | "Invalid UKELD Labs" | Logarithm Positivity Guard | - **Formula (UKELD Continuous SI Liver Transplant Score)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid UKELD Labs", ROUND(5.395 * LN(MAX(B2, 1)) + 1.485 * LN(B3) + 3.13 * LN(MAX(B4, 1)) - 81.565 * LN(B5) + 435, 1))` - **Formula (NHS Blood & Transplant UKELD >= 49 Listing Eligibility)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid UKELD Labs", IF(5.395 * LN(MAX(B2, 1)) + 1.485 * LN(B3) + 3.13 * LN(MAX(B4, 1)) - 81.565 * LN(B5) + 435 >= 60, "High Waitlist Mortality Risk (UKELD >= 60)", IF(5.395 * LN(MAX(B2, 1)) + 1.485 * LN(B3) + 3.13 * LN(MAX(B4, 1)) - 81.565 * LN(B5) + 435 >= 49, "Transplant Listing Eligible (UKELD >= 49)", "Below Minimum Listing Cutoff (UKELD < 49)")))` ### Ultrafiltration Gel-Layer Limiting Flux Formula - **URL**: https://sheets.arte-soft.com/en/learn/ultrafiltration-concentration-polarization-gel-layer-limiting-flux-formula/ - **Summary**: Calculate Volumetric Concentration Factor Retentate Concentration C_bulk = C_0 * VCF, Blatt Stagnant-Film Limiting Permeate Flux J_lim = k_m * LN(C_gel / C_bulk), Total Permeate Flow, and Gel Headroom. *Table — Raise crossflow shear k_m—not transmembrane pressure—in gel-polarized ultrafiltration!:* | UF Gel-Polarization Metric (km=50 LMH, C0=10g/L, VCF=3x, Cgel=240g/L, Area=10m^2) | Formula | Verified Output | | --- | --- | --- | | Retentate Bulk Conc C_bulk | C_0 * VCF (100% Retention) | 30.00 g/L (240.00 g/L @ VCF=24) | | Limiting Permeate Flux J_lim | k_m * LN(C_gel / C_bulk) | 103.97 LMH (0.00 LMH @ VCF=24) | | Total Permeate Flow Rate (L/h) | J_lim * Membrane_Area_m2 | 1,039.70 L/h | | Gelation Margin C_gel / C_bulk | C_gel / (C_0 * VCF) | 8.00x Above Gel Shutdown | - **Formula (Stagnant-Film Concentration Polarization Limiting Flux Formula)**: `=LET(k_mt, B2, c_fd, B3, vc_f, B4, c_gl, B5, ar_m, B6, IF(OR(k_mt <= 0, c_fd <= 0, vc_f < 1, c_gl <= 0, ar_m <= 0), "Invalid UF Input", LET(c_bk, c_fd * vc_f, IF(c_bk > c_gl, "Membrane Gel Fouled (C_bulk > C_gel)", ROUND(k_mt * LN(c_gl / c_bk), 2)))))` - **Formula (Zero-Flux Gelation Limit Test (VCF = 24 -> C_bulk = C_gel))**: `=IF(ISTEXT(E3), E3, ROUND(B5 / E2, 2))` ### Ultrasonic NDT Weld Skip Distance & Flaw Depth Formula - **URL**: https://sheets.arte-soft.com/en/learn/ultrasonic-ndt-angle-beam-weld-inspection-skip-distance-and-flaw-depth/ - **Summary**: Calculate V-Path Full Skip Surface Distance S = 2*T*TAN(theta) (mm), Horizontal Probe-to-Flaw Surface Projection (mm), Leg-1 vs Leg-2 True Flaw Depth Below Top Surface (mm), and Inspection Leg Number. *Table — After an ultrasonic shear wave bounces off the back wall into Leg 2, deeper sound path means SHALLOWER flaw depth!:* | ASME Sec V Ultrasonic Weld KPI (T=25.0 mm Plate, 60° Shear Probe, SP=36.0 mm) | Formula | Verified Output | | --- | --- | --- | | Full V-Path Skip Distance S (mm) | 2 * Plate_T * TAN(Angle * PI()/180) | 86.60 mm | | Surface Projection Distance PA | Sound_Path_SP * SIN(Angle * PI()/180) | 31.18 mm (58.89 mm @ SP = 68 mm) | | True Flaw Depth Below Top (mm) | IF(Leg=1, SP*COS(th), 2*T - SP*COS(th)) | 18.00 mm (16.00 mm @ Leg-2 SP=68!) | | Active Ultrasonic Beam Leg (1/2) | IF(SP * COS(th) <= T, 1, 2) | Leg 1 (Leg 2 bounce @ SP = 68 mm) | - **Formula (Angle-Beam Ultrasonic V-Skip & Two-Leg Folded Flaw Depth Formula)**: `=LET(th_t, B2, an_d, B3, sp_m, B4, IF(OR(th_t <= 2, an_d < 35, an_d > 75, sp_m <= 0), "Invalid UT Input", LET(rd_a, an_d * (PI() / 180), vr_w, sp_m * COS(rd_a), IF(vr_w > 2 * th_t, "BEYOND LEG 2 FULL SKIP", IF(vr_w <= th_t, 1, 2)))))` - **Formula (Second-Leg Back-Wall Bounce Upper-Fusion-Face Crack Check (Set Sound Path SP = 68.0 mm))**: `=IF(ISTEXT(E5), E5, LET(vr_w, B4 * COS(B3 * (PI() / 180)), ROUND(IF(vr_w <= B2, vr_w, 2 * B2 - vr_w), 2)))` ### Ultrasonic Plastic Welding Horn Gain & Heating Formula - **URL**: https://sheets.arte-soft.com/en/learn/ultrasonic-plastic-welding-horn-amplitude-gain-stack-booster-and-viscoelastic-power/ - **Summary**: Calculate Acoustic Stack Peak-to-Peak Horn Amplitude (um), Peak Sonotrode Tip Velocity (m/s), Energy-Director Cyclic Strain Amplitude, and Viscoelastic Melt Power (W). *Table — Viscoelastic ultrasonic weld heating scales with the SQUARE of booster-horn amplitude—swapping a 1.5x gold booster for a 1.0x green booster cuts melt power 7.5x!:* | 20 kHz Ultrasonic Stack KPI (A0=10 um, Epp=285 MPa, Ved=48 mm³, h=0.85 mm) | Formula | Verified Output | | --- | --- | --- | | Horn Peak-to-Peak Amplitude (um) | 2 * A0_um * Booster_Gain * Horn_Gain | 66.0 um p-p (24.0 um p-p @ 1.0x/1.2x stack!) | | Peak Sonotrode Tip Velocity (m/s) | 2 * PI() * (f_kHz * 1000) * (A0p_um * 1e-6) | 4.15 m/s (1.51 m/s @ low-gain stack) | | Energy-Director Strain eps0 | (A0p_um / 1000) / Rib_Height_mm | 0.0388 (0.0141 @ low-gain stack) | | Viscoelastic Heating Power (W) | PI() * f_Hz * Epp_Pa * eps0^2 * Ved_m3 | 1,295.6 W (171.3 W stalls unmelted!) | - **Formula (Acoustic Stack Gain Cascade & Dynamic Loss-Modulus Hysteretic Power Formula)**: `=LET(az_u, B2, gb_x, B3, gh_x, B4, fk_h, B5, ep_m, B6, vd_m, B7, hr_m, B8, ap_u, az_u * gb_x * gh_x, es_z, (ap_u / 1000) / hr_m, IF(OR(az_u < 3, az_u > 25, gb_x < 0.4, gb_x > 4, gh_x < 0.4, gh_x > 4, fk_h < 15, fk_h > 70, ep_m < 20, ep_m > 1500, vd_m <= 1, hr_m < 0.2, hr_m > 3), "Invalid Ultrasonic Stack", ROUND(PI() * (fk_h * 1000) * (ep_m * 1000000) * (es_z ^ 2) * (vd_m * 0.000000001), 1)))` - **Formula (Under-Driven 1:1 Green Booster + 1.2x Block Horn Cold-Collapse Check (Set B3 = 1.0, B4 = 1.2))**: `=IF(ISTEXT(E5), E5, LET(ap_u, B2 * B3 * B4, ROUND(2 * PI() * (B5 * 1000) * (ap_u * 0.000001), 2)))` ### Underwood Minimum Reflux Ratio (Rmin) & Eduljee-Gilliland Distillation Correlation - **URL**: https://sheets.arte-soft.com/en/learn/underwood-minimum-reflux-ratio-and-gilliland-stages-formula/ - **Summary**: Calculate binary saturated-liquid Underwood minimum reflux ratio R_min = (1 / (alpha - 1)) * ((xD / xF) - alpha * ((1 - xD) / (1 - xF))) and the Eduljee-Gilliland theoretical stage parameter Y = 0.75 * (1 - X^0.5668). *Table — Complete the Fenske-Underwood-Gilliland (FUG) shortcut distillation design!:* | Binary Column Case (xF = 0.45, xD = 0.95, q = 1) | Relative Volatility alpha | Underwood R_min | Eduljee-Gilliland Y (at R = 1.3*Rmin) | | --- | --- | --- | --- | | Benzene-Toluene (Easier Split) | alpha = 2.50 | 1.2559 | Y = 0.5008 | | Closer-Boiling Isomers | alpha = 2.00 | 1.9293 (+53.6% reflux!) | Y = 0.4799 | | Unphysical Volatility alpha <= 1 | Azeotrope / Equal Volatility | Guarded Input Error | "Invalid Distillation Inputs" | - **Formula (Binary Saturated-Liquid (q = 1) Underwood Minimum Reflux Ratio R_min)**: `=IF(OR(B2 <= 1, B3 <= 0, B4 <= B3, B4 >= 1), "Invalid Distillation Inputs", ROUND((1 / (B2 - 1)) * ((B4 / B3) - (B2 * ((1 - B4) / (1 - B3)))), 4))` - **Formula (Eduljee-Gilliland Stage Ordinate Y = (N - N_min) / (N + 1) at Operating Multiplier B5)**: `=IF(OR(B2 <= 1, B3 <= 0, B4 <= B3, B4 >= 1, B5 <= 1), "Invalid Distillation Inputs", ROUND(0.75 * (1 - (((((B5 - 1) * ((1 / (B2 - 1)) * ((B4 / B3) - (B2 * ((1 - B4) / (1 - B3)))))) / ((B5 * ((1 / (B2 - 1)) * ((B4 / B3) - (B2 * ((1 - B4) / (1 - B3)))))) + 1))) ^ 0.5668)), 4))` ### UNDP Geometric Human Development Index (HDI) Formula - **URL**: https://sheets.arte-soft.com/en/learn/undp-geometric-human-development-index-hdi-vs-arithmetic-mean/ - **Summary**: Compute the post-2010 UNDP Human Development Index HDI = (I_Health * I_Education * I_Income)^(1/3), log-income index normalization, and uneven-development penalty vs the legacy arithmetic mean. *Table — Why UNDP replaced the arithmetic mean with the geometric cube root in 2010!:* | UNDP HDI Metric (I_H=0.80, I_E=0.60, I_Y=0.45, GNI=20,000) | Formula | Verified Output | | --- | --- | --- | | Post-2010 Geometric Mean HDI | (I_H * I_E * I_Y)^(1 / 3) | 0.6000 (0.216^(1/3)) | | Legacy Pre-2010 Arithmetic HDI | AVERAGE(B2:B4) | 0.6167 | | AM-GM Imbalance Penalty | Geometric_HDI - Arithmetic_HDI | -0.0167 (-1.67 pts) | | UNDP Log-Income Dimension Index | (LN(GNI) - LN(100)) / (LN(75000) - LN(100)) | 0.8003 | - **Formula (Post-2010 UNDP Geometric-Mean HDI Formula)**: `=IF(OR(MIN(B2:B4) < 0, MAX(B2:B4) > 1), "Invalid Dimension Index", ROUND((B2 * B3 * B4) ^ (1 / 3), 4))` - **Formula (UNDP Diminishing-Returns Log-Income Dimension Index Formula)**: `=IF(B5 <= 0, "Invalid GNI Input", ROUND((LN(MIN(75000, MAX(100, B5))) - LN(100)) / (LN(75000) - LN(100)), 4))` ### UNIQUAC Combinatorial Activity Coefficient (Staverman-Guggenheim VLE) - **URL**: https://sheets.arte-soft.com/en/learn/uniquac-combinatorial-and-residual-activity-coefficient-vle/ - **Summary**: Calculate the entropic size-and-shape UNIQUAC combinatorial activity coefficient γ_1^C from van der Waals volume (r_i) and surface-area (q_i) parameters in asymmetric solvent-heavy hydrocarbon or oligomer mixtures. *Table — Why mixing small acetone molecules into long alkane chains breaks Raoult’s Law even at ΔH_mix = 0!:* | Binary Liquid System at x1 = 0.20 (z = 10) | Volume Fraction Φ1 | Combinatorial ln(γ1^C) | Activity Coeff γ1^C | | --- | --- | --- | --- | | Acetone (r1=2.57, q1=2.34) + Hexadecane (r2=11.24, q2=9.26) | 0.0541 | -0.5279 | 0.5898 (< 1 Negative Dev.) | | Symmetric Size Limit (r2 = 2.57, q2 = 2.34) | 0.2000 (= x1) | 0.0000 | 1.0000 (Ideal Entropy) | | Boundary Mole Fraction (x1 <= 0 or x1 >= 1) | Pure Component Guard | "Invalid Mole Fraction" | Requires 0 < x1 < 1 | - **Formula (UNIQUAC Volume Fraction Φ_1 of Component 1)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B5 <= 0), "Invalid Mole Fraction", ROUND((B2 * B3) / (B2 * B3 + (1 - B2) * B5), 4))` - **Formula (Staverman-Guggenheim Combinatorial Activity Coefficient γ_1^C (z = 10))**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Mole Fraction", ROUND(EXP(LN(B3 / (B2 * B3 + (1 - B2) * B5)) + 5 * B4 * LN((B4 / (B2 * B4 + (1 - B2) * B6)) / (B3 / (B2 * B3 + (1 - B2) * B5))) + (5 * (B3 - B4) - (B3 - 1)) - (B3 / (B2 * B3 + (1 - B2) * B5)) * (B2 * (5 * (B3 - B4) - (B3 - 1)) + (1 - B2) * (5 * (B5 - B6) - (B5 - 1)))), 4))` ### UNIQUE function: deduplicate a list vs find values that appear only once - **URL**: https://sheets.arte-soft.com/en/learn/unique-list-distinct-values/ - **Summary**: People use the word "unique" for two different tasks: listing every name once (distinct) and isolating names that never repeated (exactly once). Control both behaviours with UNIQUE and handle empty results safely. *Table — Six workshop check-ins, four attendees:* | Check-in row | Attendee (A) | | --- | --- | | Row 2 | Klara | | Row 3 | Mateo | | Row 4 | Klara | | Row 5 | Sonia | | Row 6 | Mateo | | Row 7 | Devon | - **Formula (Default UNIQUE keeps one copy of every distinct value)**: `=TEXTJOIN(", ",TRUE,UNIQUE(A2:A7))` - **Formula (Set the third argument (exactly_once) to TRUE for single-visit names)**: `=TEXTJOIN(", ",TRUE,UNIQUE(A2:A7,FALSE,TRUE))` - **Formula (Watch for #CALC! when every item repeats)**: `=IFERROR(TEXTJOIN(", ",TRUE,UNIQUE(A2:A7,FALSE,TRUE)),"Every attendee repeated")` ### Extract unique values across multiple ranges while ignoring blanks (VSTACK, FILTER & UNIQUE) - **URL**: https://sheets.arte-soft.com/en/learn/unique-values-across-multiple-ranges-ignore-blanks/ - **Summary**: Combine two lists, remove empty entries while retaining numeric zero, and produce a sorted distinct list and count. *Table — Why bare UNIQUE(VSTACK(rng1, rng2)) leaks a bogus 0—and how FILTER fixes it!:* | Range 1: Q1 Regions (A2:A5) | Range 2: Q2 Regions (C2:C5) | Stacked Non-Blank Pool | Sorted Unique Output | | --- | --- | --- | --- | | North | East | 6 non-blank entries | 1. East | | "" (Blank) | West | (2 blanks stripped!) | 2. North | | West | "" (Blank) | Duplicates: North, West | 3. South | | North | South | 4 distinct regions | 4. West | - **Formula (Sorted unique non-blank values from two (or more) ranges)**: `=TEXTJOIN(", ",TRUE,SORT(UNIQUE(FILTER(VSTACK(A2:A5,C2:C5),VSTACK(1-COUNTBLANK(A2),1-COUNTBLANK(A3),1-COUNTBLANK(A4),1-COUNTBLANK(A5),1-COUNTBLANK(C2),1-COUNTBLANK(C3),1-COUNTBLANK(C4),1-COUNTBLANK(C5)),""))))` - **Formula (Count distinct non-blank items across multiple ranges)**: `=IF(SUM(VSTACK(1-COUNTBLANK(A2),1-COUNTBLANK(A3),1-COUNTBLANK(A4),1-COUNTBLANK(A5),1-COUNTBLANK(C2),1-COUNTBLANK(C3),1-COUNTBLANK(C4),1-COUNTBLANK(C5)))=0,0,ROWS(UNIQUE(FILTER(VSTACK(A2:A5,C2:C5),VSTACK(1-COUNTBLANK(A2),1-COUNTBLANK(A3),1-COUNTBLANK(A4),1-COUNTBLANK(A5),1-COUNTBLANK(C2),1-COUNTBLANK(C3),1-COUNTBLANK(C4),1-COUNTBLANK(C5)),""))))` - **Formula (Spill the actual list into cells)**: `=SORT(UNIQUE(FILTER(VSTACK(A2:A5,C2:C5),VSTACK(1-COUNTBLANK(A2),1-COUNTBLANK(A3),1-COUNTBLANK(A4),1-COUNTBLANK(A5),1-COUNTBLANK(C2),1-COUNTBLANK(C3),1-COUNTBLANK(C4),1-COUNTBLANK(C5)),"")))` ### Unitranche First-Out / Last-Out AAL Yield Skim Formula - **URL**: https://sheets.arte-soft.com/en/learn/unitranche-first-out-last-out-agreement-among-lenders-aal-yield-skimming-formula/ - **Summary**: Model Private Credit Unitranche Agreement Among Lenders (AAL) tranche economics: Total Facility Size, First-Out Interest Skim Transferred FO*(S_blend - S_FO), Effective Last-Out Spread S_blend + (FO/LO)*(S_blend - S_FO), and Basis-Point Pickup. *Table — Uncover hidden Last-Out yield enhancement inside synthetic Unitranche AAL waterfalls!:* | Unitranche AAL Metric ($40M FO / $60M LO, Blended=6.25%, FO=4.00%) | Formula | Verified Output | | --- | --- | --- | | Total Unitranche Facility ($M) | First_Out_M + Last_Out_M | $100.00M | | Annual AAL Skim Dollar Flow ($M) | First_Out_M * (S_blend - S_FO) | $0.9000M/yr | | Effective Last-Out Spread S_LO | S_blend + (FO / LO) * (S_blend - S_FO) | 0.0775 (7.75%; 8.50% @ 50/50) | | Last-Out Yield Skim Pickup (bps) | 10000 * (S_LO - S_blend) | +150.00 bps (+225.00 bps @ 50/50) | - **Formula (Agreement Among Lenders (AAL) Effective Last-Out Spread Formula)**: `=LET(fo_m, B2, lo_m, B3, sp_b, B4, sp_f, B5, IF(OR(fo_m < 0, lo_m <= 0, sp_f <= 0, sp_b < sp_f), "Invalid AAL Tranche Structure", ROUND(sp_b + (fo_m / lo_m) * (sp_b - sp_f), 4)))` - **Formula (50/50 Tranche Leverage Amplification Check (FO = $50M, LO = $50M))**: `=IF(ISTEXT(E4), E4, ROUND(10000 * (E4 - B4), 2))` ### Unruh Effect Temperature (TU) & Rindler Horizon Distance Formula - **URL**: https://sheets.arte-soft.com/en/learn/unruh-acceleration-thermal-bath-temperature-formula/ - **Summary**: Calculate the Fulling-Davies-Unruh quantum vacuum thermal temperature T_U = (hbar * a) / (2 * PI() * c * k_B) (Kelvin) and Rindler causal horizon distance d_R = c^2 / a for ultrahigh laser-plasma accelerations. *Table — Why reaching 1 Kelvin of Unruh vacuum glow demands 2.47 x 10^20 m/s^2 of proper acceleration!:* | Proper Acceleration a (in units of 10^20 m/s^2) | Unruh Temperature TU (K) | Rindler Horizon Distance dR = c^2 / a (mm) | Physical Regime | | --- | --- | --- | --- | | 2.4711 x 10^20 m/s^2 (1-Kelvin Benchmark) | 1.0000 K | 363.71 mm | Cryogenic Thermal Benchmark | | 5.00 x 10^20 m/s^2 (Laser-Plasma Electron) | 2.0234 K | 179.75 mm | Near CMB 2.725 K Background | | 25.00 x 10^20 m/s^2 (Petawatt Wakefield) | 10.1170 K | 35.95 mm | Macroscopic Sub-Decimeter Horizon | - **Formula (Unruh Thermal Bath Temperature T_U (K) = a_10e20 / 2.47108)**: `=IF(B2 <= 0, "Invalid Proper Acceleration", ROUND(B2 / 2.47108, 4))` - **Formula (Rindler Causal Horizon Distance d_R = c^2 / a in Millimeters (mm))**: `=IF(B2 <= 0, "Invalid Proper Acceleration", ROUND(898.755 / B2, 2))` ### Up-C IPO Tax Receivable Agreement (TRA) 85% Split Formula - **URL**: https://sheets.arte-soft.com/en/learn/up-c-ipo-tax-receivable-agreement-tra-85-percent-payout-formula/ - **Summary**: Calculate Up-C Partnership-IPO IRC Section 743(b) Exchange Basis Step-Up, Gross 15-Year Cash Tax Savings Created for PubCo, Contractual 85% Tax Receivable Agreement (TRA) Liability Owed to Pre-IPO Owners, and 15% Net Benefit Retained by Public Shareholders. *Table — Don’t overlook off-headline Tax Receivable Agreement (TRA) liabilities in Up-C IPOs!:* | Up-C TRA Exchange Metric ($300M Exchange, $60M Tax Basis, 25% Tax, 85% TRA) | Formula | Verified Output | | --- | --- | --- | | Sec 743(b) Tax Basis Step-Up ($M) | Exchanged_Market_Val - PreIPO_Tax_Basis | $240.00M | | Gross 15-Yr Cash Tax Savings ($M) | Basis_StepUp * PubCo_Tax_Rate | $60.00M ($4.00M/yr) | | TRA Liability to Founders ($M) | Gross_Tax_Savings * TRA_Payout_Pct | $51.00M ($30.00M @ 50% Buyout) | | Net Tax Benefit Retained PubCo ($M) | Gross_Tax_Savings - TRA_Liability | $9.00M ($30.00M @ 50% Buyout) | - **Formula (Up-C IPO Tax Receivable Agreement (TRA) Liability Formula)**: `=LET(ex_v, B2, bs_0, B3, tx_r, B4, tr_s, B5, IF(OR(ex_v <= 0, bs_0 < 0, ex_v <= bs_0, tx_r <= 0, tx_r >= 0.55, tr_s < 0, tr_s > 1), "Invalid Up-C TRA Input", LET(su_b, ex_v - bs_0, sv_t, su_b * tx_r, ROUND(sv_t * tr_s, 2))))` - **Formula (Negotiated 50% TRA Early-Buyout Settlement Check)**: `=IF(ISTEXT(E4), E4, ROUND(E3 - E4, 2))` ### UPPER, LOWER, and PROPER: standardize inconsistent text case - **URL**: https://sheets.arte-soft.com/en/learn/upper-lower-proper-text-case/ - **Summary**: Convert SKUs to uppercase, email addresses to lowercase, and contact names to title case—while watching how PROPER capitalizes letters after hyphens and punctuation. *Table — Three fields that follow different casing conventions:* | Raw input | Function | Normalized output | | --- | --- | --- | | sku-04b (A2) | =UPPER(A2) | SKU-04B | | Sales@Arte-Soft.com (A3) | =LOWER(A3) | sales@arte-soft.com | | elena petrova (A4) | =PROPER(A4) | Elena Petrova | - **Formula (Choose UPPER for codes and LOWER for emails)**: `=UPPER(A2)` - **Formula (Watch PROPER on acronyms and hyphenated codes)**: `=PROPER(A4)` ### Upward Pricing Pressure (UPP) & GUPPI Merger Screen Formula - **URL**: https://sheets.arte-soft.com/en/learn/upward-pricing-pressure-upp-and-diversion-ratio-merger-screen/ - **Summary**: Calculate Gross Upward Pricing Pressure Index GUPPI_1 = D_12 * (P_2 - C_2) / P_1, Farrell-Shapiro Net UPP_1, and break-even marginal-cost efficiency E_1* in horizontal merger review. *Table — Screen unilateral merger price incentives without arbitrary market-boundary disputes:* | Merger Screen Metric | Formula | Verified Output | | --- | --- | --- | | Value of Diverted Sales | D_12 * (P_2 - C_2) | 13.50 per unit | | Gross GUPPI_1 Index | D_12 * (P_2 - C_2) / P_1 | 0.1350 (13.50%) | | Farrell-Shapiro Net UPP_1 | D_12 * (P_2 - C_2) - E_1 * C_1 | +7.50 per unit | | Break-Even Efficiency (E_1*) | D_12 * (P_2 - C_2) / C_1 | 0.2250 (22.50% Cost Cut) | - **Formula (Gross Upward Pricing Pressure Index GUPPI_1 Formula)**: `=LET(p_1, B2, c_1, B3, p_2, B4, c_2, B5, d_12, B6, IF(OR(p_1 <= 0, c_1 <= 0, c_1 > p_1, p_2 <= 0, c_2 < 0, c_2 > p_2, d_12 < 0, d_12 >= 1), "Invalid Merger Input", ROUND(d_12 * (p_2 - c_2) / p_1, 4)))` - **Formula (Farrell-Shapiro Net UPP_1 and Break-Even Efficiency Hurdle E_1* Formula)**: `=LET(p_1, B2, c_1, B3, p_2, B4, c_2, B5, d_12, B6, ef_1, B7, IF(OR(p_1 <= 0, c_1 <= 0, c_1 > p_1, p_2 <= 0, c_2 < 0, c_2 > p_2, d_12 < 0, d_12 >= 1, ef_1 < 0, ef_1 >= 1), "Invalid Merger Input", ROUND(d_12 * (p_2 - c_2) - ef_1 * c_1, 4)))` ### Urbach Tail Sub-Bandgap Absorption & Urbach Disorder Energy (EU) - **URL**: https://sheets.arte-soft.com/en/learn/urbach-tail-exponential-sub-bandgap-optical-absorption-formula/ - **Summary**: Model exponential sub-bandgap optical absorption alpha(E) = alpha_0 * EXP((E - E_0) / (E_U / 1000)) (cm^-1) and extract Urbach disorder energy E_U (meV) from two spectral points in perovskites and amorphous silicon. *Table — Why low Urbach Energy (~15 meV) separates champion perovskite solar cells from defective films!:* | Semiconductor Band-Edge Disorder EU (E0 = 1.62 eV, E = 1.56 eV) | Exponent (E - E0) / EU | Sub-Bandgap alpha(E) (cm^-1) | Photovoltaic Film Grade | | --- | --- | --- | --- | | High-Crystallinity Perovskite / GaAs (EU = 15 meV) | -0.060 / 0.015 = -4.00 | 2,747.3 cm^-1 | Minimal Voc Deficit (~kT Sharpness) | | Disordered / Amorphous Film (EU = 45 meV) | -0.060 / 0.045 = -1.33 | 39,539.6 cm^-1 (14.4x Higher!) | Severe Tail-State Trap Recombination | | Invalid Energy (E > E0 or EU <= 0) | Sub-Gap Domain Guard | "Invalid Urbach Inputs" | Urbach Law Applies for E <= E0, EU > 0 | - **Formula (Sub-Bandgap Urbach Tail Absorption Coefficient alpha(E) (cm^-1))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 > B3), "Invalid Urbach Inputs", ROUND(B2 * EXP((B5 - B3) / (B4 / 1000)), 1))` - **Formula (Inverse e-Folding Spectral Slope S = 1000 / E_U (eV^-1))**: `=IF(B4 <= 0, "Invalid Urbach Inputs", ROUND(1000 / B4, 2))` ### Build Clean UTM & API Query URLs with Cross-Platform Percent-Encoding Formulas - **URL**: https://sheets.arte-soft.com/en/learn/url-query-string-builder-and-percent-encoding-encodeurl-substitute/ - **Summary**: Assemble campaign tracking and webhook URLs from spreadsheet columns while safely percent-encoding %, spaces, ampersands, and plus signs across Windows, Mac, and browser sheets. *Table — Why ENCODEURL fails on Mac/Web and why % must be encoded first:* | Raw Parameter Value | Naive Concatenation Trap | Percent-Encoded Value (% First) | | --- | --- | --- | | Q4 R&D + Ops | Truncates at "&D" into bogus key | Q4%20R%26D%20%2B%20Ops | | 50% Off Launch | Encoding % second turns %20 into %2520! | 50%25%20Off%20Launch | | tier#1 promo | "#1" swallowed as URL fragment anchor | tier%231%20promo | - **Formula (Portable Percent-Encoder for Query Parameter Values)**: `=LET(raw, TRIM(C2), s1, SUBSTITUTE(raw, "%", "%25"), s2, SUBSTITUTE(s1, " ", "%20"), s3, SUBSTITUTE(s2, "&", "%26"), s4, SUBSTITUTE(s3, "+", "%2B"), SUBSTITUTE(s4, "#", "%23"))` - **Formula (Full UTM Tracking URL Assembly)**: `=TRIM(A2) & IF(ISNUMBER(FIND("?", A2)), "&", "?") & "utm_source=" & LOWER(TRIM(B2)) & "&utm_campaign=" & D2` ### USP <1079> Cold-Chain Mean Kinetic Temperature (MKT) Formula - **URL**: https://sheets.arte-soft.com/en/learn/usp-1079-cold-chain-mean-kinetic-temperature-mkt-excursion-formula/ - **Summary**: Calculate Pharmaceutical Cold-Chain Haynes Mean Kinetic Temperature (MKT in °C) with Standard Activation Ratio ΔH/R = 10,000 K (83.145 kJ/mol), Nonlinear Arrhenius Bias Over Arithmetic Mean Temperature, and USP <1079> 2–8°C Excursion Gate. *Table — Never clear a biologics cold-chain excursion with an arithmetic average—compute Haynes MKT!:* | USP <1079> Cold-Chain Metric (20 hr @ 5°C + 4 hr @ 20°C; ΔH/R = 10,000 K) | Formula | Verified Output | | --- | --- | --- | | Time-Weighted Arithmetic Mean (°C) | (T1*t1 + T2*t2) / (t1 + t2) | 7.50°C (False Pass!) | | Haynes Mean Kinetic Temp MKT (°C) | (10000 / -LN(Weighted_Boltzmann)) - 273.15 | 9.98°C (6.46°C @ 2 hr 15°C) | | Arrhenius Kinetic Bias (°C) | Haynes_MKT_C - Arithmetic_Mean_C | +2.48°C | | USP <1079> 2–8°C Release Gate | IF(MKT <= 8.0, "Pass...", "Reject...") | Reject: MKT > 8.0 C Stability Breach | - **Formula (Haynes Mean Kinetic Temperature (MKT) Formula)**: `=LET(tc_1, B2, hr_1, B3, tc_2, B4, hr_2, B5, IF(OR(tc_1 <= -50, tc_2 <= -50, hr_1 < 0, hr_2 < 0, hr_1 + hr_2 <= 0), "Invalid Cold-Chain Profile", LET(tk_1, tc_1 + 273.15, tk_2, tc_2 + 273.15, wt_b, (hr_1 * EXP(-10000 / tk_1) + hr_2 * EXP(-10000 / tk_2)) / (hr_1 + hr_2), ROUND((10000 / -LN(wt_b)) - 273.15, 2))))` - **Formula (Brief Loading-Dock Excursion Check (22 hr @ 5°C + 2 hr @ 15°C))**: `=IF(ISTEXT(E3), E3, IF(E3 <= 8, "Pass: MKT <= 8.0 C Excursion Allowed", "Reject: MKT > 8.0 C Stability Breach"))` ### USP <1216> Tablet Friability & Sample Size Formula - **URL**: https://sheets.arte-soft.com/en/learn/usp-1216-tablet-friability-drum-tumbling-weight-loss-and-acceptance-gate-formula/ - **Summary**: Calculate Harmonized USP <1216> Minimum Tablet Count (6.5 g vs 10-Tablet Rule), 100-Drop Abrasion Mass Loss (mg), Percentage Friability (%), and <=1.0% GMP Release Gate. *Table — Counting 10 small 200 mg tablets violates harmonized USP <1216>—and losing over 1.0% edge dust inside the 283 mm drum blocks pan-coating release!:* | Harmonized USP <1216> Friability KPI (420 mg Core, W_init=6.725 g, W_final=6.682 vs 6.638 g) | Formula | Verified Output | | --- | --- | --- | | Compendial Minimum Tablets | IF(Unit_mg <= 650, ROUNDUP(6500/Unit_mg, 0), 10) | 16 tablets (>= 6.5 g harmonized rule) | | 100-Drop Abraded Mass Loss (mg) | (Initial_Weight_g - Final_Weight_g) * 1000 | 43.0 mg (87.0 mg @ over-dried granulation!) | | Tablet Friability Loss (%) | ((W_init_g - W_final_g) / W_init_g) * 100 | 0.639% (1.294% > 1.0% limit!) | | USP <1216> Release Disposition | Friability_Pct <= 1.0% Compendial Ceiling | USP <1216> FRIABILITY PASS | - **Formula (Harmonized USP <1216> / Ph. Eur. 2.9.7 Sample-Count & 1.0% Release Formula)**: `=LET(um_m, B2, wi_g, B3, wf_g, B4, fr_p, ((wi_g - wf_g) / wi_g) * 100, IF(OR(um_m < 25, um_m > 3000, wi_g < 5, wf_g > wi_g, wf_g < 0.8 * wi_g), "Invalid Friability Input", IF(fr_p <= 1, "USP <1216> FRIABILITY PASS", "REJECT (>1.0% LOSS OR CAPPING)")))` - **Formula (Over-Dried Low-Moisture Granulation (`W_final = 6.638` g -> `1.294%`) Lot Rejection Check (Set B4 = 6.638 g))**: `=IF(ISTEXT(E2), E2, ROUND(((B3 - B4) / B3) * 100, 3))` ### V-Belt Sheave Pitch Length & Small-Pulley Wrap Formula - **URL**: https://sheets.arte-soft.com/en/learn/v-belt-sheave-center-distance-belt-pitch-length-and-small-pulley-wrap-angle/ - **Summary**: Calculate Open-Drive V-Belt Pitch Length Lp (mm), Small-Sheave Arc of Contact Wrap Angle (deg), Speed Reduction Ratio (D/d), and Linear Belt Velocity (m/s). *Table — Shorten a V-belt motor mount to save floor space and small-sheave wrap drops below 150°—slashing kW belt capacity by 12%–20%!:* | ISO 4184 V-Belt Drive KPI (D=315 mm, d=125 mm, C=520 mm, 1,750 RPM) | Formula | Verified Output | | --- | --- | --- | | V-Belt Pitch Length Lp (mm) | 2*C + (PI()/2)*(D+d) + ((D-d)^2)/(4*C) | 1,748.5 mm (1,283.4 mm @ short C=280 mm) | | Small-Sheave Wrap Angle (deg) | 180 - 2 * ASIN((D-d)/(2*C)) * (180/PI()) | 158.95° (140.33° slip risk @ C=280 mm!) | | Speed Reduction Ratio (D / d) | Large_Sheave_D_mm / Small_Sheave_d_mm | 2.52 (:1) | | Linear Belt Speed v (m/s) | (PI() * (d_mm / 1000) * Motor_RPM) / 60 | 11.45 m/s (well below 30 m/s iron limit) | - **Formula (Open-Drive V-Belt Pitch Length, Small-Pulley Arc of Contact & Rim Speed Formula)**: `=LET(dl_m, B2, ds_m, B3, cd_m, B4, nr_m, B5, vs_m, (PI() * (ds_m / 1000) * nr_m) / 60, IF(OR(ds_m <= 20, dl_m < ds_m, cd_m <= (dl_m + ds_m) / 2, nr_m <= 0), "Invalid Sheave Drive", ROUND(vs_m, 2)))` - **Formula (Cramped Skid 280 mm Center-Distance Wrap-Loss Check (Set Center Distance B4 = 280 mm))**: `=IF(ISTEXT(E5), E5, ROUND(180 - 2 * (ASIN((B2 - B3) / (2 * B4)) * (180 / PI())), 2))` ### Vacuum Thermoforming Areal Draw Ratio & Wall Formula - **URL**: https://sheets.arte-soft.com/en/learn/vacuum-thermoforming-areal-draw-ratio-and-average-sheet-wall-thinning-formula/ - **Summary**: Calculate Rectangular Mold Areal Draw Ratio Ra = A_mold / A_clamp, Volume-Conserved Average Part Wall Thickness t_avg (mm), Deepest Bottom-Corner Minimum Wall (mm), and Retained Corner Gauge (%). *Table — Drawing a 4.5 mm ABS sheet into a deep tub thins average walls to 1.64 mm—and female mold corners down to 0.90 mm without plug-assist!:* | Vacuum Thermoforming KPI (400x300 mm Clamp, Depth H=150 mm, t0=4.50 mm, cf=0.55) | Formula | Verified Output | | --- | --- | --- | | Areal Draw Ratio Ra (Amold / Aclamp) | 1 + (2 * (L_mm + W_mm) * H_mm) / (L * W) | 2.750 (3.917 @ deep 250 mm tub!) | | Volume-Conserved Mean Wall (mm) | Starting_Gauge_t0_mm / Areal_Draw_Ra | 1.64 mm (1.15 mm @ deep 250 mm tub) | | Minimum Bottom-Corner Wall (mm) | Mean_Wall_mm * Corner_Factor_cf | 0.90 mm (0.63 mm paper-thin @ 250 mm!) | | Retained Corner Gauge (%) | (Corner_Wall_mm / Starting_t0_mm) * 100 | 20.0% (14.0% @ deep 250 mm tub) | - **Formula (Incompressible Sheet Areal Draw Ratio & Corner Wall-Thinning Formula)**: `=LET(ln_m, B2, wd_m, B3, ht_m, B4, tz_m, B5, cf_r, B6, ad_r, 1 + (2 * (ln_m + wd_m) * ht_m) / (ln_m * wd_m), tc_m, (tz_m / ad_r) * cf_r, IF(OR(ln_m <= 10, wd_m <= 10, ht_m <= 0, tz_m <= 0.1, cf_r <= 0.15, cf_r > 1), "Invalid Thermoforming Input", ROUND((tc_m / tz_m) * 100, 1)))` - **Formula (Deep-Draw 250 mm Tote Bin Corner Webbing/Tearing Check (Set Cavity Depth H B4 = 250.0 mm))**: `=IF(ISTEXT(E5), E5, LET(ad_r, 1 + (2 * (B2 + B3) * B4) / (B2 * B3), ROUND((B5 / ad_r) * B6, 2)))` ### Conicity Index (Valdez) & Waist-to-Height Ratio (WHtR) Calculator: Cylinder vs Bicone - **URL**: https://sheets.arte-soft.com/en/learn/valdez-abdominal-conicity-index-and-waist-to-height-ratio/ - **Summary**: Calculate Roberto Valdez’s (1991) Abdominal Conicity Index C_index = WC_m / (0.109 * SQRT(Weight_kg / Height_m)) and Margaret Ashwell’s universal Waist-to-Height Ratio WHtR = WC / Height (< 0.50 healthy threshold). *Table — Measure geometric progression from a uniform cylinder (C = 1.00) toward a central bicone (C -> 1.73)!:* | Adult Profile (Height cm, Weight kg, Waist cm) | Valdez Conicity Index C_index | Ashwell WHtR = WC / H | Central Risk Screening | | --- | --- | --- | --- | | Lean Athletic (H = 180 cm, W = 75 kg, WC = 78 cm) | 1.1086 | 0.4333 (< 0.50) | Low Central Cardiometabolic Risk | | Borderline Gain (H = 175 cm, W = 82 kg, WC = 91 cm) | 1.2194 | 0.5200 (>= 0.50) | Exceeds WHtR 0.50 Boundary | | Biconic Central Obesity (H = 172 cm, W = 86 kg, WC = 106 cm) | 1.3753 | 0.6163 (>= 0.60) | High Visceral / Biconic Risk | - **Formula (Valdez (1991) Dimensionless Abdominal Conicity Index C_index)**: `=IF(OR(B2 < 100, B2 > 240, B3 < 25, B3 > 300, B4 < 40, B4 > 200), "Invalid Height, Weight, or Waist Inputs", ROUND((B4 / 100) / (0.109 * SQRT(B3 / (B2 / 100))), 4))` - **Formula (Ashwell Waist-to-Height Ratio (WHtR) & 0.50 Screening Rule)**: `=IF(OR(B2 < 100, B2 > 240, B4 < 40, B4 > 200), "Invalid Height or Waist Inputs", ROUND(B4 / B2, 4))` ### Display a Checkmark When Checklist Conditions Pass - **URL**: https://sheets.arte-soft.com/en/learn/validate-completion-status-with-checkmark-char-10003/ - **Summary**: Use a literal Unicode checkmark with validated reviewer text and a 0–100 score. Calculate completion from the same row-status results so badges and progress agree. - **Formula (Validate reviewer and score before showing the badge)**: `=IF(COUNTBLANK(B2)>0,"Pending Sign-Off",IF(NOT(ISTEXT(B2)),"Pending Sign-Off",IF(LEN(TRIM(SUBSTITUTE(B2,CHAR(160)," ")))=0,"Pending Sign-Off",IF(NOT(ISNUMBER(C2)),"Enter numeric QA score",IF(OR(C2<0,C2>100),"Score must be 0 to 100",IF(C2>=95,"✓","Needs QA >= 95"))))))` - **Formula (Count completed statuses, not a second set of rules)**: `=COUNTIF(D2:D5,"✓")/ROWS(A2:A5)` ### Screen email addresses for common structural problems - **URL**: https://sheets.arte-soft.com/en/learn/validate-email-address-structure-formula/ - **Summary**: Use five spreadsheet checks to flag obvious email-entry mistakes. This heuristic does not establish complete syntax validity, mailbox existence, or deliverability. *Table — Five basic checks for an import-cleanup queue:* | Candidate Email | Failed Rule | Passes these checks? | | --- | --- | --- | | maya.chen@arte-soft.com | Passes all 5 rules | TRUE | | double@@arte-soft.com | 2 "@" symbols (atCnt <> 1) | FALSE | | maya chen@arte-soft.com | Internal space character | FALSE | | maya@arte-soft.c | TLD "c" shorter than 2 chars | FALSE | - **Formula (5-rule email syntax validation formula)**: `=LET(s, TRIM(A2), atCnt, LEN(s) - LEN(SUBSTITUTE(s, "@", "")), noSp, ISERROR(FIND(" ", s)), IF(AND(atCnt=1, noSp), LET(loc, TEXTBEFORE(s, "@"), dom, TEXTAFTER(s, "@"), domName, IFERROR(TEXTBEFORE(dom, "."), ""), tld, IFERROR(TEXTAFTER(dom, ".", -1), ""), AND(LEN(loc)>=1, LEN(domName)>=1, LEN(tld)>=2)), FALSE))` - **Formula (Human-readable CRM import audit label ("Passes basic checks" vs "Fix Email"))**: `=IF(LET(s, TRIM(A2), atCnt, LEN(s) - LEN(SUBSTITUTE(s, "@", "")), noSp, ISERROR(FIND(" ", s)), IF(AND(atCnt=1, noSp), LET(loc, TEXTBEFORE(s, "@"), dom, TEXTAFTER(s, "@"), domName, IFERROR(TEXTBEFORE(dom, "."), ""), tld, IFERROR(TEXTAFTER(dom, ".", -1), ""), AND(LEN(loc)>=1, LEN(domName)>=1, LEN(tld)>=2)), FALSE)), "Passes basic checks", "Fix Email")` ### Validate an Invoice Prefix, Four Digits, Allowlist and Blocklist - **URL**: https://sheets.arte-soft.com/en/learn/validate-prefix-allowlist-blocklist-and-no-punctuation/ - **Summary**: Audit invoice IDs as uppercase INV- plus four ASCII digits, reject reserved IDs and require literal membership in a configured uppercase currency allowlist. - **Formula (Literal allowlist membership in D2)**: `=IF(NOT(ISTEXT(B2)),FALSE,AND(LEN(B2)>0,EXACT(B2,UPPER(B2)),COUNTIF($E$2:$E$4,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B2,"~","~~"),"*","~*"),"?","~?"))>0))` - **Formula (Complete invoice audit in D3)**: `=IF(NOT(AND(ISTEXT(A2),ISTEXT(B2))),FALSE,AND(EXACT(LEFT(A2,4),"INV-"),LEN(A2)=8,SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(RIGHT(A2,4),"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9","")="",COUNTIF($F$2:$F$3,"="&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"~","~~"),"*","~*"),"?","~?"))=0,D2))` ### Validate Required Row Inputs with Check Mark & Type Guard (COUNTA & ISNUMBER) - **URL**: https://sheets.arte-soft.com/en/learn/validate-required-inputs-with-status-check-mark-or-alert-if/ - **Summary**: Display an instant Unicode check mark ("✓ Ready") only when all required row fields are populated and numeric amounts pass ISNUMBER—preventing Excel’s silent "text > number" comparison trap. *Table — Why naive >= 0 checks pass text strings like "TBD" or "$150"!:* | Row Submission State (4 Required Fields) | COUNTA(B2:E2) | ISNUMBER(E2) Check | Status Badge Returned | | --- | --- | --- | --- | | All 4 Fields Filled, E2 = 1250.00 | 4 | TRUE (> 0) | "✓ Ready" | | Invoice # Left Blank (3 of 4 Filled) | 3 | TRUE | "✗ Missing 1" | | Amount Typed as Text "TBD" (4 Filled) | 4 | FALSE (Text > Number Trap!) | "✗ Non-Numeric Amount" | - **Formula (Row-Level Completeness & Numeric Type Check-Mark Validator)**: `=IF(COUNTA(B2:E2) < 4, "✗ Missing " & (4 - COUNTA(B2:E2)), IF(NOT(ISNUMBER(E2)), "✗ Non-Numeric Amount", IF(E2 <= 0, "✗ Amount <= 0", "✓ Ready")))` - **Formula (Batch Readiness Percentage Across All Intake Rows)**: `=ROUND(100 * COUNTIF(F2:F5, "✓ Ready") / ROWS(F2:F5), 1)` ### Audit case-pack multiples and whole-percentage inputs with MOD and ROUND - **URL**: https://sheets.arte-soft.com/en/learn/validate-specific-multiple-and-whole-percentage-inputs/ - **Summary**: Check positive integer pack quantities and percentage-point increments using explicit type guards and a documented numerical tolerance. *Table — Separate integer quantity checks from decimal tolerance:* | Input Test | Cell Value | Validation Rule | Result | | --- | --- | --- | --- | | Valid Case Pack (Pack = 12) | A2 = 36 | MOD(36, 12) = 0 | TRUE (3 cases) | | Broken Case Pack | A3 = 30 | MOD(30, 12) = 6 <> 0 | FALSE | | Whole Percentage 7% | B2 = 0.07 | \|7.000000 - 7\| < 1E-6 | TRUE within chosen tolerance | | Fractional Percentage 7.5% | B3 = 0.075 | \|7.5 - 8\| = 0.5 >= 1E-6 | FALSE | - **Formula (Require positive exact multiple of pack size D2)**: `=IF(AND(ISNUMBER(A2),ISNUMBER($D$2)),IF(AND(A2>0,$D$2>0,A2<=1000000000000,$D$2<=1000000000000,A2=INT(A2),$D$2=INT($D$2)),MOD(A2,$D$2)=0,FALSE),FALSE)` - **Formula (Check whole-percentage increments within the chosen tolerance)**: `=IF(ISNUMBER(B2),AND(ISNUMBER(B2), B2 >= 0, B2 <= 1, ABS(B2 * 100 - ROUND(B2 * 100, 0)) < 0.000001),FALSE)` ### Practice text-complexity checks with dummy password-like strings - **URL**: https://sheets.arte-soft.com/en/learn/validate-strong-password-rules-formula/ - **Summary**: Combine length, case and digit checks in a spreadsheet using synthetic examples; this is not a password-strength test. *Table — Test five complexity requirements inside AND:* | Candidate | Len >= 8 | Upper + Lower | Has Digit | No Space | Overall | | --- | --- | --- | --- | --- | --- | | Vault9Key | TRUE (9) | TRUE | TRUE | TRUE | TRUE | | vault9key | TRUE (9) | FALSE (no upper) | TRUE | TRUE | FALSE | | VaultKeys | TRUE (9) | TRUE | FALSE | TRUE | FALSE | | Vault 9Key | TRUE (10) | TRUE | TRUE | FALSE | FALSE | - **Formula (All-in-one password complexity formula)**: `=AND(LEN(A2)>=8, NOT(EXACT(A2, LOWER(A2))), NOT(EXACT(A2, UPPER(A2))), COLUMNS(TEXTSPLIT(A2, {"0","1","2","3","4","5","6","7","8","9"}))>1, ISERROR(FIND(" ", A2)))` - **Formula (Human-readable Pass / Fail audit label)**: `=IF(AND(LEN(A2)>=8, NOT(EXACT(A2, LOWER(A2))), NOT(EXACT(A2, UPPER(A2))), COLUMNS(TEXTSPLIT(A2, {"0","1","2","3","4","5","6","7","8","9"}))>1, ISERROR(FIND(" ", A2))), "Passes example rules", "Fails example rules")` ### Audit uppercase-style codes and Monday–Friday dates with EXACT and WEEKDAY - **URL**: https://sheets.arte-soft.com/en/learn/validate-uppercase-only-and-weekday-only-inputs/ - **Summary**: Check that a code is nonblank text unchanged by UPPER, and that a scheduling date is an integer date in 2026 falling Monday through Friday. *Table — Why A2 = UPPER(A2) fails in spreadsheets—use case-sensitive EXACT!:* | SKU Code (A) | Scheduled Date (B) | Uppercase Rule | Weekday Rule & Combined | | --- | --- | --- | --- | | SKU-900 | 2026-10-30 (Fri) | TRUE | Weekday 5 <= 5 -> TRUE (Valid) | | sku-901 | 2026-10-30 (Fri) | FALSE (lowercase!) | Combined -> FALSE | | SKU-902 | 2026-10-31 (Sat) | TRUE | Weekday 6 > 5 -> FALSE (Weekend!) | | 12345 (Number) | 2026-10-29 (Thu) | FALSE (ISTEXT fails) | Rejects bare numbers | - **Formula (Audit nonblank text unchanged by UPPER)**: `=AND(ISTEXT(A2),LEN(TRIM(A2))>0,EXACT(A2,UPPER(A2)))` - **Formula (Combine code and 2026 weekday checks)**: `=IF(ISNUMBER(B2),IF(AND(B2>=DATE(2026,1,1),B2<=DATE(2026,12,31),B2=INT(B2)),AND(AND(ISTEXT(A2),LEN(TRIM(A2))>0,EXACT(A2,UPPER(A2))),WEEKDAY(B2,2)<=5),FALSE),FALSE)` ### Validate Weekday-Only Dates Within a Next-30-Days Booking Window - **URL**: https://sheets.arte-soft.com/en/learn/validate-weekday-date-within-rolling-window-and-weekday/ - **Summary**: Enforce multi-rule scheduling validation—requiring a real numeric date inside [Anchor_Date, Anchor_Date + Window_Days] that also lands Monday–Friday via WEEKDAY(Date, 2) <= 5. *Table — Combine rolling booking-horizon bounds and Monday–Friday business-day checks in one rule!:* | Requested Date B2 (Anchor 2026-05-01, Window 30d) | In [May 1, May 31]? | WEEKDAY(B2, 2) | Validation Outcome | | --- | --- | --- | --- | | 2026-05-13 (Wednesday) | Yes (+12 days) | 3 (<= 5 Weekday) | "Valid Business Booking Date" | | 2026-05-16 (Saturday) | Yes (+15 days) | 6 (> 5 Weekend) | "Reject: Weekend Date" | | 2026-06-08 (Monday) | No (+38 days > 30) | 1 (Weekday) | "Reject: Outside Booking Window" | - **Formula (Boolean Data-Validation Rule Formula (TRUE = Allowed, FALSE = Blocked))**: `=AND(ISNUMBER(B2), ISNUMBER(B3), B4 >= 0, B2 >= B3, B2 <= B3 + B4, WEEKDAY(B2, 2) <= 5)` - **Formula (Diagnostic Booking Rejection Message Formula)**: `=IF(OR(NOT(ISNUMBER(B2)), NOT(ISNUMBER(B3)), B4 < 0), "Invalid Date Input", IF(OR(B2 < B3, B2 > B3 + B4), "Reject: Outside Booking Window", IF(WEEKDAY(B2, 2) > 5, "Reject: Weekend Date", "Valid Business Booking Date")))` ### VALUE function: convert numbers stored as text into real numbers - **URL**: https://sheets.arte-soft.com/en/learn/value-function-convert-text-to-number/ - **Summary**: Turn imported numeric text strings like "145.50" or "0042" into calculable numbers with VALUE, and strip unit labels that cause #VALUE!. *Table — Why SUM skips numeric strings—and how VALUE fixes them:* | Cell | Stored Content | Bare VALUE(Cell) | Cleaned Formula | | --- | --- | --- | --- | | A2 | ="145.50" (text) | 145.5 | 145.5 | | A3 | ="0042" (text) | 42 | 42 | | A4 | ="-18" (text) | -18 | -18 | | A5 | ="85 kg" (unit suffix) | #VALUE! | =VALUE(SUBSTITUTE(A5, " kg", "")) -> 85 | - **Formula (Convert clean numeric text and summing results)**: `=VALUE(A2) + VALUE(A3) + VALUE(A4)` - **Formula (Strip unit suffixes before calling VALUE)**: `=VALUE(SUBSTITUTE(A5, " kg", ""))` ### Value of a Statistical Life (VSL) & VSLY Formula - **URL**: https://sheets.arte-soft.com/en/learn/value-of-a-statistical-life-vsl-hedonic-wage-risk-formula/ - **Summary**: Calculate Thaler-Rosen / Viscusi hedonic wage-risk VSL = (Delta_w / Delta_r_100k)*100,000, micromort willingness-to-pay, and real-annuity Value of a Statistical Life-Year (VSLY). *Table — Translate occupational wage-risk differentials into regulatory VSL, micromorts, and VSLY!:* | Benefit-Cost Metric (dw=960, dr=8/100k, T=40, r=3%) | Formula | Verified Output | | --- | --- | --- | | Value of a Statistical Life (VSL) | (Delta_w / Delta_r_100k) * 100,000 | 12,000,000.00 | | Value of One Micromort (10^-6 Risk) | VSL / 1,000,000 | 12.00 | | Discounted VSLY (r = 3%, T = 40 yr) | (r * VSL) / (1 - (1 + r)^(-T)) | 519,148.53 / life-year | | Zero-Discount VSLY Benchmark (r = 0%) | VSL / T | 300,000.00 / life-year | - **Formula (Hedonic Wage-Risk Value of a Statistical Life (VSL) Formula)**: `=LET(dw_yr, B2, dr_100k, B3, IF(OR(dw_yr <= 0, dr_100k <= 0), "Invalid VSL Input", ROUND((dw_yr / dr_100k) * 100000, 2)))` - **Formula (Discounted Real-Annuity Value of a Statistical Life-Year (VSLY) Formula)**: `=LET(dw_yr, B2, dr_100k, B3, t_rem, B4, r_rl, B5, IF(OR(dw_yr <= 0, dr_100k <= 0, t_rem <= 0, r_rl < 0), "Invalid VSL Input", LET(vsl_v, (dw_yr / dr_100k) * 100000, vsly_v, IF(r_rl = 0, vsl_v / t_rem, (r_rl * vsl_v) / (1 - ((1 + r_rl)^(-t_rem)))), ROUND(vsly_v, 2))))` ### Van Deemter HETP & Optimal Velocity Formula - **URL**: https://sheets.arte-soft.com/en/learn/van-deemter-chromatography-plate-height-hetp-and-optimal-velocity-formula/ - **Summary**: Calculate Optimal Mobile-Phase Velocity u_opt = SQRT(B / C), Van Deemter Height Equivalent to a Theoretical Plate HETP = A + B/u + C*u, Actual Column Plates N, and Peak Theoretical Plates N_max. *Table — Balance longitudinal diffusion B/u against C*u mass-transfer band broadening in HPLC & GC!:* | Van Deemter UHPLC Metric (A=0.004mm, B=0.016, C=0.001s, u=8 mm/s, L=140 mm) | Formula | Verified Output | | --- | --- | --- | | Optimal Linear Velocity u_opt | SQRT(B / C) | 4.00 mm/s (H_min = 0.0120 mm) | | Operating Plate Height HETP | A + B / u + C * u | 0.0140 mm (0.0120 mm @ u = 4) | | Operating Theoretical Plates N | ROUND(Column_Length_mm / HETP, 0) | 10,000 plates (11,667 @ u = 4) | | Maximum Column Plates N_max | ROUND(L / (A + 2 * SQRT(B * C)), 0) | 11,667 plates | - **Formula (Van Deemter HETP & Theoretical Plate Count Formula)**: `=LET(ed_a, B2, df_b, B3, mt_c, B4, vl_u, B5, cl_l, B6, IF(OR(ed_a < 0, df_b <= 0, mt_c <= 0, vl_u <= 0, cl_l <= 0), "Invalid HPLC Velocity", LET(ht_p, ed_a + df_b / vl_u + mt_c * vl_u, ROUND(cl_l / ht_p, 0))))` - **Formula (Optimal Linear Velocity Verification (u = u_opt = 4.00 mm/s))**: `=IF(ISTEXT(E3), E3, ROUND(B6 / (B2 + 2 * SQRT(B3 * B4)), 0))` ### Van der Waals Real-Gas Equation & Compressibility Factor (Z) - **URL**: https://sheets.arte-soft.com/en/learn/van-der-waals-real-gas-pressure-and-compressibility-factor-z/ - **Summary**: Compare a van der Waals model pressure with an ideal-gas calculation using consistent molar units, and compute the model compressibility factor with explicit input guards. - **Formula (Evaluate pressure without rounding intermediate results)**: `=IF(COUNT(B2:B6)<>5,"Enter five numeric inputs",IF(OR(B2<=0,B3<=0,B4<=0,B5<0,B6<0,B4<=B6),"Require R,T,Vm>0; a,b>=0; Vm>b",B2*B3/(B4-B6)-B5/B4^2))` - **Formula (Compare model compressibility)**: `=IF(ISNUMBER(E2),IF(E2<=0,"Nonpositive model pressure; review state",E2*B4/(B2*B3)),E2)` - **Formula (Try independent limiting cases)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric R,T,Vm",IF(OR(B2<=0,B3<=0,B4<=0),"Require R,T,Vm>0",B2*B3/B4))` ### Van Laar Activity Coefficients (gamma1 & gamma2) for Azeotropic Distillation - **URL**: https://sheets.arte-soft.com/en/learn/van-laar-azeotropic-activity-coefficient-vle-formula/ - **Summary**: Calculate Johannes van Laar’s unequal-molar-volume activity coefficients gamma_1 = EXP(A_12 / (1 + (A_12 * x_1) / (A_21 * (1 - x_1)))^2) and gamma_2 for ethanol-water, isopropanol-water, and hydrocarbon VLE trays. *Table — Fit strongly skewed alcohol-water azeotropes better than polynomial Margules curves!:* | Ethanol (1) – Water (2) Liquid Mole Fraction x1 (A12 = 1.62, A21 = 1.18) | Van Laar gamma1 | Van Laar gamma2 | Distillation Tray Behavior | | --- | --- | --- | --- | | Dilute Stripping Tray (x1 = 0.00) | 5.0531 (= EXP(1.62)) | 1.0000 | High Ethanol Stripping Volatility | | Rectifying Tray (x1 = 0.25) | 2.1436 | 1.1233 | Strong Positive Non-Ideality | | Near-Azeotrope Top (x1 = 0.90) | 1.0091 | 2.7454 | Approaching 89.4 mol% Azeotrope | - **Formula (Singularity-Free Van Laar Activity Coefficient gamma_1 (Valid Including x_1 = 0 and 1))**: `=IF(OR(B2 < 0, B2 > 1, B3 = 0, B4 = 0), "Invalid Van Laar Inputs", ROUND(EXP((B3 * ((B4 * (1 - B2)) ^ 2)) / ((B3 * B2 + B4 * (1 - B2)) ^ 2)), 4))` - **Formula (Singularity-Free Van Laar Activity Coefficient gamma_2)**: `=IF(OR(B2 < 0, B2 > 1, B3 = 0, B4 = 0), "Invalid Van Laar Inputs", ROUND(EXP((B4 * ((B3 * B2) ^ 2)) / ((B3 * B2 + B4 * (1 - B2)) ^ 2)), 4))` ### Van Rijn (1984) Sediment Transport Formula: Particle Parameter D_* & Transport Stage T - **URL**: https://sheets.arte-soft.com/en/learn/van-rijn-dimensionless-particle-parameter-and-transport-stage-formula/ - **Summary**: Calculate Leo C. van Rijn’s (1984, Delft Hydraulics) Dimensionless Particle Parameter D_* = d_50 * (((s - 1) * g) / nu^2)^(1/3), Excess Bed-Shear Transport Stage T, and Sand Bedload Rate q_b (m^2/s). *Table — Eliminate iterative Shields-diagram lookups with Van Rijn’s explicit D_* and T parameters!:* | Van Rijn (1984) Sand-Bed Quantity (d_50 = 0.0005 m, s = 2.65, nu = 1e-6 m^2/s) | Formula | Evaluated Value | | --- | --- | --- | | Dimensionless Particle Diameter D_* | d_50 * (((s - 1) * g) / nu^2)^(1/3) | 12.647 | | Transport-Stage Parameter T (tau_b_prime = 1.05 Pa, tau_cr = 0.25 Pa) | (tau_b_prime - tau_cr) / tau_cr | 3.200 | | Volumetric Sand Bedload Rate q_b | 0.053 * SQRT((s-1)*g*d_50^3) * T^2.1 / D_*^0.3 | 0.000013 m^2/s (0.034 kg/m/s) | - **Formula (Van Rijn Dimensionless Particle Diameter D_*)**: `=IF(OR(B2 <= 0, B3 <= 1, B4 <= 0), "Requires d_50 > 0, Specific Gravity s > 1, and Viscosity nu > 0", ROUND(B2 * ((((B3 - 1) * 9.80665) / (B4 ^ 2)) ^ (1 / 3)), 3))` - **Formula (Van Rijn (1984a) Volumetric Sand Bedload Rate q_b (m^2/s))**: `=IF(OR(B2 <= 0, B3 <= 1, B4 <= 0, B5 < 0, B6 <= 0), "Invalid Van Rijn Inputs", ROUND(0.053 * SQRT((B3 - 1) * 9.80665 * (B2 ^ 3)) * ((MAX(0, (B5 - B6) / B6) ^ 2.1) / ((B2 * ((((B3 - 1) * 9.80665) / (B4 ^ 2)) ^ (1 / 3))) ^ 0.3)), 6))` ### Van Slyke Cheddar Cheese Yield & Casein-Fat Formula - **URL**: https://sheets.arte-soft.com/en/learn/van-slyke-price-cheddar-cheese-yield-milk-fat-casein-recovery-and-moisture-formula/ - **Summary**: Calculate Milk Casein-to-Fat Ratio (C/F), Van Slyke Theoretical Cheese Yield (kg per 100 kg milk), Finished Curd Block Mass (kg), and Sweet Whey Mass Balance (kg). *Table — Why 0.1% extra milk casein boosts Cheddar yield MORE than 0.1% butterfat—because para-casein micelles trap both fat globules AND bound moisture!:* | Van Slyke Cheddar Yield KPI (18,000 kg Milk Kettle: Autumn 3.85/2.54/37.5% vs Summer 3.40/2.22/35.0%) | Formula | Verified Output | | --- | --- | --- | | Casein-to-Fat Ratio (C / F) | Milk_Casein_Pct / Milk_Fat_Pct | 0.660 (0.653 @ summer milk) | | Van Slyke Cheese Yield (%) | ((0.93*Fat + (Casein-0.10))*1.09)/(1-Moist/100) | 10.50% (8.86% = -1.64% yield drop!) | | Finished Cheddar Curd Mass (kg) | Milk_Batch_kg * (Van_Slyke_Yield_Pct / 100) | 1,890.0 kg (1,594.4 kg = -295.6 kg loss!) | | Drained Sweet Whey Mass (kg) | Milk_Batch_kg - Finished_Cheese_Mass_kg | 16,110.0 kg (16,405.6 kg whey) | - **Formula (Van Slyke & Price Cheese Yield, Casein-to-Fat Ratio & Whey Mass Balance Formula)**: `=LET(ft_p, B2, cs_p, B3, ms_p, B4, mk_k, B5, yl_p, ((0.93 * ft_p + (cs_p - 0.1)) * 1.09) / (1 - (ms_p / 100)), ch_k, mk_k * (yl_p / 100), IF(OR(ft_p < 2, ft_p > 6.5, cs_p < 1.5, cs_p > 4.5, ms_p < 28, ms_p > 55, mk_k <= 50), "Invalid Dairy Input", ROUND(mk_k - ch_k, 1)))` - **Formula (Summer Heat-Stress Milk + Over-Dry 35.0% Curd Moisture Economic Loss Check)**: `=IF(ISTEXT(E5), E5, ROUND(((0.93 * B2 + (B3 - 0.1)) * 1.09) / (1 - (B4 / 100)), 2))` ### van Walraven Elixhauser Weighted Comorbidity Index & Inpatient Mortality - **URL**: https://sheets.arte-soft.com/en/learn/van-walraven-elixhauser-weighted-comorbidity-index-hospital-mortality/ - **Summary**: Condense ICD administrative Elixhauser comorbidity flags into Carl van Walraven’s (2009) single weighted risk score (-19 to +89) and predicted hospital mortality probability. *Table — Collapsing 30 Elixhauser ICD diagnoses into one validated risk-adjustment score (-19 to +89)!:* | Active Comorbidity Profile | van Walraven Score S_vW | Predicted Inpatient Mortality (%) | Risk-Adjustment Tier | | --- | --- | --- | --- | | No Coded Elixhauser Comorbidities | 0 pts | 0.80% | Low Baseline Risk | | CHF (+7) + Renal (+5) + Metastatic Ca (+12) | +24 pts | 6.51% | High Multimorbidity Burden | | Same + Negative-Weight Code (-7) | +17 pts | 3.58% | Reflects Administrative Coding Offset | - **Formula (van Walraven Weighted Elixhauser Comorbidity Score)**: `=IF(OR(MIN(C2:C7) < 0, MAX(C2:C7) > 1), "Binary Flags Must Be 0 or 1", SUMPRODUCT(B2:B7, C2:C7))` - **Formula (van Walraven Logistic Predicted In-Hospital Mortality (%))**: `=IF(OR(MIN(C2:C7) < 0, MAX(C2:C7) > 1), "Binary Flags Must Be 0 or 1", ROUND(100 / (1 + EXP(-(-4.82 + 0.0898 * SUMPRODUCT(B2:B7, C2:C7)))), 2))` ### VanderWeele-Ding E-Value Formula for Unmeasured Confounding - **URL**: https://sheets.arte-soft.com/en/learn/vanderweele-ding-e-value-unmeasured-confounding-sensitivity-formula/ - **Summary**: Calculate the VanderWeele-Ding (2017) E-value = RR* + SQRT(RR* * (RR* - 1)) for both point risk ratios and 95% confidence limits, handling protective RR < 1 automatically. *Table — Quantify the minimum confounder strength needed to explain away an observational association:* | Observational Input | Exact E-Value Transformation | Sample Output | | --- | --- | --- | | Point Risk Ratio RR = 2.50 | 2.50 + SQRT(2.50 * 1.50) | 4.4365 | | Lower 95% CI Bound RR_low = 1.60 | 1.60 + SQRT(1.60 * 0.60) | 2.5798 | | Protective Exposure RR = 0.40 | Invert RR* = 1 / 0.40 = 2.50 first | 4.4365 (Symmetric!) | | CI Crossing Null [0.85, 1.90] | Interval already contains 1.0 | 1.0000 | - **Formula (Point-Estimate E-Value Formula (Handling Both Harmful RR >= 1 and Protective RR < 1))**: `=LET(rr_pt, B2, IF(rr_pt <= 0, "Invalid Risk Ratio", LET(rr_st, IF(rr_pt >= 1, rr_pt, 1 / rr_pt), ROUND(rr_st + SQRT(rr_st * (rr_st - 1)), 4))))` - **Formula (95% Confidence-Interval Limit Closest-to-Null E-Value Formula)**: `=LET(rr_lo, B3, rr_hi, B4, IF(OR(rr_lo <= 0, rr_hi < rr_lo), "Invalid CI Bounds", IF(AND(rr_lo <= 1, rr_hi >= 1), 1, LET(rr_bnd, IF(rr_lo > 1, rr_lo, 1 / rr_hi), ROUND(rr_bnd + SQRT(rr_bnd * (rr_bnd - 1)), 4)))))` ### Vapor-Compression Liquid Subcooling, NRE & Mass-Flow Formula - **URL**: https://sheets.arte-soft.com/en/learn/vapor-compression-refrigeration-subcooling-superheat-and-mass-flow/ - **Summary**: Calculate Vapor-Compression Chiller Subcooled Net Refrigerating Effect NRE (kJ/kg), Liquid Subcooling Capacity Gain %, Required Refrigerant Mass Flow Rate m_dot (kg/s), and Cycle Cooling COP from State-Point Enthalpies. *Table — Boost Net Refrigerating Effect (NRE) and stop expansion-valve flash gas with liquid subcooling!:* | Vapor-Compression Metric (86 kW, h1=410, h3_sat=250, ΔT_sub=8 K, Cp=1.5, h2=453) | Formula | Verified Output | | --- | --- | --- | | Subcooled NRE (kJ/kg) | h1 - (h3_sat - Cp_liq * ΔT_sub) | 172.00 kJ/kg (160.00 @ 0 K Sub) | | Subcooling NRE Gain Ratio | (Cp_liq * ΔT_sub) / (h1 - h3_sat) | 0.0750 (+7.50% Free Capacity) | | Refrigerant Mass Flow (kg/s) | Cooling_Load_kW / Subcooled_NRE | 0.5000 kg/s (0.5375 @ 0 K Sub) | | Cycle Cooling COP | Subcooled_NRE / (h2 - h1) | 4.0000 (3.7209 @ 0 K Sub) | - **Formula (Subcooled Vapor-Compression Mass Flow & Cycle COP Formula)**: `=LET(qc_k, B2, h_1, B3, h_3s, B4, dt_s, B5, cp_l, B6, h_2, B7, IF(OR(qc_k <= 0, h_3s <= 0, h_1 <= h_3s, h_2 <= h_1, dt_s < 0, cp_l <= 0), "Invalid Vapor-Compression State", LET(nr_e, h_1 - (h_3s - cp_l * dt_s), ROUND(nr_e / (h_2 - h_1), 4))))` - **Formula (Zero-Subcooling Saturated Receiver Check (Set Subcooling ΔT = 0 K))**: `=IF(ISTEXT(E2), E2, ROUND(B2 / (B3 - (B4 - B6 * B5)), 4))` ### Vapor Pressure Deficit (VPD): Leaf-to-Air Tetens Formula (kPa) - **URL**: https://sheets.arte-soft.com/en/learn/vapor-pressure-deficit-vpd-leaf-to-air-greenhouse-formula/ - **Summary**: Estimate leaf-to-air vapor pressure difference from leaf temperature, air temperature and relative humidity. Compare it with air VPD and inspect saturation and actual vapor pressures. - **Formula (Calculate leaf-to-air difference)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric inputs",IF(OR(B2<0,B2>50,B3<0,B3>50),"Example temperature range is 0 to 50 C",IF(OR(B4<0,B4>100),"RH must be between 0 and 100",(0.6108*EXP(17.27*B2/(B2+237.3)))-(0.6108*EXP(17.27*B3/(B3+237.3)))*B4/100)))` - **Formula (Inspect leaf saturation pressure)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric inputs",IF(OR(B2<0,B2>50,B3<0,B3>50),"Example temperature range is 0 to 50 C",IF(OR(B4<0,B4>100),"RH must be between 0 and 100",0.6108*EXP(17.27*B2/(B2+237.3)))))` - **Formula (Inspect actual ambient vapor pressure)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric inputs",IF(OR(B2<0,B2>50,B3<0,B3>50),"Example temperature range is 0 to 50 C",IF(OR(B4<0,B4>100),"RH must be between 0 and 100",(0.6108*EXP(17.27*B3/(B3+237.3)))*B4/100)))` - **Formula (Compare with air VPD)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric inputs",IF(OR(B2<0,B2>50,B3<0,B3>50),"Example temperature range is 0 to 50 C",IF(OR(B4<0,B4>100),"RH must be between 0 and 100",(0.6108*EXP(17.27*B3/(B3+237.3)))*(1-B4/100))))` ### VAR.S vs VAR.P: calculate sample variance (n - 1) vs population variance (n) - **URL**: https://sheets.arte-soft.com/en/learn/var-s-vs-var-p-variance/ - **Summary**: Choose VAR.S when analyzing a sample of observations and VAR.P when you have every member of a closed population. *Table — Why sample variance divides by n - 1 instead of n:* | Run (A) | CycleSec (B) | Deviation (x - 21) | Squared | | --- | --- | --- | --- | | R1 | 18 | -3 | 9 | | R2 | 20 | -1 | 1 | | R3 | 22 | +1 | 1 | | R4 | 24 | +3 | 9 | - **Formula (Compare 20 / 3 (VAR.S) vs 20 / 4 (VAR.P))**: `=ROUND(VAR.S(B2:B5), 4)` - **Formula (Single-observation boundary (#DIV/0! vs 0))**: `=VAR.S(B2:B2)` ### Variable sales commission split between AE and Solutions Engineer (XLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/variable-commission-split-by-role-and-deal-tier/ - **Summary**: Allocate a deal commission pool dynamically across Account Executive and Solutions Engineer roles using a tiered deal-size split table. *Table — Automate AE / SE split commissions as enterprise deal size scales!:* | Deal Margin Tier (E) | AE Split % (F) | SE Split % (G) | Example Payout on 10% Pool | | --- | --- | --- | --- | | $0+ (SMB) | 80% (0.80) | 20% (0.20) | $30k deal -> $2,400 AE / $600 SE | | $50,000+ (Mid-Market) | 70% (0.70) | 30% (0.30) | $80k deal -> $5,600 AE / $2,400 SE | | $100,000+ (Enterprise) | 60% (0.60) | 40% (0.40) | $150k deal -> $9,000 AE / $6,000 SE | - **Formula (Account Executive payout = Commission Pool * Tiered AE Split %)**: `=IF(OR(COUNT(B2:C2)<>2,COUNT(E2:G4)<>9),"Invalid inputs",IF(OR(B2<0,C2<0,C2>1,E2<>0,E3<=E2,E4<=E3,MIN(F2:G4)<0,MAX(F2:G4)>1,ABS(F2+G2-1)>0.000000001,ABS(F3+G3-1)>0.000000001,ABS(F4+G4-1)>0.000000001),"Invalid inputs",ROUND(ROUND(B2*C2,2)*XLOOKUP(B2,$E$2:$E$4,$F$2:$F$4,0,-1),2)))` - **Formula (Solutions Engineer receives the rounded pool remainder)**: `=IF(OR(COUNT(B2:C2)<>2,COUNT(E2:G4)<>9),"Invalid inputs",IF(OR(B2<0,C2<0,C2>1,E2<>0,E3<=E2,E4<=E3,MIN(F2:G4)<0,MAX(F2:G4)>1,ABS(F2+G2-1)>0.000000001,ABS(F3+G3-1)>0.000000001,ABS(F4+G4-1)>0.000000001),"Invalid inputs",ROUND(ROUND(B2*C2,2)-ROUND(ROUND(B2*C2,2)*XLOOKUP(B2,$E$2:$E$4,$F$2:$F$4,0,-1),2),2)))` ### Varian Model of Sales Promotional Price Floor Formula - **URL**: https://sheets.arte-soft.com/en/learn/varian-model-of-sales-promotional-price-floor-dispersion-formula/ - **Summary**: Calculate Hal Varian’s (1980) mixed-strategy promotional discount floor p_min = c + (U / (U + I)) * (r - c), equilibrium store profit, and sale-frequency CDF F(p). *Table — Why supermarkets randomize weekly promotions instead of posting a predictable everyday price!:* | Varian Promotional Pricing Metric (N=2, r=100, c=20, U=300, I=500) | Formula | Verified Output | | --- | --- | --- | | Equilibrium Expected Store Profit (Pi*) | U * (r - c) = 300 * 80 | 24,000.00 | | Minimum Rational Promo Floor (p_min) | c + (U / (U + I)) * (r - c) | 50.00 (Max 50% Markdown) | | Single-Store Sale CDF at p = 60 | 1 - ((U*(r - p)) / (I*(p - c)))^(1/(N-1)) | 0.4000 (40.00% of Weeks) | | Market Deal Availability (Min Price <= 60) | 1 - (1 - F(60))^N | 0.6400 (64.00% of Weeks) | - **Formula (Varian Minimum Promotional Sale Floor p_min Formula)**: `=LET(n_st, B2, r_ls, B3, c_un, B4, u_cp, B5, i_bh, B6, IF(OR(n_st < 2, INT(n_st) <> n_st, c_un < 0, r_ls <= c_un, u_cp <= 0, i_bh <= 0), "Invalid Sales Input", ROUND(c_un + (u_cp / (u_cp + i_bh)) * (r_ls - c_un), 2)))` - **Formula (Store Promotional Price CDF F(p) on [p_min, r] Formula)**: `=LET(n_st, B2, r_ls, B3, c_un, B4, u_cp, B5, i_bh, B6, p_pr, B7, IF(OR(n_st < 2, INT(n_st) <> n_st, c_un < 0, r_ls <= c_un, u_cp <= 0, i_bh <= 0), "Invalid Sales Input", LET(p_mn, c_un + (u_cp / (u_cp + i_bh)) * (r_ls - c_un), IF(p_pr <= p_mn, 0, IF(p_pr >= r_ls, 1, ROUND(1 - (((u_cp * (r_ls - p_pr)) / (i_bh * (p_pr - c_un))) ^ (1 / (n_st - 1))), 4))))))` ### Variance Swap Vega-to-Variance Notional & Convexity Formula - **URL**: https://sheets.arte-soft.com/en/learn/variance-swap-fair-strike-vega-to-variance-notional-and-convexity-payoff/ - **Summary**: Calculate Variance Notional N_var = N_vega / (2*K_vol), Variance Swap Settlement P&L, Linear Volatility Swap P&L, and Strictly Non-Negative Volatility Convexity Gain. *Table — Why being LONG a Variance Swap beats a linear Volatility Swap whether realized vol crashes OR explodes!:* | OTC Variance Swap KPI (Vega Notional = 50,000, Strike = 20.0, Realized = 28.0) | Formula | Verified Output | | --- | --- | --- | | Variance Notional Nvar ($/var pt) | Vega_Notional / (2 * Vol_Strike) | 1,250.00 | | Variance Swap Settlement P&L | N_var * (Realized_Vol^2 - Strike^2) | +480,000.00 (-320,000 @ 12.0 vol) | | Linear Volatility Swap P&L | Vega_Notional * (Realized_Vol - Strike) | +400,000.00 (-400,000 @ 12.0 vol) | | Volatility Convexity Advantage | Var_Swap_PnL - Linear_Vol_Swap_PnL | +80,000.00 (+80,000 @ 12.0 vol too!) | - **Formula (Vega-to-Variance Notional Conversion & Convexity Decomposition Formula)**: `=LET(vg_n, B2, kv_l, B3, rv_l, B4, IF(OR(vg_n = 0, kv_l <= 0, rv_l < 0), "Invalid Variance Input", LET(nv_r, vg_n / (2 * kv_l), vp_l, nv_r * ((rv_l ^ 2) - (kv_l ^ 2)), lp_l, vg_n * (rv_l - kv_l), ROUND(vp_l - lp_l, 2))))` - **Formula (Symmetric Downside Calm-Market Convexity Cushion Check (Set Realized Vol = 12.00))**: `=IF(ISTEXT(E5), E5, LET(nv_r, B2 / (2 * B3), ROUND(nv_r * ((B4 ^ 2) - (B3 ^ 2)), 2)))` ### Varshni Semiconductor Bandgap Temperature Dependence Formula Eg(T) - **URL**: https://sheets.arte-soft.com/en/learn/varshni-semiconductor-bandgap-temperature-shrinkage-formula/ - **Summary**: Calculate semiconductor bandgap shrinkage with temperature E_g(T) = E_g0 - (alpha * T^2) / (T + beta) (eV) and cutoff absorption wavelength lambda_g (nm) for Silicon, GaAs, and LED/laser diodes. *Table — Predict why hot solar cells lose open-circuit voltage and laser diodes red-shift!:* | Silicon Junction Temperature T (Eg0 = 1.1695 eV) | Varshni Bandgap Eg(T) (eV) | Band-Edge Cutoff lambda_g (nm) | Optoelectronic Impact | | --- | --- | --- | --- | | Cryogenic Limit (T = 0 K) | 1.1695 eV | 1,060.1 nm | Zero-Phonon Lattice Limit | | Room Temperature (T = 300 K) | 1.1240 eV | 1,103.0 nm | Standard Photovoltaic Baseline | | Hot Power Junction (T = 500 K) | 1.0654 eV (-58.6 meV) | 1,163.7 nm (Red-Shift) | Lower Solar Voc & Higher Leakage | - **Formula (Varshni Temperature-Dependent Bandgap Energy E_g(T) (eV))**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0, B5 < 0), "Invalid Bandgap Inputs", ROUND(B2 - ((B3 * (B5 ^ 2)) / (B5 + B4)), 4))` - **Formula (Corresponding Optical Band-Edge Cutoff Wavelength lambda_g (nm) = 1239.842 / E_g(T))**: `=IF(OR(B2 <= 0, B3 < 0, B4 <= 0, B5 < 0), "Invalid Bandgap Inputs", ROUND(1239.842 / (B2 - ((B3 * (B5 ^ 2)) / (B5 + B4))), 1))` ### Ornstein-Uhlenbeck conditional mean, half-life and uncertainty formulas - **URL**: https://sheets.arte-soft.com/en/learn/vasicek-and-ornstein-uhlenbeck-mean-reverting-rate-forecast/ - **Summary**: Calculate conditional expectation and dispersion under a constant-parameter mean-reverting model, with consistent time units and validated parameters. *Table — A conditional stochastic model, not a guaranteed rate path:* | Vasicek / OU Metric | Exact Closed-Form Equation | Inputs: r0=5.5%, theta=3.5%, kappa=0.50 | Calculated Output | | --- | --- | --- | --- | | 2-Year Expected Rate E[r_2] | B3 + (B2 - B3) * EXP(-B4 * B5) | 3.5% + 2.0% * EXP(-1.0) | 4.24% (0.0424) | | Mean-Reversion Half-Life | LN(2) / B4 | 0.69315 / 0.50 yr^-1 | 1.39 years | | Stationary Long-Run Vol | B6 / SQRT(2 * B4) | 1.20% / SQRT(1.0) | 1.20% (0.0120) | | 20-Year Asymptote (T = 20) | B5 set to 20 years | EXP(-10) -> 0.000045 | 0.035 after four-decimal rounding; not exact equality at finite T | - **Formula (Vasicek Conditional Expected Rate at Horizon T: theta + (r0 - theta) * EXP(-kappa * T))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B4<=0,B5<0),"Invalid inputs",ROUND(B3 + (B2 - B3) * EXP(-B4 * B5), 4)))` - **Formula (Conditional-mean deviation half-life)**: `=IF(COUNT(B4)<>1,"Invalid inputs",IF(B4<=0,"Invalid inputs",ROUND(LN(2) / B4, 2)))` - **Formula (Stationary standard deviation)**: `=IF(COUNT(B4,B6)<>2,"Invalid inputs",IF(OR(B4<=0,B6<0),"Invalid inputs",ROUND(B6 / SQRT(2 * B4), 4)))` - **Formula (Finite-horizon conditional standard deviation)**: `=IF(COUNT(B4:B6)<>3,"Invalid inputs",IF(OR(B4<=0,B5<0,B6<0),"Invalid inputs",ROUND(B6*SQRT((1-EXP(-2*B4*B5))/(2*B4)),6)))` ### Vasicek ASRF Basel Conditional Default & Capital Formula - **URL**: https://sheets.arte-soft.com/en/learn/vasicek-asrf-basel-credit-portfolio-conditional-default-formula/ - **Summary**: Compute Vasicek’s (2002) Asymptotic Single-Risk-Factor stressed default rate CPD = Phi((Phi^-1(PD) + SQRT(rho)*z_q) / SQRT(1 - rho)) and Basel unexpected-loss capital K_UL. *Table — Evaluate the exact Gaussian copula core inside Basel IRB regulatory capital:* | Vasicek ASRF Metric (PD=2%, LGD=45%, z=3.0902) | rho = 0.19 (Correlated) | rho = 0.00 (Idiosyncratic) | | --- | --- | --- | | Unconditional Default Threshold z_PD | -2.0542 | -2.0542 | | 99.9% Conditional Default Rate (CPD) | 0.2160 (21.60%) | 0.0200 (= PD) | | Expected Loss Provision (LGD * PD) | 0.0090 (0.90%) | 0.0090 (0.90%) | | Unexpected-Loss Capital K_UL | 0.0882 (8.82% of EAD) | 0.0000 (Fully Diversified!) | - **Formula (Vasicek Stressed Conditional Probability of Default (CPD) Formula)**: `=LET(pd_u, B2, rho_a, B3, z_cf, B5, IF(OR(pd_u <= 0, pd_u >= 1, rho_a < 0, rho_a >= 1, z_cf <= 0), "Invalid ASRF Input", LET(p_tl, MIN(pd_u, 1 - pd_u), t_in, SQRT(-2 * LN(p_tl)), z_mg, t_in - (2.515517 + 0.802853 * t_in + 0.010328 * (t_in^2)) / (1 + 1.432788 * t_in + 0.189269 * (t_in^2) + 0.001308 * (t_in^3)), z_pd, IF(pd_u >= 0.5, z_mg, -z_mg), z_st, (z_pd + SQRT(rho_a) * z_cf) / SQRT(1 - rho_a), az_r, ABS(z_st) / SQRT(2), t_er, 1 / (1 + 0.3275911 * az_r), erf_m, 1 - (((((1.061405429 * t_er - 1.453152027) * t_er + 1.421413741) * t_er - 0.284496736) * t_er + 0.254829592) * t_er) * EXP(-(az_r^2)), cpd_v, 0.5 * (1 + IF(z_st >= 0, erf_m, -erf_m)), ROUND(cpd_v, 4))))` - **Formula (Basel Unexpected-Loss Capital Requirement K_UL = LGD * (CPD - PD) Formula)**: `=LET(pd_u, B2, rho_a, B3, lgd_v, B4, z_cf, B5, IF(OR(pd_u <= 0, pd_u >= 1, rho_a < 0, rho_a >= 1, lgd_v <= 0, lgd_v > 1, z_cf <= 0), "Invalid ASRF Input", IF(rho_a = 0, 0, LET(p_tl, MIN(pd_u, 1 - pd_u), t_in, SQRT(-2 * LN(p_tl)), z_mg, t_in - (2.515517 + 0.802853 * t_in + 0.010328 * (t_in^2)) / (1 + 1.432788 * t_in + 0.189269 * (t_in^2) + 0.001308 * (t_in^3)), z_pd, IF(pd_u >= 0.5, z_mg, -z_mg), z_st, (z_pd + SQRT(rho_a) * z_cf) / SQRT(1 - rho_a), az_r, ABS(z_st) / SQRT(2), t_er, 1 / (1 + 0.3275911 * az_r), erf_m, 1 - (((((1.061405429 * t_er - 1.453152027) * t_er + 1.421413741) * t_er - 0.284496736) * t_er + 0.254829592) * t_er) * EXP(-(az_r^2)), cpd_v, 0.5 * (1 + IF(z_st >= 0, erf_m, -erf_m)), ROUND(lgd_v * (cpd_v - pd_u), 4)))))` ### Vasicek Short-Rate Term Structure: Zero-Coupon Bond Price P(0,T) & Spot Yield - **URL**: https://sheets.arte-soft.com/en/learn/vasicek-mean-reverting-short-rate-zero-coupon-bond-price-and-yield/ - **Summary**: Price default-free zero-coupon bonds and derive continuously compounded spot yields under Oldrich Vasicek’s (1977) Ornstein-Uhlenbeck mean-reverting interest-rate model. *Table — Affine A(tau) and B(tau) closed-form structure of the Vasicek short-rate model:* | Vasicek Quantity (tau = 4 yr) | Formula | Example (kappa=0.5, theta=5%, sigma=2%, r0=3%) | | --- | --- | --- | | Rate Sensitivity B(tau) | (1 - EXP(-kappa * tau)) / kappa | 1.7293 years | | Affine Log-Term ln A(tau) | (theta - sig^2/(2k^2))*(B - tau) - sig^2*B^2/(4k) | -0.1123 | | Zero-Coupon Price P(0, 4) | EXP(ln_A - B * r_0) | 0.8486 (84.86% of par) | | Continuous Spot Yield y(4) | -LN(P(0, 4)) / tau | 0.0410 (4.10% > 3.00% r_0) | - **Formula (Vasicek B(tau) & Zero-Coupon Bond Price P(0, tau) Formula)**: `=LET(kap, B2, th, B3, sig, B4, r_now, B5, mat, B6, b_fac, (1 - EXP(-kap * mat)) / kap, ln_a, (th - (sig ^ 2) / (2 * (kap ^ 2))) * (b_fac - mat) - ((sig ^ 2) / (4 * kap)) * (b_fac ^ 2), ROUND(EXP(ln_a - b_fac * r_now), 4))` - **Formula (Continuously Compounded Spot Yield Formula)**: `=ROUND(-LN(E3) / B6, 4)` ### Weight-Based Infusion Unit Conversion: mcg/kg/min and mL/hr - **URL**: https://sheets.arte-soft.com/en/learn/vasopressor-mcg-kg-min-to-ml-hr-icu-pump-rate-formula/ - **Summary**: Learn dimensional analysis with a fictional infusion calculation: derive concentration from total drug and final volume, convert a supplied dose rate, and independently enter a rate for the reverse calculation. - **Formula (Use final total volume for concentration)**: `=IF(B8<>"OK",B8,B4*1000/B5)` - **Formula (Validate before either direction of conversion)**: `=IF(COUNT(B2:B5)<>4,"Complete numeric inputs",IF(OR(B2<0,B3<=0,B4<=0,B5<=0),"Check input ranges","OK"))` - **Formula (Convert dose rate to volumetric rate)**: `=IF(B8<>"OK",B8,B2*B3*60/B10)` - **Formula (Enter a separate rate for the reverse calculation)**: `=IF(B8<>"OK",B8,IF(NOT(ISNUMBER(B6)),"Check rate input",IF(B6<0,"Check rate input",B6*B10/(B3*60))))` ### VC Option Pool Shuffle & Effective Pre-Money Formula - **URL**: https://sheets.arte-soft.com/en/learn/vc-option-pool-shuffle-pre-money-vs-post-money-effective-valuation/ - **Summary**: Calculate the Series A Share Price P_A, New Option Pool Top-Up Shares, Effective True Pre-Money Valuation of existing shares, and Founder Ownership under Investor-Friendly Pre-Money Pool Creation vs Shared Post-Money Pool. *Table — Uncover the hidden pre-money valuation haircut buried inside Series A option-pool clauses!:* | Series A Cap Table Metric ($16M Pre + $4M VC, 6.5M Fdr + 0.5M Old Pool, 15% Target Pool) | Formula | Verified Output | | --- | --- | --- | | Shuffled Series A Share Price P_A | V_post * (1 - w_vc - p_pool) / S_fdr | $2.00 / sh (vs $2.29 Headline) | | New Pool Top-Up Shares (M) | p_pool * S_post - S_p0 | 1.00M shares ($2.00M Haircut) | | Effective True Pre-Money Valuation | (S_fdr + S_p0) * P_A | $14.00M ($13.00M if S_p0 = 0) | | Founder Post-Close Ownership | 1 - I_vc / V_post - p_pool | 0.6500 (vs 0.6800 Shared Pool) | - **Formula (Effective True Pre-Money Valuation Formula (With Existing Pool Credit))**: `=LET(s_fd, B2, s_p0, B3, v_pr, B4, i_vc, B5, p_pl, B6, v_ps, v_pr + i_vc, w_vc, i_vc / v_ps, IF(OR(s_fd <= 0, s_p0 < 0, v_pr <= 0, i_vc <= 0, p_pl < 0, w_vc + p_pl >= 1), "Invalid Pool Shuffle", LET(s_ps, MAX((s_fd + s_p0) / (1 - w_vc), s_fd / (1 - w_vc - p_pl)), ROUND((s_fd + s_p0) * (v_ps / s_ps), 2))))` - **Formula (Founder Ownership Share Under Pre-Money Pool Shuffle Formula)**: `=LET(s_fd, B2, s_p0, B3, v_pr, B4, i_vc, B5, p_pl, B6, v_ps, v_pr + i_vc, w_vc, i_vc / v_ps, IF(ISTEXT(E4), E4, LET(s_ps, MAX((s_fd + s_p0) / (1 - w_vc), s_fd / (1 - w_vc - p_pl)), ROUND(s_fd / s_ps, 4))))` ### VC Participating vs Non-Participating Preference Formula - **URL**: https://sheets.arte-soft.com/en/learn/vc-participating-vs-non-participating-liquidation-preference-waterfall/ - **Summary**: Calculate Venture Capital exit payouts under 1x Non-Participating Preferred versus Capped Participating Preferred MIN(W, MAX(alpha*W, MIN(Cap, Pref + alpha*MAX(0, W - Pref)))) across all four exit zones. *Table — Quantify the exact founder cost of "double-dip" participating preferred stock!:* | Exit Waterfall Scenario ($10M Invested, 25% Own, 1x Pref, 3x Cap) | 1x Non-Participating VC | 1x Participating (3x Cap) VC | | --- | --- | --- | | Distressed Sale (W_exit = $8M) | $8.00M (100% Sweep) | $8.00M (100% Sweep) | | Mid-Size M&A (W_exit = $50M) | $12.50M (Converts > $40M) | $20.00M (+$7.50M Double-Dip) | | Cap Flat Zone (W_exit = $100M) | $25.00M | $30.00M (Frozen at 3x Cap) | | Home-Run Exit (W_exit = $160M) | $40.00M | $40.00M (Converts > $120M) | - **Formula (Universal Capped Participating Preferred Waterfall Formula)**: `=LET(in_vc, B2, mp_rf, B3, al_ow, B4, mc_cp, B5, wx_pr, B6, IF(OR(in_vc <= 0, mp_rf <= 0, al_ow <= 0, al_ow >= 1, mc_cp < mp_rf, wx_pr < 0), "Invalid Term Sheet", LET(pr_am, mp_rf * in_vc, cp_am, mc_cp * in_vc, ROUND(MIN(wx_pr, MAX(al_ow * wx_pr, MIN(cp_am, pr_am + al_ow * MAX(0, wx_pr - pr_am)))), 2))))` - **Formula (Non-Participating Conversion Threshold & Double-Dip Founder Cost Formula)**: `=IF(ISTEXT(E4), E4, ROUND(E4 - E2, 2))` ### VC Pay-to-Play Pro-Rata & Preferred-to-Common Formula - **URL**: https://sheets.arte-soft.com/en/learn/vc-pay-to-play-down-round-pro-rata-threshold-and-shadow-common-conversion/ - **Summary**: Calculate Venture Capital Pay-to-Play Down-Round Pro-Rata Check Requirement ($M), Preserved Preferred Shares vs Penalty Shares Forcibly Converted 1:1 into Common Stock, and Surviving Senior Liquidation Preference Stack ($M). *Table — Model proportional Pay-to-Play conversion penalties accurately in down-round cap tables!:* | VC Pay-to-Play Metric (2M / 10M Base, $2.50 OIP, $5M Round, $1.0M Check) | Formula | Verified Output | | --- | --- | --- | | 100% Pro-Rata Check Required ($M) | (Investor_Pref / Base_Sh) * Round_Size | $1.00M | | Preserved Prior Preferred (M sh) | Investor_Pref * MIN(1, Check / ProRata_Req) | 2.0000M (0.5000M @ $0.25M; 0 @ $0) | | Forcibly Converted to Common (M) | Investor_Pref - Preserved_Preferred | 0.0000M (1.5000M @ $0.25M; 2M @ $0) | | Total Surviving 1x Liq Pref ($M) | Preserved_Pref * Prior_OIP + Actual_Check | $6.00M ($1.50M @ $0.25M; $0 @ $0) | - **Formula (Proportional Pay-to-Play Surviving Liquidation Preference Formula)**: `=LET(ip_s, B2, bs_s, B3, oi_p, B4, rn_m, B5, ck_m, B6, IF(OR(ip_s <= 0, bs_s < ip_s, oi_p <= 0, rn_m <= 0, ck_m < 0), "Invalid Pay-to-Play Cap Table", LET(pr_q, (ip_s / bs_s) * rn_m, pt_r, MIN(1, ck_m / pr_q), sv_p, ip_s * pt_r, ROUND(sv_p * oi_p + ck_m, 2))))` - **Formula (25% Partial Check & Non-Participating Wipeout Checks)**: `=IF(ISTEXT(E5), E5, ROUND(B2 - B2 * MIN(1, B6 / ((B2 / B3) * B5)), 4))` ### Variable Declining Balance (VDB) Schedule with Optimal Switch to Straight-Line - **URL**: https://sheets.arte-soft.com/en/learn/vdb-variable-declining-balance-depreciation-switch-to-straight-line/ - **Summary**: Model accelerated declining-balance depreciation that automatically switches to straight-line as soon as straight-line yields a larger charge, ensuring book value reaches salvage on schedule. *Table — Why unswitched declining balance leaves stranded book value:* | Year | Opening Book | DDB (40%) | Remaining SL | Switched VDB Charge | Closing Book | | --- | --- | --- | --- | --- | --- | | 1 | 50,000 | 20,000 | 9,600.00 | 20,000 | 30,000 | | 2 | 30,000 | 12,000 | 7,000.00 | 12,000 | 18,000 | | 3 | 18,000 | 7,200 | 5,333.33 | 7,200 | 10,800 | | 4 (Switch!) | 10,800 | 4,320 | 4,400.00 | 4,400 | 6,400 | | 5 | 6,400 | 2,560 | 4,400.00 | 4,400 | 2,000 (Salvage) | - **Formula (Period VDB Charge with Salvage Floor & SL Crossover)**: `=LET(remCap, MAX(0, E2 - $B$3), ddbAmt, E2 * ($B$5 / $B$4), slAmt, remCap / ($B$4 - D2 + 1), ROUND(MIN(remCap, MAX(ddbAmt, slAmt)), 2))` - **Formula (Detecting the Exact Straight-Line Switchover Year)**: `=IF((E5 - $B$3) / ($B$4 - D5 + 1) > E5 * ($B$5 / $B$4), "SL Switch", "Declining")` ### Vehicle stopping distance formula: reaction distance + v² / (2·μ·g) braking - **URL**: https://sheets.arte-soft.com/en/learn/vehicle-stopping-distance-reaction-plus-braking-physics/ - **Summary**: Calculate thinking distance, kinetic braking distance, and total stopping distance in meters from speed (km/h), reaction time, and road friction μ. *Table — Why doubling highway speed QUADRUPLES kinetic braking distance!:* | Speed & Road Condition (t_react = 1.5 s) | Reaction Dist (v·t) | Braking Dist v²/(2μg) | Total Stopping Distance | | --- | --- | --- | --- | | 90 km/h (25 m/s), Dry μ = 0.75 | 37.50 m | 42.47 m | 79.97 m | | 90 km/h (25 m/s), Ice μ = 0.15 | 37.50 m | 212.37 m (5× longer!) | 249.87 m | | 180 km/h (50 m/s), Dry μ = 0.75 | 75.00 m (2×) | 169.89 m (4× v²!) | 244.89 m | - **Formula (Total Stopping Distance (Reaction + Braking) and Braking-Only Distance in meters)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<0,C2<=0),"Invalid motion inputs",LET(v, A2 / 3.6, ROUND(v * B2 + (v ^ 2) / (2 * C2 * 9.81), 2)))` - **Formula (Pure kinetic braking distance after brakes engage)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<0,C2<=0),"Invalid motion inputs",LET(v, A2 / 3.6, ROUND((v ^ 2) / (2 * C2 * 9.81), 2)))` ### Venn Diagram Overlap Formula: 2- & 3-Set Inclusion-Exclusion Union & Exclusive Counts - **URL**: https://sheets.arte-soft.com/en/learn/venn-diagram-two-and-three-set-inclusion-exclusion-overlap-formula/ - **Summary**: Reconcile audience or SKU overlaps across three overlapping sets using the Principle of Inclusion-Exclusion so Venn diagram region labels and unique-reach totals never double-count intersections. *Table — Prevent double-subtraction errors in 3-circle Venn diagrams!:* | Venn Region (\|A\|=520, \|B\|=380, \|C\|=290) | Inclusion-Exclusion Formula | Exact Region Count | | --- | --- | --- | | Email-Only Crescent A \ (B U C) | 520 - 140 - 110 + 45 | 315 | | Pairwise-Only Lenses (AB\C, AC\B, BC\A) | (140-45), (110-45), (95-45) | 95, 65, 50 | | Total Deduplicated Union \|A U B U C\| | 520 + 380 + 290 - 140 - 110 - 95 + 45 | 890 unique customers | - **Formula (Three-Set Deduplicated Union Reach |A U B U C| with Overlap Consistency Guard)**: `=IF(OR(B8 < 0, B8 > MIN(B5:B7), B5 > MIN(B2, B3), B6 > MIN(B2, B4), B7 > MIN(B3, B4)), "Impossible Set Intersection Bounds", B2 + B3 + B4 - B5 - B6 - B7 + B8)` - **Formula (Exclusive Set-A-Only Crescent Count |A \ (B U C)|)**: `=B2 - B5 - B6 + B8` ### Venture Debt Warrant Coverage & All-In Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/venture-debt-warrant-coverage-end-of-term-fee-and-effective-cost/ - **Summary**: Calculate Net Funded Venture Debt Proceeds, Cash-Only Effective Annual Cost (with upfront commitment and end-of-term final payment fees), Warrant Intrinsic Payoff, and All-In Equity-Adjusted Cost. *Table — Look past the headline coupon to price upfront fees, EOT fees, and warrant kickers!:* | Venture Debt Tranche Metric ($10M, 1.5% Upfront, 11% Cpn, 4% EOT, 10% Warrant @ 3x) | Formula | Verified Output | | --- | --- | --- | | Net Cash Funded at Closing ($M) | L * (1 - f_up) | $9.85M ($0.15M Upfront Fee) | | Cash-Only Effective Annual Rate | (1 + r_cpn + f_eot) / (1 - f_up) - 1 | 0.1675 (16.75% vs 11.00% Cpn) | | Warrant Intrinsic Gain at Exit ($M) | w_cov * L * MAX(0, M_exit - 1) | $2.00M ($0.00M if M_exit <= 1) | | All-In Effective Cost (incl. Warrants) | (1 + r_cpn + f_eot + w_cov*MAX(0, M_exit-1)) / (1 - f_up) - 1 | 0.3706 (37.06%) | - **Formula (Cash-Only vs Warrant-Adjusted Effective Annual Cost Formula)**: `=LET(ln_pr, B2, fe_up, B3, rt_cp, B4, fe_eo, B5, wr_cv, B6, mx_ex, B7, IF(OR(ln_pr <= 0, fe_up < 0, fe_up >= 1, rt_cp < 0, fe_eo < 0, wr_cv < 0, mx_ex < 0), "Invalid Venture Debt Input", ROUND((1 + rt_cp + fe_eo + wr_cv * MAX(0, mx_ex - 1)) / (1 - fe_up) - 1, 4)))` - **Formula (Warrant Intrinsic Dilution Payoff Formula)**: `=IF(ISTEXT(E5), E5, ROUND(B6 * B2 * MAX(0, B7 - 1), 2))` ### PE & Venture Fund DPI, RVPI, Gross TVPI & Net TVPI Formula - **URL**: https://sheets.arte-soft.com/en/learn/venture-pe-fund-dpi-rvpi-tvpi-and-management-fee-net-multiple-formula/ - **Summary**: Calculate ILPA Institutional LP Fund Multiples: Realized Cash-on-Cash DPI (Distributions / Paid-In Capital), Unrealized RVPI (Residual NAV / PIC), Gross Total Value to Paid-In (TVPI), and Accrued-Carry-Adjusted LP Net TVPI. *Table — Separate hard cash realizations (DPI) from paper markups (RVPI) and accrued GP carry!:* | ILPA Fund Multiple (PIC=$80M, Dist=$60M, NAV=$100M, 20% GP Carry) | Formula | Verified Output | | --- | --- | --- | | Realized Cash-on-Cash DPI (x) | Realized_Distributions / Paid_In_Capital | 0.7500x | | Unrealized Residual RVPI (x) | Residual_NAV / Paid_In_Capital | 1.2500x (0.1250x @ $10M NAV) | | Pre-Carry Gross TVPI (x) | (Distributions + Residual_NAV) / PIC | 2.0000x (0.8750x @ $10M NAV) | | LP Post-Carry Net TVPI (x) | (Total_Value - MAX(0, Profit*Carry)) / PIC | 1.8000x (0.8750x @ $10M NAV) | - **Formula (ILPA Accrued-Carry-Guarded LP Net TVPI Formula)**: `=LET(pi_c, B2, ds_t, B3, rv_n, B4, cr_r, B5, IF(OR(pi_c <= 0, ds_t < 0, rv_n < 0, cr_r < 0, cr_r >= 0.5), "Invalid Fund Capital Input", LET(tv_g, ds_t + rv_n, gp_c, MAX(0, (tv_g - pi_c) * cr_r), ROUND((tv_g - gp_c) / pi_c, 4))))` - **Formula (Underwater J-Curve Markdown Check (Set Residual NAV = $10M))**: `=IF(ISTEXT(E2), E2, ROUND((B3 + B4) / B2, 4))` ### Venturi Meter Differential-Pressure Flow Rate & Beta^4 Velocity-of-Approach - **URL**: https://sheets.arte-soft.com/en/learn/venturi-meter-differential-pressure-flow-rate-and-beta-throat-ratio/ - **Summary**: Convert differential pressure dP across a converging Venturi tube (ISO 5167) into volumetric and mass flow rate using throat beta ratio d_2/d_1 and approach factor 1 / SQRT(1 - beta^4). *Table — Why neglecting upstream kinetic energy (beta^4) understates Venturi flow rate:* | ISO-5167 Venturi Quantity | Formula | Meter (d1=0.20 m, d2=0.10 m, dP=30 kPa) | | --- | --- | --- | | Diameter Ratio beta | d_2 / d_1 | 0.5000 | | Velocity-of-Approach E_v | 1 / SQRT(1 - beta^4) | 1.0328 (1 - beta^4 = 0.9375) | | Ideal Throat Speed | SQRT(2 * dP / (rho * (1 - beta^4))) | 8.00 m/s | | Actual Volumetric Flow | C_d * (PI()/4 * d_2^2) * V_ideal * 1000 | 61.58 L/s (at C_d = 0.98) | - **Formula (Velocity-of-Approach Factor 1 / SQRT(1 - beta^4) Formula)**: `=IF(B3 >= B2, "INVALID_BETA", ROUND(1 / SQRT(1 - ((B3 / B2) ^ 4)), 4))` - **Formula (ISO-5167 Volumetric Flow Rate Formula (L/s))**: `=IF(B3 >= B2, "INVALID_BETA", LET(b_rat, B3 / B2, area_th, (PI() / 4) * (B3 ^ 2), v_th, SQRT((2 * MAX(0, B4)) / (B5 * (1 - (b_rat ^ 4)))), ROUND(B6 * area_th * v_th * 1000, 2)))` ### Verdoorn’s Law (Kaldor’s Second Growth Law) Formula: Dynamic Productivity & Employment Elasticity - **URL**: https://sheets.arte-soft.com/en/learn/verdoorn-kaldor-manufacturing-productivity-growth-law-formula/ - **Summary**: Forecast manufacturing labor-productivity growth g_p = a + b * g_Y and induced employment growth g_E = (1 - b) * g_Y - a from output expansion g_Y using Petrus J. Verdoorn (1949) and Nicholas Kaldor’s (1966) increasing-returns law. *Table — Why 1% faster industrial output expansion raises labor productivity by ~0.48% via learning-by-doing!:* | Manufacturing Output Growth g_Y (a=1.2%, b=0.48) | Verdoorn Productivity Growth g_p (%) | Induced Employment Growth g_E (%) | | --- | --- | --- | | Industrial Expansion g_Y = 6.50%/yr | 4.32% / yr | +2.18% / yr Net Job Creation | | Moderate Expansion g_Y = 3.00%/yr | 2.64% / yr | +0.36% / yr Near-Jobless Growth | | Invalid Elasticity b < 0 or b >= 1 | Outside Verdoorn Regime | "Requires Verdoorn Coefficient 0 < b < 1" | - **Formula (Verdoorn-Kaldor Labor Productivity Growth Rate (%) = ROUND((a + b * g_Y) * 100, 2))**: `=IF(OR(B3 <= 0, B3 >= 1, B4 < -0.5, B4 > 1), "Requires Verdoorn Coefficient 0 < b < 1", ROUND((B2 + B3 * B4) * 100, 2))` - **Formula (Implied Industrial Employment Growth Rate (%) = ROUND((g_Y - (a + b * g_Y)) * 100, 2))**: `=IF(OR(B3 <= 0, B3 >= 1, B4 < -0.5, B4 > 1), "Requires Verdoorn Coefficient 0 < b < 1", ROUND((B4 - (B2 + B3 * B4)) * 100, 2))` ### Verhulst Logistic S-Curve Growth & Carrying Capacity formula (EXP & LN) - **URL**: https://sheets.arte-soft.com/en/learn/verhulst-logistic-population-growth-carrying-capacity/ - **Summary**: Model bounded market adoption and population saturation via P(t) = K / (1 + ((K - P0)/P0) * EXP(-r * t)) and solve for the K/2 peak-growth inflection time. *Table — A constant-capacity logistic growth scenario:* | S-Curve Parameter | Cell | Market Adoption Input | Logistic Output | | --- | --- | --- | --- | | Initial Users (P0) | B2 | 1,000 users | At t = 0 -> P(0) = 1,000 | | Carrying Capacity / TAM (K) | B3 | 50,000 users | Midpoint inflection = 25,000 users | | Intrinsic Growth Rate (r) | B4 | 0.50 per year (continuous intrinsic rate) | Inflection time = LN(49)/0.5 = 7.78 yrs | | Forecast Horizon (t) | B5 | 8.0 years | P(8) = 26,350.93 users (Just past peak!) | - **Formula (Closed-form Verhulst Logistic S-Curve level P(t))**: `=IF(OR(COUNT(B2:B5)<>4,B3<=0,B2<0,B2>B3,B4<0,B5<0),"Invalid inputs",IF(B2=0,0,ROUND(B3/(1+((B3-B2)/B2)*EXP(-B4*B5)),2)))` - **Formula (Time to reach S-curve midpoint inflection (P = K / 2))**: `=IF(OR(COUNT(B2:B5)<>4,B3<=0,B2<0,B2>B3,B4<0,B5<0),"Invalid inputs",IF(OR(B2=0,B2=B3,B4=0),"No interior inflection",ROUND(LN((B3-B2)/B2)/B4,2)))` ### Gibson-Anderson & Vesić Undrained Soil Cavity Expansion Limit Pressure Formula - **URL**: https://sheets.arte-soft.com/en/learn/vesic-undrained-cylindrical-and-spherical-soil-cavity-expansion/ - **Summary**: Calculate undrained clay Rigidity Index I_r = G / s_u, Cylindrical Limit Pressure p_lim,cyl = p_0 + s_u * (1 + LN(I_r)) (pressuremeter / pile shaft), and Spherical Limit Pressure p_lim,sph = p_0 + (4/3) * s_u * (1 + LN(I_r)) (deep pile tip). *Table — Why soil stiffness G / s_u governs Menard Pressuremeter limit pressure and deep pile tip bearing!:* | Cavity Expansion Quantity (p_0 = 120 kPa, s_u = 60 kPa, G = 5,400 kPa) | Formula | Evaluated Value | | --- | --- | --- | | Undrained Rigidity Index I_r | G / s_u | 90.0 | | Cylindrical Limit Pressure p_lim,cyl (Pressuremeter) | p_0 + s_u * (1 + LN(G / s_u)) | 449.99 kPa | | Spherical Limit Pressure p_lim,sph (Deep Pile Tip) | p_0 + (4/3) * s_u * (1 + LN(G / s_u)) | 559.98 kPa | - **Formula (Gibson-Anderson Cylindrical Cavity Limit Pressure p_lim,cyl (kPa))**: `=IF(OR(B2 < 0, B3 <= 0, B4 < B3), "Requires s_u > 0 and Shear Modulus G >= s_u", ROUND(B2 + B3 * (1 + LN(B4 / B3)), 2))` - **Formula (Vesić Spherical Cavity Limit Pressure p_lim,sph (kPa))**: `=IF(OR(B2 < 0, B3 <= 0, B4 < B3), "Requires s_u > 0 and Shear Modulus G >= s_u", ROUND(B2 + (4 / 3) * B3 * (1 + LN(B4 / B3)), 2))` ### Vibratory Feeder Throw Factor Gamma & Conveying Formula - **URL**: https://sheets.arte-soft.com/en/learn/vibratory-feeder-throw-factor-machine-number-gamma-and-conveying-velocity/ - **Summary**: Calculate Peak Trough Acceleration in Gs, Dimensionless Vertical Throw Factor Gamma = (a*omega²*SIN(beta))/g, Ideal Horizontal Peak Velocity (mm/s), and Effective Transport Speed (mm/s). *Table — Vibratory feeders don’t slide parts—above Throw Factor Gamma > 1.0, parts micro-hop forward while the pan pulls back underneath!:* | Vibratory Pan Feeder KPI (Stroke=1.40 mm p-p @ 50 Hz, Angle=20°, eta=0.78) | Formula | Verified Output | | --- | --- | --- | | Peak Deck Acceleration (g) | ((Stroke_mm/2000) * (2*PI()*Hz)^2) / 9.80665 | 7.04 g (2.26 g @ 0.45 mm dribble) | | Vertical Throw Factor Gamma | Peak_Accel_g * SIN(Angle_deg * PI()/180) | 2.41 micro-hop (0.77 non-flight @ 0.45 mm!) | | Ideal Horizontal Velocity (mm/s) | (Stroke_mm/2) * (2*PI()*Hz) * COS(beta) | 206.6 mm/s (66.4 mm/s @ 0.45 mm) | | Effective Transport Speed (mm/s) | Ideal_Horiz_mm_s * Transport_Eff | 161.2 mm/s (51.8 mm/s @ 0.45 mm) | - **Formula (Dimensionless Throw Number Gamma & Vibratory Trough Conveying Velocity Formula)**: `=LET(st_m, B2, fq_h, B3, bt_d, B4, ef_t, B5, IF(OR(st_m <= 0, fq_h < 5, fq_h > 120, bt_d < 5, bt_d > 45, ef_t <= 0, ef_t > 1), "Invalid Feeder Input", LET(om_r, 2 * PI() * fq_h, rd_b, bt_d * (PI() / 180), vi_m, (st_m / 2) * om_r * COS(rd_b), ROUND(vi_m * ef_t, 1))))` - **Formula (Fine-Dribble 0.45 mm Stroke Sub-Flight Sliding Transition Check (Set Stroke B2 = 0.45 mm))**: `=IF(ISTEXT(E5), E5, LET(am_m, B2 / 2000, om_r, 2 * PI() * B3, ag_p, (am_m * (om_r ^ 2)) / 9.80665, ROUND(ag_p * SIN(B4 * (PI() / 180)), 2)))` ### Vickers Microhardness (HV) & Tabor Yield-Strength Formula - **URL**: https://sheets.arte-soft.com/en/learn/vickers-microhardness-hv-tabor-yield-strength-and-indent-diagonal-formula/ - **Summary**: Calculate ASTM E384 / ISO 6507 Equivalent Test Load (kgf), Vickers Diamond-Pyramid Hardness (HV), True Pyramidal Contact Pressure (MPa), and Tabor Yield-Strength Estimate (MPa). *Table — Use 0.1891 for Newtons vs 1.8544 for kgf—mixing units inflates Vickers HV by 9.81x!:* | ASTM E384 Vickers Indent KPI (F = 50.0 N, Mean Diagonal d = 0.14 mm) | Formula | Verified Output | | --- | --- | --- | | Equivalent Test Force (kgf) | Force_Newtons / 9.80665 | 5.10 kgf | | Vickers Hardness Number (HV) | 0.1891 * Force_Newtons / (d_mm ^ 2) | 482.40 HV (120.60 HV @ 0.28 mm) | | Pyramidal Contact Pressure (MPa) | 1.8544 * Force_Newtons / (d_mm ^ 2) | 4,730.61 MPa (1,182.65 @ 0.28) | | Tabor Yield Strength Est. (MPa) | Contact_Pressure_MPa / 3 | 1,576.87 MPa (394.22 @ 0.28) | - **Formula (Newton-Input Vickers Hardness & Tabor Yield Formula)**: `=LET(f_nw, B2, d_mm, B3, IF(OR(f_nw <= 0, d_mm <= 0), "Invalid Vickers Indent Input", ROUND(0.1891 * f_nw / (d_mm ^ 2), 2)))` - **Formula (Annealed Base-Metal Inverse-Square Diagonal Check (Set Diagonal d = 0.28 mm))**: `=IF(ISTEXT(E3), E3, ROUND((1.8544 * B2 / (B3 ^ 2)) / 3, 2))` ### Vickrey Bottleneck Congestion & Dynamic Toll Formula - **URL**: https://sheets.arte-soft.com/en/learn/vickrey-bottleneck-commute-congestion-and-dynamic-toll-formula/ - **Summary**: Calculate Vickrey’s (1969) equilibrium rush-hour commute cost delta*(N/s), peak queue length, and pure queuing deadweight loss eliminated by a dynamic congestion toll. *Table — Show how Vickrey’s time-varying toll eliminates 100% of rush-hour queuing without raising commuter cost!:* | Vickrey Bottleneck Metric (N=6,000, s=3,000, a=20, b=10, g=40) | Formula | Verified Output | | --- | --- | --- | | Composite Schedule Parameter (delta) | (beta * gamma) / (beta + gamma) | 8.00 / hr | | Equilibrium Generalized Cost (C_eq) | delta * (N / s) | 16.00 per commuter | | Untolled Peak Bottleneck Queue | (delta / alpha) * N | 2,400.00 vehicles | | Daily Queuing DWL Saved by Dynamic Toll | 0.5 * delta * (N^2 / s) | 48,000.00 / morning | - **Formula (Vickrey Equilibrium Commuter Generalized Cost delta * (N / s) Formula)**: `=LET(n_cm, B2, s_cp, B3, al_t, B4, bt_e, B5, gm_l, B6, IF(OR(n_cm <= 0, s_cp <= 0, bt_e <= 0, al_t <= bt_e, gm_l <= 0), "Require 0 < beta < alpha and Positive Inputs", LET(dl_sc, (bt_e * gm_l) / (bt_e + gm_l), ROUND(dl_sc * (n_cm / s_cp), 4))))` - **Formula (Aggregate Daily Queuing Deadweight Loss Eliminated 0.5 * delta * (N^2 / s) Formula)**: `=LET(n_cm, B2, s_cp, B3, al_t, B4, bt_e, B5, gm_l, B6, IF(OR(n_cm <= 0, s_cp <= 0, bt_e <= 0, al_t <= bt_e, gm_l <= 0), "Require 0 < beta < alpha and Positive Inputs", LET(dl_sc, (bt_e * gm_l) / (bt_e + gm_l), ROUND(0.5 * dl_sc * ((n_cm^2) / s_cp), 2))))` ### Vickrey-Clarke-Groves (VCG) Pivotal Externality Fee Formula - **URL**: https://sheets.arte-soft.com/en/learn/vickrey-clarke-groves-vcg-pivotal-mechanism-externality-payment/ - **Summary**: Make truthful valuation reporting a dominant strategy in shared public-project decisions by computing each participant’s Clarke pivotal externality payment. *Table — Charge each participant ONLY the net social harm when their report flips the group decision!:* | Participant (Share s_i = 25) | Gross Benefit v_i & Net w_i | Others’ Net W_-i & Clarke Fee t_i | | --- | --- | --- | | District 1 (Pivotal Yes) | 45 -> w_1 = +20 | W_-1 = -5 -> Fee t_1 = 5.00 | | District 2 (Non-Pivotal Yes) | 35 -> w_2 = +10 | W_-2 = +5 -> Fee t_2 = 0.00 | | District 3 (Non-Pivotal No) | 20 -> w_3 = -5 | W_-3 = +20 -> Fee t_3 = 0.00 | | District 4 (Non-Pivotal No) | 15 -> w_4 = -10 | W_-4 = +25 -> Fee t_4 = 0.00 | - **Formula (Clarke Pivotal Externality Fee t_i = MAX(0, IF(W_all > 0, -W_-i, W_-i)) Formula)**: `=LET(w_all, SUM($D$2:$D$5), w_oth, w_all - D2, ROUND(MAX(0, IF(w_all > 0, -w_oth, w_oth)), 4))` - **Formula (Efficient Project Approval Flag and Total Clarke Surplus Collected Formula)**: `=IF(SUM(D2:D5) > 0, "Build Project", "Do Not Build")` ### Myerson Optimal Auction Virtual Valuation and Reserve Price Formula - **URL**: https://sheets.arte-soft.com/en/learn/vickrey-second-price-and-myerson-optimal-auction-reserve-price/ - **Summary**: Calculate Myerson’s (1981) virtual valuation psi(v) = 2*v - H, optimal bidder-count-invariant reserve price r* = (v_0 + H) / 2, and expected Vickrey auction seller payoff. *Table — Why the revenue-maximizing auction reserve price r* does NOT depend on bidder count N!:* | Bidder Count N (v_0 = 20, H = 100) | Optimal Reserve r* = (v_0 + H) / 2 | Expected Seller Total Payoff | | --- | --- | --- | | Single Buyer Monopoly (N = 1) | 60.0000 (Unchanged!) | 36.0000 (0.4*60 + 0.6*20) | | Duopoly Vickrey Auction (N = 2) | 60.0000 (Unchanged!) | 47.7333 (vs 37.0667 at r = 20) | | Five-Bidder Auction (N = 5) | 60.0000 (Unchanged!) | 67.4790 | - **Formula (Myerson Optimal Reserve Price r* = (v_0 + H) / 2 Formula (Uniform [0, H]))**: `=IF(OR(B2 < 0, B3 <= B2, B4 < 1), "Invalid Auction Input", ROUND(0.5 * (B2 + B3), 4))` - **Formula (Exact Expected Seller Payoff (Revenue + Retained Salvage) for Any N >= 1 Formula)**: `=LET(v_0, B2, h_top, B3, n_bid, B4, IF(OR(v_0 < 0, h_top <= v_0, n_bid < 1), "Invalid Auction Input", LET(r_opt, 0.5 * (v_0 + h_top), h_n, POWER(h_top, n_bid), r_n, POWER(r_opt, n_bid), term_1, (n_bid / (n_bid + 1)) * (h_n * h_top - r_n * r_opt), term_2, r_opt * (h_n - r_n), ROUND(v_0 + (2 / h_n) * (term_1 - term_2), 4))))` ### Vidale-Wolfe Advertising Saturation & Decay Formula - **URL**: https://sheets.arte-soft.com/en/learn/vidale-wolfe-dynamic-advertising-saturation-and-decay-response-formula/ - **Summary**: Calculate Vidale & Wolfe’s Untapped Market Share (M - S)/M, Instantaneous Sales Drift dS/dt = r*A*(M - S)/M - lambda*S, Zero-Drift Maintenance Ad Spend, and Steady-State Equilibrium Sales. *Table — Model diminishing ad returns near market saturation M alongside customer churn decay!:* | Vidale-Wolfe Media Metric (M=$100M, S=$60M, r=0.50, A=$20M, lambda=0.10) | Formula | Verified Output | | --- | --- | --- | | Untapped Addressable Share | (M - S) / M | 0.4000 (40.00% Uncaptured) | | Net Sales Drift Rate dS/dt ($M) | r * A * ((M - S)/M) - lambda * S | -$2.00M/qtr ($0.00M @ A=$30M) | | Maintenance Ad Budget A_maint | (lambda * S * M) / (r * (M - S)) | $30.00M/qtr | | Steady-State Sales S* ($M/qtr) | (r * A * M) / (r * A + lambda * M) | $50.00M/qtr ($60.00M @ A=$30M) | - **Formula (Vidale-Wolfe Steady-State Sales & Maintenance Spend Formula)**: `=LET(m_cp, B2, sl_0, B3, r_ad, B4, ad_s, B5, lm_d, B6, IF(OR(m_cp <= 0, sl_0 < 0, sl_0 >= m_cp, r_ad <= 0, ad_s < 0, lm_d <= 0), "Invalid Vidale-Wolfe Input", ROUND((r_ad * ad_s * m_cp) / (r_ad * ad_s + lm_d * m_cp), 2)))` - **Formula (Maintenance Budget Equilibrium Check (Set A = $30M))**: `=IF(ISTEXT(E5), E5, ROUND(B4 * B5 * E2 - B6 * B3, 2))` ### Vienna CATS Score for Cancer-Associated Venous Thromboembolism (0–8) - **URL**: https://sheets.arte-soft.com/en/learn/vienna-cats-cancer-associated-vte-d-dimer-p-selectin-score/ - **Summary**: Augment the Khorana chemotherapy VTE score (0–6) with D-dimer (>= 1.44 µg/mL, +1) and soluble P-selectin (>= 53.1 ng/mL, +1) to stratify 6-month cancer VTE incidence. *Table — Biomarker-enhanced Khorana scoring—sharpening 6-month oncology VTE prediction from 1.0% to 35.0%!:* | Khorana Base (0–6) | D-dimer (>= 1.44 µg/mL) | sP-selectin (>= 53.1 ng/mL) | Vienna CATS Score & 6-Month VTE Tier | | --- | --- | --- | --- | | 0 pts | 0.65 µg/mL (+0) | 38.0 ng/mL (+0) | 0 pts — Low-to-Intermediate VTE Risk (<5%) | | 2 pts | 1.85 µg/mL (+1) | 61.4 ng/mL (+1) | 4 pts — High VTE Risk (10%–20% — Consider Thromboprophylaxis) | | 3 pts | 1.85 µg/mL (+1) | 61.4 ng/mL (+1) | 5 pts — Very High VTE Risk (~35% at 6 Months) | - **Formula (Vienna CATS Total Biomarker-Enhanced VTE Score (0–8 Points))**: `=IF(OR(B2 < 0, B2 > 6, B3 < 0, B4 < 0), "Invalid Vienna CATS Inputs", B2 + IF(B3 >= 1.44, 1, 0) + IF(B4 >= 53.1, 1, 0))` - **Formula (6-Month Ambulatory Oncology VTE Risk Classification)**: `=IF(OR(B2 < 0, B2 > 6, B3 < 0, B4 < 0), "Invalid Vienna CATS Inputs", IF(B2 + IF(B3 >= 1.44, 1, 0) + IF(B4 >= 53.1, 1, 0) >= 5, "Very High VTE Risk (~35% at 6 Months)", IF(B2 + IF(B3 >= 1.44, 1, 0) + IF(B4 >= 53.1, 1, 0) >= 3, "High VTE Risk (10%–20% — Consider Thromboprophylaxis)", "Low-to-Intermediate VTE Risk (<5%)")))` ### Vinet (Rose-Smith-Ferrante) Universal Equation of State Formula (GPa) - **URL**: https://sheets.arte-soft.com/en/learn/vinet-rose-universal-high-pressure-equation-of-state-formula/ - **Summary**: Compute ultra-high-compression crystal pressure P(V) = 3 * K_0 * ((1 - x) / x^2) * EXP(1.5 * (K′_0 - 1) * (1 - x)) where linear lattice ratio x = (V / V_0)^(1/3). *Table — Why Vinet’s Rydberg cohesive-energy EOS outperforms polynomial strain series above 30% compression!:* | Diamond Unit-Cell Volume V (V0 = 45.38 Å^3) | Linear Ratio x = (V/V0)^(1/3) | Vinet Pressure P (GPa) | | --- | --- | --- | | V = 42.00 Å^3 (7.4% Volume Compression) | 0.9745 | 39.35 GPa | | V = 38.00 Å^3 (16.3% Volume Compression) | 0.9426 | 107.74 GPa (1.08 Mbar) | | Invalid V <= 0 or K_0 <= 0 | Undefined | "Invalid Vinet EOS Inputs" | - **Formula (Vinet Universal Isothermal Pressure P(V) (GPa))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Vinet EOS Inputs", ROUND(3 * B2 * ((1 - ((B5 / B4) ^ (1 / 3))) / (((B5 / B4) ^ (1 / 3)) ^ 2)) * EXP(1.5 * (B3 - 1) * (1 - ((B5 / B4) ^ (1 / 3)))), 2))` - **Formula (Dimensionless Linear Lattice Compression Ratio x = (V / V_0)^(1/3))**: `=IF(OR(B4 <= 0, B5 <= 0), "Invalid Vinet EOS Inputs", ROUND((B5 / B4) ^ (1 / 3), 4))` ### Astrophysical Virial Theorem: Galaxy Cluster Dynamical Mass & M/L Ratio - **URL**: https://sheets.arte-soft.com/en/learn/virial-theorem-galaxy-cluster-dynamical-mass-formula/ - **Summary**: Calculate total gravitating dynamical mass M_vir = (5 * R_eff * sigma_r^2) / G (in units of 10^14 solar masses) and dynamical Mass-to-Light ratio M / L from line-of-sight velocity dispersion sigma_r. *Table — Recreate Fritz Zwicky's 1933 Coma Cluster dark-matter discovery!:* | Galaxy System (R_eff = 1.50 Mpc) | Line-of-Sight Dispersion sigma_r | Virial Mass M_vir (10^14 M_sun) | Dynamical M / L (at L = 0.05e14 L_sun) | | --- | --- | --- | --- | | Coma-Class Rich Cluster | 1,000 km/s | 17.44 x 10^14 M_sun | 348.8 M_sun / L_sun (Dark-matter dominated!) | | Poorer Galaxy Group (Half sigma_r) | 500 km/s | 4.36 x 10^14 M_sun (1/4x mass!) | 87.2 M_sun / L_sun | | Invalid Radius or Dispersion <= 0 | Domain Guard | Guarded Input Error | "Invalid Cluster Inputs" | - **Formula (Isotropic Virial Dynamical Mass M_vir in Units of 10^14 Solar Masses)**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Cluster Inputs", ROUND((5 * B2 * 3.0856776e22 * ((B3 * 1000) ^ 2)) / (6.6743e-11 * 1.98847e30 * 1e14), 2))` - **Formula (Cluster Mass-to-Light Ratio M_vir / L_total (Solar Units M_sun / L_sun))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Cluster Inputs", ROUND(((5 * B2 * 3.0856776e22 * ((B3 * 1000) ^ 2)) / (6.6743e-11 * 1.98847e30 * 1e14)) / B4, 1))` ### Vis-Viva Orbital Velocity Equation: perigee, apogee & escape speed - **URL**: https://sheets.arte-soft.com/en/learn/vis-viva-orbital-velocity-equation-elliptical-perigee-apogee/ - **Summary**: Calculate ideal two-body elliptical and circular orbital speeds from center-based radii, plus local parabolic escape speed. *Table — Speed in an ideal two-body orbit:* | Trajectory Regime | Condition / Radius | Vis-Viva Reduction | Earth Speed (km/s) | | --- | --- | --- | --- | | GTO Elliptical Perigee | r = r_p = 6,678 km (a = 24,421) | SQRT(mu * (2/r_p - 1/a)) | 10.1516 km/s | | GTO Elliptical Apogee | r = r_a = 42,164 km (a = 24,421) | SQRT(mu * (2/r_a - 1/a)) | 1.6078 km/s | | Circular GEO Orbit | r = a = 42,164 km | SQRT(mu / r) | 3.0747 km/s | | Parabolic Escape at GEO | a -> infinity (1/a = 0) | SQRT(2 * mu / r) | 4.3482 km/s | - **Formula (Vis-Viva Elliptical Orbital Velocity v = SQRT(mu * ((2 / r) - (1 / a))))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4B4),"Invalid inputs",ROUND(SQRT(B2 * ((2 / B5) - (1 / ((B3 + B4) / 2)))), 4)))` - **Formula (Local Parabolic Escape Speed v_esc = SQRT(2 * mu / r))**: `=IF(COUNT(B2,B5)<>2,"Invalid inputs",IF(OR(B2<=0,B5<=0),"Invalid inputs",ROUND(SQRT(2 * B2 / B5), 4)))` ### Vlasov Open I-Beam Warping Constant C_w and Torsion Length Formula - **URL**: https://sheets.arte-soft.com/en/learn/vlasov-open-i-beam-warping-constant-and-torsion-characteristic-length/ - **Summary**: Calculate open I-beam Saint-Venant torsion J_sv, Vlasov warping constant C_w = t_f*b_f^3*h_0^2 / 24, and characteristic warping length a_warp = SQRT(E*C_w / (G*J_sv)). *Table — Classify pure Saint-Venant vs Vlasov warping torsion via L / a_warp:* | I-Beam Torsion Metric | Vlasov Formula | Exact Output | | --- | --- | --- | | Saint-Venant J_sv (cm^4) | 10^8 * (2*b_f*t_f^3 + h_0*t_w^3) / 3 | 28.1600 cm^4 | | Vlasov Warping Constant C_w (cm^6) | 10^12 * (t_f * b_f^3 * h_0^2) / 24 | 360,000 cm^6 | | Characteristic Length a_warp (m) | SQRT((E * C_w_m6) / (G * J_sv_m4)) | 1.7877 m | | Slenderness Ratio L / a_warp | L / a_warp (<0.5 Pure Warping; >10 Pure SV) | 1.6781 (Mixed Regime) | - **Formula (Vlasov Characteristic Warping Length a_warp (m) Formula)**: `=LET(b_fl, B2, t_fl, B3, h_ct, B4, t_wb, B5, e_gp, B6, g_gp, B7, IF(OR(b_fl <= 0, t_fl <= 0, h_ct <= 0, t_wb <= 0, e_gp <= 0, g_gp <= 0), "Invalid Section Input", LET(j_sv, (2 * b_fl * (t_fl^3) + h_ct * (t_wb^3)) / 3, c_wp, (t_fl * (b_fl^3) * (h_ct^2)) / 24, ROUND(SQRT((e_gp * c_wp) / (g_gp * j_sv)), 4))))` - **Formula (AISC Torsion Design-Regime Classifier Formula)**: `=LET(rat_l, B8 / E4, IF(rat_l <= 0.5, "Pure Warping", IF(rat_l >= 10, "Pure Saint-Venant", "Mixed Vlasov-SV Torsion")))` ### Partial-Match Wildcard Lookup: VLOOKUP("*" & Key & "*") & XLOOKUP Mode 2 - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-and-xlookup-partial-wildcard-substring-match/ - **Summary**: Look up vendor records or catalog SKUs by partial embedded code using VLOOKUP("*" & E2 & "*", A2:C5, 3, FALSE) or XLOOKUP("*" & E2 & "*", ..., 2). *Table — Why XLOOKUP ignores "*" wildcards by default unless you pass match_mode = 2!:* | Partial Substring Query E2 | Wildcard Pattern "*" & E2 & "*" | Matched Catalog Row & Price | Blank-Query Protection | | --- | --- | --- | --- | | E2 = "4090" (GPU Part Code) | "*4090*" | NV-RTX-4090-OC -> $1,799 | Matches embedded middle token | | E2 = "7950X" (CPU Part Code) | "*7950X*" | AMD-RYZ-7950X-BOX -> $549 | Identical in VLOOKUP & XLOOKUP(..., 2) | | E2 = "" (Blank Search Box!) | Blocked Before "**" Match! | "Enter Search Substring" | Prevents false Row-1 match | - **Formula (Blank-Safe Partial-Match VLOOKUP("*" & E2 & "*", ..., FALSE))**: `=IF(OR(ISBLANK(E2), LEN(TRIM(E2 & "")) = 0), "Enter Search Substring", IFNA(VLOOKUP("*" & E2 & "*", A2:C5, 3, FALSE), "No Partial SKU Match"))` - **Formula (Equivalent XLOOKUP Wildcard Substring Formula (match_mode = 2))**: `=IF(OR(ISBLANK(E2), LEN(TRIM(E2 & "")) = 0), "Enter Search Substring", XLOOKUP("*" & E2 & "*", A2:A5, C2:C5, "No Partial SKU Match", 2))` ### Lookup Across Selectable Rate Tables Without Volatile INDIRECT (IFS & VLOOKUP) - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-and-xlookup-with-variable-rate-table-switch/ - **Summary**: Route SKU price lookups dynamically between Standard and Partner price books based on a customer tier cell using non-volatile IFS and VLOOKUP. *Table — Replace fragile INDIRECT(tableName) strings with explicit IFS routing:* | SKU | Standard Book (A2:B4) | Partner Book (D2:E4) | Partner Savings | | --- | --- | --- | --- | | SKU-100 | $120 | $96 | $24 (20%) | | SKU-200 | $180 | $144 | $36 (20%) | | SKU-300 | $250 | $200 | $50 (20%) | - **Formula (Non-Volatile Multi-Book VLOOKUP Router)**: `=IFNA(IFS(B7 = "Standard", VLOOKUP(B6, A2:B4, 2, FALSE), B7 = "Partner", VLOOKUP(B6, D2:E4, 2, FALSE), TRUE, "Unknown Rate Book"), "SKU Not Found")` - **Formula (Extended Line Total for Selected Price Book and Quantity B8)**: `=LET(unitPrice, IFNA(IFS(B7 = "Standard", VLOOKUP(B6, A2:B4, 2, FALSE), B7 = "Partner", VLOOKUP(B6, D2:E4, 2, FALSE), TRUE, -1), -1), IF(unitPrice < 0, "Check SKU or Book", unitPrice * B8))` ### VLOOKUP approximate match: assign parcel rates from sorted weight thresholds - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-approximate-match-thresholds/ - **Summary**: Approximate VLOOKUP (TRUE) is dangerous for product IDs, yet ideal for numeric tier schedules such as postage bands or commission rates—provided the threshold column starts at the lowest valid value and stays sorted ascending. *Table — How a minimum-threshold rate table works:* | Minimum weight kg (A) | Postage rate (B) | | --- | --- | | 0.5 | 4.5 | | 2 | 7 | | 5 | 11.5 | | 10 | 18 | - **Formula (Use TRUE as the fourth argument explicitly)**: `=VLOOKUP(D2,A2:B5,2,TRUE)` - **Formula (Check exact boundaries and below-minimum weights)**: `=IFNA(VLOOKUP(D2,A2:B5,2,TRUE),"Below minimum weight")` ### VLOOKUP with Concatenated Composite Key: Delimiter-Safe Multi-Criteria Lookup - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-concatenate-composite-key-multi-criteria-lookup/ - **Summary**: Perform fast O(1) VLOOKUP multi-column lookups in legacy and modern workbooks by building a delimiter-protected leftmost composite key A2 = B2 & "|" & C2. *Table — Never concatenate B2 & C2 without a "|" delimiter—or ("AB", "CD") collides with ("A", "BCD")!:* | Query Criteria (Warehouse F2, Size F3) | Delimited Lookup Key F2 & "\|" & F3 | Matched Stock Qty (Col 4) | Why "\|" Delimiter Matters | | --- | --- | --- | --- | | Warehouse "WH1", Size "L" | "WH1\|L" | 185 units | Distinguishes WH1\|L from WH2\|L | | Warehouse "WH2", Size "M" | "WH2\|M" | 310 units | Works in every Excel version | | Warehouse "WH3", Size "XL" (Absent) | "WH3\|XL" | "Combination Not Stocked" | IFNA traps missing composite key | - **Formula (Delimiter-Safe Composite-Key VLOOKUP Formula)**: `=IFNA(VLOOKUP(F2 & "|" & F3, A2:D5, 4, FALSE), "Combination Not Stocked")` - **Formula (Audit Duplicate Composite Keys in Table Before VLOOKUP)**: `=COUNTIF(A2:A5, F2 & "|" & F3)` ### VLOOKUP with MATCH: make the column index dynamic when headers move - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-match-dynamic-column-index/ - **Summary**: Replace a hard-coded VLOOKUP column number with MATCH so formulas adapt to selected period headers and inserted columns without breaking. *Table — Why hard-coded column numbers break VLOOKUP:* | Cell / Range | Example Value | Role | | --- | --- | --- | | A1:E1 | Zone \| FY24 \| FY25 \| FY26 \| Surcharge | Header row spanning the exact same columns as the VLOOKUP table | | A2:E4 | Z-North, Z-Central, Z-South freight rates | Lookup table starting in the Zone key column | | G2 | Z-Central | Row key searched down A2:A4 | | H2 | FY26 | Column header searched across A1:E1 | - **Formula (Combine VLOOKUP and exact MATCH)**: `=VLOOKUP(G2, A2:E4, MATCH(H2, A1:E1, 0), FALSE)` - **Formula (Guard both missing headers and missing row keys)**: `=IF(ISNA(MATCH(H2, A1:E1, 0)), "Check zone or column", IFNA(VLOOKUP(G2, A2:E4, MATCH(H2, A1:E1, 0), FALSE), "Check zone or column"))` ### VLOOKUP exact match: find a price by product code - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-exact-match-product-code/ - **Summary**: Look up a product code in a small price list, return its price, and make missing codes visible instead of accepting the wrong match. *Table — Start with a code, not a row number:* | Code (A) | Part (B) | Price (C) | | --- | --- | --- | | P-110 | Cable | 12 | | P-240 | Adapter | 28 | | P-390 | Switch | 45 | - **Formula (Ask for an exact match)**: `=VLOOKUP("P-240",A2:C4,3,FALSE)` - **Formula (Separate a missing code from a zero price)**: `=IFNA(VLOOKUP("P-999",A2:C4,3,FALSE),"Check code")` - **Formula (Use an input cell)**: `=VLOOKUP(E2,$A$2:$C$4,3,FALSE)` ### VLOOKUP If Blank Return Blank Without Wiping Out Legitimate Zero Balances - **URL**: https://sheets.arte-soft.com/en/learn/vlookup-if-blank-return-blank-vs-true-zero-len-guard/ - **Summary**: Test LEN(VLOOKUP(...)) = 0 instead of VLOOKUP(...) = 0 so empty source cells return a clean blank string "" while genuine numeric 0.00 balances remain intact. *Table — Why IF(VLOOKUP(...) = 0, "", ...) corrupts zero-balance accounts and zero-defect counts:* | Source Return Cell | Naive = 0 Check | LEN(...) = 0 Guard | Audit Verdict | | --- | --- | --- | --- | | 1450 (Positive balance) | 1450 | 1450 | Both correct | | Empty cell (Unbilled) | "" | "" | Blank preserved | | 0 (Paid in full) | "" (WRONG — hides 0!) | 0 (Preserved) | Only LEN distinguishes 0 vs blank | | Unmatched key | #N/A | "NOT_FOUND" (via IFERROR) | Clean missing-key label | - **Formula (Zero-Safe VLOOKUP Blank Guard Formula)**: `=IFERROR(IF(LEN(VLOOKUP(E2, $A$2:$C$5, 3, FALSE)) = 0, "", VLOOKUP(E2, $A$2:$C$5, 3, FALSE)), "NOT_FOUND")` - **Formula (Modern LET Variant Avoiding Double VLOOKUP Evaluation)**: `=IFERROR(LET(hit, VLOOKUP(E2, $A$2:$C$5, 3, FALSE), IF(LEN(hit) = 0, "", hit)), "NOT_FOUND")` ### VO2 Max & Aerobic METs formulas: Cooper 12-Minute Run & Uth-Sorensen HR Ratio - **URL**: https://sheets.arte-soft.com/en/learn/vo2-max-cooper-12-minute-run-and-uth-sorensen-formula/ - **Summary**: Practice arithmetic for two indirect VO2max estimates using fictional data, and convert an estimate into conventional MET units. *Table — Estimates are not laboratory measurements:* | Cardio Fitness Metric | Formula / Inputs | Athlete Field Data | Calculated VO2max / METs | | --- | --- | --- | --- | | Cooper 12-Min Run (2,800 m) | (B2 - 504.9) / 44.73 | 7 laps on 400m track | 51.31 mL/(kg*min) | | Peak Aerobic Capacity (METs) | Cooper_VO2max / 3.5 | 51.3101 / 3.5 | 14.66 METs | | Uth-Sorensen HR Ratio | 15.3 * (B3 / B4) | HRmax = 188, HRrest = 60 bpm | 47.94 mL/(kg*min) | | Hypothetical distance (3,400 m) | B2 set to 3,400 m | 8.5 track laps in 12 min | 64.72 mL/(kg*min) | - **Formula (Cooper 12-Minute Run VO2max in mL/(kg*min))**: `=IF(COUNT(B2)<>1,"Invalid inputs",IF(B2<=504.9,"Outside estimate domain",ROUND((B2 - 504.9) / 44.73, 2)))` - **Formula (Uth-Sorensen Heart-Rate Ratio VO2max and Peak METs)**: `=IF(COUNT(B3:B4)<>2,"Invalid inputs",IF(OR(B4<=0,B31,"Invalid inputs",IF(B2<=504.9,"Outside estimate domain",ROUND(((B2 - 504.9) / 44.73) / 3.5, 2)))` ### Vogel-Fulcher-Tammann Glass Viscosity & Fragility Formula - **URL**: https://sheets.arte-soft.com/en/learn/vogel-fulcher-tammann-glass-melt-viscosity-and-fragility-formula/ - **Summary**: Calculate Supercooled Glass Melt Log10 Viscosity A + B/(T - T0), Glass Transition Temperature Tg at 10^12 Pa*s, Angell Kinetic Fragility Index m = B*Tg / (Tg - T0)^2, and Dynamic Melt Viscosity (Pa*s). *Table — Control optical-fiber drawing and bottle forming across 10 orders of viscosity magnitude with VFT!:* | VFT Glass Rheology Metric (A=-3.0, B=4,500 K, T0=500 K, T=950 K) | Formula | Verified Output | | --- | --- | --- | | Log10 Melt Viscosity (Pa*s) | A_VFT + B_VFT / (Temp_K - T_0) | 7.0000 (2.0000 @ 1,400 K Fining) | | Glass Transition Temp Tg (K) | T_0 + B_VFT / (12 - A_VFT) | 800.00 K | | Angell Kinetic Fragility m | (B_VFT * T_g) / ((T_g - T_0)^2) | 40.00 (Intermediate Silicate) | | Dynamic Melt Viscosity (Pa*s) | 10 ^ Log10_Melt_Viscosity | 10,000,000 Pa*s (100 @ 1,400 K) | - **Formula (VFT Glass Transition Temperature Tg & Angell Fragility Formula)**: `=LET(a_vf, B2, b_vf, B3, t_zr, B4, tp_k, B5, IF(OR(a_vf >= 12, b_vf <= 0, t_zr < 0, tp_k <= t_zr, (a_vf + b_vf / (tp_k - t_zr)) > 13), "Invalid VFT Melt Regime", LET(t_gl, t_zr + b_vf / (12 - a_vf), ROUND((b_vf * t_gl) / ((t_gl - t_zr) ^ 2), 2))))` - **Formula (1,400 K Tank-Furnace Fining Viscosity Check)**: `=IF(ISTEXT(E2), E2, ROUND(10 ^ E2, 2))` ### Vogel Two-Phase Oil Inflow Performance (IPR) Formula - **URL**: https://sheets.arte-soft.com/en/learn/vogel-two-phase-solution-gas-drive-inflow-performance-ipr-formula/ - **Summary**: Calculate Absolute Open Flow Potential q_max and Target Bottomhole Drawdown Rate q_o = q_max * (1 - 0.2*(P_wf/P_r) - 0.8*(P_wf/P_r)^2) for saturated solution-gas-drive oil wells. *Table — Stop extrapolating straight-line Productivity Index below the reservoir bubble point!:* | Vogel Saturated IPR Metric (P_r=2,500 psia, Test: 700 STB/d @ 1,250 psia, Target=500 psia) | Formula | Verified Output | | --- | --- | --- | | Absolute Open Flow Potential q_max | q_test / (1 - 0.2*(Pt/Pr) - 0.8*(Pt/Pr)^2) | 1,000.00 STB/d (at P_wf = 0) | | Vogel Rate @ 500 psia (STB/d) | q_max * (1 - 0.2*(Pwf/Pr) - 0.8*(Pwf/Pr)^2) | 928.00 STB/d | | Naive Linear PI Extrapolation | (q_test / (Pr - P_test)) * (Pr - P_target) | 1,120.00 STB/d | | Gas-Breakout Overprediction Error | Naive_Linear_Rate - Vogel_Rate | +192.00 STB/d Overestimate | - **Formula (Vogel Calibrated Target Inflow Rate Formula)**: `=LET(p_rs, B2, p_ts, B3, q_ts, B4, p_tg, B5, IF(OR(p_rs <= 0, p_ts < 0, p_ts >= p_rs, q_ts <= 0, p_tg < 0, p_tg > p_rs), "Invalid Well Test", LET(r_ts, p_ts / p_rs, q_mx, q_ts / (1 - 0.2 * r_ts - 0.8 * r_ts ^ 2), r_tg, p_tg / p_rs, ROUND(q_mx * (1 - 0.2 * r_tg - 0.8 * r_tg ^ 2), 2))))` - **Formula (Naive Linear PI Overprediction Audit Formula)**: `=IF(ISTEXT(E3), E3, ROUND((B4 / (B2 - B3)) * (B2 - B5) - E3, 2))` ### Voltage Divider (Vout) & LED current-limiting series resistor formulas - **URL**: https://sheets.arte-soft.com/en/learn/voltage-divider-and-led-current-limiting-resistor/ - **Summary**: Calculate resistive divider output voltage Vout = Vin * R2/(R1+R2), solve R2 for ADC scaling, and size LED series resistors with Wattage checks. *Table — Two foundational electronics bench formulas: ADC dividers & LED current limiting:* | Circuit Calculation | Formula | Sample Result | | --- | --- | --- | | Divider Output Voltage (12V, 20k/10k) | =A2 * (C2 / (B2 + C2)) | 4.00 V | | LED Series Resistor (5V, Vf=2V, 20mA) | =(D2 - E2) / (F2 / 1000) | 150 Ω | | LED Resistor Power Dissipation (Watts) | =(D2 - E2) * (F2 / 1000) | 0.06 W (60 mW) | - **Formula (Voltage Divider output Vout and LED series resistor (Ohms) formulas)**: `=IF(OR(COUNT(A2:C2)<>3,A2<0,B2<=0,C2<=0),"Invalid divider inputs",ROUND(A2 * (C2 / (B2 + C2)), 4))` - **Formula (Required LED current-limiting resistor in Ohms (from mA target current F2))**: `=IF(OR(COUNT(D2:F2)<>3,D2<=E2,E2<0,F2<=0),"Invalid LED inputs",ROUND((D2 - E2) / (F2 / 1000), 2))` ### Volume and surface area formulas: sphere, cone, and rectangular box - **URL**: https://sheets.arte-soft.com/en/learn/volume-and-surface-area-3d-shapes/ - **Summary**: Compute packaging and tank volumes plus total surface areas for spheres, right circular cones, and rectangular prisms using PI and SQRT. *Table — 3D packaging and hopper geometry in one reference:* | Solid | Dimensions | Volume Formula | Surface Area Formula | | --- | --- | --- | --- | | Sphere | r = 6 | (4/3)*PI()*r^3 = 904.78 | 4*PI()*r^2 = 452.39 | | Cone | r = 6, h = 8 | (1/3)*PI()*r^2*h = 301.59 | PI()*r*(r + SQRT(r^2+h^2)) = 301.59 | | Box | 5 x 4 x 3 | L*W*H = 60 | 2*(L*W + L*H + W*H) = 94 | - **Formula (Cone, sphere, and rectangular box formulas)**: `=ROUND((1 / 3) * PI() * A2^2 * B2, 2)` - **Formula (Sphere volume and rectangular carton surface area)**: `=ROUND((4 / 3) * PI() * A2^3, 2)` ### Training, CPE, and volunteer hours requirement tracker (remaining & weekly pace) - **URL**: https://sheets.arte-soft.com/en/learn/volunteer-and-cpe-training-hours-remaining-tracker/ - **Summary**: Track a chosen hours target, capped progress and the average weekly pace needed over the remaining time. *Table — Avoid negative "hours remaining" once a member exceeds their annual quota!:* | Compliance Metric (Quota = 40 hrs) | Formula | Logged = 28 hrs (6 wks left) | Logged = 45 hrs (Exceeded!) | | --- | --- | --- | --- | | Hours Remaining (Floored at 0) | =MAX(0, D2 - SUM(B2:B4)) | 12.0 hrs | 0.0 hrs (Never -5!) | | Capped Completion % | =ROUND(MIN(1, SUM(B2:B4) / D2), 4) | 70.00% | 100.00% (Capped) | | Required Weekly Pace | =IF(MAX(0,D2-SUM(B2:B4))=0,0,IF(F2<=E2,"Deadline reached",ROUND(MAX(0,D2-SUM(B2:B4))/((F2-E2)/7),2))) | 2.00 hrs/wk | 0.00 hrs/wk | - **Formula (Zero-floored hours remaining and weekly completion pace formulas)**: `=MAX(0, D2 - SUM(B2:B4))` - **Formula (Required weekly hours pace before compliance deadline)**: `=IF(MAX(0,D2-SUM(B2:B4))=0,0,IF(F2<=E2,"Deadline reached",ROUND(MAX(0,D2-SUM(B2:B4))/((F2-E2)/7),2)))` ### Von Bertalanffy Growth Function (VBGF): Asymptotic Length & Age - **URL**: https://sheets.arte-soft.com/en/learn/von-bertalanffy-growth-function-vbgf-length-and-age-formula/ - **Summary**: Predict organism length-at-age L(t) = L_∞ * (1 - EXP(-K * (t - t_0))) and invert catch length into biological age t(L) = t_0 - LN(1 - L / L_∞) / K for fisheries stock assessment and wildlife ecology. *Table — How metabolic anabolism vs catabolism shapes universal vertebrate growth!:* | Atlantic Cod Cohort Age (L∞ = 120 cm, K = 0.18/yr, t0 = -0.35) | Predicted Length L(t) | % of Asymptotic L∞ | Fisheries Maturity Stage | | --- | --- | --- | --- | | Juvenile Recruit (t = 2.0 yr) | 41.42 cm | 34.5% | Entering Trawl Selectivity | | Spawning Adult (t = 5.0 yr) | 74.19 cm | 61.8% | Prime Spawning Stock Biomass | | Trophy / BOFFFF Spawner (t = 12.0 yr) | 107.01 cm | 89.2% | Near Asymptotic Ceiling | - **Formula (Von Bertalanffy Predicted Length-at-Age L(t) (cm))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= B4), "Invalid VBGF Parameters", ROUND(B2 * (1 - EXP(-B3 * (B5 - B4))), 2))` - **Formula (Inverse Age-from-Length Cohort Estimator t(L) (years))**: `=IF(OR(B2 <= 0, B3 <= 0, B6 <= 0, B6 >= B2), "Length >= Linf or Invalid", ROUND(B4 - LN(1 - B6 / B2) / B3, 2))` ### Plane-stress von Mises and Tresca equivalent stress and yield ratios - **URL**: https://sheets.arte-soft.com/en/learn/von-mises-equivalent-stress-and-tresca-yield-safety-factor/ - **Summary**: Combine multiaxial normal stresses sigma_x, sigma_y and shear stress tau_xy into FEA Von Mises distortion-energy stress SQRT(sig_x^2 - sig_x*sig_y + sig_y^2 + 3*tau_xy^2) and Yield Factor of Safety. *Table — Compare two idealized ductile-yield criteria:* | Multiaxial Stress Case | Formula | sig_x = 120, sig_y = -40, tau = 60 MPa (Sy = 250) | Pure Shear (0, 0, tau = 100 MPa) | | --- | --- | --- | --- | | Von Mises Stress sigma_vM | SQRT(B2^2 - B2*B3 + B3^2 + 3*B4^2) | SQRT(31,600) = 177.76 MPa | SQRT(30,000) = 173.21 MPa | | Yield Factor of Safety (FoS) | B5 / sigma_vM | 1.41 (model yield ratio) | 250 / 173.21 = 1.44 | - **Formula (2D Plane-Stress Von Mises Equivalent Stress (MPa))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(B5<=0,"Positive yield strength required",ROUND(SQRT(B2^2-B2*B3+B3^2+3*B4^2),2)))` - **Formula (Ductile Yield Factor of Safety = YieldStrength / sigma_vM)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(B5<=0,"Positive yield strength required",IF(SQRT(B2^2-B2*B3+B3^2+3*B4^2)=0,"Unbounded at zero stress",ROUND(B5/SQRT(B2^2-B2*B3+B3^2+3*B4^2),2))))` - **Formula (Tresca equivalent stress (MPa))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(B5<=0,"Positive yield strength required",ROUND(LET(meanStress,(B2+B3)/2,stressRadius,SQRT(((B2-B3)/2)^2+B4^2),MAX(meanStress+stressRadius,meanStress-stressRadius,0)-MIN(meanStress+stressRadius,meanStress-stressRadius,0)),2)))` - **Formula (Tresca static yield ratio)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(B5<=0,"Positive yield strength required",LET(equivalent,LET(meanStress,(B2+B3)/2,stressRadius,SQRT(((B2-B3)/2)^2+B4^2),MAX(meanStress+stressRadius,meanStress-stressRadius,0)-MIN(meanStress+stressRadius,meanStress-stressRadius,0)),IF(equivalent=0,"Unbounded at zero stress",ROUND(B5/equivalent,2)))))` ### Von Thünen Land Rent & Crop-Ring Boundary Formula - **URL**: https://sheets.arte-soft.com/en/learn/von-thunen-agricultural-land-rent-and-crop-ring-boundary-formula/ - **Summary**: Calculate Johann Heinrich von Thünen’s (1826) agricultural bid-rent R_i(d) = Y_i*(p_i - c_i - f_i*d), concentric crop-switch boundary d*_12, and zero-rent extensive frontier. *Table — Derive concentric land-use rings from transport cost gradients without arbitrary zoning!:* | Von Thünen Spatial Metric (Dairy vs Wheat, d = 12 km) | Formula | Verified Output | | --- | --- | --- | | Inner Crop 1 Rent at d = 12 km | 10 * 120 - (10 * 4) * 12 | 720.00 $/ha (Outbids Wheat 480) | | Envelope Highest-and-Best Land Rent | MAX(0, R_1(d), R_2(d)) | 720.00 $/ha | | Crop 1 -> Crop 2 Switch Boundary (d*_12) | (1,200 - 600) / (40 - 10) | 20.00 km from Market | | Outer Extensive Cultivation Frontier | (p_2 - c_2) / f_2 = 150 / 2.5 | 60.00 km (Beyond = Wilderness) | - **Formula (Highest-and-Best Envelope Bid-Rent at Distance d Formula)**: `=LET(y_1, B2, m_1, B3, f_1, B4, y_2, C2, m_2, C3, f_2, C4, d_km, B5, IF(OR(y_1 <= 0, m_1 <= 0, f_1 <= 0, y_2 <= 0, m_2 <= 0, f_2 <= 0, d_km < 0), "Invalid Spatial Input", ROUND(MAX(0, y_1 * (m_1 - f_1 * d_km), y_2 * (m_2 - f_2 * d_km)), 2)))` - **Formula (Concentric Crop-Ring Switch Distance d*_12 Formula)**: `=LET(i_1, B2 * B3, s_1, B2 * B4, i_2, C2 * C3, s_2, C2 * C4, IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, C2 <= 0, C3 <= 0, C4 <= 0), "Invalid Spatial Input", IF(OR(i_1 <= i_2, s_1 <= s_2), "No Inner-Outer Ring Crossing", ROUND((i_1 - i_2) / (s_1 - s_2), 2))))` ### VSTACK function: stack separate regional tables into one consolidated list - **URL**: https://sheets.arte-soft.com/en/learn/vstack-function-append-ranges/ - **Summary**: Append multiple ranges top-to-bottom into a single dynamic table for unified totals, sorting, or filtering with VSTACK. *Table — Consolidate split tables without copy-pasting:* | NorthOrder (A) | NorthQty (B) | SouthOrder (D) | SouthQty (E) | | --- | --- | --- | --- | | N-101 | 120 | S-201 | 95 | | N-102 | 180 | S-202 | 205 | - **Formula (Count combined rows and total stacked quantities)**: `=SUM(CHOOSECOLS(VSTACK(A2:B3, D2:E3), 2))` - **Formula (Mismatched column widths pad extra cells with #N/A)**: `=INDEX(VSTACK(A2:B3, D2:D3), 3, 2)` ### Wagner-Whitin Dynamic Lot-Sizing Forward DP Formula vs Silver-Meal - **URL**: https://sheets.arte-soft.com/en/learn/wagner-whitin-dynamic-lot-sizing-forward-dp-regeneration-point-audit/ - **Summary**: Implement Wagner and Whitin’s (1958) zero-inventory regeneration dynamic programming recurrence F_t in Excel and Arte Sheets and expose where myopic Silver-Meal overpays. *Table — Trace by hand a 4-period schedule where Silver-Meal misses the global optimum:* | Horizon Step | Wagner-Whitin DP Candidates (j = 1..t) | Optimal F_t | | --- | --- | --- | | Period 1 (D1 = 40) | j=1: 0 + 100 | F_1 = 100 | | Period 2 (D2 = 80) | MIN(j=1: 180, j=2: 100 + 100) | F_2 = 180 | | Period 3 (D3 = 30) | MIN(j=1: 240, j=2: 100 + 130, j=3: 180 + 100) | F_3 = 230 (Splits at P2!) | | Period 4 (D4 = 120) | MIN(j=1: 600, j=2: 470, j=3: 400, j=4: 230 + 100) | F_4 = 330 (vs 340 Silver-Meal) | - **Formula (Wagner-Whitin Period-3 Regeneration Cost F_3 Formula)**: `=MIN($B$2 + $B$3 * (C5 + 2 * D5), B6 + $B$2 + $B$3 * D5, C6 + $B$2)` - **Formula (4-Period Optimal Cost F_4 & Silver-Meal Gap Check)**: `=IF(OR(B2 < 0, B3 < 0), "Invalid Cost Input", MIN(B2 + B3 * (C5 + 2 * D5 + 3 * E5), B6 + B2 + B3 * (D5 + 2 * E5), C6 + B2 + B3 * E5, D6 + B2))` ### Wahl Helical Spring Shear Stress (K_W) and Spring Rate Formula - **URL**: https://sheets.arte-soft.com/en/learn/wahl-helical-compression-spring-shear-stress-and-spring-rate/ - **Summary**: Calculate spring index C = D / d, Wahl curvature-shear factor K_W = (4C - 1)/(4C - 4) + 0.615/C, inner-coil shear stress tau_max, and axial spring rate k = d^4*G / (8*D^3*N_a). *Table — Account for both direct transverse shear and inner-coil curvature via Wahl factor K_W:* | Helical Spring Metric (d=4, D=24, Na=8, F=300 N) | Formula | Verified Output | | --- | --- | --- | | Spring Index (C) | D / d (Target 4 <= C <= 12) | 6.0000 | | Wahl Correction Factor (K_W) | (4*C - 1)/(4*C - 4) + 0.615/C | 1.2525 (+25.25% Inner Peak) | | Max Inner Shear Stress (tau_max) | K_W * 8 * F * D / (PI() * d^3) | 358.8148 MPa | | Axial Spring Rate (k) | d^4 * G / (8 * D^3 * N_a) | 22.9456 N/mm | - **Formula (Wahl Corrected Inner-Coil Shear Stress tau_max (MPa) Formula)**: `=LET(d_wr, B2, d_mn, B3, f_ax, B6, IF(OR(d_wr <= 0, d_mn <= d_wr, f_ax < 0), "Invalid Spring Geometry (Require D > d)", LET(c_ix, d_mn / d_wr, k_wh, (4 * c_ix - 1) / (4 * c_ix - 4) + 0.615 / c_ix, ROUND(k_wh * (8 * f_ax * d_mn) / (PI() * d_wr^3), 4))))` - **Formula (Helical Spring Stiffness Rate k = (d^4 * G) / (8 * D^3 * N_a) Formula)**: `=LET(d_wr, B2, d_mn, B3, g_sh, B4, n_act, B5, IF(OR(d_wr <= 0, d_mn <= d_wr, g_sh <= 0, n_act <= 0), "Invalid Spring Geometry (Require D > d)", ROUND((d_wr^4 * g_sh) / (8 * d_mn^3 * n_act), 4)))` ### Wakao-Kaguei Packed-Bed Sherwood & Nusselt Correlation (Catalyst & Adsorption) - **URL**: https://sheets.arte-soft.com/en/learn/wakao-kaguei-packed-bed-heat-and-mass-transfer-nusselt-sherwood/ - **Summary**: Calculate external particle-to-fluid mass and heat transfer in packed catalytic and adsorption beds via Wakao & Kaguei’s correlation Sh = 2 + 1.1 * Re_p^0.6 * Sc^(1/3) and Nu = 2 + 1.1 * Re_p^0.6 * Pr^(1/3). *Table — Why packed catalyst pellets transfer mass nearly TWICE as fast as isolated spheres at the same Re_p!:* | Packed-Bed Transport Mode (Re_p = 180) | Sc or Pr | Wakao-Kaguei Sh or Nu | Comparison vs Isolated Sphere (0.6*Re^0.5) | | --- | --- | --- | --- | | Liquid Adsorption Column (Sc = 650) | Sc = 650 | Sh = 216.88 | 3.07× higher than isolated sphere (71.7)! | | Gas-Phase Catalyst Bed (Pr = 0.71) | Pr = 0.71 | Nu = 24.13 | 2.63× higher than isolated sphere (9.18)! | | Out-of-Domain Negative Re_p or Sc <= 0 | Invalid | "Invalid Packed-Bed Inputs" | Physical Domain Guard | - **Formula (Wakao-Kaguei Packed-Bed Mass-Transfer Sherwood Number (Sh))**: `=IF(OR(B2 < 0, B3 <= 0), "Invalid Packed-Bed Inputs", ROUND(2 + 1.1 * (B2 ^ 0.6) * (B3 ^ (1 / 3)), 2))` - **Formula (Wakao-Kaguei Packed-Bed Heat-Transfer Nusselt Number (Nu))**: `=IF(OR(B2 < 0, B4 <= 0), "Invalid Packed-Bed Inputs", ROUND(2 + 1.1 * (B2 ^ 0.6) * (B4 ^ (1 / 3)), 2))` ### Wald Instrumental Variables Estimator and Complier LATE Formula - **URL**: https://sheets.arte-soft.com/en/learn/wald-instrumental-variables-complier-average-causal-effect-late/ - **Summary**: Correct imperfect randomized encouragement non-compliance using the Angrist-Imbens-Rubin Wald IV ratio LATE = (E[Y|Z=1] - E[Y|Z=0]) / (E[D|Z=1] - E[D|Z=0]). *Table — Scale Intention-to-Treat (ITT) by exact first-stage complier share without selection bias:* | Encouragement Design Quantity | Formula Expression | Sample Output | | --- | --- | --- | | Intention-to-Treat Effect ITT_Y | E[Y \| Z = 1] - E[Y \| Z = 0] | +4.0000 (Diluted by non-compliers) | | First-Stage Complier Share pi_C | E[D \| Z = 1] - E[D \| Z = 0] | 0.5000 (50% compliers) | | Always-Taker & Never-Taker Shares | p_D0 and 1 - p_D1 | 0.1500 and 0.3500 (Sum = 1.0000) | | Wald IV Complier Effect (LATE) | ITT_Y / pi_C = (C2 - C3) / (B2 - B3) | +8.0000 | - **Formula (First-Stage Complier Share & Weak-Instrument Guard Formula)**: `=IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, B2 - B3 < 0.05), "Weak or Defier First Stage", ROUND(B2 - B3, 4))` - **Formula (Wald Instrumental-Variables LATE / CACE Formula)**: `=LET(pi_c, B2 - B3, itt_y, C2 - C3, IF(OR(B2 < 0, B2 > 1, B3 < 0, B3 > 1, pi_c < 0.05), "Weak or Defier First Stage", ROUND(itt_y / pi_c, 4)))` ### Clinical Trial Fragility Quotient (FQ) & Attrition-vs-Fragility Audit - **URL**: https://sheets.arte-soft.com/en/learn/walsh-clinical-trial-fragility-index-and-fragility-quotient/ - **Summary**: Standardize Michael Walsh et al.’s (2014) RCT Fragility Index across trial sample size via Fragility Quotient FQ (%) = (FI / N) * 100 and audit whether Lost-to-Follow-Up exceeds FI! *Table — When p = 0.03 hangs on just 3 events—and 7 patients were lost to follow-up!:* | Trial Robustness Scenario (N = 240) | Fragility Quotient FQ (%) | Lost to Follow-Up (LTFU) | Walsh Attrition Audit | | --- | --- | --- | --- | | FI = 3 Events \| N = 240 | 1.250% | 7 Dropouts (> FI!) | "Fragile: Lost-to-Follow-Up Exceeds FI" | | FI = 12 Events \| N = 240 | 5.000% | 5 Dropouts (<= FI) | "Robust Against Attrition (LTFU <= FI)" | | Invalid FI < 0 or N <= 0 | Undefined | Error Guard | "Invalid Trial Counts" | - **Formula (Sample-Size Standardized Fragility Quotient FQ (%))**: `=IF(OR(B2 < 0, B3 <= 0, B4 < 0), "Invalid Trial Counts", ROUND((B2 / B3) * 100, 3))` - **Formula (Walsh Lost-to-Follow-Up vs. Fragility Index Audit)**: `=IF(OR(B2 < 0, B3 <= 0, B4 < 0), "Invalid Trial Counts", IF(B4 > B2, "Fragile: Lost-to-Follow-Up Exceeds FI", "Robust Against Attrition (LTFU <= FI)"))` ### Wannier-Mott Exciton Binding Energy (meV) & Exciton Bohr Radius (nm) - **URL**: https://sheets.arte-soft.com/en/learn/wannier-mott-exciton-binding-energy-and-bohr-radius-semiconductor/ - **Summary**: Calculate semiconductor electron-hole exciton binding energy E_b = 13605.7 * (μ / m_0) / ε_r^2 (meV) and exciton Bohr radius a_B^* = 0.052918 * ε_r / (μ / m_0) (nm) to determine room-temperature exciton stability and quantum-dot confinement size. *Table — Why GaAs excitons ionize instantly at 300 K—while ZnO excitons survive room temperature!:* | Semiconductor Crystal | εr & Reduced Mass μ/m0 | Exciton Binding Eb (meV) | Exciton Bohr Radius aB* (nm) | | --- | --- | --- | --- | | GaAs Infrared / Quantum Dot | εr = 12.9, μ = 0.058 | 4.74 meV (< 25.9 meV kT) | 11.77 nm (Large QD Threshold) | | CdSe Colloidal Quantum Dot | εr = 9.5, μ = 0.102 | 15.38 meV | 4.93 nm (Tunable Visible QDs) | | ZnO UV Exciton Laser | εr = 8.5, μ = 0.318 | 59.88 meV (> 2.3× Room kT!) | 1.41 nm (Tightly Bound) | - **Formula (Wannier-Mott Exciton Binding Energy E_b = 13605.7 * μ / ε_r^2 (meV))**: `=IF(OR(B2 < 1, B3 <= 0), "Invalid Exciton Inputs", ROUND(13605.7 * B3 / (B2 ^ 2), 2))` - **Formula (Exciton Bohr Radius a_B^* = 0.052918 * ε_r / μ (nm))**: `=IF(OR(B2 < 1, B3 <= 0), "Invalid Exciton Inputs", ROUND(0.052918 * B2 / B3, 2))` ### War of Attrition Quit Hazard & Duration Formula - **URL**: https://sheets.arte-soft.com/en/learn/war-of-attrition-bishop-cannings-equilibrium-quit-hazard-formula/ - **Summary**: Calculate the Maynard Smith / Bishop-Cannings War of Attrition mixed equilibrium quit hazard h* = c / ((N - 1)*V), expected standoff duration, and survival probability EXP(-N*h**t). *Table — Model price wars, standards battles, and strike standoffs via the War of Attrition!:* | War of Attrition Metric (V=120, c=6, N=2, t=10) | Formula | Verified Output | | --- | --- | --- | | Individual Rival Quit Hazard (h*) | c / ((N - 1) * V) | 0.0500 / period | | First-Exit Standoff Resolution Rate | N * h* = (N / (N - 1)) * (c / V) | 0.1000 / period | | Expected Time to First Exit E[T_1] | ((N - 1) * V) / (N * c) | 10.0000 periods | | Standoff Survival Prob Past t = 10 | EXP(-N * h* * t) | 0.3679 (36.79% Still Active!) | - **Formula (Symmetric N-Player War of Attrition Expected First-Exit Time Formula)**: `=LET(v_pz, B2, c_bn, B3, n_pl, B4, IF(OR(v_pz <= 0, c_bn <= 0, n_pl < 2, INT(n_pl) <> n_pl), "Require V > 0, c > 0, and Integer N >= 2", ROUND(((n_pl - 1) * v_pz) / (n_pl * c_bn), 4)))` - **Formula (Probability Standoff Persists Past Horizon t Formula)**: `=LET(v_pz, B2, c_bn, B3, n_pl, B4, t_hz, B5, IF(OR(v_pz <= 0, c_bn <= 0, n_pl < 2, INT(n_pl) <> n_pl, t_hz < 0), "Require V > 0, c > 0, and Integer N >= 2", LET(h_res, (n_pl / (n_pl - 1)) * (c_bn / v_pz), ROUND(EXP(-h_res * t_hz), 4))))` ### Warehouse Receiving & Shipping Dock-Door Sizing Formula - **URL**: https://sheets.arte-soft.com/en/learn/warehouse-receiving-and-shipping-dock-door-count-truck-turnaround-formula/ - **Summary**: Calculate Base Daily Trailer Door-Hours, Surge-Buffered Peak Door-Hours, Fractional Dock-Door Requirement, and Integer Dock-Bay Count. *Table — Dividing daily trailers by operating hours ignores morning/evening carrier bunching—causing yard gridlock and carrier detention fees!:* | DC Dock-Bay Sizing KPI (96 Trailers/day @ 50 min, 16h Window, 1.35x Surge, 80% Util) | Formula | Verified Output | | --- | --- | --- | | Base Daily Door-Hours (hr) | (Daily_Trailers * Turnaround_min) / 60 | 80.00 door-hr (120.00 @ 75 min floor-load) | | Surge-Buffered Door-Hours (hr) | Base_Door_Hours * Peak_Surge_Factor | 108.00 door-hr (162.00 @ 75 min) | | Fractional Dock-Door Demand | Surge_Door_Hours / (Shift_Hrs * Util) | 8.44 bays (12.66 bays @ 75 min) | | Required Integer Dock Bays | ROUNDUP(Fractional_Dock_Doors, 0) | 9 Dock Doors (13 Doors @ floor-loaded!) | - **Formula (Surge-Buffered Warehouse Dock-Door Occupancy & Integer Bay Formula)**: `=LET(tr_d, B2, tn_m, B3, hr_s, B4, sg_f, B5, ut_d, B6, IF(OR(tr_d <= 0, tn_m <= 5, hr_s <= 0, hr_s > 24, sg_f < 1, ut_d <= 0.3, ut_d > 1), "Invalid Dock Input", LET(bh_r, (tr_d * tn_m) / 60, ph_r, bh_r * sg_f, ROUNDUP(ph_r / (hr_s * ut_d), 0))))` - **Formula (Floor-Loaded Import Container 75-Minute Live-Unload Check (Set Turnaround B3 = 75.0 min))**: `=IF(ISTEXT(E5), E5, ROUND((((B2 * B3) / 60) * B5) / (B4 * B6), 2))` ### Lucas-Washburn Capillary Wicking Length & Assay Flow Time - **URL**: https://sheets.arte-soft.com/en/learn/washburn-capillary-imbibition-penetration-length-porous-wick/ - **Summary**: Calculate horizontal capillary penetration distance L(t) = SQRT((γ * r * cos(θ) / (2 * μ)) * t) (mm) and lateral-flow diagnostic transit time t_flow (s) in porous paper strips and heat-pipe wicks. *Table — Why lateral-flow diagnostic strips slow down quadratically as liquid advances!:* | Imbibition Elapsed Time / Pore Regime | Pore Radius r & Contact θ | Wicked Distance L(t) (mm) | Square-Root Scaling | | --- | --- | --- | --- | | Rapid Strip Readout Window (t = 10 s) | r = 8.0 μm, θ = 35° | 48.57 mm | Baseline Front Position | | Quadrupled Assay Time (t = 40 s) | r = 8.0 μm, θ = 35° | 97.14 mm (Exactly 2.0x!) | t -> 4t Doubles L(t) | | Non-Wetting Hydrophobic Pore (θ >= 90°) | cos(θ) <= 0 | "Non-Wetting or Invalid Inputs" | Spontaneous Wicking Requires θ < 90° | - **Formula (Lucas-Washburn Capillary Penetration Distance L(t) (mm))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 90, B5 <= 0, B6 < 0), "Non-Wetting or Invalid Inputs", ROUND(1000 * SQRT((B2 * (B3 * 0.000001) * COS(RADIANS(B4)) * B6) / (2 * B5)), 2))` - **Formula (Transit Time Needed to Reach Target Test-Line Distance L_target (s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 90, B5 <= 0), "Non-Wetting or Invalid Inputs", ROUND((2 * B5 * ((40 / 1000) ^ 2)) / (B2 * (B3 * 0.000001) * COS(RADIANS(B4))), 2))` ### Waterfall (Bridge) Chart Formula: Invisible Base, Up/Down Steps & Grounded Pillars - **URL**: https://sheets.arte-soft.com/en/learn/waterfall-bridge-chart-floating-base-up-down-and-subtotal-pillar/ - **Summary**: Build a universal Stacked-Column Waterfall / Financial Bridge Chart (Revenue-to-EBITDA, Budget-to-Actual, Headcount Bridge) using exact formulas for Running Balance, Invisible Pedestal Base, Positive Lift, and Negative Drag. *Table — Decompose any cumulative walk into an Invisible Base plus Green Lift, Red Drag, and Grounded Pillars!:* | Bridge Step | Signed Delta ($k) | Running Cumulative ($k) | Invisible Base ($k) | Visible Green / Red Segment | | --- | --- | --- | --- | --- | | Opening EBITDA (Pillar) | +1,000 | 1,000 | 0 (Grounded) | Pillar = 1,000 | | Price Realization | +180 | 1,180 | 1,000 | Green Up = 180 | | Volume Mix | +95 | 1,275 | 1,180 | Green Up = 95 | | Input Cost Inflation | -140 | 1,135 | 1,135 | Red Down = 140 | | Closing EBITDA (Pillar) | Subtotal | 1,135 | 0 (Grounded) | Pillar = 1,135 | - **Formula (Waterfall Step Invisible Pedestal Base MIN(Prior_Balance, Prior_Balance + Delta))**: `=IF(C4 + B5 < 0, "Negative Crossing Requires Split Zero-Axis Base", MIN(C4, C4 + B5))` - **Formula (Closing Cumulative Bridge Balance SUM($B$2:B5))**: `=SUM($B$2:B5)` ### Waterlow Pressure Ulcer Risk Scale & Support Surface Tier - **URL**: https://sheets.arte-soft.com/en/learn/waterlow-pressure-ulcer-risk-assessment-scale-nursing-formula/ - **Summary**: Calculate the 7-domain Waterlow Pressure Injury Score across BMI/build, skin status, sex/age, continence, mobility, appetite/nutrition, and tissue/neuro/surgical special risks (10+ At Risk, 15+ High Risk, 20+ Very High Risk). *Table — Why higher Waterlow scores mean HIGHER ulcer risk—the exact opposite of Braden & Norton!:* | Waterlow Total Score Band | Risk Stratification Tier | Support Surface & Nursing Protocol | | --- | --- | --- | | < 10 Points (e.g., 5 pts) | Low Risk (<10) | Standard Hospital Mattress & Reassessment | | 10 – 14 Points (e.g., 12 pts) | At Risk (10–14) | High-Spec Pressure-Redistributing Foam + Repositioning | | 15 – 19 Points (e.g., 17 pts) / 20+ Points | High Risk (15–19) / Very High Risk (20+) | Alternating Overlay (15–19) or Dynamic Specialty Bed (20+) | - **Formula (Total 7-Domain Waterlow Pressure Injury Score)**: `=IF(OR(MIN(B2:B8) < 0, B4 < 2), "Invalid Waterlow Domain Score", SUM(B2:B8))` - **Formula (Waterlow Mattress & Prevention Tier Classification)**: `=IF(OR(MIN(B2:B8) < 0, B4 < 2), "Invalid Waterlow Domain Score", IF(SUM(B2:B8) >= 20, "Very High Risk (20+: Specialty Dynamic Surface)", IF(SUM(B2:B8) >= 15, "High Risk (15-19: Alternating Pressure Overlay)", IF(SUM(B2:B8) >= 10, "At Risk (10-14: High-Spec Foam & Turning)", "Low Risk (<10: Standard Care)"))))` ### Watson Total Body Water (TBW) Calculator: Dialysis Kt/V & Hydrophilic V_d Formula - **URL**: https://sheets.arte-soft.com/en/learn/watson-anthropometric-total-body-water-tbw-volume-of-distribution/ - **Summary**: Calculate adult Total Body Water V (Liters) for hemodialysis urea Kt/V adequacy, dysnatremia correction, and hydrophilic/ethanol volume of distribution using Patricia E. Watson et al.’s (1980) isotope-dilution equations. *Table — Why KDOQI hemodialysis adequacy and hyponatremia formulas replace "0.60 * Weight" with Watson TBW!:* | Adult Patient Profile | Watson (1980) Total Body Water V (L) | Actual Hydration % (TBW / Weight) | vs Naive 0.60/0.50 Rule | | --- | --- | --- | --- | | 35-yr Male, 180 cm, 75 kg (Lean) | 43.66 L | 58.2% of body weight | 45.0 L (Close) | | 70-yr Male, 172 cm, 110 kg (Obese Elderly) | 51.24 L | 46.6% of body weight | 66.0 L (+29% dangerous overestimate!) | | 55-yr Female, 164 cm, 72 kg | 33.19 L | 46.1% of body weight | 36.0 L (+8.5% overestimate) | - **Formula (Watson (1980) Sex-Specific Adult Total Body Water TBW (Liters))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 18, B3 > 105, B4 < 120, B4 > 230, B5 < 30, B5 > 300), "Invalid Adult Sex (M/F), Age, Height (cm), or Weight (kg)", ROUND(IF(B2 = "M", 2.447 - 0.09516 * B3 + 0.1074 * B4 + 0.3362 * B5, -2.097 + 0.1069 * B4 + 0.2466 * B5), 2))` - **Formula (Effective Body-Water Fraction (% of Total Body Weight))**: `=IF(OR(AND(B2 <> "M", B2 <> "F"), B3 < 18, B3 > 105, B4 < 120, B4 > 230, B5 < 30, B5 > 300), "Invalid Adult Sex (M/F), Age, Height (cm), or Weight (kg)", ROUND(100 * IF(B2 = "M", 2.447 - 0.09516 * B3 + 0.1074 * B4 + 0.3362 * B5, -2.097 + 0.1069 * B4 + 0.2466 * B5) / B5, 1))` ### Watson Correlation: Latent Heat of Vaporization vs Temperature - **URL**: https://sheets.arte-soft.com/en/learn/watson-latent-heat-of-vaporization-temperature-scaling-formula/ - **Summary**: Scale enthalpy of vaporization ΔH_vap(T_2) = ΔH_vap(T_1) * ((T_c - T_2) / (T_c - T_1))^0.38 (kJ/mol) from normal boiling point up to high-pressure boiler conditions near the critical point. *Table — Why latent heat of vaporization vanishes smoothly to zero at T_c!:* | Steam Saturation Temperature T2 (Tc = 647.1 K) | Reduced Distance (Tc - T2) | Watson ΔH_vap(T2) (kJ/mol) | Fraction of 1-atm ΔH1 | | --- | --- | --- | --- | | 1-atm Normal Boiling Point (373.15 K) | 273.95 K | 40.66 kJ/mol | 100.0% (Reference) | | High-Pressure Boiler Drum (523.15 K) | 123.95 K | 30.08 kJ/mol | 74.0% | | Near-Critical Steam Generator (600.0 K) | 47.10 K | 20.83 kJ/mol | 51.2% | - **Formula (Watson Scaled Enthalpy of Vaporization ΔH_vap(T_2) (kJ/mol))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= B3, B4 <= 0, B4 > B5), "Supercritical or Invalid T", IF(B4 = B5, 0, ROUND(B2 * (((B5 - B4) / (B5 - B3)) ^ 0.38), 2)))` - **Formula (Specific Latent Heat per Mass Δh_vap(T_2) (kJ/kg))**: `=IF(OR(B2 <= 0, B3 <= 0, B5 <= B3, B4 <= 0, B4 > B5, B6 <= 0), "Supercritical or Invalid T", IF(B4 = B5, 0, ROUND(1000 * B2 * (((B5 - B4) / (B5 - B3)) ^ 0.38) / B6, 1)))` ### Watts Poverty Index Formula & Morduch Average Time-to-Exit Poverty Calculator - **URL**: https://sheets.arte-soft.com/en/learn/watts-poverty-index-logarithmic-deprivation-and-exit-time/ - **Summary**: Calculate Harold Watts’s (1968) distribution-sensitive logarithmic poverty index W = (1 / N) * SUM_{y_i < z} LN(z / y_i) and Jonathan Morduch’s (1998) expected years to exit poverty t_exit = W / g. *Table — Why Watts (1968) was the first axiomatically coherent, transfer-sensitive poverty measure — with an exact exit-time meaning!:* | Watts & Morduch Metric (Incomes [600, 750, 900, 1200, 1500], z = 1000, g = 4%/yr) | Evaluated Value | Policy Interpretation | | --- | --- | --- | | Watts Poverty Index W | 0.1808 | Mean log poverty shortfall across N = 5 households | | Population-Weighted Exit Time W / g | 4.52 years | Per-capita person-years of poverty remaining at 4% growth | | Mean Exit Time Among Poor Households | 7.53 years | Average years for the 3 poor households to reach $1,000 | - **Formula (Watts Logarithmic Poverty Index W = (1 / N) * SUM_{y_i < z} LN(z / y_i))**: `=IF(OR(MIN(B2:B6) <= 0, D2 <= 0), "Requires Positive Incomes & Poverty Line", ROUND((IF(B2 < D2, LN(D2 / B2), 0) + IF(B3 < D2, LN(D2 / B3), 0) + IF(B4 < D2, LN(D2 / B4), 0) + IF(B5 < D2, LN(D2 / B5), 0) + IF(B6 < D2, LN(D2 / B6), 0)) / COUNT(B2:B6), 4))` - **Formula (Morduch Population-Weighted Poverty Exit Time t_exit = W / g (Years))**: `=IF(OR(MIN(B2:B6) <= 0, D2 <= 0, D3 <= 0), "Requires Positive Incomes, Line z & Growth g", ROUND(((IF(B2 < D2, LN(D2 / B2), 0) + IF(B3 < D2, LN(D2 / B3), 0) + IF(B4 < D2, LN(D2 / B4), 0) + IF(B5 < D2, LN(D2 / B5), 0) + IF(B6 < D2, LN(D2 / B6), 0)) / COUNT(B2:B6)) / D3, 2))` ### Watts-Strogatz Clustering & Friendship Paradox Formula - **URL**: https://sheets.arte-soft.com/en/learn/watts-strogatz-local-clustering-coefficient-and-friendship-paradox/ - **Summary**: Calculate Watts-Strogatz (1998) node local clustering 2*T_i / (k_i*(k_i - 1)) and prove Scott Feld’s (1991) Friendship Paradox = SUMPRODUCT(k, k) / SUM(k) >= AVERAGE(k). *Table — Measure small-world cliquishness AND prove why your friends have more friends than you do!:* | Graph Metric (5 Nodes, Degrees [4, 2, 2, 1, 1], 1 Triangle) | Formula | Verified Output | | --- | --- | --- | | Hub Node_1 Local Clustering (k=4, T=1) | (2 * 1) / (4 * 3) | 0.1667 | | Watts-Strogatz Mean Clustering (C_bar) | AVERAGE(D2:D6) | 0.4333 (13 / 30) | | Average Individual Degree () | AVERAGE(B2:B6) | 2.0000 friends | | Average Friend’s Degree () | SUMPRODUCT(B2:B6, B2:B6) / SUM(B2:B6) | 2.6000 friends (+30% Paradox!) | - **Formula (Row-Level Watts-Strogatz Local Clustering Coefficient Formula)**: `=IF(B2 < 0, "Invalid Graph Input", IF(B2 < 2, 0, IF(2 * C2 > B2 * (B2 - 1), "Impossible Triangle Count", ROUND((2 * C2) / (B2 * (B2 - 1)), 6))))` - **Formula (Feld Friendship Paradox Mean Neighbor Degree Formula)**: `=IF(OR(MIN(B2:B6) < 0, SUM(B2:B6) <= 0), "Invalid Graph Input", ROUND(SUMPRODUCT(B2:B6, B2:B6) / SUM(B2:B6), 4))` ### WBGT Outdoor & Indoor Occupational Heat-Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/wbgt-wet-bulb-globe-temperature-outdoor-and-indoor-heat-stress-formula/ - **Summary**: Calculate ISO 7243 / OSHA Wet-Bulb Globe Temperature (Outdoor Solar 0.7*Tnwb + 0.2*Tg + 0.1*Tdb vs Indoor 0.7*Tnwb + 0.3*Tg), PPE Clothing-Adjusted WBGT_eff, Radiant Globe Spread, and ACGIH Work-Rest Regime. *Table — Protect outdoor crews and foundry workers with ISO 7243 Wet-Bulb Globe Temperature (WBGT)!:* | ISO 7243 WBGT Metric (Tnwb=24 C, Tg=38 C, Tdb=33 C, Solar=1, CAV=+2 C) | Formula | Verified Output | | --- | --- | --- | | Environmental WBGT (C) | IF(Solar=1, 0.7*Tnwb+0.2*Tg+0.1*Tdb, 0.7*Tnwb+0.3*Tg) | 27.70 C (28.20 C @ Indoor Solar=0) | | PPE-Adjusted WBGT_eff (C) | Environmental_WBGT + Clothing_CAV | 29.70 C (27.70 C @ Breathable CAV=0) | | Radiant Globe Spread (C) | Black_Globe_Tg - Dry_Bulb_Tdb | 5.00 C | | ACGIH Moderate Work-Rest Gate | <28 Continuous \| 28-30 50/50 \| >=30 25/75 | 50% Work / 50% Rest Cycle | - **Formula (ISO 7243 Outdoor / Indoor WBGT & PPE-Adjusted Screening Formula)**: `=LET(t_wb, B2, t_gl, B3, t_db, B4, sl_f, B5, cv_c, B6, IF(OR(t_wb < -10, t_db < t_wb, t_gl < t_wb, AND(sl_f <> 0, sl_f <> 1), cv_c < 0, cv_c > 12), "Invalid WBGT Psychrometric Input", LET(wb_e, IF(sl_f = 1, 0.7 * t_wb + 0.2 * t_gl + 0.1 * t_db, 0.7 * t_wb + 0.3 * t_gl), ROUND(wb_e + cv_c, 2))))` - **Formula (Indoor Foundry Formula (Solar = 0) & Breathable Workwear (CAV = 0 C) Checks)**: `=IF(ISTEXT(E3), E3, IF(E3 >= 30, "25% Work / 75% Rest Cycle", IF(E3 >= 28, "50% Work / 50% Rest Cycle", "Continuous Work With Hydration")))` ### Webster Traffic Signal Cycle & Green Split Formula - **URL**: https://sheets.arte-soft.com/en/learn/webster-optimal-traffic-signal-cycle-length-and-green-split-formula/ - **Summary**: Minimize intersection delay using F. V. Webster’s (1958) optimal cycle length C_opt = (1.5 * L + 5) / (1 - Y), critical flow-ratio sum Y = SUM(q_i / s_i), and proportional effective green splits. *Table — Balance startup lost time against red-light queue wait with F. V. Webster’s (1958) classic formula!:* | Signal Timing Metric (L = 12 s, y = [0.35, 0.25, 0.10]) | Formula | Verified Output | | --- | --- | --- | | Intersection Critical Flow Sum (Y) | SUM(q_i / s_i) | 0.7000 (70.0% Saturation) | | Minimum Non-Oversaturated Cycle (C_min) | L / (1 - Y) = 12 / 0.30 | 40.00 sec | | Webster Delay-Minimizing Cycle (C_opt) | (1.5 * L + 5) / (1 - Y) | 76.67 sec (23 / 0.30) | | Phase 1 Effective Green Split (g_1) | (y_1 / Y) * (C_opt - L) | 32.33 sec (50.0% of Green) | - **Formula (Webster (1958) Delay-Minimizing Optimal Cycle Length Formula)**: `=LET(l_sc, G2, y_sm, SUM(D2:D4), IF(OR(l_sc <= 0, MIN(B2:B4) < 0, MIN(C2:C4) <= 0, y_sm <= 0), "Invalid Signal Input", IF(y_sm >= 1, "Oversaturated Junction (Y >= 1)", ROUND((1.5 * l_sc + 5) / (1 - y_sm), 2))))` - **Formula (Equisaturation Phase-1 Effective Green Time g_1 Formula)**: `=LET(l_sc, G2, y_1, D2, y_sm, SUM(D2:D4), IF(OR(l_sc <= 0, y_sm <= 0, y_sm >= 1), "Oversaturated Junction (Y >= 1)", LET(c_op, (1.5 * l_sc + 5) / (1 - y_sm), ROUND((y_1 / y_sm) * (c_op - l_sc), 2))))` ### WEEKDAY function: use return_type 2 to flag Saturday and Sunday cleanly - **URL**: https://sheets.arte-soft.com/en/learn/weekday-function-monday-based-weekends/ - **Summary**: Switch WEEKDAY from its Sunday-first default to Monday-first numbering (return_type = 2) so Saturday (6) and Sunday (7) share a single >= 6 weekend test. *Table — Why default WEEKDAY(date) splits the weekend in two:* | Calendar date | Serial | WEEKDAY(d, 1) | WEEKDAY(d, 2) | | --- | --- | --- | --- | | Monday 2026-03-02 | 46083 | 2 | 1 | | Friday 2026-03-06 | 46087 | 6 | 5 | | Saturday 2026-03-07 | 46088 | 7 | 6 | | Sunday 2026-03-08 | 46089 | 1 | 7 | - **Formula (One >= 6 comparison flags both weekend days)**: `=IF(WEEKDAY(A4,2)>=6,"Weekend","Workday")` - **Formula (Test Monday, Friday, Saturday, and Sunday)**: `=WEEKDAY(A2,2)` ### WEEKNUM Return Types Explained: Sunday System 1 vs. Monday System 2 vs. ISO 8601 - **URL**: https://sheets.arte-soft.com/en/learn/weeknum-sunday-vs-monday-january-1-calendar-week-systems/ - **Summary**: Reconcile North American January-1 Sunday weeks (WEEKNUM type 1), Monday-start January-1 weeks (type 2), and European ISO 8601 Thursday-anchored weeks (type 21) using exact DATE and WEEKDAY arithmetic. *Table — Why January 1 and Sunday boundaries split payroll and retail calendars:* | Calendar Date | Day of Week | System 1 (Sun, Jan 1) | System 2 (Mon, Jan 1) | ISO 8601 (Thu Anchor) | | --- | --- | --- | --- | --- | | 2026-01-01 | Thursday | Week 1 | Week 1 | Week 1 | | 2026-01-04 | Sunday | Week 2 (New Sun week) | Week 1 (Still first Mon–Sun) | Week 1 | | 2026-01-05 | Monday | Week 2 | Week 2 | Week 2 | | 2027-01-01 | Friday | Week 1 | Week 1 | Week 53 (of 2026) | - **Formula (Exact January-1 Week Number Formula (System 1 & System 2))**: `=INT((B2 - DATE(YEAR(B2), 1, 1) + WEEKDAY(DATE(YEAR(B2), 1, 1), 1) - 1) / 7) + 1` - **Formula (ISO 8601 Week Number Comparison (System 21))**: `=LET(thu, B2 + 4 - WEEKDAY(B2, 2), INT((thu - DATE(YEAR(thu), 1, 1)) / 7) + 1)` ### Weibull Reliability: Survival R(t), Hazard Rate & B10 Bearing Life - **URL**: https://sheets.arte-soft.com/en/learn/weibull-reliability-survival-hazard-rate-and-b10-bearing-life/ - **Summary**: Calculate two-parameter Weibull survival, cumulative failure probability, hazard rate and B10 life, with explicit handling of zero time and invalid inputs. - **Formula (Survival and cumulative failures)**: `=IF(B6<>"OK",B6,IF(B7<>"OK",B7,EXP(-((B4/B2)^B3))))` - **Formula (Hazard is a rate, not a probability)**: `=IF(B6<>"OK",B6,IF(B7<>"OK",B7,IF(B4=0,IF(B3<1,"Unbounded as t approaches 0",IF(B3=1,1/B2,0)),B3/B2*(B4/B2)^(B3-1))))` - **Formula (B10 is the tenth failure percentile)**: `=IF(B6<>"OK",B6,B2*(-LN(0.9))^(1/B3))` ### WACC formula: Weighted Average Cost of Capital with interest tax shield - **URL**: https://sheets.arte-soft.com/en/learn/weighted-average-cost-of-capital-wacc-formula/ - **Summary**: Calculate corporate WACC = (E/V)*Re + (D/V)*Rd*(1 - TaxRate) to discount unlevered Free Cash Flows in DCF models. *Table — Tax-adjust debt—never equity—and weight by Market Value:* | Capital Component | Market Value ($M) | Weight | After-Tax Cost | Weighted Contribution | | --- | --- | --- | --- | --- | | Common Equity (E) | 600 | 60.0% | 12.00% | 7.20% | | Total Debt (D, 6.25% pre-tax, 20% tax) | 400 | 40.0% | 6.25% * 0.80 = 5.00% | 2.00% | | Total Capital (V = E + D) | 1,000 | 100.0% | WACC | 9.20% (0.092) | - **Formula (Full WACC and After-Tax Cost of Debt formulas)**: `=LET(v, A2 + B2, ROUND((A2 / v) * C2 + (B2 / v) * D2 * (1 - E2), 4))` - **Formula (After-tax Cost of Debt alone)**: `=ROUND(D2 * (1 - E2), 4)` ### Weighted average in Excel: calculate unit cost with SUMPRODUCT - **URL**: https://sheets.arte-soft.com/en/learn/weighted-average-unit-cost-sumproduct/ - **Summary**: Three deliveries have different quantities and unit prices. Calculate the cost of one average unit, check it against the invoice totals, and handle a list with no units. *Table — Start with the quantity behind each price:* | Delivery (A) | Units (B) | Price per unit (C) | | --- | --- | --- | | D-18 | 10 | 4 | | D-19 | 30 | 6 | | D-20 | 60 | 7 | - **Formula (Multiply each price by its quantity, then divide)**: `=SUMPRODUCT(B2:B4,C2:C4)/SUM(B2:B4)` - **Formula (Show an explicit message when there are no units)**: `=IF(SUM(B2:B4)=0,"No units",SUMPRODUCT(B2:B4,C2:C4)/SUM(B2:B4))` ### GPA formula: calculate credit-weighted Grade Point Average - **URL**: https://sheets.arte-soft.com/en/learn/weighted-gpa-calculator-formula/ - **Summary**: Map letter grades to 4.0 scale points with XLOOKUP and weight courses by credit hours with SUMPRODUCT(Credits, Points) / SUM(Credits). *Table — Why unweighted AVERAGE misstates academic GPA:* | Course (A) | Credits (B) | GradePoints (C) | Quality Points (B*C) | | --- | --- | --- | --- | | Calculus | 4 | 4 | 16.0 | | Physics | 4 | 3 | 12.0 | | Writing | 3 | 3.7 | 11.1 | | Lab | 1 | 4 | 4.0 | - **Formula (Credit-weighted GPA and letter-grade lookup)**: `=IF(SUM(B2:B5)=0, "No eligible credits", ROUND(SUMPRODUCT(B2:B5, C2:C5) / SUM(B2:B5), 2))` - **Formula (Compare unweighted average and letter lookup)**: `=ROUND(AVERAGE(C2:C5), 2)` ### Weighted Moving Average (WMA) formula: emphasize recent demand - **URL**: https://sheets.arte-soft.com/en/learn/weighted-moving-average-wma-formula/ - **Summary**: React faster to trend turns than a simple moving average by weighting trailing observations linearly {1;2;3} inside SUMPRODUCT. *Table — Why linear weights {1;2;3} reduce moving-average lag:* | Week (A) | Demand (B) | 3-Wk Weight | SMA vs WMA at Wk 4 | | --- | --- | --- | --- | | Wk 1 | 100 | (outside 3-wk window) | — | | Wk 2 | 110 | 1 (1/6) | — | | Wk 3 | 130 | 2 (2/6) | — | | Wk 4 | 190 | 3 (3/6) | SMA = 143.33 vs WMA = 156.67 | - **Formula (3-period Weighted Moving Average vs SMA)**: `=ROUND(SUMPRODUCT(B3:B5, {1;2;3}) / SUM({1;2;3}), 2)` - **Formula (Compare with the simple moving average)**: `=ROUND(AVERAGE(B3:B5), 2)` ### Weighted random assignment & Monte Carlo lookup (cumulative lower bounds) - **URL**: https://sheets.arte-soft.com/en/learn/weighted-probability-tier-assignment-lookup/ - **Summary**: Sample categories with unequal probabilities (e.g., 60% Standard, 30% Silver, 10% Gold) by matching a [0, 1) draw against cumulative lower thresholds. *Table — Start cumulative probability thresholds at 0.00—not P1!:* | Outcome (A) | Weight (B) | CumLowerBound (C) | Winning Interval for u in [0, 1) | | --- | --- | --- | --- | | Standard | 0.60 (60%) | 0.00 | 0.00 <= u < 0.60 | | Silver | 0.30 (30%) | 0.60 (=C2+B2) | 0.60 <= u < 0.90 | | Gold | 0.10 (10%) | 0.90 (=C3+B3) | 0.90 <= u < 1.00 (Sum B = 1.00) | - **Formula (Weighted probability lookup and 100%-sum audit formulas)**: `=IF(OR(D2<0,D2>=1),"Invalid",XLOOKUP(D2, C2:C4, A2:A4, "Invalid", -1))` - **Formula (Audit that probability weights sum to 100%)**: `=IF(AND(COUNT(B2:B4)=3,MIN(B2:B4)>0,ABS(SUM(B2:B4)-1)<0.0000001),"Valid 100%","Check Weights")` ### Population weighted standard deviation with frequency or probability weights - **URL**: https://sheets.arte-soft.com/en/learn/weighted-standard-deviation-formula/ - **Summary**: Calculate weighted variance and weighted standard deviation around the weighted mean in one LET + SUMPRODUCT formula. *Table — Measure dispersion around the weighted mean, not simple AVERAGE:* | Scenario (A) | Score (B) | ProbWeight (C) | Weighted Sq Deviation | | --- | --- | --- | --- | | Bear | 100 | 0.2 | 0.2 * (100 - 101)^2 = 0.2 | | Base | 120 | 0.3 | 0.3 * (120 - 101)^2 = 108.3 | | Bull | 90 | 0.5 | 0.5 * (90 - 101)^2 = 60.5 | - **Formula (Population-weighted standard deviation and variance)**: `=LET(wm, SUMPRODUCT(C2:C4, B2:B4) / SUM(C2:C4), SQRT(SUMPRODUCT(C2:C4, (B2:B4 - wm)^2) / SUM(C2:C4)))` - **Formula (Weighted variance (before square root))**: `=LET(wm, SUMPRODUCT(C2:C4, B2:B4) / SUM(C2:C4), SUMPRODUCT(C2:C4, (B2:B4 - wm)^2) / SUM(C2:C4))` ### Weighted vendor evaluation scorecard (SUMPRODUCT decision matrix) - **URL**: https://sheets.arte-soft.com/en/learn/weighted-vendor-scorecard-evaluation/ - **Summary**: Score competing RFP vendors across Price, Security, Support, and SLA weights using locked SUMPRODUCT($B$2:$B$5, VendorCol) / SUM($B$2:$B$5). *Table — Normalize criterion weights automatically so edits never skew totals:* | Criterion (A) | Weight (B) | VendorA (C) | VendorB (D) | | --- | --- | --- | --- | | Price | 0.35 | 90 | 75 | | Security | 0.35 | 80 | 95 | | SLA Uptime | 0.2 | 85 | 90 | | Support | 0.1 | 70 | 85 | - **Formula (Vendor weighted score and winner comparison)**: `=ROUND(SUMPRODUCT($B$2:$B$5, D2:D5) / SUM($B$2:$B$5), 2)` - **Formula (Verify weights sum to 100%)**: `=ROUND(SUM(B2:B5), 4) = 1` ### Weir Equation Indirect Calorimetry Calculator: Resting Energy Expenditure (REE) & RQ - **URL**: https://sheets.arte-soft.com/en/learn/weir-equation-indirect-calorimetry-resting-energy-expenditure-rq/ - **Summary**: Calculate gold-standard Resting Energy Expenditure REE (kcal/day) = 1.44 * (3.941 * VO2 + 1.106 * VCO2) (and urinary-nitrogen complete Weir REE) plus Respiratory Quotient RQ = VCO2 / VO2 from metabolic cart gas exchange. *Table — Why J. B. de V. Weir’s 1949 stoichiometry remains the ICU and exercise-lab gold standard!:* | Respiratory Quotient RQ = VCO2 / VO2 | Predominant Substrate / Metabolic State | | --- | --- | | RQ ~ 0.70 (0.67–0.73) | Predominant lipid / ketone oxidation (fasting or ketogenic state) | | RQ ~ 0.82–0.85 | Balanced mixed macronutrient oxidation | | RQ ~ 1.00 | Pure carbohydrate oxidation | | RQ > 1.00 (1.01–1.25) | Net de novo lipogenesis (overfeeding) or acute hyperventilation CO2 washout | - **Formula (Abbreviated & Nitrogen-Corrected Weir Resting Energy Expenditure REE (kcal/day))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B3 / B2 < 0.65, B3 / B2 > 1.35), "Non-Physiologic Gas Exchange or Leak (Check RQ 0.65–1.35)", ROUND(1.44 * (3.941 * B2 + 1.106 * B3) - 2.17 * B4, 1))` - **Formula (Metabolic Cart Respiratory Quotient RQ = VCO2 / VO2)**: `=IF(OR(B2 <= 0, B3 <= 0), "Requires Positive VO2 and VCO2", ROUND(B3 / B2, 3))` ### Weisz-Prater Criterion (CWP): Observable Internal Pore Diffusion Check - **URL**: https://sheets.arte-soft.com/en/learn/weisz-prater-observable-modulus-internal-pore-diffusion-check/ - **Summary**: Diagnose internal catalyst pore diffusion limitations directly from measured laboratory reaction rate (-r_A')_obs without knowing intrinsic rate constant k via C_WP = (-r_A')_obs * ρ_c * R^2 / (D_e * C_As). *Table — Why Thiele modulus has a chicken-and-egg problem—and how Weisz-Prater solves it!:* | Catalyst Pellet Radius R | Weisz-Prater Modulus CWP | Diagnostic Threshold Rule | Catalyst Utilization Regime | | --- | --- | --- | --- | | Commercial Extrudate (R = 0.25 cm) | 2.279 (> 1.0) | CWP >= 1.0 | Severe Internal Pore Diffusion! | | Transition Sieve Cut (R = 0.12 cm) | 0.525 (0.3–1.0) | 0.3 <= CWP < 1.0 | Moderate Gradient Onset | | Crushed Lab Powder (R = 0.05 cm) | 0.091 (< 0.3) | CWP < 0.3 | Negligible Resistance (True Kinetics) | - **Formula (Weisz-Prater Observable Modulus C_WP = r_obs * ρ_c * R^2 / (D_e * C_As))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Catalyst Inputs", ROUND((B2 * B3 * (B4 ^ 2)) / (B5 * B6), 3))` - **Formula (Automated Pore-Diffusion Regime Classification)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Catalyst Inputs", IF((B2 * B3 * (B4 ^ 2)) / (B5 * B6) < 0.3, "Negligible Diffusion (True Kinetics)", IF((B2 * B3 * (B4 ^ 2)) / (B5 * B6) < 1, "Moderate Pore Resistance", "Severe Internal Pore Diffusion")))` ### Weitzman Prices vs. Quantities Instrument Choice Formula - **URL**: https://sheets.arte-soft.com/en/learn/weitzman-prices-vs-quantities-abatement-slope-instrument-choice/ - **Summary**: Evaluate Martin Weitzman’s (1974) comparative advantage Delta_(P-Q) = sigma^2 * (C_slope - B_slope) / (2 * C_slope^2) between Pigouvian emission fees and tradable quantity caps. *Table — Choose between an emission fee and a quantity cap using relative marginal slopes!:* | Pollutant Regime (B_0=120, C_0=20, C_slope=2, sig=10) | Weitzman Delta_(P-Q) | Optimal Policy Instrument | | --- | --- | --- | | Stock Pollutant (B_slope = 0.50 < C_slope) | +18.75 | Price Fee Preferred | | Equal Slopes (B_slope = 2.00 = C_slope) | 0.00 | Indifferent (Equal Welfare) | | Threshold Pollutant (B_slope = 5.00 > C_slope) | -37.50 | Quantity Cap Preferred | - **Formula (Weitzman Expected Welfare Advantage Delta_(P-Q) Formula)**: `=LET(b_0, B2, c_0, B3, b_sl, B4, c_sl, B5, sd_c, B6, IF(OR(c_0 < 0, b_0 <= c_0, b_sl < 0, c_sl <= 0, sd_c < 0), "Invalid Weitzman Input", ROUND(((sd_c^2) * (c_sl - b_sl)) / (2 * (c_sl^2)), 4)))` - **Formula (Instrument Recommendation Rule Based on Relative Slope C_slope vs B_slope Formula)**: `=IF(ISTEXT(E4), E4, IF(ABS(E4) < 1E-9, "Indifferent (Equal Welfare)", IF(E4 > 0, "Price Fee Preferred", "Quantity Cap Preferred")))` ### Bethe-Weizsäcker Semi-Empirical Nuclear Binding Energy (Liquid-Drop SEMF) - **URL**: https://sheets.arte-soft.com/en/learn/weizsacker-semi-empirical-nuclear-binding-energy-formula/ - **Summary**: Calculate total nuclear binding energy B(A, Z) and binding energy per nucleon B / A (MeV) from Volume, Surface, Coulomb, Asymmetry, and ISEVEN/ISODD Pairing terms across the chart of nuclides. *Table — Explain both stellar fusion AND Uranium-235 fission from five liquid-drop terms!:* | Nuclide (A, Z) | Nuclear Spin Parity | Total Binding Energy B (MeV) | Binding Energy B / A (MeV/nucleon) | | --- | --- | --- | --- | | Iron-56 (A = 56, Z = 26) | Even-Even (+pair) | 495.38 MeV | 8.8461 MeV/nucleon (Peak Stability!) | | Uranium-235 (A = 235, Z = 92) | Odd-A (pair = 0) | 1,796.50 MeV | 7.6447 MeV/nucleon (Fissionable!) | | Invalid Z > A Input | Unphysical Proton Count | Guarded Input Error | "Invalid Nuclide (A, Z)" | - **Formula (Total Bethe-Weizsäcker Nuclear Binding Energy B(A, Z) in MeV)**: `=IF(OR(B2 < 2, B3 < 1, B3 > B2), "Invalid Nuclide (A, Z)", ROUND((15.75 * B2) - (17.8 * (B2 ^ (2 / 3))) - ((0.711 * B3 * (B3 - 1)) / (B2 ^ (1 / 3))) - ((23.7 * ((B2 - (2 * B3)) ^ 2)) / B2) + IF(ISODD(B2), 0, IF(ISEVEN(B3), 11.18 / SQRT(B2), -11.18 / SQRT(B2))), 2))` - **Formula (Binding Energy per Nucleon B(A, Z) / A (MeV/nucleon))**: `=IF(OR(B2 < 2, B3 < 1, B3 > B2), "Invalid Nuclide (A, Z)", ROUND(((15.75 * B2) - (17.8 * (B2 ^ (2 / 3))) - ((0.711 * B3 * (B3 - 1)) / (B2 ^ (1 / 3))) - ((23.7 * ((B2 - (2 * B3)) ^ 2)) / B2) + IF(ISODD(B2), 0, IF(ISEVEN(B3), 11.18 / SQRT(B2), -11.18 / SQRT(B2)))) / B2, 4))` ### Two-sample t-test formula (Welch's unequal-variance t-statistic) - **URL**: https://sheets.arte-soft.com/en/learn/welch-two-sample-t-test-statistic-formula/ - **Summary**: Compare two independent group means (e.g., A/B order value or cycle time) using Welch's t-statistic (Mean1 - Mean2) / SQRT(Var1/sampleCountA + Var2/sampleCountB). *Table — Compare independent means without assuming equal variances:* | Statistic | Group A [111,117,123,129] | Group B [92,98,104,106] | | --- | --- | --- | | Sample Mean | 120.00 | 100.00 (Diff = +20.00) | | Sample Variance (VAR.S) | 60.00 (s^2/n = 15) | 40.00 (s^2/n = 10) | | Combined SE & Welch t | SE = SQRT(15 + 10) = 5.00 | t = 20 / 5 = 4.0000 | - **Formula (Welch's t-statistic and Welch-Satterthwaite degrees of freedom)**: `=LET(varianceTermA, VAR.S(A2:A5)/COUNT(A2:A5), varianceTermB, VAR.S(B2:B5)/COUNT(B2:B5), ROUND((AVERAGE(A2:A5) - AVERAGE(B2:B5)) / SQRT(varianceTermA + varianceTermB), 4))` - **Formula (Welch-Satterthwaite degrees of freedom)**: `=LET(sampleCountA, COUNT(A2:A5), sampleCountB, COUNT(B2:B5), varianceTermA, VAR.S(A2:A5)/sampleCountA, varianceTermB, VAR.S(B2:B5)/sampleCountB, ROUND((varianceTermA + varianceTermB)^2 / (varianceTermA^2/(sampleCountA-1) + varianceTermB^2/(sampleCountB-1)), 2))` ### Well Control Casing-Shoe MAASP & Kick Tolerance Formula - **URL**: https://sheets.arte-soft.com/en/learn/well-control-casing-shoe-maasp-kick-tolerance-influx-volume-and-mamw-formula/ - **Summary**: Calculate Maximum Allowable Mud Weight MAMW (SG), Static Casing-Shoe MAASP (kPa), Maximum Gas Influx Column Height at Shoe (m), and Kick-Tolerance Pit Gain (m³). *Table — Weighting drilling mud up toward casing-shoe leak-off cuts MAASP by 79%—shrinking allowable gas-kick pit gain from 13.2 m³ down to 2.4 m³!:* | IWCF Well-Control MAASP KPI (Shoe TVD=1,850 m, LOT=1.68 SG, Safety=0.06 SG) | Formula | Verified Output | | --- | --- | --- | | Max Allowable Mud Weight MAMW (SG) | Shoe_LOT_SG - Safety_Margin_SG | 1.620 SG | | Static Casing-Shoe MAASP (kPa) | (MAMW_SG - Current_Mud_SG) * 9.80665 * TVD_m | 5,079.8 kPa (1,088.5 kPa @ 1.56 SG mud!) | | Max Gas Column at Shoe Hmax (m) | MAASP_kPa / ((Mud_SG - Gas_SG) * 9.80665) | 462.5 m (82.8 m narrow window!) | | Shoe Kick-Tolerance Volume (m³) | (Max_Gas_Height_m * Annular_L_m) / 1000 | 13.18 m³ (2.36 m³ = 14.8 bbl alarm!) | - **Formula (IWCF / IADC Casing-Shoe Leak-Off MAASP & Buoyant Gas Kick-Tolerance Formula)**: `=LET(tv_s, B2, sl_t, B3, sm_d, B4, sg_s, B5, ca_l, B6, sf_m, B7, mw_x, sl_t - sf_m, mp_k, (mw_x - sm_d) * 9.80665 * tv_s, hg_m, mp_k / ((sm_d - sg_s) * 9.80665), IF(OR(tv_s < 150, sf_m < 0, sf_m > 0.2, sg_s < 0.05, sg_s > 0.85, sm_d <= sg_s, sm_d >= mw_x, sl_t > 2.6, ca_l <= 2), "Invalid MAASP Input", ROUND((hg_m * ca_l) / 1000, 2)))` - **Formula (Weighted-Up 1.56 SG High-Pressure Drilling Narrow-Margin Check (Set Mud SG B4 = 1.56))**: `=IF(ISTEXT(E5), E5, ROUND((B3 - B7 - B4) * 9.80665 * B2, 1))` ### Wells-Riley Airborne Infection & Ventilation Formula - **URL**: https://sheets.arte-soft.com/en/learn/wells-riley-airborne-infection-quanta-ventilation-risk-formula/ - **Summary**: Calculate Well-Mixed Indoor Inhaled Quanta Dose mu = (I * q * p * t) / Q, Wells-Riley Individual Infection Probability 1 - EXP(-mu), Expected Secondary Cases among S Susceptibles, and Outbreak Threshold. *Table — Size classroom and hospital HEPA + outdoor airflow Q to suppress airborne R_event below 1!:* | Wells-Riley IAQ Metric (I=1, q=50/h, p=0.6 m3/h, t=2h, Q=120 m3/h, S=20) | Formula | Verified Output | | --- | --- | --- | | Mean Inhaled Quanta Dose mu | (I * q * p * t) / Q_m3_hr | 0.5000 quanta (0.0400 @ Q=1,500) | | Individual Attack Probability | 1 - EXP(-mu) | 0.3935 (39.35%; 3.92% @ Q=1,500) | | Expected Secondary Cases E[C] | S_susceptibles * (1 - EXP(-mu)) | 7.87 cases (0.78 cases @ Q=1,500) | | Room Outbreak Control Gate | Expected_Cases < 1.0 Target | Superspreading Risk (E[C] >= 1) | - **Formula (Wells-Riley Airborne Infection Probability Formula)**: `=LET(in_f, B2, q_em, B3, p_br, B4, tm_h, B5, q_vn, B6, sc_n, B7, IF(OR(in_f < 1, q_em <= 0, p_br <= 0, tm_h <= 0, q_vn <= 0, sc_n < 1), "Invalid Wells-Riley Input", LET(mu_q, (in_f * q_em * p_br * tm_h) / q_vn, ROUND(1 - EXP(-mu_q), 4))))` - **Formula (ASHRAE 241 Clean-Air Upgrade Check (Boost Q + HEPA CADR to 1,500 m^3/hr))**: `=IF(ISTEXT(E3), E3, IF(E4 >= 1, "Superspreading Risk (E[C] >= 1)", "Controlled Ventilation (E[C] < 1)"))` ### Two-level Wells DVT score: a complete binary-flag spreadsheet exercise - **URL**: https://sheets.arte-soft.com/en/learn/wells-score-for-dvt-and-pulmonary-embolism-risk-formula/ - **Summary**: Practice SUM, IF and input validation with all nine positive DVT criteria and a separate alternative-diagnosis deduction using fictional data. - **Formula (Add all nine flags and subtract the alternative-diagnosis flag twice)**: `=IF(COUNT(B2:B11)<>10,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1),AND(B9<>0,B9<>1),AND(B10<>0,B10<>1),AND(B11<>0,B11<>1)),"Invalid inputs",SUM(B2:B10)-2*B11))` - **Formula (Compare the unrounded integer score with the two-level boundary)**: `=IF(COUNT(B2:B11)<>10,"Invalid inputs",IF(OR(AND(B2<>0,B2<>1),AND(B3<>0,B3<>1),AND(B4<>0,B4<>1),AND(B5<>0,B5<>1),AND(B6<>0,B6<>1),AND(B7<>0,B7<>1),AND(B8<>0,B8<>1),AND(B9<>0,B9<>1),AND(B10<>0,B10<>1),AND(B11<>0,B11<>1)),"Invalid inputs",IF(SUM(B2:B10)-2*B11>=2,"DVT likely score band","DVT unlikely score band")))` ### Wen-Yu Minimum Fluidization Velocity (u_mf) & Archimedes Number Formula - **URL**: https://sheets.arte-soft.com/en/learn/wen-yu-minimum-fluidization-velocity-and-archimedes-number/ - **Summary**: Calculate the dimensionless particle Archimedes number Ar = (d_p^3 * rho_f * (rho_p - rho_f) * g) / mu^2, Wen-Yu Reynolds number Re_mf = SQRT(33.7^2 + 0.0408 * Ar) - 33.7, and superficial minimum fluidization velocity u_mf. *Table — Find the exact upward gas speed where a packed catalyst bed lifts into a boiling fluid!:* | Silica Sand Particle Size in Air | Archimedes Number Ar | Wen-Yu Re_mf | Minimum Fluidization u_mf (m/s) | | --- | --- | --- | --- | | d_p = 0.50 mm (0.0005 m) | 11,798.9 | 6.513 | 0.195 m/s | | d_p = 1.00 mm (2x coarser) | 94,390.8 (8x Ar!) | 36.918 | 0.554 m/s | | Invalid Particle Density rho_p <= rho_f | Particles Float! | Guarded Input Error | "Invalid Bed/Fluid Properties" | - **Formula (Dimensionless Particle Archimedes Number Ar)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= B3, B5 <= 0), "Invalid Bed/Fluid Properties", ROUND(((B2 ^ 3) * B3 * (B4 - B3) * 9.80665) / (B5 ^ 2), 1))` - **Formula (Wen-Yu Superficial Minimum Fluidization Velocity u_mf (m/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= B3, B5 <= 0), "Invalid Bed/Fluid Properties", ROUND(((SQRT((33.7 ^ 2) + (0.0408 * (((B2 ^ 3) * B3 * (B4 - B3) * 9.80665) / (B5 ^ 2)))) - 33.7) * B5) / (B3 * B2), 3))` ### Wenner Four-Pin Soil Resistivity (IEEE 81) & Dwight Ground-Rod Resistance - **URL**: https://sheets.arte-soft.com/en/learn/wenner-four-pin-soil-resistivity-and-grounding-rod-resistance/ - **Summary**: Convert four-point Wenner earth-tester readings into exact buried-probe and shallow-limit soil resistivity (ohm-m), then size single vertical grounding rod resistance via Dwight’s formula. *Table — IEEE 81 Wenner 4-pin geometry and when probe depth b matters:* | Grounding Quantity | Formula | Survey Example (a=4 m, b=0.2 m, R=5 ohm) | | --- | --- | --- | | Shallow-Pin Resistivity | 2 * PI() * a * R | 125.66 ohm-m | | Exact IEEE-81 Resistivity | 4*PI()*a*R / (1 + 2a/SQRT(a^2+4b^2) - a/SQRT(a^2+b^2)) | 126.21 ohm-m (b=0.2 m) | | 3 m Ground-Rod Resistance | (rho / (2*PI()*L)) * (LN(4*L / r_rod) - 1) | 40.78 ohms (> 25 ohm NEC threshold -> ADD_PARALLEL_ROD) | - **Formula (Exact IEEE-81 Wenner Soil Resistivity Formula)**: `=LET(sp_a, B2, dep_b, B3, res_r, B4, denom, 1 + (2 * sp_a) / SQRT(sp_a ^ 2 + 4 * (dep_b ^ 2)) - sp_a / SQRT(sp_a ^ 2 + dep_b ^ 2), ROUND((4 * PI() * sp_a * res_r) / denom, 2))` - **Formula (Dwight Single Vertical Ground-Rod Resistance Formula)**: `=ROUND((E3 / (2 * PI() * B5)) * (LN((4 * B5) / B6) - 1), 2)` ### Wenzel vs Cassie-Baxter Rough-Surface & Superhydrophobic Contact Angle - **URL**: https://sheets.arte-soft.com/en/learn/wenzel-and-cassie-baxter-rough-surface-wetting-contact-angle/ - **Summary**: Calculate apparent droplet contact angle on textured surfaces in both the pinned Wenzel state cos(θ_W) = r * cos(θ_Y) and the lotus-leaf air-pocket Cassie-Baxter state cos(θ_CB) = f_s * (cos(θ_Y) + 1) - 1. *Table — How lotus-leaf micropillars turn a 108° fluoropolymer into a 153.7° superhydrophobic surface!:* | Surface Texture & Intrinsic θY Regime | Governing Wetting Law | Apparent Contact Angle | Droplet Adhesion Behavior | | --- | --- | --- | --- | | Hydrophobic Wenzel State (θY = 108°, r = 1.80) | cos(θW) = r · cos(θY) | 123.80° | Pinned in Grooves (High Hysteresis) | | Lotus Cassie-Baxter State (θY = 108°, fs = 0.15) | cos(θCB) = fs(cos θY + 1) - 1 | 153.68° (>150°!) | Self-Cleaning Roll-Off State | | Hydrophilic Wenzel State (θY = 65°, r = 1.80) | cos(θW) = r · cos(θY) | 40.47° (< 65°!) | Roughness Enhances Spreading! | - **Formula (Wenzel Homogeneous Roughness Contact Angle θ_W (degrees))**: `=IF(OR(B2 < 0, B2 > 180, B3 < 1), "Invalid Wetting Inputs", ROUND(DEGREES(ACOS(MAX(-1, MIN(1, B3 * COS(RADIANS(B2)))))), 2))` - **Formula (Cassie-Baxter Air-Pocket Composite Contact Angle θ_CB (degrees))**: `=IF(OR(B2 < 0, B2 > 180, B4 <= 0, B4 > 1), "Invalid Wetting Inputs", ROUND(DEGREES(ACOS(B4 * (COS(RADIANS(B2)) + 1) - 1)), 2))` ### Westergaard Rigid Concrete Slab Formula: Radius of Relative Stiffness l & Corner Stress - **URL**: https://sheets.arte-soft.com/en/learn/westergaard-rigid-concrete-slab-interior-edge-corner-stress-formula/ - **Summary**: Design concrete highway pavements and industrial warehouse slabs-on-grade using Harald M. Westergaard’s (1926) Radius of Relative Stiffness l = ((E * h^3) / (12 * (1 - mu^2) * k))^0.25 and Corner Wheel Tensile Stress sigma_c. *Table — Balance concrete flexural rigidity E * h^3 against Winkler subgrade spring k!:* | Westergaard Slab Quantity (E = 4,000,000 psi, h = 8 in, mu = 0.15, k = 150 psi/in) | Formula | Evaluated Result | | --- | --- | --- | | Radius of Relative Stiffness l (inches) | ((E * h^3) / (12 * (1 - mu^2) * k))^0.25 | 32.85 in | | Corner Tensile Stress sigma_c (P = 9,000 lb, a = 6 in) | (3*P/h^2) * (1 - (a*SQRT(2)/l)^0.6) | 234.6 psi | | Thicker 10-in Slab Corner Stress (l = 38.85 in) | h = 10 in (+25% thickness) | 161.6 psi (-31.1% stress!) | - **Formula (Westergaard Radius of Relative Stiffness l (in or mm))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 0.5, B5 <= 0), "Invalid Concrete E, Thickness h, Poisson mu, or Subgrade k", ROUND(((B2 * (B3 ^ 3)) / (12 * (1 - (B4 ^ 2)) * B5)) ^ 0.25, 2))` - **Formula (Westergaard Slab Corner Tensile Bending Stress sigma_c (psi))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 < 0, B4 >= 0.5, B5 <= 0, B6 <= 0, B7 <= 0), "Invalid Westergaard Slab or Wheel Inputs", ROUND((3 * B6 / (B3 ^ 2)) * (1 - (((B7 * SQRT(2)) / (((B2 * (B3 ^ 3)) / (12 * (1 - (B4 ^ 2)) * B5)) ^ 0.25)) ^ 0.6)), 1))` ### Westgard Six-Sigma Laboratory Quality Metric: (TE_a% - |Bias%|) / CV% & QC Rules - **URL**: https://sheets.arte-soft.com/en/learn/westgard-sigma-metric-total-allowable-error-bias-and-cv-formula/ - **Summary**: Evaluate clinical analyzer analytical performance and select optimal Westgard Statistical Quality Control (SQC) rules using James O. Westgard’s Sigma-Metric equation Sigma = (TE_a% - ABS(Bias%)) / CV%. *Table — Combine CLIA Total Allowable Error (TE_a), Method Bias, and Imprecision (CV) into one Six-Sigma score!:* | Assay Analytical Sigma Band | Defect Rate & Performance Tier | Recommended Westgard QC Rule Strategy | | --- | --- | --- | | Sigma >= 6.0 | World-Class Six-Sigma | Single 1_3s rule (N = 2 QC measurements, minimal false alarms) | | 5.0 <= Sigma < 6.0 | Excellent Analytical Margin | 1_3s / 2_2s / R_4s (N = 2) | | 4.0 <= Sigma < 5.0 | Moderate Clinical Margin | 1_3s / 2_2s / R_4s / 4_1s (N = 4) | | Sigma < 3.0 | Unacceptable Defect Rate | Max multi-rule QC + root-cause recalibration / reagent audit | - **Formula (Westgard Analytical Sigma-Metric (TE_a% - ABS(Bias%)) / CV%)**: `=IF(OR(B2 <= 0, B4 <= 0), "Requires TE_a% > 0 and Analytical CV% > 0", ROUND((B2 - ABS(B3)) / B4, 2))` - **Formula (Westgard SQC Rule Tier Selection from Assay Sigma Score)**: `=IF(OR(B2 <= 0, B4 <= 0), "Requires TE_a% > 0 and Analytical CV% > 0", IF((B2 - ABS(B3)) / B4 >= 6, "Sigma >= 6.0: World-Class (Single 1_3s Rule, N=2)", IF((B2 - ABS(B3)) / B4 >= 5, "5.0–5.99 Sigma: Excellent (1_3s / 2_2s / R_4s, N=2)", IF((B2 - ABS(B3)) / B4 >= 4, "4.0–4.99 Sigma: Moderate (1_3s / 2_2s / R_4s / 4_1s, N=4)", IF((B2 - ABS(B3)) / B4 >= 3, "3.0–3.99 Sigma: Marginal (Full Multi-Rule + Frequent QC)", "Sigma < 3.0: Unacceptable — Recalibrate / Investigate Method")))))` ### Westley Croup Score (0–17 Points): Pediatric Stridor & Epinephrine Triage Formula - **URL**: https://sheets.arte-soft.com/en/learn/westley-croup-severity-score-pediatric-stridor-triage/ - **Summary**: Calculate Charles Westley's 5-item pediatric croup severity score (0 to 17 points across Level of Consciousness, Cyanosis, Inspiratory Stridor, Air Entry, and Retractions) to guide dexamethasone vs. nebulized racemic epinephrine. *Table — Distinguish mild barky croup from impending pediatric upper-airway failure!:* | Total Westley Croup Score (0–17) | Croup Severity Tier | Standard Pediatric ED Pathway | | --- | --- | --- | | 0 – 2 points | Mild Croup | Oral/IM Dexamethasone; outpatient discharge | | 3 – 7 points | Moderate Croup | Dexamethasone + Nebulized Epinephrine if stridor at rest | | 8 – 11 points | Severe Croup | Immediate Nebulized Epinephrine + Dexamethasone + Admit | | 12 – 17 points | Impending Respiratory Failure | Repeat Epinephrine + Heliox/PICU Airway Team! | - **Formula (Total Westley Croup Score (0 to 17 Points))**: `=IF(OR(MIN(B2:B6) < 0, B2 > 5, B3 > 5, B4 > 2, B5 > 2, B6 > 3), "Invalid Westley Subscore", SUM(B2:B6))` - **Formula (Pediatric ED Croup Triage & Nebulized Epinephrine Disposition)**: `=IF(OR(MIN(B2:B6) < 0, B2 > 5, B3 > 5, B4 > 2, B5 > 2, B6 > 3), "Invalid Westley Subscore", IF(SUM(B2:B6) <= 2, "Mild Croup (0-2: Dexamethasone Only)", IF(SUM(B2:B6) <= 7, "Moderate Croup (3-7: Dexamethasone +/- Neb Epinephrine)", IF(SUM(B2:B6) <= 11, "Severe Croup (8-11: Immediate Neb Epinephrine + Admit)", "Impending Respiratory Failure (>=12: PICU Airway Alert!)"))))` ### WFNS Subarachnoid Hemorrhage (SAH) Grading Scale (Grades I–V) - **URL**: https://sheets.arte-soft.com/en/learn/wfns-world-federation-neurosurgical-societies-sah-grading-scale/ - **Summary**: Classify aneurysmal subarachnoid hemorrhage into objective World Federation of Neurosurgical Societies Grades I–V strictly from Glasgow Coma Scale (3–15) and major focal motor deficit (aphasia or hemiparesis/hemiplegia: 0/1). *Table — Why neurosurgeons prefer objective GCS-based WFNS over subjective Hunt & Hess adjectives!:* | WFNS SAH Grade | GCS Range & Major Motor Deficit | Good vs Poor Grade Prognosis | | --- | --- | --- | | Grade I / Grade II | GCS 15, Deficit = 0 (I) \| GCS 13–14, Deficit = 0 (II) | Good-Grade aSAH (~5%–10% Mortality) | | Grade III | GCS 13–14 (or 15) WITH Focal Motor Deficit = 1 | Intermediate Good-Grade (~15–20% Mortality) | | Grade IV / Grade V | GCS 7–12 Any Deficit (IV) \| GCS 3–6 Any Deficit (V) | Poor-Grade aSAH (~40%–75% Mortality) | - **Formula (Numeric WFNS Subarachnoid Hemorrhage Grade (1 to 5))**: `=IF(OR(B2 < 3, B2 > 15, INT(B2) <> B2, NOT(OR(B3 = 0, B3 = 1))), "Invalid GCS or Deficit Input", IF(B2 <= 6, 5, IF(B2 <= 12, 4, IF(B3 = 1, 3, IF(B2 <= 14, 2, 1)))))` - **Formula (WFNS Roman Grade & Good-Grade vs Poor-Grade Neurosurgical Triage)**: `=IF(OR(B2 < 3, B2 > 15, INT(B2) <> B2, NOT(OR(B3 = 0, B3 = 1))), "Invalid GCS or Deficit Input", CHOOSE(IF(B2 <= 6, 5, IF(B2 <= 12, 4, IF(B3 = 1, 3, IF(B2 <= 14, 2, 1)))), "WFNS Grade I (Good-Grade SAH)", "WFNS Grade II (Good-Grade SAH)", "WFNS Grade III (Focal Deficit SAH)", "WFNS Grade IV (Poor-Grade SAH)", "WFNS Grade V (Poor-Grade SAH)"))` ### Whalen Precautionary Cash Cube-Root Reserve Formula - **URL**: https://sheets.arte-soft.com/en/learn/whalen-precautionary-cash-reserve-cube-root-illiquidity-penalty-formula/ - **Summary**: Calculate Whalen’s Optimal Precautionary Cash Buffer M* = ((2 * sigma^2 * c_ill) / r)^(1/3), Foregone Interest Holding Cost, Chebyshev Expected Shortage Penalty Bound, and Total Precautionary Cost. *Table — Size precautionary liquidity buffers with Whalen’s cube-root Chebyshev trade-off!:* | Whalen Precautionary Liquidity Metric (sigma=$10,000, c_ill=$10,800, r=8.0%) | Formula | Verified Output | | --- | --- | --- | | Optimal Precautionary Reserve M* | ((2 * sigma^2 * c_ill) / r) ^ (1/3) | $30,000.00 ($120k @ 8x sigma) | | Annual Opportunity Holding Cost | r * M* | $2,400.00 (Exactly 2x Shortage Bound) | | Chebyshev Shortage Cost Bound | c_ill * (sigma^2 / M*^2) | $1,200.00 (P <= 1/9 = 11.11%) | | Total Precautionary Cost Bound | r * M* + c_ill * (sigma^2 / M*^2) | $3,600.00 | - **Formula (Whalen Cube-Root Precautionary Cash Formula)**: `=LET(sg_m, B2, cl_p, B3, rt_y, B4, IF(OR(sg_m <= 0, cl_p <= 0, rt_y <= 0), "Invalid Treasury Parameter", ROUND(((2 * (sg_m ^ 2) * cl_p) / rt_y) ^ (1 / 3), 2)))` - **Formula (Sub-Proportional Volatility Scaling Check (sigma^(2/3)))**: `=IF(ISTEXT(E2), E2, ROUND(E3 + E4, 2))` ### Wheatstone Bridge Differential Voltage & Strain-Gauge Null Balance formulas - **URL**: https://sheets.arte-soft.com/en/learn/wheatstone-bridge-output-voltage-and-strain-gauge-balance/ - **Summary**: Calculate sensor bridge output Vout = Vex * (R3/(R1+R3) - R4/(R2+R4)) in millivolts and solve unknown resistance Rx = R3 * (R2 / R1) at null balance. *Table — Two unloaded voltage dividers and a defined output polarity:* | Bridge Leg / Metric | Cell | 120-Ohm Quarter-Bridge | Electrical Output | | --- | --- | --- | --- | | Excitation Voltage Vex | B2 = 10 V | Precision DC reference | 5.0000 V midpoint at rest | | Reference Legs R1, R2, R3 | B3:B5 = 120 Ohms | Left divider = 120 / 240 = 0.5000 | Fixed reference arms | | Active Strain Gauge R4 | B6 = 121.2 Ohms (+1%) | Right divider = 121.2 / 241.2 | Vout = -24.88 mV | | Null Balance Solve Rx | R3 * (R2 / R1) | Ideal ratio independent of nonzero Vex | Calculated balance resistance | - **Formula (Wheatstone Bridge differential output in millivolts (mV))**: `=IF(OR(COUNT(B2:B6)<>5,MIN(B3:B6)<=0),"Invalid inputs",ROUND(1000 * B2 * ((B5 / (B3 + B5)) - (B6 / (B4 + B6))), 2))` - **Formula (Null-balance unknown resistance Rx = R3 * (R2 / R1) (Ohms))**: `=IF(OR(COUNT(B2:B5)<>4,B2=0,MIN(B3:B5)<=0),"Invalid inputs",ROUND(B5 * (B4 / B3), 2))` ### Wheeler Catalyst Poisoning Formula: Uniform vs Selective Pore-Mouth Activity Ratio F - **URL**: https://sheets.arte-soft.com/en/learn/wheeler-polluted-pore-mouth-and-uniform-catalyst-poisoning-factor/ - **Summary**: Predict heterogeneous catalyst deactivation severity when fraction alpha_p of active sites is poisoned using Ahlborn Wheeler’s (1951) Uniform Poisoning Ratio F_unif and Selective Pore-Mouth ("Shell") Poisoning Ratio F_mouth across Thiele modulus h_0. *Table — Why 20% sulfur poisoning at the pore mouth can destroy > 80% of a diffusion-limited catalyst’s rate!:* | Catalyst Regime (Poisoned Fraction alpha_p = 0.20 = 20% of Sites) | Uniform Poisoning Ratio F_unif | Pore-Mouth Poisoning Ratio F_mouth | Physical Deactivation Contrast | | --- | --- | --- | --- | | Kinetic Regime (h_0 = 0.20, No Diffusion Limit) | 0.802 (Linear ~1 - alpha_p) | 0.798 (Linear ~1 - alpha_p) | Nearly identical ~80% remaining activity | | Moderate Pore Diffusion (h_0 = 3.00) | 0.888 | 0.622 | Pore-mouth dead shell adds series resistance | | Strong Pore Diffusion (h_0 = 15.00) | 0.894 (~SQRT(0.80)) | 0.250 (~1 / (1 + alpha_p * h_0)) | 20% shell poison kills 75% of reactor rate! | - **Formula (Wheeler Non-Selective Uniform Catalyst Poisoning Activity Ratio F_uniform)**: `=IF(OR(B2 < 0, B2 >= 1, B3 <= 0), "Requires 0 <= Poisoned Fraction alpha_p < 1 and Thiele h_0 > 0", ROUND(SQRT(1 - B2) * ((1 - EXP(-2 * B3 * SQRT(1 - B2))) / (1 + EXP(-2 * B3 * SQRT(1 - B2)))) / ((1 - EXP(-2 * B3)) / (1 + EXP(-2 * B3))), 4))` - **Formula (Wheeler Selective Pore-Mouth ("Shell") Poisoning Activity Ratio F_mouth)**: `=IF(OR(B2 < 0, B2 >= 1, B3 <= 0), "Requires 0 <= Poisoned Fraction alpha_p < 1 and Thiele h_0 > 0", ROUND((((1 - EXP(-2 * B3 * (1 - B2))) / (1 + EXP(-2 * B3 * (1 - B2)))) / ((1 - EXP(-2 * B3)) / (1 + EXP(-2 * B3)))) / (1 + B2 * B3 * ((1 - EXP(-2 * B3 * (1 - B2))) / (1 + EXP(-2 * B3 * (1 - B2))))), 4))` ### Whitaker Sphere Convection Correlation: External Flow Nusselt & Viscosity Correction - **URL**: https://sheets.arte-soft.com/en/learn/whitaker-forced-convection-sphere-nusselt-viscosity-ratio/ - **Summary**: Calculate forced-convection heat transfer over spheres Nu_D = 2 + (0.4*Re^(1/2) + 0.06*Re^(2/3))*Pr^0.4*(μ_∞/μ_s)^(1/4) for spray drying, pellet cooling, and pebble beds. *Table — Separating attached laminar boundary-layer heat transfer (Re^1/2) from turbulent wake shedding (Re^2/3)!:* | Sphere Reynolds Number Re_D (Pr = 6.2, μ_∞/μ_s = 1.818) | Wall Viscosity Factor (μ_∞/μ_s)^0.25 | Whitaker Sphere Nu_D | Dominant Regime | | --- | --- | --- | --- | | Re_D = 4,500 (Quench Bath Sphere) | 1.1612 | 106.04 | Balanced boundary layer + wake | | Re_D = 12,000 (High-Velocity Cooling) | 1.1612 | 183.33 | Separated wake vortex boost | | Invalid Re_D < 0 or Viscosity <= 0 | Error Guard | "Invalid Sphere Flow Inputs" | Physical Bounds Guard | - **Formula (Whitaker External Forced-Convection Sphere Nusselt Number Nu_D)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Sphere Flow Inputs", ROUND(2 + (0.4 * SQRT(B2) + 0.06 * (B2 ^ (2 / 3))) * (B3 ^ 0.4) * ((B4 / B5) ^ 0.25), 2))` - **Formula (Thermal Boundary-Layer Viscosity Correction Factor (μ_∞ / μ_s)^0.25)**: `=IF(OR(B2 < 0, B3 <= 0, B4 <= 0, B5 <= 0), "Invalid Sphere Flow Inputs", ROUND((B4 / B5) ^ 0.25, 4))` ### Audit Cell Suggestions with Whole-Cell Comment Anchors Before Resolving - **URL**: https://sheets.arte-soft.com/en/learn/whole-cell-comment-anchors-and-suggester-peer-review-audit-workflow/ - **Summary**: Review proposed margin formulas in shared cloud workbooks using whole-cell comment anchors, suggester role guardrails, and changed-input stress checks. *Table — Test changed inputs on a suggested formula before resolving its cell comment:* | Review Step | Spreadsheet / Role Check | Sample Result | | --- | --- | --- | | Draft Gross Margin (Omits Freight) | (B2 - B3) / B2 | 0.4400 (Overstates landed margin) | | Suggested Landed Margin (Anchored B5) | IF(B2 <= 0, "Zero Revenue", (B2 - B3 - B4) / B2) | 0.3800 (-0.0600 correction) | | Changed-Input Stress Test | Raise Freight B4 from 1,500 to 3,500 | Drops cleanly from 0.3800 to 0.3000 | | Thread Resolution Gate | Accept suggestion & resolve comment only after check | Prevents premature resolve | - **Formula (Guarded Landed Contribution Margin % Formula)**: `=IF(B2 <= 0, "Zero Revenue", ROUND((B2 - B3 - B4) / B2, 4))` - **Formula (Margin Overstatement Variance & Comment Sign-Off Gate Formula)**: `=IF(NOT(ISNUMBER(E3)), "Fix Zero-Revenue Guard First", IF(B6 = "Verified", "Ready to Accept & Resolve Anchor", "Test Changed Input Before Resolving"))` ### Wiedemann-Franz Law & Sommerfeld Lorenz Number (Metal Thermal Conductivity) - **URL**: https://sheets.arte-soft.com/en/learn/wiedemann-franz-law-electronic-thermal-conductivity-lorenz/ - **Summary**: Calculate the electronic thermal conductivity kappa_e = L0 * sigma * T in W/(m*K) from electrical conductivity sigma using the Sommerfeld Lorenz number L0 = 2.44e-8 W*Ohm/K^2, and extract the empirical Lorenz ratio L = kappa / (sigma * T). *Table — Why great electrical conductors like silver and copper are also great heat conductors!:* | Metal / Cryogenic Regime | Conductivity sigma (S/m) & Temp T | Predicted kappa_e (W/m*K) | Empirical Lorenz Check | | --- | --- | --- | --- | | Copper Busbar at Room Temp | 5.96e7 S/m, T = 300 K | 436.27 W/(m*K) | Measured 401 -> L = 2.243e-8 | | Same Conductivity at LN2 (77 K) | 5.96e7 S/m, T = 77 K | 111.98 W/(m*K) | Linear T factor at fixed sigma | | Invalid Absolute Temp T <= 0 | Non-Positive Kelvin Guard | Guarded Input Error | "Invalid Metal Inputs" | - **Formula (Sommerfeld Electronic Thermal Conductivity kappa_e = L0 * sigma * T (W/(m*K)))**: `=IF(OR(B2 <= 0, B3 <= 0), "Invalid Metal Inputs", ROUND(0.0000000244 * B2 * B3, 2))` - **Formula (Empirical Lorenz Ratio L_obs / L0 Relative to Sommerfeld Value)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0), "Invalid Metal Inputs", ROUND(B4 / (0.0000000244 * B2 * B3), 4))` ### Wien's Displacement Law: Peak Blackbody Wavelength & Temperature - **URL**: https://sheets.arte-soft.com/en/learn/wien-displacement-law-peak-blackbody-wavelength-and-color-temp/ - **Summary**: Calculate the wavelength-domain blackbody peak in nanometres or micrometres, invert a measured peak to an ideal blackbody temperature, and compare it with an explicitly chosen visible interval. - **Formula (Temperature to peak wavelength)**: `=IF(NOT(ISNUMBER(B2)),"Enter numeric temperature",IF(B2<=0,"Requires Kelvin T > 0",2897771.955/B2))` - **Formula (Compare the peak with a stated visible interval)**: `=IF(NOT(ISNUMBER(C2)),C2,IF(C2<380,"Shorter than visible (<380 nm)",IF(C2<=750,"Visible interval (380-750 nm)","Longer than visible (>750 nm)")))` - **Formula (Invert a wavelength-domain peak to temperature)**: `=IF(NOT(ISNUMBER(E2)),"Enter numeric peak wavelength",IF(E2<=0,"Requires wavelength > 0 nm",2897771.955/E2))` ### Wilcoxon Signed-Rank Paired Nonparametric Test (W, Mean & Z-Score) - **URL**: https://sheets.arte-soft.com/en/learn/wilcoxon-signed-rank-paired-nonparametric-test-formula/ - **Summary**: Calculate the paired Wilcoxon Signed-Rank statistic W = MIN(W_plus, W_minus), null expectation mu_W = n*(n+1)/4, standard deviation sigma_W = SQRT(n*(n+1)*(2*n+1)/24), and normal-approximation Z-score. *Table — Test paired before-vs-after medians without assuming normal differences!:* | Wilcoxon Metric (n = 10 Non-Zero Pairs) | Formula | Treatment Shift (W+ = 49, W- = 6) | Null-Like Split (W+ = 30, W- = 25) | | --- | --- | --- | --- | | Checksum W+ + W- | n * (n + 1) / 2 | 49 + 6 = 55 (Valid!) | 30 + 25 = 55 (Valid!) | | Test Statistic W & Null Mean mu_W | MIN(W+, W-) vs n*(n+1)/4 | W = 6 vs mu_W = 27.50 | W = 25 vs mu_W = 27.50 | | Std Dev sigma_W & \|Z\| Statistic | ABS(W - mu_W) / sigma_W | sigma = 9.8107 -> \|Z\| = 2.191 (> 1.96!) | \|Z\| = 0.255 (Not Significant) | - **Formula (Wilcoxon Signed-Rank Z-Statistic (with Rank-Sum Checksum Guard))**: `=IF(B2 < 5, "Use Exact Table for n < 5", IF(ROUND(B3 + B4, 2) <> (B2 * (B2 + 1)) / 2, "Rank Sum Checksum Mismatch", ROUND(ABS(MIN(B3, B4) - ((B2 * (B2 + 1)) / 4)) / SQRT((B2 * (B2 + 1) * (2 * B2 + 1)) / 24), 3)))` - **Formula (Two-Sided alpha = 0.05 Nonparametric Decision (|Z| >= 1.96))**: `=IF((ABS(MIN(B3, B4) - ((B2 * (B2 + 1)) / 4)) / SQRT((B2 * (B2 + 1) * (2 * B2 + 1)) / 24)) >= 1.96, "Significant Paired Shift (p < 0.05)", "No Significant Shift")` ### Wilke-Chang Liquid Diffusivity Correlation (Dissolved Gas & Solute D_AB) - **URL**: https://sheets.arte-soft.com/en/learn/wilke-chang-liquid-phase-molecular-diffusivity-correlation/ - **Summary**: Estimate dilute liquid-phase molecular diffusivity D_AB (in 10^-5 cm^2/s) using Charles Wilke and Pin Chang’s 1955 Stokes-Einstein association correlation. *Table — Why dissolved oxygen diffuses 10,000× slower in water than in air—and how bioreactors size for it!:* | Dissolved O2 in Water (φ=2.6, MB=18.015, VA=25.6) | Solvent Viscosity μB (cP) | D_AB (× 10^-5 cm^2/s) | Schmidt Number Sc = ν / D_AB | | --- | --- | --- | --- | | 25 °C Benchtop (298.15 K) | 0.890 cP | 2.425 × 10^-5 cm^2/s | ~368 (Thin Mass-Transfer Film) | | 37 °C Mammalian Bioreactor (310.15 K) | 0.692 cP | 3.244 × 10^-5 cm^2/s (+33.8%) | ~215 (Faster k_L*a Oxygenation) | | Non-Positive μB or VA <= 0 | Invalid | "Invalid Wilke-Chang Inputs" | Physical Guard | - **Formula (Wilke-Chang Liquid Diffusivity D_AB (in units of 10^-5 cm^2/s))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Wilke-Chang Inputs", ROUND(0.0074 * SQRT(B2 * B3) * B4 / (B5 * (B6 ^ 0.6)), 3))` - **Formula (SI Diffusivity D_AB in 10^-9 m^2/s)**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Wilke-Chang Inputs", ROUND(0.000000074 * SQRT(B2 * B3) * B4 / (B5 * (B6 ^ 0.6)), 8))` ### Wilke Gas Mixture Viscosity Formula: Kinetic-Theory Binary φ_ij Parameter - **URL**: https://sheets.arte-soft.com/en/learn/wilke-multicomponent-gas-mixture-viscosity-phi-factor-formula/ - **Summary**: Calculate Charles R. Wilke’s (1950) kinetic-theory gas interaction factors φ_12 = [1 + (μ_1/μ_2)^0.5*(M_2/M_1)^0.25]^2 / SQRT(8*(1 + M_1/M_2)) and mixture viscosity μ_m. *Table — Why a 50/50 Hydrogen–Nitrogen mixture has nearly the viscosity of pure Nitrogen (17.0 vs 17.8 μPa·s)!:* | H2 (1) / N2 (2) Gas Composition | Wilke φ_12 & φ_21 Factors | Wilke Mixture Viscosity μ_m | vs Naive Linear Average | | --- | --- | --- | --- | | 50% H2 + 50% N2 (Forming/Cracking Gas) | φ_12 = 1.9103 / φ_21 = 0.2750 | 17.019 μPa·s | +27.5% above linear 13.35! | | 80% H2 + 20% N2 (Hydrotreater Recycle) | φ_12 = 1.9103 / φ_21 = 0.2750 | 14.500 μPa·s | +35.8% above linear 10.68! | | Invalid y_1 + y_2 <> 1 or M, μ <= 0 | Error Guard | "Invalid Wilke Gas Inputs" | Mass-Balance Guard | - **Formula (Wilke Binary Gas Mixture Viscosity μ_m (μPa·s))**: `=IF(OR(B2 < 0, B3 < 0, ABS(B2 + B3 - 1) > 0.0001, MIN(B4:B7) <= 0), "Invalid Wilke Gas Inputs", ROUND((B2 * B4) / (B2 + B3 * B8) + (B3 * B5) / (B3 + B2 * B9), 3))` - **Formula (Wilke Asymmetric Collision Interaction Factor φ_12)**: `=IF(MIN(B4:B7) <= 0, "Invalid Wilke Gas Inputs", ROUND(B8, 4))` ### Williams-Landel-Ferry (WLF) Equation: Viscoelastic Shift Factor log10(aT) - **URL**: https://sheets.arte-soft.com/en/learn/williams-landel-ferry-wlf-viscoelastic-shift-factor-log-at/ - **Summary**: Calculate the time-temperature superposition shift factor log10(aT) = (-C1 * (T - Tr)) / (C2 + (T - Tr)) and viscosity ratio aT = 10^log10(aT) above Tg for amorphous polymers and asphalt binders. *Table — Predict 6+ decades of polymer melt viscosity drop within Tg to Tg + 100 °C!:* | Test Temperature T (Ref Tr = Tg = 100 °C) | Delta_T = T - Tr | WLF Shift log10(aT) | Linear Shift Ratio aT = 10^log10(aT) | | --- | --- | --- | --- | | T = 110 °C (Tg + 10 °C) | +10 °C | -2.8312 | 0.001475 (~678x faster relaxation) | | T = 130 °C (Tg + 30 °C) | +30 °C | -6.4118 | 3.9e-7 (~2.58 million x faster!) | | Below Kauzmann Pole (T - Tr <= -C2) | Delta_T <= -51.6 °C | Guarded Singularity | "Outside WLF Validity (T - Tr <= -C2)" | - **Formula (WLF Logarithmic Time-Temperature Shift Factor log10(aT))**: `=IF(OR(B2 <= 0, B3 <= 0, (B3 + (B5 - B4)) <= 0), "Outside WLF Validity (T - Tr <= -C2)", ROUND((-B2 * (B5 - B4)) / (B3 + (B5 - B4)), 4))` - **Formula (Linear Viscosity / Relaxation Shift Multiplier aT = 10 ^ log10(aT))**: `=IF(OR(B2 <= 0, B3 <= 0, (B3 + (B5 - B4)) <= 0), "Outside WLF Validity (T - Tr <= -C2)", ROUND(10 ^ ((-B2 * (B5 - B4)) / (B3 + (B5 - B4))), 8))` ### Roofline Model Compute vs Memory-Bound Formula - **URL**: https://sheets.arte-soft.com/en/learn/williams-waterman-patterson-roofline-compute-vs-memory-bound-formula/ - **Summary**: Diagnose LLM inference vs training bottlenecks via Samuel Williams, Andrew Waterman, and David Patterson’s (2009) Roofline ceiling MIN(Peak_TFLOPS, Operational_Intensity * HBM_Bandwidth) and Ridge Point. *Table — Explain why batch-1 LLM token decoding uses <2% of GPU compute FLOPS!:* | Roofline Metric (P_peak = 990 TFLOP/s, BW = 3.30 TB/s) | Formula | Verified Output | | --- | --- | --- | | Hardware Ridge Point (OI_ridge) | P_peak / BW_mem = 990 / 3.30 | 300.00 FLOP / Byte | | Kernel Operational Intensity (OI) | GFLOPs / GBytes = 66 / 11 | 6.00 FLOP / Byte | | Attainable Roofline Ceiling | MIN(P_peak, OI * BW_mem) | 19.80 TFLOP/s (2.00% Peak!) | | Bottleneck Regime Classification | IF(OI < OI_ridge, "Memory-Bound", ...) | Memory-Bandwidth Bound | - **Formula (Hardware Ridge Point & Attainable Roofline Ceiling Formula)**: `=LET(p_pk, B2, bw_m, B3, fl_g, B4, by_g, B5, IF(OR(p_pk <= 0, bw_m <= 0, fl_g <= 0, by_g <= 0), "Invalid Roofline Input", LET(oi_k, fl_g / by_g, ROUND(MIN(p_pk, oi_k * bw_m), 2))))` - **Formula (Roofline Bottleneck Regime Classifier Formula)**: `=LET(p_pk, B2, bw_m, B3, fl_g, B4, by_g, B5, IF(OR(p_pk <= 0, bw_m <= 0, fl_g <= 0, by_g <= 0), "Invalid Roofline Input", IF((fl_g / by_g) < (p_pk / bw_m), "Memory-Bandwidth Bound", "Compute Bound")))` ### Wilson Local-Composition Binary VLE Activity Coefficients (gamma1 & gamma2) - **URL**: https://sheets.arte-soft.com/en/learn/wilson-equation-binary-vle-activity-coefficients-formula/ - **Summary**: Calculate George M. Wilson’s local-composition activity coefficients gamma_1 and gamma_2 for strongly non-ideal polar/alcohol-hydrocarbon distillation systems using binary interaction parameters Lambda_12 and Lambda_21. *Table — Model extreme polar-nonpolar VLE skew accurately with local molecular compositions!:* | Liquid Mole Fraction x1 (Lambda12 = 0.32, Lambda21 = 0.78) | Wilson Activity gamma1 | Wilson Activity gamma2 | Distillation VLE Regime | | --- | --- | --- | --- | | Infinite Dilution of 1 (x1 = 0.00) | 3.8940 | 1.0000 | Steep Dilute Stripping Volatility | | Feed Tray Composition (x1 = 0.35) | 1.5021 | 1.1915 | Homogeneous Non-Ideal Binary | | Invalid Parameters (Lambda <= 0 or x1 outside 0-1) | Thermodynamic Guard | "Invalid Wilson Inputs" | Requires 0 <= x1 <= 1, Lambda > 0 | - **Formula (Wilson Local-Composition Activity Coefficient gamma_1)**: `=IF(OR(B2 < 0, B2 > 1, B3 <= 0, B4 <= 0), "Invalid Wilson Inputs", ROUND(EXP(-LN(B2 + B3 * (1 - B2)) + (1 - B2) * ((B3 / (B2 + B3 * (1 - B2))) - (B4 / (B4 * B2 + (1 - B2))))), 4))` - **Formula (Wilson Local-Composition Activity Coefficient gamma_2)**: `=IF(OR(B2 < 0, B2 > 1, B3 <= 0, B4 <= 0), "Invalid Wilson Inputs", ROUND(EXP(-LN((1 - B2) + B4 * B2) - B2 * ((B3 / (B2 + B3 * (1 - B2))) - (B4 / (B4 * B2 + (1 - B2))))), 4))` ### Wilson Score Confidence Interval Formula: Small-Sample & Zero-Defect Proportion Bounds - **URL**: https://sheets.arte-soft.com/en/learn/wilson-score-binomial-confidence-interval-small-sample-formula/ - **Summary**: Compute accurate asymmetric binomial confidence intervals for conversion rates or defect rates using Edwin Wilson’s Score Interval — eliminating negative lower bounds and the 0/n zero-width Wald collapse. *Table — Why textbook p +- 1.96*SQRT(p*(1-p)/n) fails catastrophically at 0 defects or small n!:* | Sample Outcome (95% CI, z = 1.96) | Broken Wald Interval | Exact Wilson Score Interval | | --- | --- | --- | | 0 defects in n = 20 (p = 0.0%) | [0.00%, 0.00%] (Dangerous illusion!) | [0.00%, 16.11%] | | 4 conversions in n = 20 (p = 20.0%) | [2.47%, 37.53%] (Symmetric distortion) | [8.07%, 41.60%] (Asymmetric toward 50%) | - **Formula (Wilson Score Upper Confidence Bound (%))**: `=IF(OR(B3 <= 0, B2 < 0, B2 > B3, B4 <= 0), "Invalid Binomial Sample Inputs", ROUND(100 * (((B2 / B3) + (B4 ^ 2) / (2 * B3)) + B4 * SQRT(((B2 / B3) * (1 - B2 / B3) / B3) + (B4 ^ 2) / (4 * (B3 ^ 2)))) / (1 + (B4 ^ 2) / B3), 2))` - **Formula (Wilson Score Lower Confidence Bound (%))**: `=IF(OR(B3 <= 0, B2 < 0, B2 > B3, B4 <= 0), 0, ROUND(MAX(0, 100 * (((B2 / B3) + (B4 ^ 2) / (2 * B3)) - B4 * SQRT(((B2 / B3) * (1 - B2 / B3) / B3) + (B4 ^ 2) / (4 * (B3 ^ 2)))) / (1 + (B4 ^ 2) / B3)), 2))` ### Calculate win, loss, and tie totals (plus win % and league points) - **URL**: https://sheets.arte-soft.com/en/learn/win-loss-tie-record-and-points-table/ - **Summary**: Summarize raw match scores into Wins, Losses, Ties, Win Percentage, and 3-1-0 league points while ignoring unplayed fixtures. *Table — Guard unplayed fixtures when comparing score columns:* | Fixture (A) | TeamPts (B) | OppPts (C) | Result | | --- | --- | --- | --- | | Match 1 | 3 | 1 | Win (3 pts) | | Match 2 | 2 | 2 | Tie (1 pt) | | Match 3 | 0 | 1 | Loss (0 pts) | | Match 4 | 4 | 2 | Win (3 pts) | | Match 5 | (blank) | (blank) | Unplayed (ignored) | - **Formula (Wins, Ties, League Points, and Win % formulas)**: `=SUMPRODUCT(ISNUMBER(B2:B6) * ISNUMBER(C2:C6) * (B2:B6 > C2:C6))` - **Formula (3-point-win league table total)**: `=SUMPRODUCT(ISNUMBER(B2:B6) * ISNUMBER(C2:C6) * ((B2:B6 > C2:C6) * 3 + (B2:B6 = C2:C6) * 1))` ### Wind chill and NWS heat-index calculations with input checks - **URL**: https://sheets.arte-soft.com/en/learn/wind-chill-index-and-noaa-heat-index-weather-formulas/ - **Summary**: Practice metric wind chill and the NWS heat-index sequence, including preliminary screening and humidity adjustments. - **Formula (Guarded Metric Wind Chill Index (°C) for T <= 10°C and Wind > 4.8 km/h)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(B3<0,"Invalid inputs",IF(OR(B2>10,B3<=4.8),"Outside wind-chill domain",ROUND(13.12+0.6215*B2-11.37*B3^0.16+0.3965*B2*B3^0.16,2))))` - **Formula (NWS preliminary estimate, regression and humidity corrections)**: `=IF(COUNT(B4:B5)<>2,"Invalid inputs",IF(OR(B5<0,B5>100),"Invalid inputs",LET(temp,B4,humidity,B5,prelim,(0.5*(temp+61+(temp-68)*1.2+humidity*0.094)+temp)/2,ROUND(IF(prelim<80,prelim,-42.379+2.04901523*temp+10.14333127*humidity-0.22475541*temp*humidity-0.00683783*temp^2-0.05481717*humidity^2+0.00122874*temp^2*humidity+0.00085282*temp*humidity^2-0.00000199*temp^2*humidity^2-IF(AND(humidity<13,temp>=80,temp<=112),((13-humidity)/4)*SQRT(MAX(0,(17-ABS(temp-95))/17)),0)+IF(AND(humidity>85,temp>=80,temp<=87),((humidity-85)/10)*((87-temp)/5),0)),1))))` ### Wind Turbine Power & Betz Limit (16/27 = 59.26%) formula: 0.5 * rho * A * v^3 * Cp - **URL**: https://sheets.arte-soft.com/en/learn/wind-turbine-power-and-betz-limit-59-3-efficiency/ - **Summary**: Calculate swept rotor wind power, Albert Betz's theoretical 16/27 (59.26%) maximum extraction limit, and real-world Cp shaft output in kW. *Table — Use an ideal rotor power model:* | Wind Rotor Parameter | Cell / Formula | 80m-Diameter Rotor (R = 40 m) | Power Output (kW) | | --- | --- | --- | --- | | Air Density & Radius | B2 = 1.225 kg/m^3, B3 = 40 m | Swept area PI()*40^2 = 5,026.5 m^2 | Wind B4 v = 10 m/s | | Betz Limit Factor | ROUND(16 / 27, 4) | Theoretical aerodynamic ceiling | 0.5926 (59.26%) | | Betz Max Power (10 m/s) | 0.5*rho*A*v^3*(16/27) / 1000 | 3,078.76 kW raw * 16/27 | 1,824.45 kW | | Modeled rotor (Cp = 0.45) | B5 = 0.45 (or v = 5 m/s Betz) | At 10 m/s: 1,385.44 kW | At 5 m/s Betz: 228.06 kW (1/8!) | - **Formula (Theoretical maximum Betz wind power in kilowatts (Cp = 16/27))**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<0,B5>16/27),"Invalid inputs",ROUND((0.5 * B2 * PI() * (B3 ^ 2) * (B4 ^ 3) * (16 / 27)) / 1000, 2)))` - **Formula (Modeled rotor power at a chosen Cp)**: `=IF(COUNT(B2:B5)<>4,"Invalid inputs",IF(OR(B2<=0,B3<=0,B4<0,B5<0,B5>16/27),"Invalid inputs",ROUND((0.5 * B2 * PI() * (B3 ^ 2) * (B4 ^ 3) * B5) / 1000, 2)))` ### Wind Turbine Tip-Speed Ratio (TSR) & Rotor Solidity Formula - **URL**: https://sheets.arte-soft.com/en/learn/wind-turbine-tip-speed-ratio-rotor-rpm-and-solidity-formula/ - **Summary**: Calculate Horizontal-Axis Wind Turbine Blade Tip Linear Velocity (m/s), Dimensionless Tip-Speed Ratio λ (TSR), Aerodynamic Rotor Solidity σ, and Onshore 80 m/s Aeroacoustic Tip-Noise Curtailment Gate. *Table — Balance optimal Cp Tip-Speed Ratio (~7–8) against onshore aeroacoustic 80 m/s tip-noise limits!:* | Wind Rotor Aerodynamic Metric (D = 120 m, 12 RPM, U = 10 m/s, 3 Blades, c = 3.2 m) | Formula | Verified Output | | --- | --- | --- | | Blade Tip Velocity V_tip (m/s) | (PI() * D_m * RPM) / 60 | 75.40 m/s (87.96 m/s @ 14 RPM) | | Tip-Speed Ratio λ (TSR) | V_tip_ms / Wind_Speed_ms | 7.5398 | | Rotor Solidity σ | (Blade_Count * Mean_Chord) / (PI() * (D/2)) | 0.0509 (5.09% Swept Area) | | Onshore Noise Gate (<=80 m/s) | IF(V_tip <= 80, "Compliant...", "Acoustic...") | Compliant Onshore Tip Speed (<=80 m/s) | - **Formula (Wind Turbine Tip-Speed Ratio (TSR) Formula)**: `=LET(dm_r, B2, rp_m, B3, uw_s, B4, nb_c, B5, ch_m, B6, IF(OR(dm_r <= 0, rp_m <= 0, uw_s <= 0, nb_c < 1, ch_m <= 0), "Invalid Wind Rotor Input", LET(vt_p, (PI() * dm_r * rp_m) / 60, ROUND(vt_p / uw_s, 4))))` - **Formula (Nighttime Aeroacoustic Overspeed Check (Set Rotor Speed = 14.0 RPM))**: `=IF(ISTEXT(E2), E2, IF(E2 <= 80, "Compliant Onshore Tip Speed (<=80 m/s)", "Acoustic Curtailment: Tip > 80 m/s"))` ### Winemaking Brix, Chaptalization & Tartaric Acid Formula - **URL**: https://sheets.arte-soft.com/en/learn/winemaking-brix-potential-alcohol-chaptalization-and-acid-addition-formula/ - **Summary**: Calculate Grape Must Initial Potential Alcohol (% v/v), OIV Chaptalization Sucrose Addition MAX(0, Target_ABV - Potential_ABV) * 17 * Volume_L / 1000, L(+)-Tartaric Acid Must Addition, and Legal Enrichment Cap Compliance. *Table — Dose winery must sucrose at OIV’s 17 g/L per 1% ABV—and clamp ripe vintages at zero!:* | Enology Crush Tank Metric (20 °Bx @ 0.575, Target 13% ABV, 1,000 L, TA 5.2->6.7 g/L) | Formula | Verified Output | | --- | --- | --- | | Initial Potential Alcohol (% v/v) | Must_Brix * Conversion_Factor | 11.50% ABV (13.80% @ 24 °Bx) | | Chaptalization Sucrose (kg) | MAX(0, Target - Init_ABV)*17*Vol_L/1000 | 25.50 kg (0.00 kg @ 24 °Bx!) | | Tartaric Acid Addition (kg) | MAX(0, Target_TA - Init_TA)*Vol_L/1000 | 1.50 kg | | 3.0% Legal Enrichment Cap Gate | Target_ABV - Init_ABV <= 3.0% | Compliant Enrichment | - **Formula (OIV Chaptalization Sucrose Addition (kg) Formula)**: `=LET(bx_m, B2, cf_y, B3, tg_a, B4, vl_l, B5, ta_0, B6, ta_t, B7, IF(OR(bx_m < 10, bx_m > 35, cf_y < 0.5, cf_y > 0.62, tg_a <= 0, vl_l <= 0, ta_0 <= 0, ta_t <= 0), "Invalid Must Chemistry", LET(ab_0, bx_m * cf_y, ROUND(MAX(0, tg_a - ab_0) * 17 * vl_l / 1000, 2))))` - **Formula (Ripe Vintage Zero-Sugar Clamp (24 °Bx) & 3.0% Cap Breach Check)**: `=IF(ISTEXT(E3), E3, IF(B4 - E2 > 3, "Exceeds 3.0% Enrichment Cap", "Compliant Enrichment"))` ### Winemaking Molecular SO2 vs pH & KMBS Addition Formula - **URL**: https://sheets.arte-soft.com/en/learn/winemaking-free-to-molecular-so2-henderson-hasselbalch-ph-and-metabisulfite-addition/ - **Summary**: Calculate Antimicrobial Molecular SO2 (mg/L) from Wine pH and Free SO2, Required Free SO2 (ppm), Free SO2 Deficit (mg/L), and Potassium Metabisulfite KMBS Dose (g). *Table — A "rule-of-thumb" 30 ppm Free SO2 protects crisp pH 3.2 Sauvignon Blanc—yet leaves pH 3.82 Napa Cabernet defenseless against Brettanomyces spoilage!:* | Enology Molecular SO2 KPI (Current Free=18 mg/L, Target Mol=0.80 mg/L, 120 hL Tank) | Formula | Verified Output | | --- | --- | --- | | Current Active Molecular SO2 (mg/L) | Current_Free_mg_L / (1 + 10^(pH - 1.81)) | 0.505 mg/L @ pH 3.35 (0.174 @ pH 3.82!) | | Required Free SO2 for Target (mg/L) | Target_Mol_mg_L * (1 + 10^(pH - 1.81)) | 28.5 mg/L (82.7 mg/L sensory sulfur!) | | Free SO2 Deficit to Add (mg/L) | Required_Free_mg_L - Current_Free_mg_L | +10.5 mg/L (+64.7 mg/L @ pH 3.82) | | KMBS Powder Addition (57.6% SO2, g) | MAX(0, (Deficit_mg_L * hL * 100) / 576) | 219.6 g (1,347.2 g impractical @ pH 3.82!) | - **Formula (Henderson-Hasselbalch (pKa1 = 1.81) Molecular SO2 & 57.6% KMBS Dosing Formula)**: `=LET(ph_w, B2, cf_s, B3, tm_s, B4, vh_l, B5, rf_s, tm_s * (1 + (10 ^ (ph_w - 1.81))), df_s, rf_s - cf_s, IF(OR(ph_w < 2.7, ph_w > 4.3, cf_s < 0, cf_s > 150, tm_s < 0.2, tm_s > 2, vh_l <= 0.1), "Invalid Enology Input", ROUND(MAX(0, (df_s * vh_l * 100) / 576), 1)))` - **Formula (Post-Malolactic High-pH 3.82 Wine Sensory Ceiling Trap Check (Set Wine pH B2 = 3.82))**: `=IF(ISTEXT(E5), E5, ROUND(B4 * (1 + (10 ^ (B2 - 1.81))), 1))` ### Winkler-Bach Curved-Beam Neutral-Axis Shift and Stress Formula - **URL**: https://sheets.arte-soft.com/en/learn/winkler-bach-curved-beam-neutral-axis-shift-and-inner-fiber-stress/ - **Summary**: Calculate curved-beam neutral-axis radius R_n = h / LN(r_o / r_i), eccentricity e = R_c - R_n, and hyperbolic inner-fiber stress sigma_i = M*(R_n - r_i) / (A * e * r_i) for crane hooks and C-clamps. *Table — Catch the 29% unconservative error of applying straight-beam M*c/I to a curved crane hook!:* | Curved-Beam Quantity (r_i=40, r_o=80, b=20) | Formula | Verified Output | | --- | --- | --- | | Naive Straight-Beam Stress | 6 * M / (b * h^2) | 300.0000 MPa (Unconservative!) | | Neutral-Axis Radius (R_n) | (r_o - r_i) / LN(r_o / r_i) | 57.7078 mm (< R_c = 60 mm) | | Neutral-Axis Eccentricity (e) | R_c - R_n | 2.2922 mm | | Winkler-Bach Inner-Fiber Stress | M * (R_n - r_i) / (A * e * r_i) | 386.2624 MPa (K_i = 1.2875x) | - **Formula (Rectangular Curved-Beam Neutral-Axis Radius R_n = (r_o - r_i) / LN(r_o / r_i) Formula)**: `=LET(r_in, B2, r_out, B3, IF(OR(r_in <= 0, r_out <= r_in), "Invalid Hook Geometry", ROUND((r_out - r_in) / LN(r_out / r_in), 4)))` - **Formula (Exact Winkler-Bach Hyperbolic Inner-Fiber Stress sigma_inner (MPa) Formula)**: `=LET(r_in, B2, r_out, B3, b_wd, B4, m_ben, B5, IF(OR(r_in <= 0, r_out <= r_in, b_wd <= 0, m_ben < 0), "Invalid Hook Geometry", LET(h_dp, r_out - r_in, r_cen, 0.5 * (r_in + r_out), r_neu, h_dp / LN(r_out / r_in), e_ecc, r_cen - r_neu, area_s, b_wd * h_dp, ROUND((m_ben * (r_neu - r_in)) / (area_s * e_ecc * r_in), 4))))` ### Winsorized mean and percentile-cutoff trimmed mean: capping versus excluding values - **URL**: https://sheets.arte-soft.com/en/learn/winsorized-mean-and-trimmed-mean-outlier-formulas/ - **Summary**: Compare clamping values to percentile cutoffs with averaging only values inside those cutoffs, and distinguish this from rank-based TRIMMEAN. *Table — State the cutoff rule before changing the data:* | Raw Sample (A) | Winsorized [40, 55] (B) | Included in Trimmed? | Summary Comparison | | --- | --- | --- | --- | | 2 (Bottom tail) | 40 (Clamped up to P20) | Dropped (< 40) | Raw Mean = 65.67 (Skewed!) | | 40, 45 | 40, 45 | Kept | P20 Cutoff D2 = 40 | | 52, 55 | 52, 55 | Kept | P80 Cutoff D3 = 55 | | 200 (Top tail) | 55 (Clamped down to P80) | Dropped (> 55) | Winsorized = 47.83 \| Trimmed = 48.00 | - **Formula (Winsorized Mean across clamped helper column B2:B7)**: `=IF(OR(COUNT(A2:A7)<>6,COUNT(D2:D3)<>2),"Invalid inputs",IF(D2>D3,"Invalid inputs",ROUND(AVERAGE(B2:B7), 2)))` - **Formula (Mean of values inside the inclusive percentile interval)**: `=IF(OR(COUNT(A2:A7)<>6,COUNT(D2:D3)<>2),"Invalid inputs",IF(D2>D3,"Invalid inputs",IF(COUNTIFS(A2:A7,">="&D2,A2:A7,"<="&D3)=0,"No retained values",ROUND(AVERAGEIFS(A2:A7, A2:A7, ">=" & D2, A2:A7, "<=" & D3), 2))))` ### Winter-Tozer Albumin-Corrected Phenytoin & ESRD Formula - **URL**: https://sheets.arte-soft.com/en/learn/winter-tozer-albumin-corrected-phenytoin-and-esrd-uremic-binding-formula/ - **Summary**: Calculate Protein-Binding Normalization Factor, Adjusted Normal-Albumin Phenytoin Concentration (mg/L), Estimated Free Unbound Phenytoin (mg/L), and Therapeutic Range Alert (10–20 mg/L). *Table — Why a "low" 7.5 mg/L total phenytoin lab is already THERAPEUTIC at Albumin 2.2—and TOXIC in dialysis ESRD!:* | Winter-Tozer TDM KPI (Total = 7.5 mg/L, Albumin = 2.2 g/dL) | Formula | Verified Output | | --- | --- | --- | | Binding Denominator Factor | (0.1 if ESRD else 0.2)*Alb + 0.1 | 0.54 (0.32 in ESRD uremia!) | | Corrected Phenytoin C_corr (mg/L) | Measured_Total / Binding_Denom | 13.89 mg/L (23.44 mg/L in ESRD!) | | Est. Free Unbound Level (mg/L) | 0.10 * Corrected_Phenytoin | 1.39 mg/L (2.34 mg/L in ESRD!) | | Therapeutic Window (10–20 mg/L) | 10–20 Therapeutic; >20 Toxic | THERAPEUTIC (10-20) -> TOXIC in ESRD | - **Formula (Winter-Tozer Normal-Renal vs Uremic-ESRD Corrected Phenytoin Formula)**: `=LET(cp_t, B2, al_s, B3, es_r, B4, IF(OR(cp_t <= 0, al_s < 0.5, al_s > 6, AND(es_r <> 0, es_r <> 1)), "Invalid TDM Input", LET(cf_b, IF(es_r = 1, 0.1, 0.2), cc_r, cp_t / (cf_b * al_s + 0.1), IF(cc_r < 10, "SUBTHERAPEUTIC (<10)", IF(cc_r <= 20, "THERAPEUTIC (10-20)", "SUPRATHERAPEUTIC TOXIC (>20)")))))` - **Formula (Uremic ESRD Binding-Displacement Toxicity Flip Check (Set ESRD_Flag = 1))**: `=IF(OR(B2 <= 0, B3 < 0.5, B3 > 6, AND(B4 <> 0, B4 <> 1)), "Invalid TDM Input", ROUND(B2 / (IF(B4 = 1, 0.1, 0.2) * B3 + 0.1), 2))` ### Winters formula range comparison and smoking pack-years: spreadsheet examples - **URL**: https://sheets.arte-soft.com/en/learn/winters-formula-metabolic-acidosis-and-smoking-pack-years/ - **Summary**: Practice a conditional comparison with an expected CO2 range and a separate pack-year calculation using fictional values. *Table — Compare a model range without making an automatic diagnosis:* | Pulmonary / ABG Assessment | Formula / Inputs | Patient Lab Values | Clinical Finding | | --- | --- | --- | --- | | Winter's Expected PaCO2 | 1.5 * B2 + 8 | HCO3- B2 = 12 mEq/L | 26.0 mmHg (Range 24–28) | | Measured PaCO2 = 26 mmHg | ABS(B3 - Exp) <= 2 | Within ±2 mmHg window | "Within expected range" | | Measured PaCO2 = 34 mmHg | B3 > Exp + 2 | CO2 retention above 28 mmHg | "Above expected range" | | Smoking Pack-Years | (B4 / 20) * B5 | 30 cigs/day (1.5 pk) x 16 yrs | 24 pack-years (exposure arithmetic) | - **Formula (Compare fictional PaCO2 with the expected range)**: `=IF(COUNT(B2:B3)<>2,"Invalid inputs",IF(OR(B2<=0,B3<=0),"Invalid inputs",IF(B2>=22,"Outside exercise domain",IF(ABS(B3 - (1.5 * B2 + 8)) <= 2, "Within expected range", IF(B3 > (1.5 * B2 + 8) + 2, "Above expected range", "Below expected range")))))` - **Formula (Cumulative Smoking Exposure in Pack-Years = (CigsPerDay / 20) * Years)**: `=IF(COUNT(B4:B5)<>2,"Invalid inputs",IF(OR(B4<0,B5<0),"Invalid inputs",ROUND((B4 / 20) * B5, 2)))` ### Cold Wire-Drawing Reduction, True Strain & Pull Force Formula - **URL**: https://sheets.arte-soft.com/en/learn/wire-drawing-cross-section-area-reduction-true-strain-and-draw-die-pull-force/ - **Summary**: Calculate Cross-Sectional Area Reduction r (%), True Logarithmic Strain epsilon = 2*LN(d_0/d_f), Factored Axial Draw Stress sigma_d (MPa), Capstan Pull Force (kN), and Tensile Necking Break Check. *Table — Why a single cold wire-drawing die can NEVER exceed ~45%–50% area reduction without snapping the exiting wire!:* | Carbide Wire-Drawing KPI (d0=4.00 -> df=3.40 mm, Yf=520 MPa, Phi=1.35) | Formula | Verified Output | | --- | --- | --- | | Cross-Section Area Reduction (%) | (1 - (df_mm / d0_mm)^2) * 100 | 27.75% (57.75% @ df = 2.60 mm!) | | Axial Draw Stress sigma_d (MPa) | Phi * Yf_MPa * (2 * LN(d0 / df)) | 228.18 MPa (604.82 > Yf @ df=2.60!) | | Capstan Pulling Force F_pull (kN) | (sigma_d_MPa * (PI()/4 * df^2)) / 1000 | 2.07 kN (3.21 kN @ df = 2.60 mm) | | Exiting Wire Break Safety Gate | sigma_d < 0.85 * Yf_MPa | DRAW SAFE (<85% Yf) (BREAK @ 2.60!) | - **Formula (Sachs-Type Redundant-Work Wire-Drawing Stress & Break Limit Formula)**: `=LET(da_m, B2, db_m, B3, yf_m, B4, ph_f, B5, IF(OR(db_m <= 0, da_m <= db_m, yf_m <= 0, ph_f < 1.05, ph_f > 2.2), "Invalid Wire-Draw Input", LET(ep_s, 2 * LN(da_m / db_m), sd_m, ph_f * yf_m * ep_s, IF(sd_m < 0.85 * yf_m, "DRAW SAFE (<85% Yf)", "WIRE BREAK RISK"))))` - **Formula (Over-Aggressive 57.75% Single-Die Reduction Wire-Snap Check (Set Exit d_f = 2.60 mm))**: `=IF(ISTEXT(E2), E2, ROUND(B5 * B4 * (2 * LN(B2 / B3)), 2))` ### Wire-EDM Spark Pulse Energy, Overcut & Kerf Offset Formula - **URL**: https://sheets.arte-soft.com/en/learn/wire-edm-spark-discharge-pulse-energy-kerf-overcut-and-wire-flushing-mrr-formula/ - **Summary**: Calculate Single-Spark Discharge Energy (mJ), Pulse Duty Factor (%), Empirical Radial Spark Overcut Gap (um), and Total Wire-EDM Kerf Slot Width (mm). *Table — Programming CNC wire-EDM path offsets by half the 0.250 mm brass wire radius (0.125 mm) forgets the +41.9 um radial plasma spark gap—cutting punch dies 83.8 um undersize!:* | Wire-EDM Pulse & Kerf KPI (Vd=28 V, 0.250 mm Brass Wire) | Formula | Verified Output | | --- | --- | --- | | Single-Spark Energy Ep (mJ) | (Discharge_V * Peak_I_A * Pulse_ton_us) / 1000 | 18.14 mJ rough (0.17 mJ finish skim) | | Pulse Duty Factor (%) | (Pulse_ton_us / (ton_us + toff_us)) * 100 | 30.0% rough (11.1% anti-recast skim) | | Radial Spark Overcut gr (um) | 4.2 * (Peak_I_A ^ 0.4) * (Pulse_ton_us ^ 0.3) | 41.9 um/side (8.3 um/side skim) | | Total Wire Kerf Width (mm) | Wire_Diam_mm + (2 * Radial_Overcut_um) / 1000 | 0.3338 mm rough (0.2665 mm skim) | - **Formula (Wire-EDM Spark Crater Energy, Duty Flushing & Kerf Compensation Formula)**: `=LET(vd_v, B2, ip_a, B3, tn_u, B4, tf_u, B5, wd_m, B6, sg_u, 4.2 * (ip_a ^ 0.4) * (tn_u ^ 0.3), IF(OR(vd_v < 15, vd_v > 60, ip_a < 0.5, ip_a > 500, tn_u < 0.1, tn_u > 200, tf_u < 1, tf_u > 1000, wd_m < 0.02, wd_m > 0.36), "Invalid EDM Input", ROUND(wd_m + (2 * sg_u) / 1000, 4)))` - **Formula (Third-Skim Mirror Finish Pass (`I_p = 4` A, `t_on = 1.5` us, `t_off = 12` us) Recast Removal Check)**: `=IF(ISTEXT(E5), E5, ROUND(4.2 * (B3 ^ 0.4) * (B4 ^ 0.3), 1))` ### Wire-Rope Winch Fleet Angle & Sheave D/d Ratio Formula - **URL**: https://sheets.arte-soft.com/en/learn/wire-rope-winch-drum-fleet-angle-sheave-d-over-d-ratio-and-bending-fatigue/ - **Summary**: Calculate Maximum Winch-Drum Fleet Angle ATAN((W/2)/L) (deg), Minimum Lead-Sheave Stand-Off Distance for 1.5° Limit (m), Sheave-to-Rope Bending Ratio D/d, and Spooling Audit. *Table — Mount a lead sheave too close OR too far from a winch drum and wire rope either scrubs drum flanges or piles up in the center!:* | Crane Hoist Wire-Rope KPI (Drum W=0.90 m, Lead L=18.0 m, d=22 mm, Sheave D=660 mm) | Formula | Verified Output | | --- | --- | --- | | Maximum Winch Fleet Angle (deg) | ATAN((Drum_W_m / 2) / Lead_L_m) * (180/PI()) | 1.43° (3.22° > 2.0° @ cramped L=8.0 m!) | | Min Lead Distance @ 1.5° (m) | (Drum_W_m / 2) / TAN(1.5 * PI()/180) | 17.18 m | | Sheave Bending Ratio (D / d) | Sheave_Pitch_D_mm / Wire_Rope_d_mm | 30.00 (>= 24 heavy-duty crane spec) | | CMAA / Lebus Spooling Gate | 0.5° <= Fleet <= 2.0° AND D/d >= 24 | GROOVED DRUM & SHEAVE OK | - **Formula (Winch-Drum Fleet Angle Window & Sheave D/d Bending Fatigue Formula)**: `=LET(wd_m, B2, ld_m, B3, dr_m, B4, ds_m, B5, fl_d, ATAN((wd_m / 2) / ld_m) * (180 / PI()), dd_r, ds_m / dr_m, IF(OR(wd_m <= 0, ld_m <= 0, dr_m <= 2, ds_m <= dr_m), "Invalid Hoist Input", IF(AND(fl_d >= 0.5, fl_d <= 2, dd_r >= 24), "GROOVED DRUM & SHEAVE OK", "FLEET OR BENDING VIOLATION")))` - **Formula (Cramped Deckhouse 8.0 m Lead-Sheave Fleet Scrubbing Violation Check (Set Lead Distance B3 = 8.0 m))**: `=IF(ISTEXT(E2), E2, ROUND(B5 / B4, 2))` ### Wireless Cell-Tower REIT Colocation & Yield-on-Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/wireless-cell-tower-reit-colocation-tenant-lease-up-and-roi-yield-formula/ - **Summary**: Calculate Wireless Cell-Tower Build-to-Suit Tower Cash Flow ($k), Incremental Colocation Margin (%), Unlevered Yield-on-Cost (%), and Public REIT Multiple Valuation ($k). *Table — Why 2nd and 3rd carrier colocations turn a 5% anchor tower into a 24% compounding machine!:* | Macro Cell-Tower KPI ($300k CapEx, $30k/Carrier, $15k Base + $1.5k Coloc OpEx) | Formula | Verified Output | | --- | --- | --- | | Annual Tower Cash Flow TCF ($k) | Tenants*Rent - (Base_OpEx + MAX(0,Tenants-1)*Inc_OpEx) | $72.00k ($15.00k @ 1 Tenant) | | Tower Cash Flow Margin (%) | (TCF / Gross_Tower_Revenue) * 100 | 80.00% (50.00% @ 1 Tenant) | | Unlevered Yield-on-Cost (%) | (TCF / Tower_Build_CapEx) * 100 | 24.00% (5.00% @ 1 Tenant) | | Implied Tower Valuation ($k) | TCF * Public_TCF_Multiple | $1,584.00k ($330.00k @ 1 Tenant) | - **Formula (Cell-Tower Lease-Up Unlevered Yield-on-Cost Formula)**: `=LET(cp_k, B2, tn_n, B3, rn_t, B4, op_b, B5, op_i, B6, ml_t, B7, IF(OR(cp_k <= 0, tn_n < 1, rn_t <= 0, op_b < 0, op_i < 0, ml_t <= 0), "Invalid Tower Lease Input", LET(tc_f, tn_n * rn_t - (op_b + (tn_n - 1) * op_i), ROUND((tc_f / cp_k) * 100, 2))))` - **Formula (Single-Tenant Anchor-Only Baseline Check (Set Active Carrier Tenants = 1))**: `=IF(ISTEXT(E4), E4, ROUND(E2 * B7, 2))` ### Quantum Barrier Tunneling (STM & Flash Oxide WKB Transmission Formula) - **URL**: https://sheets.arte-soft.com/en/learn/wkb-rectangular-potential-barrier-quantum-tunneling-transmission/ - **Summary**: Calculate the evanescent wavefunction decay constant kappa = 5.12317 * SQRT((m_eff / m_0) * (V_0 - E)) (nm^-1) and exponential tunneling transmission probability T_WKB = EXP(-2 * kappa * L) across Scanning Tunneling Microscope (STM) vacuum gaps and gate oxides. *Table — Why pulling an STM tip back by just 0.1 nm slashes quantum tunneling current ~10-fold!:* | Tunneling Barrier Gap L (V0 = 2.0 eV, E = 0.5 eV, meff = 1.0 m0) | Decay Constant kappa (nm^-1) | WKB Transmission T = EXP(-2*kappa*L) | STM / Gate-Oxide Consequence | | --- | --- | --- | --- | | Sub-Nanometer Gap (L = 0.40 nm) | 6.275 nm^-1 | 0.006607 (0.66%) | Measurable nA STM Tunneling Current | | +1 Angstrom Wider Gap (L = 0.50 nm) | 6.275 nm^-1 | 0.001884 (3.5x Drop!) | Atomic-Scale Vertical Z-Resolution | | Over-the-Barrier Classical (E >= V0) | Imaginary kappa Guard | "Classical Over-Barrier (E >= V0)" | Oscillatory Propagation (Not Tunneling) | - **Formula (Evanescent Wavefunction Decay Constant kappa (nm^-1))**: `=IF(OR(B2 <= B3, B4 <= 0, B5 <= 0), "Classical / Invalid Barrier", ROUND(5.12317 * SQRT(B5 * (B2 - B3)), 3))` - **Formula (WKB Exponential Barrier Tunneling Probability T = EXP(-2 * kappa * L))**: `=IF(OR(B2 <= B3, B4 <= 0, B5 <= 0), "Classical / Invalid Barrier", ROUND(EXP(-2 * 5.12317 * SQRT(B5 * (B2 - B3)) * B4), 6))` ### Relative Fat Mass (RFM) Calculator: Woolcott & Bergman Height-to-Waist DXA Formula - **URL**: https://sheets.arte-soft.com/en/learn/woolcott-bergman-relative-fat-mass-rfm-height-waist-formula/ - **Summary**: Estimate whole-body fat percentage without a weight scale using Orison O. Woolcott and Richard N. Bergman’s (2018) NHANES DXA-validated Relative Fat Mass equation RFM = 64 - 20 * (Height / Waist) + 12 * Sex_Female(0/1). *Table — Estimate DXA whole-body fat percentage from a tape measure alone — NO bathroom scale required!:* | Adult Subject (Same Units for Height & Waist) | Height / Waist Ratio | Woolcott-Bergman RFM (%) | Obesity Cutoff Comparison | | --- | --- | --- | --- | | Adult Male (Height = 178 cm, Waist = 86 cm) | 2.0698 | 22.60% BF | Below >= 30.0% male cutoff | | Adult Male (Height = 178 cm, Waist = 106 cm) | 1.6792 | 30.42% BF | Exceeds >= 30.0% male cutoff | | Adult Female (Height = 165 cm, Waist = 88 cm) | 1.8750 | 38.50% BF | Below >= 40.0% female cutoff | - **Formula (Woolcott-Bergman (2018) Adult Relative Fat Mass RFM (%))**: `=IF(OR(B2 < 120, B2 > 230, B3 < 45, B3 > 200, AND(B4 <> "M", B4 <> "F")), "Invalid Adult Height, Waist, or Sex (M/F)", ROUND(64 - 20 * (B2 / B3) + IF(B4 = "F", 12, 0), 2))` - **Formula (Sex-Specific RFM Obesity Threshold Classification (>= 30% M / >= 40% F))**: `=IF(OR(B2 < 120, B2 > 230, B3 < 45, B3 > 200, AND(B4 <> "M", B4 <> "F")), "Invalid Adult Height, Waist, or Sex (M/F)", IF((64 - 20 * (B2 / B3) + IF(B4 = "F", 12, 0)) >= IF(B4 = "F", 40, 30), "Elevated RFM Adiposity (>= Sex-Specific Cutoff)", "RFM Below High-Risk Adiposity Cutoff"))` ### Woolf Inverse-Variance Pooled Odds Ratio & 95% CI (Meta-Analysis) - **URL**: https://sheets.arte-soft.com/en/learn/woolf-inverse-variance-pooled-log-odds-ratio-meta-analysis/ - **Summary**: Synthesize multi-center 2×2 case-control or trial strata via Barnet Woolf’s (1955) inverse-variance log-odds weighting w_i = 1 / (1/a + 1/b + 1/c + 1/d) and Wald 95% confidence bounds. *Table — Exact precision weighting of log-odds ratios across multi-site epidemiological strata!:* | Multi-Site Synthesis Cohort | Pooled OR_Woolf | 95% Lower Confidence Limit | Zero-Cell Guard | | --- | --- | --- | --- | | Baseline 3-Hospital Cohort (a1 = 24) | 2.9483 | 1.7347 (Significant > 1.0) | All cells > 0 | | Stronger Site-1 Exposure (a1 = 36) | 3.3780 | 2.0085 | Precision weight w1 increases | | Any Zero Cell Count (MIN <= 0) | "Apply 0.5 Haldane Cell Correction" | Prevents #DIV/0! in 1/a | Continuity Guard | - **Formula (Woolf Inverse-Variance Pooled Odds Ratio OR_Woolf)**: `=IF(MIN(B2:E4) <= 0, "Apply 0.5 Haldane Cell Correction", ROUND(EXP(SUMPRODUCT(F2:F4, G2:G4) / SUM(G2:G4)), 4))` - **Formula (Lower 95% Confidence Bound on Pooled Odds Ratio)**: `=IF(MIN(B2:E4) <= 0, "Apply 0.5 Haldane Cell Correction", ROUND(EXP((SUMPRODUCT(F2:F4, G2:G4) / SUM(G2:G4)) - 1.95996 * SQRT(1 / SUM(G2:G4))), 4))` ### Calculate business work hours between two dates and times (SLA timer) - **URL**: https://sheets.arte-soft.com/en/learn/work-hours-between-dates-and-times/ - **Summary**: Count only business-day work hours (e.g., 09:00–17:00 Mon–Fri) between ticket open and close timestamps using NETWORKDAYS. *Table — Why (CloseTs - OpenTs) * 24 penalizes nights and weekends:* | OpenTs (A) | CloseTs (B) | Workdays | Business Hours (09:00–17:00) | | --- | --- | --- | --- | | 2026-04-13 15:00 (Mon) | 2026-04-15 11:00 (Wed) | 3 | 12 (2 + 8 + 2) | | 2026-04-17 16:00 (Fri) | 2026-04-20 10:30 (Mon) | 2 | 2.5 (1 + 1.5) | | 2026-04-13 10:00 (Mon) | 2026-04-13 14:30 (Mon) | 1 | 4.5 | - **Formula (SLA business-hours formula with LET and NETWORKDAYS)**: `=LET(hrsDay, (D2 - C2) * 24, wd, NETWORKDAYS(INT(A2), INT(B2)), tA, A2 - INT(A2), tB, B2 - INT(B2), ROUND((wd - 1) * hrsDay + (tB - tA) * 24, 2))` - **Formula (Compare raw wall-clock hours)**: `=ROUND((B2 - A2) * 24, 2)` ### WORKDAY function: calculate a deadline N business days ahead - **URL**: https://sheets.arte-soft.com/en/learn/workday-calculate-business-day-deadline/ - **Summary**: Step forward a given number of working days from a start date, skipping weekends and listed closures—such as a task opened Friday when Monday is a holiday. *Table — A Friday service ticket with a Monday closure:* | Opened (B2) | Workdays (C2) | Closure (D2) | Due date | | --- | --- | --- | --- | | Fri 6 Mar 2026 (46087) | 1 | Mon 9 Mar 2026 (46090) | Tue 10 Mar 2026 (46091) | - **Formula (Skip both the weekend and the Monday holiday)**: `=WORKDAY(B2,C2,D2)` ### Number of workdays in a month (and remaining business days) - **URL**: https://sheets.arte-soft.com/en/learn/workdays-in-month-and-remaining/ - **Summary**: Count total business days in any month and remaining working days to month-end excluding weekends and holidays with NETWORKDAYS. *Table — Quota pacing requires working days, not calendar days:* | RefDate (A) | Holiday (B) | Quota (C) | Total Workdays | Workdays Left (incl. RefDate) | | --- | --- | --- | --- | --- | | 2026-05-18 | 2026-05-25 | 40000 | 20 days (2,000/day) | 9 days | - **Formula (Total workdays in month and workdays remaining)**: `=NETWORKDAYS(DATE(YEAR(A2), MONTH(A2), 1), EOMONTH(A2, 0), B2:B2)` - **Formula (Remaining business days from current date to month-end)**: `=NETWORKDAYS(A2, EOMONTH(A2, 0), B2:B2)` ### Current Ratio, Quick Ratio (Acid-Test), and Net Working Capital (NWC) - **URL**: https://sheets.arte-soft.com/en/learn/working-capital-nwc-current-and-quick-ratio-formula/ - **Summary**: Calculate current and quick ratios and compare total working capital with one explicitly defined operating-working-capital measure. *Table — State the included assets and liabilities:* | Balance-Sheet Liquidity Metric ($k) | Formula | Sample Result | | --- | --- | --- | | Current Ratio ($540 CA / $300 CL) | =(A2+B2+C2+D2) / (E2+F2+G2) | 1.80x | | Quick / Acid-Test Ratio (Cash+AR / CL) | =(A2+B2) / (E2+F2+G2) | 1.00x | | Total Working Capital (CA - CL) | =540 - 300 | $240k | | M&A Operating NWC (Excl Cash & Debt) | =(B2+C2+D2) - (E2+F2) | $180k | - **Formula (Current Ratio, Quick Ratio, and Operating NWC formulas)**: `=(B2 + C2 + D2) - (E2 + F2)` - **Formula (Quick (Acid-Test) Liquidity Ratio)**: `=IF(SUM(E2:G2)<=0,"Check current liabilities",ROUND((A2 + B2) / (E2 + F2 + G2), 2))` - **Formula (Current ratio)**: `=IF(SUM(E2:G2)<=0,"Check current liabilities",ROUND((A2 + B2 + C2 + D2) / (E2 + F2 + G2), 2))` - **Formula (Total working capital)**: `=SUM(A2:D2)-SUM(E2:G2)` ### Working days in a year & business days left in year (NETWORKDAYS) - **URL**: https://sheets.arte-soft.com/en/learn/working-days-in-year-and-remaining-networkdays/ - **Summary**: Count Monday–Friday dates in a year or remaining date window, excluding a supplied holiday list. *Table — Why 2026 has 261 raw Mon–Fri weekdays—not always 260!:* | Calendar Year / Window | Formula | Raw Mon–Fri | Net of 3 Holidays | | --- | --- | --- | --- | | Full Year 2026 (Jan 1 = Thu) | =NETWORKDAYS(DATE(2026,1,1), DATE(2026,12,31), Holidays) | 261 days | 258 workdays | | Full Year 2023 (Jan 1 = Sun) | =NETWORKDAYS(DATE(2023,1,1), DATE(2023,12,31)) | 260 days | — | | Remaining from 2026-10-01..Dec 31 | =NETWORKDAYS(B2, DATE(YEAR(B2),12,31), Holidays) | 66 days | 64 workdays left | - **Formula (Total net working days in Year A2 and remaining workdays from Date B2)**: `=NETWORKDAYS(DATE(A2, 1, 1), DATE(A2, 12, 31), $D$2:$D$4)` - **Formula (Working days remaining in the year (inclusive of As-Of Date B2))**: `=NETWORKDAYS(B2, DATE(YEAR(B2), 12, 31), $D$2:$D$4)` ### Remaining Working Days Left in Current Month and Calendar Year (NETWORKDAYS & EOMONTH) - **URL**: https://sheets.arte-soft.com/en/learn/working-days-left-in-month-and-year-networkdays/ - **Summary**: Calculate how many business days remain in the active month or calendar year—either including or excluding today—while deducting company holidays with NETWORKDAYS and EOMONTH. *Table — Inclusive vs. strictly future working days remaining:* | Metric | Anchor Date (B2) | Period End | Holiday Deductions | Remaining Workdays | | --- | --- | --- | --- | --- | | Month-end (inclusive of today) | 2026-11-10 (Tue) | 2026-11-30 (Mon) | Nov 26, Nov 27 | 13 | | Month-end (future days only) | 2026-11-10 (Tue) | 2026-11-30 (Mon) | Nov 26, Nov 27 | 12 | | Calendar year-end (inclusive) | 2026-11-10 (Tue) | 2026-12-31 (Thu) | Nov 26, Nov 27, Dec 25 | 35 | | Last day of month (future only) | 2026-11-30 (Mon) | 2026-11-30 (Mon) | None after Nov 30 | 0 | - **Formula (Working Days Left in Current Month (Inclusive of Reference Date))**: `=NETWORKDAYS(B2, EOMONTH(B2, 0), D2:D4)` - **Formula (Future Working Days After Today & Year-End Runway)**: `=MAX(0, NETWORKDAYS(B2 + 1, EOMONTH(B2, 0), D2:D4))` ### Worldscale Tanker Freight & Deadfreight Formula - **URL**: https://sheets.arte-soft.com/en/learn/worldscale-tanker-flat-rate-ws-points-and-deadfreight-shortfall-formula/ - **Summary**: Calculate Crude/Product Tanker Effective Freight Rate (WS / 100) * Flat_Rate, Performed Cargo Freight, Short-Loading Deadfreight Damages, and Total Payable Freight. *Table — Price VLCC and Suezmax fixtures in Worldscale points and audit short-stem Deadfreight!:* | Tanker Fixture Metric (WS100=$22/MT, WS 75, MCQ=130k MT, Loaded=122k MT) | Formula | Verified Output | | --- | --- | --- | | Effective Worldscale Freight ($/MT) | (WS_points / 100) * WS100_Flat_Rate | $16.50 / MT | | Performed Cargo Freight ($) | Q_loaded * F_eff | $2,013,000.00 | | Deadfreight Shortfall Penalty ($) | MAX(0, MCQ_mt - Q_loaded) * F_eff | $132,000.00 (8,000 MT Short) | | Total Payable Tanker Freight ($) | MAX(Q_loaded, MCQ_mt) * F_eff | $2,145,000.00 ($17.58/MT eff) | - **Formula (Worldscale Deadfreight & Total Payable Freight Formula)**: `=LET(fl_r, B2, ws_p, B3, mc_q, B4, ld_q, B5, IF(OR(fl_r <= 0, ws_p <= 0, mc_q <= 0, ld_q <= 0), "Invalid Tanker Fixture", ROUND(MAX(ld_q, mc_q) * (ws_p / 100) * fl_r, 2)))` - **Formula (Short-Loaded Deadfreight Damages Formula)**: `=IF(ISTEXT(E5), E5, ROUND(MAX(0, B4 - B5) * (B3 / 100) * B2, 2))` ### Worm Gear Lead Angle, Sliding Efficiency & Self-Locking Formula - **URL**: https://sheets.arte-soft.com/en/learn/worm-gear-lead-angle-sliding-friction-efficiency-and-self-locking-formula/ - **Summary**: Calculate Worm Lead Angle lambda (deg), Worm-Driving-Gear Mechanical Efficiency (%), Speed Reduction Ratio (N_g / N_w), and Static Self-Locking Status. *Table — Self-locking worm drives sacrifice efficiency (<50% statically)—multi-start high-efficiency worms CAN back-drive!:* | Worm Drive KPI (Nw=2, Ng=50, q=10, phi_n=20°, mu_k=0.05, mu_s=0.15) | Formula | Verified Output | | --- | --- | --- | | Worm Lead Angle lambda (deg) | DEGREES(ATAN(Worm_Starts_Nw / Quotient_q)) | 11.31° (5.71° @ Nw = 1) | | Worm-Driving Efficiency (%) | ((COS(phin) - muk*TAN(lam)) / (COS(phin) + muk/TAN(lam)))*100 | 78.15% (64.92% @ Nw = 1) | | Gearset Speed Ratio (i) | Gear_Teeth_Ng / Worm_Starts_Nw | 25.00 (50.00 @ Nw = 1) | | Static Back-Driving Status | TAN(lam) < mu_s * COS(phin) -> SELF-LOCKING | BACK-DRIVABLE (SELF-LOCKING @ Nw=1) | - **Formula (Worm-Driving Sliding Efficiency & Static Self-Locking Formula)**: `=LET(nw_s, B2, ng_t, B3, q_dm, B4, ph_d, B5, mu_k, B6, mu_s, B7, IF(OR(nw_s < 1, nw_s > 8, INT(nw_s) <> nw_s, ng_t < 15, q_dm < 5, q_dm > 25, ph_d < 14.5, ph_d > 30, mu_k <= 0, mu_s < mu_k, mu_s > 0.4), "Invalid Worm Input", LET(tl_m, nw_s / q_dm, cp_h, COS(ph_d * PI() / 180), ROUND(((cp_h - mu_k * tl_m) / (cp_h + (mu_k / tl_m))) * 100, 2))))` - **Formula (Single-Start Hoist Self-Locking vs Efficiency Tradeoff Check (Set Starts N_w = 1))**: `=IF(ISTEXT(E3), E3, IF((B2 / B4) < B7 * COS(B5 * PI() / 180), "SELF-LOCKING", "BACK-DRIVABLE"))` ### Woven Fabric GSM Weight from Warp/Weft, Tex & Crimp Formula - **URL**: https://sheets.arte-soft.com/en/learn/woven-fabric-areal-weight-gsm-from-warp-weft-ends-picks-tex-and-crimp-formula/ - **Summary**: Calculate Warp Yarn Contribution (g/m²), Weft/Filling Yarn Contribution (g/m²), Total Finished Woven Fabric GSM (g/m²), and Warp-to-Weft Mass Balance Ratio. *Table — Ignoring 6%–10% weave interlacing crimp under-costs woven apparel and carbon/glass prepreg GSM!:* | Woven Fabric GSM KPI (28x24 /cm, 20x25 Tex, 6% Warp / 8% Weft Crimp) | Formula | Verified Output | | --- | --- | --- | | Warp Yarn Mass (g/m²) | 0.1 * Ends_cm * Tex_warp * (1 + Crimp_w/100) | 59.36 g/m² (118.72 @ 40 Tex) | | Weft Yarn Mass (g/m²) | 0.1 * Picks_cm * Tex_weft * (1 + Crimp_f/100) | 64.80 g/m² (103.68 @ 40 Tex) | | Total Woven Fabric GSM (g/m²) | Warp_GSM + Weft_GSM | 124.16 GSM (222.40 @ 40/40 Tex) | | Crimp-Only Extra Mass (g/m²) | Total_GSM - 0.1*(Ends*Tex_w + Picks*Tex_f) | 8.16 g/m² (14.40 @ 40/40 Tex) | - **Formula (Exact Crimp-Adjusted Woven Fabric Areal Density (GSM) Formula)**: `=LET(en_c, B2, pk_c, B3, tx_w, B4, tx_f, B5, cr_w, B6, cr_f, B7, IF(OR(en_c <= 0, pk_c <= 0, tx_w <= 0, tx_f <= 0, cr_w < 0, cr_w > 35, cr_f < 0, cr_f > 35), "Invalid Weave Spec", LET(gm_w, 0.1 * en_c * tx_w * (1 + cr_w / 100), gm_f, 0.1 * pk_c * tx_f * (1 + cr_f / 100), ROUND(gm_w + gm_f, 2))))` - **Formula (Heavy Workwear Duck / Canvas 40-Tex Yarn Upgrade Check (Set Warp & Weft = 40 Tex))**: `=IF(ISTEXT(E4), E4, ROUND(E4 - 0.1 * (B2 * B4 + B3 * B5), 2))` ### Unwrap a stacked column into a 2D table of records (INDEX + ROW/COLUMN) - **URL**: https://sheets.arte-soft.com/en/learn/wrap-flat-column-into-2d-records-grid-index/ - **Summary**: Reshape copy-pasted PDF or web directories where Name, Role, and Salary repeat every K rows in Column A into clean structured rows and columns. *Table — Turn repeating K-row blocks into clean database records:* | Record r | Col 1: (r-1)*3 + 1 | Col 2: (r-1)*3 + 2 | Col 3: (r-1)*3 + 3 | | --- | --- | --- | --- | | r = 1 | Index 1 -> "Alice" | Index 2 -> "Admin" | Index 3 -> 95000 | | r = 2 | Index 4 -> "Bob" | Index 5 -> "Sales" | Index 6 -> 82000 | - **Formula (Universal 2D record-unwrapping formula)**: `=IFERROR(INDEX($A$2:$A$7, (ROW(A1) - 1) * 3 + COLUMN(A1)), "")` - **Formula (Pull Record 2, Field 2 directly)**: `=IFERROR(INDEX($A$2:$A$7, (ROW(B2) - 1) * 3 + COLUMN(B2)), "")` ### Wright’s Law Learning Curve Unit Cost Formula - **URL**: https://sheets.arte-soft.com/en/learn/wright-learning-curve-unit-cost-and-cumulative-batch-average/ - **Summary**: Calculate N-th unit manufacturing cost C_N = C_1 * N^(LN(LR)/LN(2)) under Theodore Paul Wright’s (1936) learning-curve law across aerospace, semiconductors, and solar PV. *Table — Forecast manufacturing cost declines per cumulative doubling of production via Wright’s Law!:* | Cumulative Volume Milestone (C_1 = 1,000, LR = 80%) | Doublings Completed | Verified Unit Cost C_N | | --- | --- | --- | | First Prototype Unit (N = 1) | 0 Doublings | 1,000.0000 | | Second Doubling (N = 4) | 2 Doublings (1,000 x 0.8^2) | 640.0000 | | Third Doubling (N = 8) | 3 Doublings (1,000 x 0.8^3) | 512.0000 | | Tenth Unit Milestone (N = 10) | LN(10)/LN(2) = 3.3219 Doublings | 476.5099 | - **Formula (Wright Learning-Curve Exponent b = LN(LR) / LN(2) Formula)**: `=IF(OR(B2 <= 0, B3 <= 0, B3 > 1, B4 < 1), "Require C_1 > 0, 0 < LR <= 1, and N >= 1", ROUND(LN(B3) / LN(2), 4))` - **Formula (Exact Crawford / Wright N-th Unit Cost C_1 * N^(LN(LR) / LN(2)) Formula)**: `=LET(c_1, B2, lr_p, B3, n_un, B4, IF(OR(c_1 <= 0, lr_p <= 0, lr_p > 1, n_un < 1), "Require C_1 > 0, 0 < LR <= 1, and N >= 1", ROUND(c_1 * (n_un^(LN(lr_p) / LN(2))), 4)))` ### WSACS Intra-Abdominal Hypertension (IAH Grades I–IV) & Abdominal Perfusion Pressure Formula - **URL**: https://sheets.arte-soft.com/en/learn/wsacs-intra-abdominal-hypertension-and-abdominal-perfusion-pressure/ - **Summary**: Calculate Abdominal Perfusion Pressure APP = MAP - IAP (target >= 60 mmHg) and classify trans-vesical bladder pressure into WSACS Intra-Abdominal Hypertension Grades I–IV and Abdominal Compartment Syndrome (ACS > 20 mmHg + new organ failure). *Table — Just as Cerebral Perfusion Pressure equals MAP - ICP, visceral organ perfusion depends on APP = MAP - IAP!:* | Supine Trans-Vesical IAP & MAP | Abdominal Perfusion Pressure APP = MAP - IAP | WSACS IAH Grade & Clinical Alert | | --- | --- | --- | | MAP = 68 mmHg, IAP = 22 mmHg | 46 mmHg (< 60 mmHg Hypoperfusion!) | Grade III IAH (21–25 mmHg) — Screen for ACS! | | MAP = 82 mmHg, IAP = 14 mmHg | 68 mmHg (>= 60 mmHg Adequate) | Grade I IAH (12–15 mmHg) — Medical Decompression | | MAP = 78 mmHg, IAP = 8 mmHg | 70 mmHg | Normal ICU Intra-Abdominal Pressure (< 12 mmHg) | - **Formula (Abdominal Perfusion Pressure APP (mmHg) = MAP - IAP)**: `=IF(OR(B2 <= 0, B3 < 0, B3 >= B2), "Invalid MAP or Bladder IAP", ROUND(B2 - B3, 1))` - **Formula (WSACS 2013 Intra-Abdominal Hypertension Grade Classifier (Normal, Grades I–IV))**: `=IF(OR(B2 <= 0, B3 < 0, B3 >= B2), "Invalid MAP or Bladder IAP", IF(B3 > 25, "Grade IV IAH (> 25 mmHg — Urgent ACS Surgical Decompression Check)", IF(B3 >= 21, "Grade III IAH (21–25 mmHg — High ACS Risk)", IF(B3 >= 16, "Grade II IAH (16–20 mmHg)", IF(B3 >= 12, "Grade I IAH (12–15 mmHg)", "Normal IAP (< 12 mmHg)")))))` ### Irregular-Date Internal Rate of Return (XIRR Equation, Newton Step & XNPV = 0 Proof) - **URL**: https://sheets.arte-soft.com/en/learn/xirr-irregular-date-internal-rate-of-return-newton-raphson-and-xnpv-check/ - **Summary**: Solve and audit exact annualized IRR on irregular calendar dates using ACT/365 day-count exponents (d_i - d_0) / 365, Newton-Raphson updates, and zero-XNPV verification. *Table — Why regular IRR distorts irregular deal cash flows—and how XIRR is defined:* | Cash Flow Date | Cash Flow (CF_i) | ACT/365 Exponent t_i | PV at r = 20.00% | | --- | --- | --- | --- | | 2026-01-01 (Initial Outlay) | -10,000 | 0.0000 | -10,000.00 | | 2027-01-01 (Distribution 1) | +4,800 | 1.0000 | +4,000.00 | | 2028-01-01 (Exit Proceeds) | +8,640 | 2.0000 | +6,000.00 (Net XNPV = 0.00) | - **Formula (One Newton-Raphson XIRR Iteration Step)**: `=LET(npv, SUMPRODUCT($B$2:$B$4 / ((1 + E2) ^ $C$2:$C$4)), dnpv, SUMPRODUCT(-$C$2:$C$4 * $B$2:$B$4 / ((1 + E2) ^ ($C$2:$C$4 + 1))), E2 - npv / dnpv)` - **Formula (Zero-XNPV Audit Proof & Multiple on Invested Capital (MOIC))**: `=ROUND(SUMPRODUCT(B2:B4 / ((1 + E5) ^ C2:C4)), 4)` ### XLOOKUP and VLOOKUP with a validated, zero-safe manual price override - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-and-vlookup-with-manual-override-fallback/ - **Summary**: Use a nonnegative numeric override, including zero, and fall back to catalog pricing only when the override is blank. *Table — Let reps override catalog pricing on specific lines without breaking $0.00 promos!:* | SKU (Col A) | Manual Override (Col B) | Catalog Price | Final Billed Price (ISNUMBER(B2)) | | --- | --- | --- | --- | | SKU-102 | (blank) | $80 | $80 (pulls standard catalog rate) | | SKU-102 | 65 | $80 | $65 (uses negotiated override) | | SKU-102 | 0 | $80 | $0 (preserves explicit $0 promo!) | | SKU-999 | (blank) | Not in catalog | "Unlisted SKU" | - **Formula (Zero-Safe Manual Override + XLOOKUP Catalog Fallback)**: `=IF(OR(NOT(ISTEXT(A2)),COUNTBLANK(A2)>0),"Enter SKU",IF(ISNUMBER(B2),IF(B2<0,"Invalid override",B2),IF(COUNTBLANK(B2)=0,"Invalid override",IF(COUNT($E$2:$E$4)<>3,"Invalid catalog",IF(MIN($E$2:$E$4)<0,"Invalid catalog",XLOOKUP(A2,$D$2:$D$4,$E$2:$E$4,"Unlisted SKU"))))))` - **Formula (Legacy VLOOKUP + IFNA Equivalent)**: `=IF(OR(NOT(ISTEXT(A2)),COUNTBLANK(A2)>0),"Enter SKU",IF(ISNUMBER(B2),IF(B2<0,"Invalid override",B2),IF(COUNTBLANK(B2)=0,"Invalid override",IF(COUNT($E$2:$E$4)<>3,"Invalid catalog",IF(MIN($E$2:$E$4)<0,"Invalid catalog",IFNA(VLOOKUP(A2,$D$2:$E$4,2,FALSE),"Unlisted SKU"))))))` ### XLOOKUP Search Modes 2 and -2: Sorted Tables and Safety Checks - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-binary-search-mode-2-and-minus-2-sorted-tables/ - **Summary**: Compare ascending and descending XLOOKUP search modes, distinguish exact matching from lower-bracket matching, and validate sorted numeric keys. Includes an explicit Arte Sheets performance limitation. - **Formula (Compare exact results in both directions)**: `=IF(H3<>"OK",H3,IF(NOT(ISNUMBER(E2)),"Enter numeric query",XLOOKUP(E2,A2:A6,B2:B6,"Missing Key",0,2)))` - **Formula (Compare the next-smaller bracket)**: `=IF(H4<>"OK",H4,IF(NOT(ISNUMBER(E2)),"Enter numeric query",XLOOKUP(E2,C2:C6,D2:D6,"Missing Key",-1,-2)))` ### XLOOKUP with Complex AND + OR Criteria (Fixing the 1 + 1 = 2 Boolean Trap) - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-boolean-product-and-or-complex-multi-criteria-lookup/ - **Summary**: Combine AND (*) and OR (+) boolean array expressions inside XLOOKUP(1, ..., return_array) safely by clamping OR sums with > 0 so rows matching both OR conditions evaluate to 1 instead of 2. *Table — The hidden 1 + 1 = 2 bug in boolean OR array lookups:* | Row | Region | Tier | Segment | Unclamped (A="EU")*((B="Gold")+(C="Ent")) | Clamped (... > 0) | | --- | --- | --- | --- | --- | --- | | 2 | EU | Gold | Enterprise | 1 * (1 + 1) = 2 (MISSED by XLOOKUP(1)!) | 1 * TRUE = 1 (Matched!) | | 3 | US | Gold | SMB | 0 * (1 + 0) = 0 | 0 | | 4 | EU | Silver | Enterprise | 1 * (0 + 1) = 1 (Wrongly picked if unclamped) | 1 | | 5 | EU | Bronze | SMB | 1 * (0 + 0) = 0 | 0 | - **Formula (Safe Clamped AND + OR Multi-Criteria XLOOKUP)**: `=XLOOKUP(1, (A2:A5 = F2) * (((B2:B5 = F3) + (C2:C5 = F4)) > 0), D2:D5, "No Match")` - **Formula (Filter All Rows Matching Complex AND + OR Criteria)**: `=COUNTA(FILTER(D2:D5, (A2:A5 = F2) * (((B2:B5 = F3) + (C2:C5 = F4)) > 0)))` ### XLOOKUP function: exact match, left lookup, and missing-key fallback - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-exact-match-if-not-found/ - **Summary**: Look up values in any column direction without counting column numbers, return a clear fallback when a code is missing, and optionally scan bottom-up for the latest entry. *Table — A spare-parts table where the rack code sits left of the SKU:* | Rack (A) | SKU (B) | Unit cost (C) | | --- | --- | --- | | R-04 | PT-101 | 22 | | R-12 | PT-204 | 38 | | R-07 | PT-315 | 15 | | R-19 | PT-101 | 25 | - **Formula (Exact match by default plus built-in fallback)**: `=XLOOKUP(E2,B2:B5,A2:A5,"Unlisted SKU")` - **Formula (First match vs last match when a code repeats)**: `=XLOOKUP("PT-101",B2:B5,C2:C5,"Unlisted SKU",0,-1)` ### Horizontal XLOOKUP Across Columns: Upward Return & Right-to-Left Last Match - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-horizontal-row-lookup-with-left-or-upward-return/ - **Summary**: Replace fragile row-index HLOOKUP formulas with horizontal XLOOKUP across column headers, including upward lookups into rows above the match row and right-to-left latest-revision searches. *Table — Why horizontal XLOOKUP outperforms HLOOKUP on wide financial schedules:* | Horizontal Lookup Task | HLOOKUP Capability | XLOOKUP Formula | | --- | --- | --- | | Exact match downward | Requires hardcoded row_index_num | XLOOKUP(B6, B2:F2, B4:F4, "MISSING") | | Upward lookup (row above key) | Impossible (#VALUE! if row < 1) | XLOOKUP(B7, B4:F4, B1:F1, "NO_MATCH") | | Rightmost duplicate period | Returns leftmost match only | XLOOKUP(B6, B2:F2, B4:F4, "MISSING", 0, -1) | - **Formula (Exact Horizontal Lookup & Rightmost Revision Formula)**: `=XLOOKUP(B6, B2:F2, B4:F4, "MISSING", 0, -1)` - **Formula (Upward Horizontal Lookup Into Header Row Above)**: `=XLOOKUP(MAX(B4:F4), B4:F4, B1:F1, "NONE")` ### XLOOKUP with multiple criteria: match two or more columns using boolean math - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-multiple-criteria-boolean-array/ - **Summary**: Look up a rate or owner across two criteria columns using XLOOKUP(1, (Col1=Key1)*(Col2=Key2), ReturnCol) without adding a helper column. *Table — Why boolean multiplication beats concatenating keys:* | Hub (A) | Tier (B) | Fee (C) | (A="West")*(B="Express") | | --- | --- | --- | --- | | East | Standard | 14 | 0 * 0 = 0 | | East | Express | 29 | 0 * 1 = 0 | | West | Standard | 18 | 1 * 0 = 0 | | West | Express | 35 | 1 * 1 = 1 (match) | | North | Standard | 16 | 0 * 0 = 0 | - **Formula (Multi-criteria XLOOKUP formula)**: `=XLOOKUP(1, (A2:A6=E2)*(B2:B6=F2), C2:C6, "No rate")` - **Formula (Adding numeric range criteria)**: `=XLOOKUP(1, (A2:A6=E2)*(B2:B6=F2), C2:C6)` ### XLOOKUP across multiple tables or sheets: chained fallback and VSTACK - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-multiple-sheets-chained-vstack/ - **Summary**: Search active and archived lookup tables in priority order by nesting XLOOKUP inside if_not_found or stacking ranges with VSTACK. *Table — Two clean ways to search multiple tables or worksheets:* | Active SKU (A) | Active Price (B) | Archive SKU (D) | Archive Price (E) | | --- | --- | --- | --- | | PT-101 | 48 | PT-088 | 32 | | PT-102 | 75 | PT-094 | 64 | | PT-103 | 120 | PT-101 | 41 (old archived price) | - **Formula (Chained XLOOKUP preserves table priority)**: `=XLOOKUP(G2, A2:A4, B2:B4, XLOOKUP(G2, D2:D4, E2:E4, "Not listed"))` - **Formula (Single-formula alternative with VSTACK)**: `=XLOOKUP(G2, VSTACK(A2:A4, D2:D4), VSTACK(B2:B4, E2:E4), "Not listed")` ### XLOOKUP: Return Blank ("") Instead of 0 on Empty Cells Without Erasing Real Zeros - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-return-blank-instead-of-zero-when-target-cell-is-empty/ - **Summary**: Stop XLOOKUP from turning blank cells into 0—and avoid the ="" trap that accidentally wipes out genuine 0 balances—using an ISBLANK return-array check. *Table — Why XLOOKUP(...) = "" breaks genuine numeric zeros:* | Account ID | Source Balance Cell | Naive &"" Trick | ISBLANK-Guarded XLOOKUP | | --- | --- | --- | --- | | ACC-101 | 1250 | "1250" (breaks SUM!) | 1250 (number) | | ACC-102 | Blank (pending audit) | "" | "" (clean blank string) | | ACC-103 | 0 (paid in full) | "0" (text) | 0 (true numeric zero!) | | ACC-999 | (Missing key) | "Not Found" | "Not Found" | - **Formula (Zero-Safe Blank-Preserving XLOOKUP Formula)**: `=IF(XLOOKUP(E2, A2:A5, ISBLANK(C2:C5), FALSE), "", XLOOKUP(E2, A2:A5, C2:C5, "Not Found"))` - **Formula (INDEX + MATCH + ISBLANK Single-Match Alternative)**: `=LET(idx, MATCH(E2, A2:A5, 0), IF(ISNA(idx), "Not Found", IF(ISBLANK(INDEX(C2:C5, idx)), "", INDEX(C2:C5, idx))))` ### XLOOKUP returns 0 for blank cells: return blank ("") without breaking real zeros - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-return-blank-instead-of-zero/ - **Summary**: Stop XLOOKUP and VLOOKUP from turning empty target cells into 0 (or 1900-01-00 dates) while keeping genuine 0 balances and numeric data types intact. *Table — Why & "" corrupts numbers and IF(XLOOKUP=0, "") deletes real zeros!:* | Account (A) | Balance (B) | XLOOKUP(...) & "" | XMATCH + COUNTBLANK Safe Output | | --- | --- | --- | --- | | ACC-1 (Zero bal) | 0 | "0" (Text!) | 0 (Numeric zero kept!) | | ACC-2 (Funded) | 450 | "450" (Text!) | 450 (Numeric kept!) | | ACC-3 (Unset blank) | (blank) | "0" in Excel when the raw blank lookup becomes 0 | "" (Clean blank!) | | ACC-9 (Missing ID) | — | #N/A | "Not Found" | - **Formula (Type-safe, real-zero-safe blank lookup formula)**: `=LET(i, XMATCH("ACC-3", A2:A4), IF(ISNA(i), "Not Found", IF(COUNTBLANK(INDEX(B2:B4, i))=1, "", INDEX(B2:B4, i))))` - **Formula (Verify real numeric zero is preserved)**: `=LET(i, XMATCH("ACC-1", A2:A4), IF(ISNA(i), "Not Found", IF(COUNTBLANK(INDEX(B2:B4, i))=1, "", INDEX(B2:B4, i))))` ### XLOOKUP return multiple columns (and reorder with CHOOSECOLS) - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-return-multiple-columns-or-entire-row/ - **Summary**: Fetch an entire multi-column record in one XLOOKUP call—and select or reorder non-adjacent columns dynamically with CHOOSECOLS. *Table — One multi-column XLOOKUP replaces N separate VLOOKUPs:* | EmpID (A) | Name (B) | Dept (C) | Salary (D) | | --- | --- | --- | --- | | E-101 | Nora | Finance | 98000 | | E-102 | Liam | Ops | 84000 | | E-103 | Priya | Product | 125000 | - **Formula (Multi-column XLOOKUP and CHOOSECOLS reordering formulas)**: `=XLOOKUP("E-103", A2:A4, B2:D4)` - **Formula (Select and reorder non-adjacent columns (Salary first, Name second))**: `=CHOOSECOLS(XLOOKUP("E-103", A2:A4, B2:D4), 3, 1)` - **Formula (Additional worked calculation)**: `=TEXTJOIN(" | ", TRUE, XLOOKUP("E-103", A2:A4, B2:D4))` - **Formula (Additional worked calculation)**: `=TEXTJOIN(": ", TRUE, CHOOSECOLS(XLOOKUP("E-103", A2:A4, B2:D4), 3, 1))` - **Formula (Additional worked calculation)**: `=COLUMNS(XLOOKUP("E-101", A2:A4, B2:D4))` - **Formula (Additional worked calculation)**: `=INDEX(XLOOKUP("E-102", A2:A4, B2:D4), 1, 3)` ### XLOOKUP wildcard partial match: remember match_mode = 2! - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-wildcard-partial-text-match/ - **Summary**: Search for substrings, prefixes, or patterns inside product descriptions with XLOOKUP("*", ..., 2) and escape literal asterisks with "~*". *Table — Why "*" & Term & "*" fails in XLOOKUP unless match_mode = 2:* | Pattern Type | Lookup Expression (match_mode = 2) | Matches | | --- | --- | --- | | Contains substring | "*" & Term & "*" | "ThinkPad X1 Carbon" for "X1" | | Begins with prefix | Term & "*" | "SKU-4402" for "SKU-" | | Fixed-width ? pattern | "INV-????-B" | "INV-2026-B" (4 chars) | | Literal asterisk * | SUBSTITUTE(Term, "*", "~*") | Matches literal "*" character | - **Formula (Partial-match XLOOKUP with match_mode = 2)**: `=XLOOKUP("*" & D2 & "*", A2:A5, B2:B5, "Not Found", 2)` - **Formula (Contrast default match_mode = 0 (literal "*" fails))**: `=XLOOKUP("*" & D2 & "*", A2:A5, B2:B5, "Not Found", 0)` - **Formula (Search for a literal substring containing wildcard characters)**: `=XLOOKUP("*" & SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"~","~~"),"*","~*"),"?","~?") & "*",A2:A5,B2:B5,"Not Found",2)` ### XLOOKUP across two identifier columns: OR matches and precedence - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-with-boolean-or-logic-multiple-id-columns/ - **Summary**: Normalize dual-column matches and choose between first matching row and primary-column priority. *Table — Beware the classic Boolean OR trap: TRUE + TRUE = 2, which misses XLOOKUP(1, ...)!:* | SKU (A) | UPC / Alias (B) | Price (C) | Search Input E2 Behavior | | --- | --- | --- | --- | | SKU-10 | UPC-881 | $45 | Matches either "SKU-10" or "UPC-881" | | SKU-20 | UPC-992 | $92 | E2 = "UPC-992" -> 0 + 1 > 0 -> $92 | | SKU-30 | SKU-30 (Same!) | $61 | E2 = "SKU-30" -> 1 + 1 = 2 > 0 -> 1 ($61 safe!) | | SKU-40 | UPC-664 | $130 | E2 = "UPC-000" -> "Not Found" | - **Formula (First matching row across either identifier column)**: `=IF(OR(COUNTBLANK(E2)>0,NOT(ISTEXT(E2)),COUNT(C2:C5)<>4),"Invalid inputs",XLOOKUP(1, --(((A2:A5 = E2) + (B2:B5 = E2)) > 0), C2:C5, "Not Found"))` - **Formula (Chained XLOOKUP fallback alternative (searches Col A first, then Col B))**: `=IF(OR(COUNTBLANK(E2)>0,NOT(ISTEXT(E2)),COUNT(C2:C5)<>4),"Invalid inputs",XLOOKUP(E2, A2:A5, C2:C5, XLOOKUP(E2, B2:B5, C2:C5, "Not Found")))` ### XLOOKUP with Logical & Inequality Criteria: XLOOKUP(1, (Cond1)*(Cond2), ...) - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-with-complex-logical-criteria-boolean-1-array/ - **Summary**: Search for the first or last row satisfying combined equality, greater-than (>), and range-bound conditions using XLOOKUP(1, (ColA = X) * (ColB >= Y), ReturnCol, "No Match"). *Table — Unlock >, <, <> and mixed AND/OR conditions inside XLOOKUP!:* | Supplier Row | Region = "West"? | Stock >= 50? | Price <= $25? -> Product | Match? | | --- | --- | --- | --- | --- | | V-101 ("East", 80, $22) | 0 (FALSE) | 1 (TRUE) | 1 -> 0*1*1 = 0 | Skipped | | V-102 ("West", 30, $20) | 1 (TRUE) | 0 (FALSE) | 1 -> 1*0*1 = 0 | Skipped (Low stock) | | V-103 ("West", 120, $24) | 1 (TRUE) | 1 (TRUE) | 1 -> 1*1*1 = 1 | 1st Match! ("V-103") | | V-105 ("West", 90, $19) | 1 (TRUE) | 1 (TRUE) | 1 -> 1*1*1 = 1 | Last Match (search_mode = -1) | - **Formula (First Row Matching Mixed Equality + Inequality Criteria)**: `=XLOOKUP(1, (B2:B6 = F2) * (C2:C6 >= G2) * (D2:D6 <= H2), A2:A6, "No Qualified Supplier")` - **Formula (Last Qualifying Row via Reverse Boolean Search (search_mode = -1))**: `=XLOOKUP(1, (B2:B6 = F2) * (C2:C6 >= G2) * (D2:D6 <= H2), A2:A6, "No Qualified Supplier", 0, -1)` ### XLOOKUP with IF: Negotiated Rate Override vs Standard Price Fallback - **URL**: https://sheets.arte-soft.com/en/learn/xlookup-with-if-conditional-rate-override-and-tier-fallback/ - **Summary**: Combine XLOOKUP, LET, and LEN-based IF logic so negotiated client overrides supersede standard catalog rates while preserving intentional 0-fee waivers and flagging unknown accounts. *Table — Why testing Override > 0 breaks zero-fee waivers and warranty replacements:* | Account | Standard_Rate | Negotiated_Override | Effective Billed Rate | | --- | --- | --- | --- | | CL-01 | 150 | (blank) | 150 (Standard fallback) | | CL-02 | 150 | 125 | 125 (Negotiated override) | | CL-03 | 200 | 0 | 0 (Waiver preserved via LEN > 0) | | CL-99 | — | — | "UNKNOWN_CLIENT" | - **Formula (Single-Pass LET + XLOOKUP + IF Override Formula)**: `=LET(std_rt, XLOOKUP(F2, $A$2:$A$5, $B$2:$B$5, "UNKNOWN_CLIENT"), ovr_rt, XLOOKUP(F2, $A$2:$A$5, $C$2:$C$5, ""), IF(std_rt = "UNKNOWN_CLIENT", "UNKNOWN_CLIENT", IF(LEN(ovr_rt) > 0, ovr_rt, std_rt)))` - **Formula (Extended Invoice Amount Check)**: `=IF(ISNUMBER(G2), ROUND(G2 * F3, 2), G2)` ### XMATCH function: exact position by default, next-larger tiers, and reverse search - **URL**: https://sheets.arte-soft.com/en/learn/xmatch-function-exact-and-last-match/ - **Summary**: Find 1-based item positions with XMATCH—defaulting safely to exact match, finding the last occurrence with search_mode -1, or matching unsorted bracket thresholds. *Table — Three upgrades XMATCH brings over classic MATCH:* | Formula | Mode | Result on [SKU-A, SKU-B, SKU-A, SKU-C] | | --- | --- | --- | | =XMATCH("SKU-A", A2:A5) | Default exact, first-to-last | 1 (first SKU-A) | | =XMATCH("SKU-A", A2:A5, 0, -1) | Exact, reverse last-to-first | 3 (latest SKU-A) | | =XMATCH(350, B2:B5, 1) | Exact or next larger in [100,250,500,1000] | 3 (500 bracket) | | =XMATCH("SKU-Z", A2:A5) | Missing key | #N/A | - **Formula (Find the latest occurrence with INDEX and XMATCH)**: `=INDEX(C2:C5, XMATCH(D2, A2:A5, 0, -1))` - **Formula (Next-larger tier and missing values)**: `=XMATCH(E2, B2:B5, 1)` ### XMATCH reverse search: find position of LAST occurrence (search_mode = -1) - **URL**: https://sheets.arte-soft.com/en/learn/xmatch-reverse-search-last-occurrence-position/ - **Summary**: Locate the bottom-most occurrence of a repeated event, SKU, or customer in a chronological log with XMATCH(Key, Range, 0, -1) and measure first-to-last row span. *Table — Replace clunky LOOKUP(2, 1/(Range=Key)) tricks with native XMATCH(..., 0, -1)!:* | Position | System Event Log (A2:A7) | Role for Target "Sync" | XMATCH Output | | --- | --- | --- | --- | | 1 (A2) | Login | — | — | | 2 (A3) | Sync | FIRST "Sync" (search_mode = 1) | Position = 2 | | 3–5 (A4:A6) | Export, Sync, Backup | Intermediate activity | — | | 6 (A7) | Sync | LAST "Sync" (search_mode = -1) | Position = 6 (Span = 6 - 2 = 4) | - **Formula (Position of LAST occurrence via XMATCH bottom-up search_mode = -1)**: `=IF(COUNTBLANK(D2)>0,0,IFNA(XMATCH(D2,A2:A7,0,-1),0))` - **Formula (Row span between FIRST and LAST occurrence)**: `=LET(firstPosition,IF(COUNTBLANK(D2)>0,0,IFNA(XMATCH(D2,A2:A7,0,1),0)),lastPosition,IF(COUNTBLANK(D2)>0,0,IFNA(XMATCH(D2,A2:A7,0,-1),0)),IF(firstPosition=0,"No matches",lastPosition-firstPosition))` ### XMATCH with Multiple Criteria: Locate Compound-Key Row Positions Cleanly - **URL**: https://sheets.arte-soft.com/en/learn/xmatch-with-multiple-boolean-criteria/ - **Summary**: Find the exact 1-based row index where three columns match simultaneously using XMATCH(1, (colA=x)*(colB=y)*(colC=z)) and retrieve target attributes with INDEX. *Table — Match compound rate-card keys without concatenating helper columns:* | Table Row | Region | Tier | SLA | Monthly Fee | Boolean Product (EMEA*Pro*24x7) | | --- | --- | --- | --- | --- | --- | | 1 | NA | Pro | 24x7 | $450 | 0 * 1 * 1 = 0 | | 2 | EMEA | Starter | 8x5 | $150 | 1 * 0 * 0 = 0 | | 3 | EMEA | Pro | 8x5 | $320 | 1 * 1 * 0 = 0 | | 4 | EMEA | Pro | 24x7 | $490 | 1 * 1 * 1 = 1 (Match Pos 4!) | | 5 | APAC | Pro | 24x7 | $510 | 0 * 1 * 1 = 0 | - **Formula (Compound-Key Row Position via XMATCH)**: `=IFNA(XMATCH(1, (A2:A6 = B8) * (B2:B6 = B9) * (C2:C6 = B10)), 0)` - **Formula (Compound-Key Fee Lookup via INDEX + XMATCH)**: `=LET(pos, IFNA(XMATCH(1, (A2:A6 = B8) * (B2:B6 = B9) * (C2:C6 = B10)), 0), IF(pos = 0, "Combination Not Offered", INDEX(D2:D6, pos)))` ### Discount irregular dated cash flows on a 365-day basis - **URL**: https://sheets.arte-soft.com/en/learn/xnpv-and-irregular-date-cash-flow-discounting/ - **Summary**: Discount cash flows arriving on exact irregular calendar dates using SUM(CashFlows / ((1 + Rate) ^ ((Dates - StartDate) / 365))). *Table — Use elapsed days for irregular cash-flow timing:* | Cash Flow Date (A) | Elapsed Days | Cash Flow (B) | PV @ 10% Discount Rate | | --- | --- | --- | --- | | 2026-01-01 (Close) | 0 days | -$10,000 | -$10,000.00 | | 2026-04-01 | 90 days | +$3,000 | +$2,930.15 | | 2026-10-01 | 273 days | +$4,500 | +$4,190.54 | | 2027-01-01 | 365 days | +$4,000 | +$3,636.36 (XNPV = +$757.06) | - **Formula (Dated present-value sum, rounded to cents)**: `=IF(D2<=-1,"Rate must exceed -100%",ROUND(SUM(B2:B5 / ((1 + D2) ^ ((A2:A5 - A2) / 365))), 2))` - **Formula (Undiscounted net cash flow)**: `=SUM(B2:B5)` ### XOR function: enforce mutually exclusive "either A or B, not both" rules - **URL**: https://sheets.arte-soft.com/en/learn/xor-function-exclusive-or/ - **Summary**: Validate two-way exclusive choices with XOR—and avoid the 3-condition odd-parity trap when checking 3+ columns. *Table — Two conditions: TRUE when exactly one condition holds:* | Order (A) | PromoAmt (B) | LoyaltyAmt (C) | XOR(B>0, C>0) | | --- | --- | --- | --- | | ORD-1 | 15 | 0 | TRUE (valid single discount) | | ORD-2 | 15 | 10 | FALSE (both stacked — block) | | ORD-3 | 0 | 0 | FALSE (no discount) | - **Formula (Validate exclusive journal or promo entries)**: `=XOR(B2>0, C2>0)` - **Formula (The 3+ argument trap: XOR tests odd parity, not "only one")**: `=XOR(TRUE, TRUE, TRUE)` ### Yamazumi Operator Balance, Takt & Line Efficiency Formula - **URL**: https://sheets.arte-soft.com/en/learn/yamazumi-operator-balance-chart-takt-time-and-line-efficiency-formula/ - **Summary**: Calculate Toyota Production System Customer Takt Time, Theoretical Minimum Operator Headcount ROUNDUP(Total_Work_Sec / Takt_Sec, 0), Yamazumi Line-Balance Efficiency Total_Work / (N_ops * Bottleneck_Sec), and Takt Compliance. *Table — Balance Yamazumi operator work stacks against Takt Time AND bottleneck cycle pace!:* | Yamazumi Assembly Metric (27,000s / 450 u, Work=189s, Bottleneck=54s, 4 Ops) | Formula | Verified Output | | --- | --- | --- | | Customer Takt Time (sec/unit) | Net_Available_Sec / Customer_Demand | 60.00 sec/unit | | Theoretical Min Headcount | ROUNDUP(Total_Work_Sec / Takt_Sec, 0) | 4 Operators | | Yamazumi Line-Balance Eff | Total_Work_Sec / (N_Ops * Bottleneck_Sec) | 0.8750 (87.50% Line Balance) | | Tallest-Bar Takt Gate | Bottleneck_Sec <= Takt_Sec | Takt Compliant: Meets Demand | - **Formula (Yamazumi Line-Balance Efficiency Formula)**: `=LET(av_s, B2, dm_u, B3, wk_t, B4, bn_c, B5, op_n, B6, IF(OR(av_s <= 0, dm_u <= 0, wk_t <= 0, bn_c <= 0, op_n < 1, wk_t > op_n * bn_c), "Invalid Yamazumi Study", ROUND(wk_t / (op_n * bn_c), 4)))` - **Formula (Bottleneck Takt Breach Simulation (Set Tallest Station = 65 sec))**: `=IF(ISTEXT(E4), E4, IF(B5 > E2, "Takt Breach: Bottleneck Exceeds Takt", "Takt Compliant: Meets Demand"))` ### Yang-Zhang Minimum-Variance OHLC Volatility Formula (Overnight + Intraday) - **URL**: https://sheets.arte-soft.com/en/learn/yang-zhang-overnight-jump-and-intraday-ohlc-volatility/ - **Summary**: Combine overnight gap variance v_o, open-to-close variance v_c, and Rogers-Satchell intraday variance v_rs using Yang & Zhang’s (2000) optimal weight k = 0.34 / (1.34 + (N + 1)/(N - 1)). *Table — Capture both overnight earnings gaps and intraday wicks without drift bias!:* | Variance Component (N = 21 Days) | Daily Variance | Weight in Yang-Zhang | Contribution | | --- | --- | --- | --- | | Overnight Jump Variance (v_o) | 0.000120 | 1.0000 | 0.0001200 | | Open-to-Close Variance (v_c) | 0.000250 | k = 0.1393 | 0.0000348 | | Rogers-Satchell Intraday (v_rs) | 0.000180 | 1 - k = 0.8607 | 0.0001549 (Ann Vol = 27.9389%) | - **Formula (Annualized Yang-Zhang Volatility % from Component Variances)**: `=IF(OR(B2 < 0, B3 < 0, B4 < 0, B5 < 2, B6 <= 0), "Invalid Variance or Sample N", ROUND(100 * SQRT(B6 * (B2 + (0.34 / (1.34 + (B5 + 1) / (B5 - 1))) * B3 + (1 - (0.34 / (1.34 + (B5 + 1) / (B5 - 1)))) * B4)), 4))` - **Formula (Optimal Open-to-Close Weight k(N) & Overnight Jump Variance Share %)**: `=IF(B5 < 2, 0, ROUND(0.34 / (1.34 + (B5 + 1) / (B5 - 1)), 4))` ### Yarkovsky Effect Formula: Asteroid Thermal Recoil & Orbital Drift (da/dt) - **URL**: https://sheets.arte-soft.com/en/learn/yarkovsky-thermal-recoil-asteroid-semimajor-axis-drift-formula/ - **Summary**: Calculate diurnal thermal-photon recoil acceleration a_Y and secular semimajor axis drift da/dt (m/yr) driving near-Earth asteroids like (101955) Bennu and Apophis. *Table — How afternoon infrared photons push 500-meter asteroids hundreds of meters per year!:* | Asteroid Diameter D (ρ = 1190 kg/m³, a = 1.126 AU, f_Y = 0.14) | Transverse Recoil Scaling | Semimajor Axis Drift \|da/dt\| (m/yr) | Planetary Defense Impact | | --- | --- | --- | --- | | D = 500 m (Bennu-Scale Rubble Pile) | 1 / D baseline | 459.5 m/yr | Dominates keyhole trajectory uncertainty | | D = 1,000 m (Kilometer NEA) | 0.5× recoil | 229.8 m/yr | Exact inverse-diameter 1/D law | | Invalid D <= 0, ρ <= 0, or A >= 1 | Error Guard | "Invalid Asteroid Parameters" | Physical Bounds Guard | - **Formula (Secular Yarkovsky Semimajor Axis Drift Rate |da/dt| (Meters per Julian Year))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 >= 1, B6 <= 0), "Invalid Asteroid Parameters", ROUND(2 * ((3 * (1 - B5) * 1361 * B6) / (2 * B2 * B3 * (B4 ^ 2) * 299792458)) / SQRT(1.3271244E20 / ((B4 * 1.4959787E11) ^ 3)) * 31557600, 1))` - **Formula (Transverse Thermal-Recoil Acceleration a_trans (pm/s² = 10^-12 m/s²))**: `=IF(OR(B2 <= 0, B3 <= 0, B4 <= 0, B5 < 0, B5 >= 1, B6 <= 0), "Invalid Asteroid Parameters", ROUND(((3 * (1 - B5) * 1361 * B6) / (2 * B2 * B3 * (B4 ^ 2) * 299792458)) * 1E12, 3))` ### Yarn Twist Factor (Ktex), Diameter & Helix Angle Formula - **URL**: https://sheets.arte-soft.com/en/learn/yarn-twist-multiplier-tm-turns-per-meter-and-helix-angle-strength-formula/ - **Summary**: Calculate Metric Twist Factor K_tex = TPM * SQRT(Tex), Equivalent Yarn Cylinder Diameter d (mm), Surface Fiber Helix Angle theta (deg), and Axial Obliquity cos^2(theta) Factor. *Table — Why K_tex = TPM * SQRT(Tex) preserves identical surface fiber helix angle—and why over-twisting drops strength via cos^2(theta)!:* | Spinning Twist KPI (25 Tex, 750 TPM, Yarn Packing rho = 0.90 g/cm³) | Formula | Verified Output | | --- | --- | --- | | Metric Twist Factor K_tex | Turns_Per_Meter * SQRT(Tex) | 3,750.00 (5,500.00 @ 1,100 TPM) | | Effective Yarn Diameter d (mm) | SQRT((4 * Tex) / (1000 * PI() * rho_y)) | 0.1881 mm | | Surface Helix Angle theta (deg) | ATAN(PI() * (d_mm/1000) * TPM)*180/PI() | 23.90° (33.02° @ 1,100 TPM) | | Axial Obliquity Factor cos²(theta) | COS(theta_rad)^2 | 0.836 (0.703 @ 1,100 TPM!) | - **Formula (Koechlin Metric Twist Factor & Surface Fiber Helix Angle Formula)**: `=LET(tx_y, B2, tp_m, B3, rh_y, B4, IF(OR(tx_y <= 0, tp_m <= 0, rh_y < 0.4, rh_y > 1.5), "Invalid Spinning Input", LET(dm_m, SQRT((4 * tx_y) / (1000 * PI() * rh_y)), ROUND(ATAN(PI() * (dm_m / 1000) * tp_m) * 180 / PI(), 2))))` - **Formula (High-Twist Crepe / Voile Obliquity Strength Drop Check (Set Twist = 1,100 TPM))**: `=IF(ISTEXT(E4), E4, LET(dm_m, SQRT((4 * B2) / (1000 * PI() * B4)), th_r, ATAN(PI() * (dm_m / 1000) * B3), ROUND((COS(th_r) ^ 2), 3)))` ### YEAR, MONTH, and DAY: extract date parts and assign fiscal years - **URL**: https://sheets.arte-soft.com/en/learn/year-month-day-extract-from-date/ - **Summary**: Pull integer year, month (1–12), and day (1–31) numbers out of stored serial dates for grouping, and map April-start fiscal years with a one-line IF. *Table — Extract integer components from a stored date:* | Date | YEAR | MONTH | DAY | Fiscal year (Apr–Mar) | | --- | --- | --- | --- | --- | | 2026-03-15 (46096) | 2026 | 3 | 15 | 2026 | | 2026-04-10 (46122) | 2026 | 4 | 10 | 2027 | - **Formula (Compute an April-to-March fiscal year)**: `=IF(MONTH(A2)>=4,YEAR(A2)+1,YEAR(A2))` - **Formula (Guard blank cells against the 1900 epoch trap)**: `=IF(A4="","",YEAR(A4))` ### Year-to-Date (YTD), Month-to-Date (MTD), and prior-year totals - **URL**: https://sheets.arte-soft.com/en/learn/year-to-date-ytd-and-mtd-sum-formula/ - **Summary**: Calculate cumulative YTD, MTD, and Same-Period-Last-Year (PYTD) totals anchored to a single As-Of reporting date. *Table — Anchor YTD, MTD, and Prior-Year YTD to one As-Of cell:* | TxDate (A) | Sales (B) | Window (AsOf = 2026-04-15) | | --- | --- | --- | | 2025-02-10 | 800 | PYTD (2025-01-01..2025-04-15) | | 2025-09-01 | 900 | After PYTD cutoff | | 2026-01-20 | 600 | YTD only | | 2026-04-10 | 500 | Both YTD and MTD | | 2026-04-25 | 700 | Future (after AsOf) | - **Formula (YTD, MTD, and Prior-Year YTD formulas)**: `=SUMIFS(B2:B6, A2:A6, ">=" & DATE(YEAR(C2), 1, 1), A2:A6, "<" & (INT(C2)+1))` - **Formula (Prior-Year YTD (apples-to-apples YoY window))**: `=SUMIFS(B2:B6, A2:A6, ">=" & DATE(YEAR(C2) - 1, 1, 1), A2:A6, "<" & (EDATE(INT(C2), -12)+1))` ### YEARS Algorithm for Pulmonary Embolism: Dynamic D-Dimer Cutoff (1000 vs 500) - **URL**: https://sheets.arte-soft.com/en/learn/years-algorithm-age-or-years-adjusted-d-dimer-pulmonary-embolism/ - **Summary**: Evaluate Tom van der Hulle’s 3-item YEARS pulmonary embolism rule (DVT signs, hemoptysis, PE most likely diagnosis) and dynamic D-dimer threshold (< 1,000 ng/mL if 0 YEARS items vs < 500 ng/mL if >= 1 YEARS item) to safely reduce unnecessary CTPA scans. *Table — How YEARS safely avoids 14% of chest CT angiograms with simultaneous D-dimer testing!:* | YEARS Item Count (0–3) | Active D-Dimer Rule-Out Cutoff | Example D-Dimer = 740 ng/mL | 3-Month VTE Miss Rate | | --- | --- | --- | --- | | 0 YEARS Items Present | < 1,000 ng/mL FEU | PE Ruled Out — No CTPA Needed! | 0.4% (Well Below 2% Safety Bar) | | >= 1 YEARS Item Present | < 500 ng/mL FEU | 740 >= 500 -> Order CTPA! | 0.8% Overall Cohort | | Any YEARS Count + D-Dimer = 380 ng/mL | < 500 (and < 1,000) | PE Ruled Out — No CTPA Needed! | Universal Low D-Dimer Clearance | - **Formula (Dynamic YEARS D-Dimer Threshold (1,000 vs 500 ng/mL FEU))**: `=IF(OR(COUNTA(B2:B4) < 3, SUMPRODUCT((B2:B4 <> 0) * (B2:B4 <> 1)) > 0, B5 < 0), "Invalid YEARS Input", IF(SUM(B2:B4) = 0, 1000, 500))` - **Formula (YEARS Algorithm CTPA Imaging vs PE Rule-Out Disposition)**: `=IF(OR(COUNTA(B2:B4) < 3, SUMPRODUCT((B2:B4 <> 0) * (B2:B4 <> 1)) > 0, B5 < 0), "Invalid YEARS Input", IF(B5 < IF(SUM(B2:B4) = 0, 1000, 500), "PE Ruled Out (No CTPA Needed)", "CTPA Indicated (D-Dimer >= Cutoff)"))` ### Youden’s J Index, Likelihood Ratios (LR+ / LR-) & Fagan Post-Test Probability - **URL**: https://sheets.arte-soft.com/en/learn/youden-j-statistic-diagnostic-likelihood-ratios-and-fagan-post-test-odds/ - **Summary**: Evaluate ROC cutoff optimality via Youden’s J = Sens + Spec - 1, compute Positive and Negative Likelihood Ratios, and update pre-test prevalence to post-test probability via Fagan’s odds rule. *Table — Connecting ROC cutoff selection (Youden’s J) to Fagan Bayesian odds updating:* | Diagnostic Metric | Formula | Assay (Sens=90%, Spec=85%, Prev=20%) | | --- | --- | --- | | Youden’s J Statistic | Sens + Spec - 1 | 0.7500 | | Positive Likelihood Ratio (LR+) | Sens / (1 - Spec) | 6.0000 | | Negative Likelihood Ratio (LR-) | (1 - Sens) / Spec | 0.1176 | | Post-Test Prob Given + / - | Odds_pre*LR / (1 + Odds_pre*LR) | 0.6000 (60.0%) / 0.0286 (2.86%) | - **Formula (Youden’s J & Positive Likelihood Ratio Formulas)**: `=IF(B3 = 1, "INF_LR", ROUND(B2 / (1 - B3), 4))` - **Formula (Fagan Post-Test Probability Formula)**: `=LET(odds_pre, B4 / (1 - B4), lr_pos, B2 / (1 - B3), odds_post, odds_pre * lr_pos, ROUND(odds_post / (1 + odds_post), 4))` ### Young-Laplace Capillary Pressure & Jurin's Law Capillary Rise - **URL**: https://sheets.arte-soft.com/en/learn/young-laplace-capillary-pressure-and-jurin-capillary-rise/ - **Summary**: Calculate signed capillary pressure and rise or depression, while distinguishing tube radius from the curvature radius used for a spherical droplet. - **Formula (Calculate signed tube pressure)**: `=IF(COUNT(B2:B4)<>3,"Enter numeric tension,radius,angle",IF(OR(B2<0,B3<=0,B4<0,B4>180),"Require tension>=0,radius>0,angle 0..180",IF(B4=90,0,2*B2*COS(RADIANS(B4))/B3)))` - **Formula (Balance pressure with hydrostatic head)**: `=IF(NOT(ISNUMBER(E2)),E2,IF(COUNT(B5:B6)<>2,"Enter numeric density and gravity",IF(OR(B5<=0,B6<=0),"Require density and gravity>0",1000*E2/(B5*B6))))` - **Formula (Compare a separate spherical droplet)**: `=IF(COUNT(B2,B7)<>2,"Enter numeric tension and sphere radius",IF(OR(B2<0,B7<=0),"Require tension>=0 and sphere radius>0",2*B2/B7))` ### Yukawa Screened Nuclear Potential & Pion Compton Force Range - **URL**: https://sheets.arte-soft.com/en/learn/yukawa-screened-nuclear-potential-and-compton-pion-range/ - **Summary**: Calculate the Reduced Compton Force Range R = hbar*c / (m * c^2) (fm) of a massive exchange boson and Hideki Yukawa's exponentially screened nuclear potential V(r) = -g_eff * EXP(-r / R) / r (MeV). *Table — Why the strong nuclear force binds nucleons tightly at 1.4 fm yet vanishes at 5 fm!:* | Nucleon Separation r (fm) (Pion m c^2 = 139.57 MeV -> R = 1.4138 fm) | Screening Factor EXP(-r / R) | Unscreened -g / r (MeV) | Yukawa Potential V(r) (MeV) | | --- | --- | --- | --- | | Core Equilibrium (r = 1.50 fm) | 0.3461 | -7.333 MeV | -2.538 MeV (Strong Binding) | | Nuclear Surface (r = 3.00 fm) | 0.1198 | -3.667 MeV | -0.439 MeV | | Outside Nucleus (r = 5.00 fm) | 0.0291 (97.1% screened!) | -2.200 MeV | -0.064 MeV (Negligible) | - **Formula (Yukawa Force Range R = 197.327 / (m * c^2) (Femtometers))**: `=IF(B2 <= 0, "Boson Mass Must Be > 0", ROUND(197.327 / B2, 4))` - **Formula (Screened Yukawa Potential Energy V(r) = -g_eff * EXP(-r / R) / r (MeV))**: `=IF(OR(B2 <= 0, B3 <= 0), "Mass and Radius Must Be > 0", ROUND((-B4 * EXP(-B3 / (197.327 / B2))) / B3, 3))` ### Yule’s Q & Yule’s Y Coefficient of Colligation for 2×2 Contingency Tables - **URL**: https://sheets.arte-soft.com/en/learn/yules-q-and-yules-y-colligation-2x2-association-coefficients/ - **Summary**: Normalize 2×2 odds ratios onto [-1, +1] marginal-invariant scales using George Udny Yule’s association Q = (ad - bc) / (ad + bc) and colligation Y = (SQRT(ad) - SQRT(bc)) / (SQRT(ad) + SQRT(bc)). *Table — Why Pearson φ shrinks when disease prevalence changes—while Yule’s Q and Y stay invariant!:* | 2×2 Contingency Table (a, b, c, d) | Odds Ratio ad / bc | Yule’s Q (-1 to +1) | Yule’s Colligation Y (-1 to +1) | | --- | --- | --- | --- | | Diagnostic Cohort (42, 14, 12, 52) | 13.00 | +0.8571 (Strong Positive) | +0.5657 | | Statistical Independence (30, 30, 20, 20) | 1.00 | 0.0000 (Null Association) | 0.0000 | | Degenerate Table (ad + bc = 0) | Undefined | "Degenerate Zero-Cross-Product Table" | Guard | - **Formula (Yule’s Q Coefficient of Association: (a*d - b*c) / (a*d + b*c))**: `=IF(OR(MIN(B2:C3) < 0, (B2 * C3 + C2 * B3) = 0), "Invalid or Degenerate 2x2 Table", ROUND(((B2 * C3) - (C2 * B3)) / ((B2 * C3) + (C2 * B3)), 4))` - **Formula (Yule’s Y Coefficient of Colligation: (SQRT(ad) - SQRT(bc)) / (SQRT(ad) + SQRT(bc)))**: `=IF(OR(MIN(B2:C3) < 0, (B2 * C3 + C2 * B3) = 0), "Invalid or Degenerate 2x2 Table", ROUND((SQRT(B2 * C3) - SQRT(C2 * B3)) / (SQRT(B2 * C3) + SQRT(C2 * B3)), 4))` ### Highlight Every Other Row & N-Row Zebra Bands (ISEVEN, ROW & MOD) - **URL**: https://sheets.arte-soft.com/en/learn/zebra-stripe-every-other-row-iseven-mod-formula/ - **Summary**: Generate TRUE/FALSE zebra-striping flags for alternating single rows using ISEVEN(ROW(A2)) or header-anchored MOD(ROW(A2) - ROW($A$2), 2) = 1, and group N-row visual blocks via MOD(INT((ROW(A2) - ROW($A$2)) / N), 2) = 1. *Table — Build dynamic zebra striping and multi-row block bands that survive inserted rows!:* | Data Row Position (Starting at A2) | Alternating Formula MOD(ROW()-ROW($A$2),2)=1 | 3-Row Band Formula (N = 3) | Visual Shading State | | --- | --- | --- | --- | | Rows 2, 3, 4 (Offsets 0, 1, 2) | FALSE, TRUE, FALSE | FALSE, FALSE, FALSE (Band 0) | White 3-row group | | Rows 5, 6, 7 (Offsets 3, 4, 5) | TRUE, FALSE, TRUE | TRUE, TRUE, TRUE (Band 1) | Shaded 3-row group | | Even Worksheet Row Test ISEVEN(ROW(A2)) | TRUE on Row 2, FALSE on Row 3 | 1-Row Parity Check | Classic even-row stripe | - **Formula (Header-Anchored Alternating Row Rule: MOD(ROW(A3) - ROW($A$2), 2) = 1)**: `=MOD(ROW(A3) - ROW($A$2), 2) = 1` - **Formula (Multi-Row N-Line Banded Block Rule: MOD(INT((ROW - Start) / N), 2) = 1)**: `=IF(B2 < 1, "Invalid Band Size", MOD(INT((ROW(A5) - ROW($A$2)) / B2), 2) = 1)` ### Ziegler-Nichols Closed-Loop Ku & Pu PID Tuning Formula - **URL**: https://sheets.arte-soft.com/en/learn/ziegler-nichols-ultimate-gain-oscillation-period-and-pid-tuning-formula/ - **Summary**: Calculate Classic Ziegler-Nichols Ultimate-Sensitivity PID Parameters: Proportional Gain Kp = 0.6*Ku, ISA Integral Reset Time Ti = 0.5*Pu (s), Parallel Integral Gain Ki = Kp/Ti (s⁻¹), and Parallel Derivative Gain Kd = Kp*Td (s). *Table — Never mix up ISA Reset Time Ti (s) with Parallel Integral Gain Ki = Kp / Ti in PLC blocks!:* | Ziegler-Nichols Classic PID Parameter (Ku = 8.0, Pu = 4.0 s) | Formula | Verified Output | | --- | --- | --- | | Proportional Gain Kp | 0.60 * Ku | 4.80 | | ISA Integral Time Ti (s) | 0.50 * Pu | 2.00 s (5.00 s @ Pu = 10 s) | | Parallel Integral Gain Ki (s⁻¹) | Kp / Ti = (1.20 * Ku) / Pu | 2.40 s⁻¹ (0.96 s⁻¹ @ Pu = 10 s) | | Parallel Derivative Gain Kd (s) | Kp * (0.125 * Pu) | 2.40 s (6.00 s @ Pu = 10 s) | - **Formula (Parallel PID Integral Gain Ki = (1.2 * Ku) / Pu Formula)**: `=LET(ku_g, B2, pu_s, B3, IF(OR(ku_g <= 0, pu_s <= 0), "Invalid Ultimate Ku / Pu Input", LET(kp_g, 0.6 * ku_g, ti_s, 0.5 * pu_s, ROUND(kp_g / ti_s, 4))))` - **Formula (Slow Thermal-Jacket Loop Scaling Check (Set Ultimate Period Pu = 10.0 s))**: `=IF(ISTEXT(E4), E4, ROUND((0.6 * B2) * (0.125 * B3), 4))` ### Zillmerized Policy Reserve & Acquisition DAC Formula - **URL**: https://sheets.arte-soft.com/en/learn/zillmerized-net-level-premium-reserve-and-acquisition-dac-formula/ - **Summary**: Calculate Net Level Premium Life Reserve V_t = SA * (1 - a_{x+t} / a_x) and August Zillmer’s (1863) acquisition-adjusted reserve V_t^Z = V_t - z_dac * SA * (a_{x+t} / a_x) with zero-floor statutory flooring. *Table — Resolve Year-1 life insurance statutory surplus strain via Zillmerization!:* | Actuarial Reserve Metric (SA=$100k, a_x=16, a_{x+t}=12, z=4%) | Formula | Verified Output | | --- | --- | --- | | Net Level Premium Reserve (V_t) | SA * (1 - a_{x+t} / a_x) | $25,000.00 | | Unamortized Zillmer DAC Deduction | z_dac * SA * (a_{x+t} / a_x) | $3,000.00 | | Unfloored Zillmer Reserve (V_t^Z) | V_t - Unamortized_DAC | $22,000.00 | | Statutory Zero-Floored Reserve | MAX(0, V_t^Z) | $22,000.00 ($0 at a_{x+1}=15.68) | - **Formula (Net Level Reserve vs Zillmer Reserve Formula)**: `=LET(sa_vl, B2, ax_in, B3, ax_at, B4, z_dc, B5, IF(OR(sa_vl <= 0, ax_in <= 1, ax_at < 0, ax_at > ax_in, z_dc < 0, z_dc > 0.1), "Invalid Zillmer Input", ROUND(sa_vl * (1 - (1 + z_dc) * (ax_at / ax_in)), 2)))` - **Formula (Statutory Zero-Floored Reserve Formula)**: `=IF(ISTEXT(E4), E4, MAX(0, E4))` ### Zipf’s Law Rank-Frequency Power Law & Heaps’ Vocabulary Growth Formula - **URL**: https://sheets.arte-soft.com/en/learn/zipfs-law-word-frequency-rank-and-heaps-vocabulary-growth/ - **Summary**: Calculate Zipf’s rank-frequency count f(r) = f_1 / (r ^ s) for search queries, cities, and natural-language tokens alongside Heaps’ Law distinct vocabulary size V(N) = K * (N ^ beta) for LLM and inverted-index sizing. *Table — Size search-engine inverted indexes, CDN caches, and LLM token vocabularies with power laws!:* | Corpus Power-Law Model | Parameters | Evaluated Target | Predicted Count | | --- | --- | --- | --- | | Zipf’s Law at Rank r = 10 | f1 = 70,000, s = 1.02 | 70000 / (10 ^ 1.02) | 6,684.9 occurrences | | Zipf’s Law at Rank r = 100 | f1 = 70,000, s = 1.02 | 70000 / (100 ^ 1.02) | 638.4 occurrences | | Heaps’ Law at N = 1,000,000 Tokens | K = 25, beta = 0.52 | 25 * (1000000 ^ 0.52) | 32,956 unique vocabulary terms | - **Formula (Zipf’s Law Expected Frequency at Rank r: f(r) = f_1 / (r ^ s))**: `=IF(OR(B2 <= 0, B3 < 1, B4 <= 0), "Invalid Corpus Parameters", ROUND(B2 / (B3 ^ B4), 1))` - **Formula (Heaps’ Law Unique Vocabulary Size V(N) = K * (N ^ beta))**: `=IF(OR(B5 < 1, B6 <= 0, B7 <= 0, B7 >= 1), "Invalid Corpus Parameters", ROUND(B6 * (B5 ^ B7), 0))` ### Zivi Slip Ratio & Two-Phase Void Fraction Formula: Annular vs Homogeneous Holdup - **URL**: https://sheets.arte-soft.com/en/learn/zivi-and-homogeneous-two-phase-void-fraction-slip-ratio-formula/ - **Summary**: Calculate cross-sectional vapor void fraction alpha, liquid holdup (1 - alpha), and static mixture density rho_TP in gas-liquid pipes using S. M. Zivi’s (1964) minimum-entropy slip ratio S = (rho_L / rho_G)^(1/3) versus Homogeneous No-Slip (S = 1). *Table — Why lighter gas outruns liquid film (S > 1) — drastically lowering vapor void fraction below homogeneous predictions!:* | Two-Phase Quantity (x = 0.10, rho_L = 800 kg/m^3, rho_G = 10 kg/m^3 -> Ratio = 80) | Homogeneous Model (S = 1.00) | Zivi Minimum-Entropy Model (S = 80^(1/3) = 4.3089) | | --- | --- | --- | | Velocity Slip Ratio S = u_G / u_L | 1.0000 | 4.3089 | | Cross-Sectional Vapor Void Fraction alpha | 0.8989 (89.9% gas area) | 0.6735 (67.4% gas area) | | Cross-Sectional Liquid Holdup (1 - alpha) | 0.1011 (10.1% liquid) | 0.3265 (32.7% liquid) | | Static Gravitational Head Density rho_TP | 89.89 kg/m^3 | 267.95 kg/m^3 (3x heavier static head!) | - **Formula (Zivi (1964) Separated-Flow Vapor Void Fraction alpha_Zivi)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B4 >= B3), "Requires 0 < Quality x < 1 and 0 < rho_G < rho_L", ROUND(1 / (1 + ((B3 / B4) ^ (1 / 3)) * ((1 - B2) / B2) * (B4 / B3)), 4))` - **Formula (Homogeneous No-Slip Void Fraction alpha_H (S = 1) for Comparison)**: `=IF(OR(B2 <= 0, B2 >= 1, B3 <= 0, B4 <= 0, B4 >= B3), "Requires 0 < Quality x < 1 and 0 < rho_G < rho_L", ROUND(1 / (1 + ((1 - B2) / B2) * (B4 / B3)), 4))` ### Springate S-Score & Zmijewski Distress Formula - **URL**: https://sheets.arte-soft.com/en/learn/zmijewski-probit-and-springate-financial-distress-score-formulas/ - **Summary**: Cross-validate private-firm credit risk without market-cap inputs using Gordon Springate’s (1978) 4-factor S-Score (0.862 cutoff) and Mark Zmijewski’s (1984) distress index. *Table — Screen private middle-market borrowers where Altman’s market-cap X_4 is unavailable!:* | Forensic Credit Model | Formula | Verified Output | | --- | --- | --- | | Springate (1978) 4-Factor S-Score | 1.03*WC/TA + 3.07*EBIT/TA + 0.66*EBT/CL + 0.40*S/TA | 1.2780 (>= 0.862 Solvent) | | Zmijewski (1984) Distress Index | -4.336 - 4.513*NI/TA + 5.679*TL/TA + 0.004*CA/CL | -1.7593 (< 0 Solvent) | | Zmijewski Under Leveraged Loss Stress | NI/TA = -0.10, TL/TA = 0.90 | +1.2344 (>= 0 Distress!) | | Combined Dual-Screen Credit Status | IF(AND(S >= 0.862, X_Zm < 0), ...) | Dual Pass: Solvent | - **Formula (Gordon Springate (1978) S-Score Formula)**: `=IF(B5 < 0, "Invalid Ratio Input", ROUND(1.03 * B2 + 3.07 * B3 + 0.66 * B4 + 0.4 * B5, 4))` - **Formula (Mark Zmijewski (1984) Financial Distress Index Formula)**: `=IF(OR(B7 < 0, B8 < 0), "Invalid Ratio Input", ROUND(-4.336 - 4.513 * B6 + 5.679 * B7 + 0.004 * B8, 4))` ### Fixed annual date-band lookup: season labels and conventional zodiac bands - **URL**: https://sheets.arte-soft.com/en/learn/zodiac-sign-or-season-lookup-from-month-day/ - **Summary**: Use month/day thresholds for recurring annual categories, including bands crossing January 1. *Table — Represent a band crossing January 1 with two anchors:* | Sample Date (A) | MMDD Key | Matched Zodiac | Illustrative fixed season label | | --- | --- | --- | --- | | 1995-01-10 | 110 (>= 101) | Capricorn | Winter (101..319) | | 2026-03-25 | 325 (>= 321) | Aries | Spring (320..620) | | 2004-08-05 | 805 (>= 723) | Leo | Summer (621..921) | | 1988-12-28 | 1228 (>= 1222) | Capricorn (Wrap!) | Winter (1221..1231) | - **Formula (Conventional zodiac label lookup)**: `=XLOOKUP(MONTH(A2)*100 + DAY(A2), {101;120;219;321;420;521;621;723;823;923;1023;1122;1222}, {"Capricorn";"Aquarius";"Pisces";"Aries";"Taurus";"Gemini";"Cancer";"Leo";"Virgo";"Libra";"Scorpio";"Sagittarius";"Capricorn"}, "", -1)` - **Formula (Illustrative fixed Northern Hemisphere season bands)**: `=XLOOKUP(MONTH(A2)*100 + DAY(A2), {101;320;621;922;1221}, {"Winter";"Spring";"Summer";"Autumn";"Winter"}, "", -1)` ### Zuber Critical Heat Flux (CHF / Boiling Crisis q″_max) Formula - **URL**: https://sheets.arte-soft.com/en/learn/zuber-critical-heat-flux-chf-nucleate-boiling-burnout-limit/ - **Summary**: Calculate the hydrodynamic Departure from Nucleate Boiling (DNB / burnout) ceiling q″_max = 0.131 * h_fg * SQRT(ρ_v) * (σ * g * (ρ_l - ρ_v))^0.25 (kW/m^2) via Novak Zuber’s Helmholtz-instability theory. *Table — Predicting boiler and nuclear-fuel burnout from Rayleigh-Taylor & Kelvin-Helmholtz vapor-jet collapse!:* | Working Fluid (Saturated Pool) | Latent Heat h_fg (kJ/kg) | Zuber CHF q″_max (kW/m^2) | DNBR Safety Margin at 250 kW/m^2 | | --- | --- | --- | --- | | Water at 1 atm (100 °C) | 2,257.0 kJ/kg | 1,108.9 kW/m^2 | DNBR = 4.44 (Safe > 1.3) | | Refrigerant R-134a (Chiller) | 198.6 kJ/kg | 307.9 kW/m^2 | DNBR = 1.23 (Near Burnout!) | | Invalid ρ_l <= ρ_v or σ <= 0 | Undefined | "Invalid Fluid Saturation Props" | Critical-Point Guard | - **Formula (Zuber Critical Heat Flux q″_max (kW/m^2))**: `=IF(OR(B2 <= 0, B3 <= B4, B4 <= 0, B5 <= 0), "Invalid Fluid Saturation Props", ROUND(0.131 * B2 * SQRT(B4) * ((B5 * 9.80665 * (B3 - B4)) ^ 0.25), 1))` - **Formula (Departure from Nucleate Boiling Ratio (DNBR = q″_max / q″_operating))**: `=IF(OR(B2 <= 0, B3 <= B4, B4 <= 0, B5 <= 0, B6 <= 0), "Invalid Fluid Saturation Props", ROUND((0.131 * B2 * SQRT(B4) * ((B5 * 9.80665 * (B3 - B4)) ^ 0.25)) / B6, 2))` ### Žukauskas Crossflow Tube-Bank Nusselt Correlation (Shell & Economizer Bundles) - **URL**: https://sheets.arte-soft.com/en/learn/zukauskas-crossflow-tube-bank-heat-exchanger-nusselt-formula/ - **Summary**: Calculate staggered tube-bundle external crossflow Nusselt number Nu_D = 0.35 * (S_T / S_L)^0.2 * Re_D,max^0.60 * Pr^0.36 * (Pr / Pr_s)^0.25 across boiler economizers and air coolers. *Table — Why wake turbulence inside staggered tube bundles beats isolated single cylinders by 40%–70%!:* | Max Gap Reynolds Re_D,max (ST/SL = 1.25, Pr = 5.8, Pr_s = 4.2) | Leading Coeff C = 0.35*(ST/SL)^0.2 | Žukauskas Nu_D | Bundle Regime | | --- | --- | --- | --- | | Re_D,max = 18,000 (Design Crossflow) | 0.3659 | 266.99 | Mixed Subcritical Wake Buffeting | | Re_D,max = 36,000 (2× Velocity) | 0.3659 | 404.68 | Re^0.60 Scaling (+51.6%) | | Re_D,max < 1,000 or ST/SL >= 2 | Out of Correlation Band | "Outside Staggered Zukauskas Regime" | Regime Guard | - **Formula (Žukauskas Staggered Tube-Bank Average Nusselt Number Nu_D)**: `=IF(OR(B2 < 1000, B2 > 200000, B3 <= 0, B4 <= 0, B5 <= 0, B5 >= 2), "Outside Staggered Zukauskas Regime", ROUND((0.35 * (B5 ^ 0.2)) * (B2 ^ 0.6) * (B3 ^ 0.36) * ((B3 / B4) ^ 0.25), 2))` - **Formula (Wall-Temperature Prandtl Correction Factor (Pr / Pr_s)^0.25)**: `=IF(OR(B3 <= 0, B4 <= 0), "Outside Staggered Zukauskas Regime", ROUND((B3 / B4) ^ 0.25, 4))`