nist-gov/www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win
2025-03-05 18:59:57 +00:00

1453 lines
121 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" dir="ltr" prefix="content: http://purl.org/rss/1.0/modules/content/ dc: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ og: http://ogp.me/ns# rdfs: http://www.w3.org/2000/01/rdf-schema# schema: http://schema.org/ sioc: http://rdfs.org/sioc/ns# sioct: http://rdfs.org/sioc/types# skos: http://www.w3.org/2004/02/skos/core# xsd: http://www.w3.org/2001/XMLSchema# ">
<head>
<meta charset="utf-8" /><script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"37b7ccb661",applicationID:"1089704227"};;/*! For license information please see nr-loader-rum-1.283.2.min.js.LICENSE.txt */
(()=>{var e,t,r={122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},217:(e,t,r)=>{"use strict";r.d(t,{D0:()=>m,gD:()=>v,xN:()=>h});r(860).K7.genericEvents;const n="experimental.marks",i="experimental.measures",o="experimental.resources",a=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var s=r(614),c=r(944),u=r(384),l=r(122);const d="[data-nr-mask]",f=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(i)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:s.wk,inactiveMs:s.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){a(t)?e.mask_selector="".concat(t,",").concat(d):""===t||null===t?e.mask_selector=d:(0,c.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){a(t)?e.block_selector+=",".concat(t):""!==t&&(0,c.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,c.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}},g={},p="All configuration objects require an agent identifier!";function m(e){if(!e)throw new Error(p);if(!g[e])throw new Error("Configuration for ".concat(e," was never set"));return g[e]}function h(e,t){if(!e)throw new Error(p);g[e]=(0,l.a)(t,f());const r=(0,u.nY)(e);r&&(r.init=g[e])}function v(e,t){if(!e)throw new Error(p);var r=m(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>d});var n=r(122),i=r(384),o=r(154),a=r(324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0,harvester:void 0},l={};function d(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!l[e])throw new Error("Runtime for ".concat(e," was never set"));return l[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");l[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(l[e],"harvestCount")||Object.defineProperty(l[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=l[e])}},324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.283.2",i="PROD",o="CDN"},154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>l,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,l=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>d,x3:()=>u});var n=r(836),i=r(606),o=r(860),a=r(646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};l(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function l(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function d(e="",t="feature",r=!1){if(l(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(990),o=r(371),a=r(646),s=r(607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},l={},d=!1;try{d=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=m(e),l=c.length,d=0;d<l;d++)c[d].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:h,listeners:m,context:g,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:d?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:d};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=m(e).concat(t)}function m(e){return n[e]||[]}function h(t){return l[t]=l[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),l=(0,n.Zm)();l.ee||(l.ee=u)},646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(566).bz)()},566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(836),i=r(154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>l,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>d});var n=r(154),i=r(863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function l(e,t){a()[e]=t}function d(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(836),i=r(607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];l(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return l(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,l,d;try{a=this,o=[...arguments],l="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],l],e)}i(r+"start",[o,a,s],l,c);try{return d=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],l,c),e}finally{i(r+"end",[o,a,d],l,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>o,ET:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},a="log";n.K7.logging},773:(e,t,r)=>{"use strict";r.d(t,{z_:()=>o,XG:()=>s,TZ:()=>n,rs:()=>i,xV:()=>a});r(154),r(566),r(384);const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(836),i=r(687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},603:(e,t,r)=>{"use strict";r.d(t,{j:()=>K});var n=r(860),i=r(555),o=r(371),a=r(908),s=r(836),c=r(687),u=r(289),l=r(154),d=r(944),f=r(773),g=r(384),p=r(344);const m=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],h=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(863),b=r(614),y=r(993);var w=r(646),R=r(434);const A=new Map;function E(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,d.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,R.YM)(i),a=new w.y(s.P);a.level=n.level,a.customAttributes=n.customAttributes;const c=t[r]?.[R.Jt]||t[r];return A.set(c,a),o.inPlace(t,[r],"wrap-logger-",(()=>A.get(c))),i}function _(){const e=(0,g.pV)();m.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,d.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function N(e,t,g=!1){t||(0,c.Ak)(e,"api");const m={};var w=s.ee.get(e),R=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var A="api-",_=A+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(A,n,!0,o||null===r?"session":void 0)(t,r)}function k(){}m.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,v.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},m.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),E(w,e,t,{customAttributes:r,level:i})},h.forEach((e=>{m[e]=j(A,e,!0,"api")})),m.addPageAction=j(A,"addPageAction",!0,n.K7.genericEvents),m.recordCustomEvent=j(A,"recordCustomEvent",!0,n.K7.genericEvents),m.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(A,"setPageViewName",!0)()},m.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,d.R)(40,typeof t)}else(0,d.R)(39,typeof e)},m.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,d.R)(41,typeof e)},m.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,d.R)(42,typeof e)},m.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,d.R)(23,e)}},m[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},m[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},m.interaction=function(e){return(new k).get("object"==typeof e?e:{})};const T=k.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,w),function(){if(R.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw R.emit("fn-err",[arguments,this,t],r),t}finally{R.emit("fn-end",[(0,v.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[r?(0,v.t)():performance.now(),...arguments],r?null:this,i,w),r?void 0:this}}function I(){r.e(296).then(r.bind(r,778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,d.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{T[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),m.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(A,"routeName",!0,n.K7.spa),m.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},l.RI?(0,u.GG)((()=>I()),!0):I(),m}var k=r(217),T=r(122);const j={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},I={};var O=r(284);const S=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let P=!1;function K(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:d={},exposed:f=!0}=t;d.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,k.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");I[e]=(0,T.a)(t,j);const r=(0,g.nY)(e);r&&(r.loader_config=I[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},l.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const m=(0,k.D0)(e.agentIdentifier),h=[c.beacon,c.errorBeacon];P||(m.proxy.assets&&(S(m.proxy.assets),h.push(m.proxy.assets)),m.proxy.beacon&&h.push(m.proxy.beacon),_(),(0,g.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===m.soft_navigations.enabled&&m.feature_flags.includes("soft_nav")),d.denyList=[...m.ajax.deny_list||[],...m.ajax.block_internal?h:[]],d.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,d),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=N(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),P=!0}},374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>u,K7:()=>s,P3:()=>c,XX:()=>i,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},c={[s.pageViewEvent]:1,[s.pageViewTiming]:2,[s.metrics]:3,[s.jserrors]:4,[s.spa]:5,[s.ajax]:6,[s.sessionTrace]:7,[s.softNav]:8,[s.sessionReplay]:9,[s.logging]:10,[s.genericEvents]:11},u={[s.pageViewEvent]:a,[s.pageViewTiming]:n,[s.ajax]:n,[s.spa]:n,[s.softNav]:n,[s.metrics]:i,[s.jserrors]:i,[s.sessionTrace]:o,[s.sessionReplay]:o,[s.logging]:"browser/logs",[s.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.283.2.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.283.2.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),l=0;l<u.length;l++){var d=u[l];if(d.getAttribute("src")==r||d.getAttribute("data-webpack")==t+o){s=d;break}}if(!s){c=!0;var f={296:"sha512-2Y8GMAOGF658KnXzOZ/v+DlLch8TBFvV0tTNnOy9wrpvtDa1t5CdZMyX+LubTymBlzPp6NUjllBghMCZqXBPmg=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={374:0,840:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.283.2.PROD"]=self["webpackChunk:NRBA-1.283.2.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(374);var e=i(944),t=i(344),r=i(566);class n{agentIdentifier;constructor(){this.agentIdentifier=(0,r.LA)(16)}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(217);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var l=i(603);var d=i(687),f=i(234),g=i(289),p=i(154),m=i(384);const h=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function v(e){return!!(0,m.dV)().o.MO&&h(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,d.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,d.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(h(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,d.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,d.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return v(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(630);class R extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var A=i(908),E=i(843),_=i(878),x=i(782),N=i(863);class k extends y{static featureName=x.T;constructor(e,t=!0){super(e,x.T,t),p.RI&&((0,E.u)((()=>(0,A.p)("docHidden",[(0,N.t)()],void 0,x.T,this.ee)),!0),(0,_.sp)("pagehide",(()=>(0,A.p)("winPagehide",[(0,N.t)()],void 0,x.T,this.ee))),this.importAggregator(e))}}var T=i(773);class j extends y{static featureName=T.TZ;constructor(e,t=!0){super(e,T.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t){super(),p.gm?(this.features={},(0,m.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(R),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,l.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,m.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[R,k,j],loaderType:"lite"})})()})();</script>
<noscript><style>form.antibot * :not(.antibot-message) { display: none !important; }</style>
</noscript><script async src="https://www.googletagmanager.com/gtag/js?id=G-HEQ0YF2VYL"></script>
<script>window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments)};gtag("js", new Date());gtag("set", "developer_id.dMDhkMT", true);gtag('set', {'cookie_flags': 'SameSite=None;Secure', 'cookie_domain': 'www.nist.gov'});gtag("config", "G-HEQ0YF2VYL", {"groups":"default","page_placeholder":"PLACEHOLDER_page_location","link_attribution":true,"allow_ad_personalization_signals":false});gtag("config", "G-CSLL4ZEK4L", {"groups":"default","page_placeholder":"PLACEHOLDER_page_location","link_attribution":true,"allow_ad_personalization_signals":false});gtag("event", "custom", {"node_title":"Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race","node_id":"1832876","blog_author":"Zach Grey","content_type":"Blog entry"});</script>
<meta name="description" content="A NIST researcher is using math and AI to help design an optimal wind turbine" />
<link rel="canonical" href="https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win" />
<link rel="shortlink" href="https://www.nist.gov/node/1832876" />
<meta name="citation_title" content="Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race | NIST" />
<meta property="og:site_name" content="NIST" />
<meta property="og:type" content="Article" />
<meta property="og:url" content="https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win" />
<meta property="og:title" content="Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race" />
<meta property="og:description" content="A NIST researcher is using math and AI to help design an optimal wind turbine" />
<meta property="og:image" content="https://www.nist.gov/sites/default/files/styles/social/public/images/2023/12/12/zach_wind_turbines_3_112823.jpg?itok=YXlezqtl" />
<meta property="og:image" content="https://www.nist.gov/themes/custom/nist_www/img/homepage/nist_mark.png" />
<meta property="og:image:width" content="1050" />
<meta property="og:image:height" content="700" />
<meta property="og:image:alt" content="Zach Grey poses outdoors with wind turbines in the background." />
<meta property="article:author" content="Zach Grey" />
<meta property="article:tag" content="wind energy" />
<meta property="article:published_time" content="2024-01-10T07:00-05:00" />
<meta property="article:modified_time" content="2025-01-31T15:34-05:00" />
<meta name="dcterms.title" content="Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race" />
<meta name="dcterms.creator" content="Zach Grey" />
<meta name="dcterms.description" content="A NIST researcher is using math and AI to help design an optimal wind turbine" />
<meta name="dcterms.publisher" content="Zach Grey" />
<meta name="dcterms.contributor" content="NIST" />
<meta name="dcterms.date" content="2024-01-10T07:00-05:00" />
<meta name="dcterms.type" content="text" />
<meta name="dcterms.format" content="text/html" />
<meta name="dcterms.identifier" content="https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win" />
<meta name="dcterms.source" content="NIST" />
<meta name="dcterms.created" content="2024-01-10T07:00-05:00" />
<meta name="dcterms.modified" content="2025-01-31T15:34-05:00" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:description" content="A NIST researcher is using math and AI to help design an optimal wind turbine" />
<meta name="twitter:site" content="NIST" />
<meta name="twitter:title" content="Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race" />
<meta name="google-site-verification" content="QMu0ODkER3rN5hLcMLqNVf7e3bkjYsNLTuhqfH48jCA" />
<meta name="Generator" content="Drupal 10 (https://www.drupal.org)" />
<meta name="MobileOptimized" content="width" />
<meta name="HandheldFriendly" content="true" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="nist_search_modified" class="elastic" content="2025-01-31T15:34:00-05:00" />
<script type="application/ld+json">{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Article",
"@id": "https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win",
"headline": "Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race",
"name": "Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race",
"description": "A NIST researcher is using math and AI to help design an optimal wind turbine.",
"image": {
"@type": "ImageObject",
"url": "https://www.nist.gov/sites/default/files/styles/social/public/images/2023/12/12/zach_wind_turbines_3_112823.jpg?itok=YXlezqtl",
"width": "1050",
"height": "700"
},
"datePublished": "2024-01-10T07:00-05:00",
"dateModified": "2025-01-31T15:34-05:00",
"author": {
"@type": "Person",
"@id": "https://www.nist.gov/blogs/taking-measure/authors/zach-grey",
"name": "Zach Grey",
"url": "https://www.nist.gov/blogs/taking-measure/authors/zach-grey"
},
"publisher": {
"@type": "GovernmentOrganization",
"@id": "https://www.nist.gov/",
"name": "National Institute of Standards and Technology",
"url": "https://www.nist.gov/"
}
}
]
}</script>
<meta name="nist_search_bundle" class="elastic" content="blog" />
<link rel="icon" href="/themes/custom/nist_www/favicon.ico" type="image/vnd.microsoft.icon" />
<title>Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race | NIST</title>
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_hKAD9a0878O1Pdb6alKtCmESLiUtQmrBX15rQUvSgOA.css?delta=0&amp;language=en&amp;theme=nist_www&amp;include=eJxNTgsOwyAIvZCpRzKotCNFaYTW9fazW5ctIYRH3i9CWoPJmM3H3x0oSXWV1II9sOD4CUdooUj2mRQiY2Cqq9NTDcvQKr75fmGJwB9t7_2L8WkX3-e2b8DTDd1B2NW_9zS8d75dCiyVZkpuJjZsPsFmNCqpJAIOBTPBFToYDKfsFkarJAe200vFJH8NCqUmSoYvWkVdRQ" />
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_kGS0ApDpFo-_3JI4Ijxg4RCWlTqsImK3lqH7bCv5v2U.css?delta=1&amp;language=en&amp;theme=nist_www&amp;include=eJxNTgsOwyAIvZCpRzKotCNFaYTW9fazW5ctIYRH3i9CWoPJmM3H3x0oSXWV1II9sOD4CUdooUj2mRQiY2Cqq9NTDcvQKr75fmGJwB9t7_2L8WkX3-e2b8DTDd1B2NW_9zS8d75dCiyVZkpuJjZsPsFmNCqpJAIOBTPBFToYDKfsFkarJAe200vFJH8NCqUmSoYvWkVdRQ" />
<link rel="stylesheet" media="print" href="/sites/default/files/css/css_-IXwLuTUdm8IGHxib8GX8wWKw3LjKsNWSYYskZ5fEGg.css?delta=2&amp;language=en&amp;theme=nist_www&amp;include=eJxNTgsOwyAIvZCpRzKotCNFaYTW9fazW5ctIYRH3i9CWoPJmM3H3x0oSXWV1II9sOD4CUdooUj2mRQiY2Cqq9NTDcvQKr75fmGJwB9t7_2L8WkX3-e2b8DTDd1B2NW_9zS8d75dCiyVZkpuJjZsPsFmNCqpJAIOBTPBFToYDKfsFkarJAe200vFJH8NCqUmSoYvWkVdRQ" />
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_RS8YGnRq2Xi5aD-GQC3GKwBe6bOWBBmEmXrb2xB5FMM.css?delta=3&amp;language=en&amp;theme=nist_www&amp;include=eJxNTgsOwyAIvZCpRzKotCNFaYTW9fazW5ctIYRH3i9CWoPJmM3H3x0oSXWV1II9sOD4CUdooUj2mRQiY2Cqq9NTDcvQKr75fmGJwB9t7_2L8WkX3-e2b8DTDd1B2NW_9zS8d75dCiyVZkpuJjZsPsFmNCqpJAIOBTPBFToYDKfsFkarJAe200vFJH8NCqUmSoYvWkVdRQ" />
<script src="/sites/default/files/js/js_GM8kl6wk698qKTTwusj83bCoGHHtOZ1UinjY1sE_Qbk.js?scope=header&amp;delta=0&amp;language=en&amp;theme=nist_www&amp;include=eJxdjdEOwiAMRX9o2E9qyqhYBboAE_17YW7RLOGBc3p7a2l-YNX-FrC_P97L5FV9YKRE4V1lLnAWU5JS8SrdOW0pKDmsuZdI8uDpOy5SWeKS9clwFuPK5uqNI_e7GixljOrASSHbi4Okx5YBH9RSMPsK3Jgc5wOxtfaX4Fcdi-DyulC47DjNGiOneugdjX2bp3Dj_G2O5JNcZZ6GLHhf44I9t8LGZrAZ_AFBzXxL"></script>
</head>
<body class="node-1832876">
<a href="#main-content" class="visually-hidden focusable" data-elastic-exclude>
Skip to main content
</a>
<div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas>
<!-- nist-index-ignore-start -->
<section data-elastic-exclude class="usa-banner" aria-label="Official government website">
<div class="usa-accordion">
<header class="usa-banner__header">
<div class="usa-banner__inner">
<div class="grid-col-auto">
<img class="usa-banner__header-flag" src="/libraries/nist-component-library/dist/img/us_flag_small.png" alt="U.S. flag">
</div>
<div class="grid-col-fill tablet:grid-col-auto">
<p class="usa-banner__header-text">An official website of the United States government</p>
<p class="usa-banner__header-action" aria-hidden="true">Heres how you know</p>
</div>
<button class="usa-accordion__button usa-banner__button" aria-expanded="false" aria-controls="gov-banner-default">
<span class="usa-banner__button-text">Heres how you know</span>
</button>
</div>
</header>
<div class="usa-banner__content usa-accordion__content" id="gov-banner-default">
<div class="grid-row grid-gap-lg">
<div class="usa-banner__guidance tablet:grid-col-6">
<img class="usa-banner__icon usa-media-block__img" src="/libraries/nist-component-library/dist/img/icon-dot-gov.svg" role="img" alt="" aria-hidden="true">
<div class="usa-media-block__body">
<p>
<strong>Official websites use .gov</strong>
<br/>
A <strong>.gov</strong> website belongs to an official government organization in the United States.
</p>
</div>
</div>
<div class="usa-banner__guidance tablet:grid-col-6">
<img class="usa-banner__icon usa-media-block__img" src="/libraries/nist-component-library/dist/img/icon-https.svg" role="img" alt="" aria-hidden="true">
<div class="usa-media-block__body">
<p>
<strong>Secure .gov websites use HTTPS</strong>
<br/>
A <strong>lock</strong> ( <span class="icon-lock">
<svg xmlns="http://www.w3.org/2000/svg" width="52" height="64" viewbox="0 0 52 64" class="usa-banner__lock-image" role="img" aria-labelledby="banner-lock-title banner-lock-description" focusable="false">
<title id="banner-lock-title">Lock</title>
<desc id="banner-lock-description">A locked padlock</desc><path fill="#000000" fill-rule="evenodd" d="M26 0c10.493 0 19 8.507 19 19v9h3a4 4 0 0 1 4 4v28a4 4 0 0 1-4 4H4a4 4 0 0 1-4-4V32a4 4 0 0 1 4-4h3v-9C7 8.507 15.507 0 26 0zm0 8c-5.979 0-10.843 4.77-10.996 10.712L15 19v9h22v-9c0-6.075-4.925-11-11-11z"/></svg>
</span>
) or <strong>https://</strong> means youve safely connected to the .gov website. Share sensitive information only on official, secure websites.
</p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- nist-index-ignore-end -->
<div data-elastic-exclude>
<!-- nist-index-ignore-start -->
<div class="nist-print-header" style="display:none;">
<p class="nist-print-header__url">https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win</p>
<img class="nist-print-header__logo" width="289" height="38" src="/libraries/nist-component-library/dist/img/logo/nist_logo_sidestack.svg" alt="National Institute of Standards and Technology" />
</div>
<div class="usa-overlay"></div>
<header class="usa-header nist-header--www nist-header--minimal" role="banner">
<div class="usa-navbar">
<div class="usa-logo flex-fill">
<a href="/" title="National Institute of Standards and Technology" aria-label="Home">
<img src="/libraries/nist-component-library/dist/img/logo/logo.svg" alt="National Institute of Standards and Technology" width="300px" height="80px" />
</a>
</div>
<div class="usa-header__right grid-row flex-auto">
<div class="grid-col-fill nist-header__search-group">
<form class="usa-search usa-search--small"
accept-charset="UTF-8"
action="/search"
id="search_form"
method="get">
<div role="search">
<label class="usa-sr-only" for="search-form">Search NIST</label>
<input class="usa-input" id="search-form" type="search" name="s" placeholder="Search NIST" required="" maxlength="128">
<button class="usa-button" type="submit"><img src="/libraries/nist-component-library/dist/img/usa-icons-bg/search--white.svg" class="usa-search__submit-icon" alt="Search"></button>
</div>
</form>
</div>
<div class="grid-col-auto padding-left-1">
<button class="usa-menu-btn">Menu</button>
</div>
</div>
</div>
<nav aria-label="Primary navigation" class="usa-nav">
<div class="usa-nav__inner">
<button class="usa-nav__close">Close</button>
<ul class="usa-nav__primary usa-accordion">
<li class="usa-nav__primary-item">
<a class="usa-nav__link" href="/publications">Publications</a>
</li>
<li class="usa-nav__primary-item">
<button class="usa-accordion__button usa-nav__link" aria-expanded="false" aria-controls="primary_menu-2"><span>What We Do</span></button>
<div id="primary_menu-2" class="usa-nav__submenu usa-megamenu">
<div class="grid-row">
<div class="tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/topics" class="usa-nav__link">All Topics</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/advanced-communications" class="usa-nav__link">Advanced communications</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/artificial-intelligence" class="usa-nav__link">Artificial intelligence</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/bioscience" class="usa-nav__link">Bioscience</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/buildings-construction" class="usa-nav__link">Buildings and construction</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/chemistry" class="usa-nav__link">Chemistry</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/cybersecurity" class="usa-nav__link">Cybersecurity</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/electronics" class="usa-nav__link">Electronics</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/energy" class="usa-nav__link">Energy</a>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/environment" class="usa-nav__link">Environment</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/fire" class="usa-nav__link">Fire</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/forensic-science" class="usa-nav__link">Forensic science</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/health" class="usa-nav__link">Health</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/information-technology" class="usa-nav__link">Information technology</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/infrastructure" class="usa-nav__link">Infrastructure</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/manufacturing" class="usa-nav__link">Manufacturing</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/materials" class="usa-nav__link">Materials</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/mathematics-statistics" class="usa-nav__link">Mathematics and statistics</a>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/metrology" class="usa-nav__link">Metrology</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/nanotechnology" class="usa-nav__link">Nanotechnology</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/neutron-research" class="usa-nav__link">Neutron research</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/performance-excellence" class="usa-nav__link">Performance excellence</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/physics" class="usa-nav__link">Physics</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/public-safety" class="usa-nav__link">Public safety</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/quantum-information-science" class="usa-nav__link">Quantum information science</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/resilience" class="usa-nav__link">Resilience</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/standards" class="usa-nav__link">Standards</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/transportation" class="usa-nav__link">Transportation</a>
</li>
</ul>
</div>
</div>
</div>
</li>
<li class="usa-nav__primary-item">
<button class="usa-accordion__button usa-nav__link" aria-expanded="false" aria-controls="primary_menu-3"><span>Labs &amp; Major Programs</span></button>
<div id="primary_menu-3" class="usa-nav__submenu usa-megamenu">
<div class="grid-row">
<div class="tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/adlp" class="usa-nav__link">Assoc Director of Laboratory Programs</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/laboratories" class="usa-nav__link">Laboratories</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="/ctl" class="usa-nav__link">Communications Technology Laboratory</a>
</li>
<li>
<a href="/el" class="usa-nav__link">Engineering Laboratory</a>
</li>
<li>
<a href="/itl" class="usa-nav__link">Information Technology Laboratory</a>
</li>
<li>
<a href="/mml" class="usa-nav__link">Material Measurement Laboratory</a>
</li>
<li>
<a href="/pml" class="usa-nav__link">Physical Measurement Laboratory</a>
</li>
</ul>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/user-facilities" class="usa-nav__link">User Facilities</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="/ncnr" class="usa-nav__link">NIST Center for Neutron Research</a>
</li>
<li>
<a href="/cnst" class="usa-nav__link">CNST NanoFab</a>
</li>
</ul>
</li>
<li class="usa-nav__submenu-item">
<a href="/labs-major-programs/research-test-beds" class="usa-nav__link">Research Test Beds</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/laboratories/projects-programs" class="usa-nav__link">Research Projects</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/laboratories/tools-instruments" class="usa-nav__link">Tools &amp; Instruments</a>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/major-programs" class="usa-nav__link">Major Programs</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="/baldrige" class="usa-nav__link">Baldrige Performance Excellence Program</a>
</li>
<li>
<a href="/chips" class="usa-nav__link">CHIPS for America Initiative</a>
</li>
<li>
<a href="/mep" class="usa-nav__link">Manufacturing Extension Partnership (MEP)</a>
</li>
<li>
<a href="/oam" class="usa-nav__link">Office of Advanced Manufacturing</a>
</li>
<li>
<a href="/spo" class="usa-nav__link">Special Programs Office</a>
</li>
<li>
<a href="/tpo" class="usa-nav__link">Technology Partnerships Office</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</li>
<li class="usa-nav__primary-item">
<button class="usa-accordion__button usa-nav__link" aria-expanded="false" aria-controls="primary_menu-4"><span>Services &amp; Resources</span></button>
<div id="primary_menu-4" class="usa-nav__submenu usa-megamenu">
<div class="grid-row">
<div class="tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/content/standards-measurements" class="usa-nav__link">Standards and Measurements</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="/calibrations" class="usa-nav__link">Calibration Services</a>
</li>
<li>
<a href="/nvlap" class="usa-nav__link">Laboratory Accreditation (NVLAP)</a>
</li>
<li>
<a href="/nist-quality-system" class="usa-nav__link">Quality System</a>
</li>
<li>
<a href="/srm" class="usa-nav__link">Standard Reference Materials (SRMs)</a>
</li>
<li>
<a href="/sri" class="usa-nav__link">Standard Reference Instruments (SRIs)</a>
</li>
<li>
<a href="/standardsgov" class="usa-nav__link">Standards.gov</a>
</li>
<li>
<a href="/pml/time-and-frequency-division/time-services" class="usa-nav__link">Time Services</a>
</li>
<li>
<a href="/pml/owm" class="usa-nav__link">Office of Weights and Measures</a>
</li>
</ul>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/services-resources/software" class="usa-nav__link">Software</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/data" class="usa-nav__link">Data</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="https://webbook.nist.gov/chemistry/" class="usa-nav__link">Chemistry WebBook</a>
</li>
<li>
<a href="https://nvd.nist.gov/" class="usa-nav__link">National Vulnerability Database</a>
</li>
<li>
<a href="/pml/productsservices/physical-reference-data" class="usa-nav__link">Physical Reference Data</a>
</li>
<li>
<a href="/srd" class="usa-nav__link">Standard Reference Data (SRD)</a>
</li>
</ul>
</li>
<li class="usa-nav__submenu-item">
<a href="https://shop.nist.gov/" class="usa-nav__link">Storefront</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/tpo" class="usa-nav__link">License &amp; Patents</a>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="https://csrc.nist.gov/" class="usa-nav__link">Computer Security Resource Center (CSRC)</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/nist-research-library" class="usa-nav__link">NIST Research Library</a>
</li>
</ul>
</div>
</div>
</div>
</li>
<li class="usa-nav__primary-item">
<button class="usa-accordion__button usa-nav__link" aria-expanded="false" aria-controls="primary_menu-5"><span>News &amp; Events</span></button>
<div id="primary_menu-5" class="usa-nav__submenu usa-megamenu">
<div class="grid-row">
<div class="tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/news-events/news" class="usa-nav__link">News</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/news-events/events" class="usa-nav__link">Events</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/blogs" class="usa-nav__link">Blogs</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/feature-stories" class="usa-nav__link">Feature Stories</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/awards" class="usa-nav__link">Awards</a>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/video-gallery" class="usa-nav__link">Video Gallery</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/image-gallery" class="usa-nav__link">Image Gallery</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/pao/media-contacts" class="usa-nav__link">Media Contacts</a>
</li>
</ul>
</div>
</div>
</div>
</li>
<li class="usa-nav__primary-item">
<button class="usa-accordion__button usa-nav__link" aria-expanded="false" aria-controls="primary_menu-6"><span>About NIST</span></button>
<div id="primary_menu-6" class="usa-nav__submenu usa-megamenu">
<div class="grid-row">
<div class="tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/about-nist" class="usa-nav__link">About Us</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="/director/leadership" class="usa-nav__link">Leadership</a>
</li>
<li>
<a href="/director/nist-organization-structure" class="usa-nav__link">Organization Structure</a>
</li>
<li>
<a href="/about-nist/budget-planning" class="usa-nav__link">Budget &amp; Planning</a>
</li>
</ul>
</li>
<li class="usa-nav__submenu-item">
<a href="/about-nist/contact-us" class="usa-nav__link">Contact Us</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/about-nist/visit" class="usa-nav__link">Visit</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/careers" class="usa-nav__link">Careers</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="/iaao/academic-affairs-office" class="usa-nav__link">Student programs</a>
</li>
</ul>
</li>
</ul></div><div class="column-break tablet:grid-col-fill"><ul class="usa-nav__submenu-list">
<li class="usa-nav__submenu-item">
<a href="/about-nist/work-nist" class="usa-nav__link">Work with NIST</a>
</li>
<li class="usa-nav__submenu-item">
<a href="/history" class="usa-nav__link">History</a>
<ul class="usa-nav__submenu-list">
<li>
<a href="http://nistdigitalarchives.contentdm.oclc.org/" class="usa-nav__link">NIST Digital Archives</a>
</li>
<li>
<a href="/nist-museum" class="usa-nav__link">NIST Museum</a>
</li>
<li>
<a href="/nist-and-nobel" class="usa-nav__link">NIST and the Nobel</a>
</li>
</ul>
</li>
<li class="usa-nav__submenu-item">
<a href="/education" class="usa-nav__link">Educational Resources</a>
</li>
</ul>
</div>
</div>
</div>
</li>
</ul>
</div>
</nav>
</header>
<!-- nist-index-ignore-end -->
</div>
<div class="grid-container">
</div>
<div
id="block-nist-www-content" class="nist-block"
>
<section
class="nist-page__content usa-section clearfix"
>
<a id="main-content" tabindex="-1"></a>
<div
class="nist-page__region nist-page__region--content-top-full"
>
<div
class="nist-block"
>
<div class="entity-reference">
<div class="nist-blog-header nist-blog-header--purple nist-blog-header--inner">
<div class="nist-blog-header__bkgrd">
<div class="nist-blog-header__main grid-container">
<div class="grid-row">
<h2 class="nist-blog-header__title">
<a href="/blogs/taking-measure"> Taking Measure
</a>
</h2>
<div class="nist-blog-header__tagline">
<p class="text">Just a Standard Blog</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="grid-container margin-top-4">
<div
class="nist-page__region nist-page__region--content-top"
>
<div
class="nist-block"
>
<h1 class="nist-page__title">Riding the Wind: How Applied Geometry and Artificial Intelligence Can Help Us Win the Renewable Energy Race</h1>
</div>
<div
class="font-body-md"
>
<div class="daterange"><time datetime="2024-01-10T12:00:00Z">January 10, 2024</time>
</div>
</div>
<div
class="nist-block"
>
<span>By: </span>
<a href="/blogs/taking-measure/authors/zach-grey" hreflang="en">Zach Grey</a>
</div>
<div
class="nist-block"
>
<!-- nist-index-ignore-start -->
<div data-elastic-exclude class="nist-block nist-social__wrapper">
<h2 class="nist-social__title">Share</h2>
<div class="social-media-sharing">
<div class="nist-social__wrapper--share">
<div>
<a target="_blank" rel="noopener" href="https://www.facebook.com/share.php?u=https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win"
title="Facebook" class="nist-social nist-social--facebook-gray">
<span>Facebook</span>
</a>
</div>
<div>
<a target="_blank" rel="noopener" href="https://www.linkedin.com/shareArticle?mini=true&amp;url=https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win&amp;source=https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win"
title="Linkedin" class="nist-social nist-social--linkedin-gray">
<span>Linkedin</span>
</a>
</div>
<div>
<a target="_blank" rel="noopener" href="https://x.com/intent/tweet?url=https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win&amp;status=https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win"
title="X.com" class="nist-social nist-social--x-gray">
<span>X.com</span>
</a>
</div>
<div>
<a href="mailto:?subject=NIST.gov&amp;body=Check out this site https://www.nist.gov/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win"
title="Email" class="nist-social nist-social--envelope-gray">
<span>Email</span>
</a>
</div>
</div>
</div>
</div>
<!-- nist-index-ignore-end -->
</div>
</div>
</div>
<div class="grid-container margin-top-4">
<div class="grid-row grid-gap-6">
<div
class="nist-page__region nist-page__region--content tablet-lg:grid-col-8"
>
<div
class="nist-block"
>
<div class="text-with-summary">
<figure class="nist-image--lightbox nist-image" data-lightbox="https://www.nist.gov/sites/default/files/styles/2800_x_2800_limit/public/images/2023/12/12/zach_wind_turbines_3_112823.jpg?itok=nmqZQWsj" data-media-id="695606">
<img loading="lazy" src="/sites/default/files/styles/960_x_960_limit/public/images/2023/12/12/zach_wind_turbines_3_112823.jpg?itok=BA7uJqrA" width="960" height="640" alt="Zach Grey poses outdoors with wind turbines in the background. " typeof="foaf:Image" />
<figcaption class="nist-image__caption">
<div data-caption-editable="true" class="nist-image__caption-content">
<p>NIST researcher Zach Grey is using complex math to design better wind turbines.</p>
</div>
<div class="nist-image__credit">
<span class="nist-image__credit-label">Credit:</span>
R. Jacobson/NIST
</div>
</figcaption>
</figure>
<p>There is something wonderfully simple about a wind turbine gently turning in the breeze.&nbsp;</p><p>As the wind flows by the blades of the turbine, a rotating force is created that spins the giant assembly. The rotation is then <a href="https://www.energy.gov/eere/wind/how-do-wind-turbines-work">converted into electricity</a> just like conventional power generation.&nbsp;</p><p>A wind turbine consists of a set of three blades defined by twisting and bending teardrop-like shapes. The turbine blades are cylindrical on one edge and sharper at the other.&nbsp;</p>
<figure class=" align-center nist-image--lightbox nist-image" role="group">
<div data-lightbox="https://www.nist.gov/sites/default/files/styles/2800_x_2800_limit/public/images/2023/12/12/turbine_v3.png?itok=fdyhkH4P" data-media-id="695611">
<img alt="Diagram shows two turbine blades horizontally, one over the other, with the lower one pulled apart to show the shape in cross sections. " height="292" loading="lazy" src="/sites/default/files/images/2023/12/12/turbine_v3.png" typeof="foaf:Image" width="1716">
</div>
<figcaption class="nist-image__caption">This blade graphic shows how the wind turbine shapes change as they move from the hub of the turbine blade (left) to the tip on the right.<div class="nist-image__credit">
<span class="nist-image__credit-label">Credit:</span>
NIST
</div></figcaption>
</figure>
<p>The blade surface changes over its long, slender axis. It begins with blunt, thick shapes at the hub and transforms into slender, thin teardrop shapes at the tip. (See the blade graphic above for a closer look at the changing sequence of shapes moving from the hub on the left side to the tip on the right side.) Hence, a turbine spinning in the wind may seem simple, but designing and measuring blades of a wind turbine, using a sequence of changing cross-sectional shapes, requires a lot of sophisticated geometry.&nbsp;</p><p>Im part of a team studying abstractions of geometric methods to design better wind turbines with mathematics. In the future, we hope to use our methods to measure how well wind turbines work in the field and how well they are made.&nbsp;</p><p>Design and measurement are intertwined, so addressing the challenges of both will push us toward a cleaner energy future.&nbsp;</p><p>Using the laws of physics, we can build computer models to predict how air flowing around the blades of a spinning turbine generates power. When the surface of the blade changes, the forces that rotate the turbine also change.&nbsp;</p><p>Modeling how these forces change when the surface changes is a subject of aerodynamics. Aerodynamic design of a turbine blades shape is crucial to maximizing the power out of each turbine, just as an airplanes wings must be designed to keep us aloft during flight.</p><p>Two of the most important forces acting on aerodynamic surfaces are called lift and drag. The force defying gravity using an aircraft wing is the same that spins a turbine — we call it lift. Perpendicular to lift, the force that works to slow the aircraft or turbines rotation is called drag.&nbsp;</p><p>With physics-based models, we can study how to best design the cross-sectional shapes of <a href="https://www.energy.gov/eere/wind/articles/case-study-airfoils-where-turbine-meets-wind">turbine blades called airfoils</a>. You can see some examples of wind turbine airfoils shown in the graphic. The solid, black outlines of cross-sections are airfoils. They are like slices taken from a giant blade-shaped loaf of bread. Better airfoil shapes create more lift with less drag.&nbsp;</p><p>While an aircraft wing has control surfaces that the pilot can change, a turbine blades airfoil shapes remain fixed. For wind turbines, the outer portion generates the most lift, while the inner portion supports the spinning blade. So improved airfoil shapes with greater lift near the tip and less drag near the hub equals more power.&nbsp;</p><p>The final blade surface, defined by a sequence of airfoil shapes, then needs to be manufactured, put into operation, and measured during operation. How we represent the shape for design has big implications on how we should measure it in operation. And tackling challenges through measurement science is what NIST does.</p><p>For NIST, the big question is: How do we measure and mathematically define shape? Can our work be used to design and measure the best possible wind turbine?</p><h2>Geometry Makes the Turbine Go Round</h2> <figure class=" align-center nist-image" role="group">
<div>
<img alt="Two large wind turbines rise over flat farmland with the sun behind them low on the horizon. " height="3640" loading="lazy" src="/sites/default/files/images/2023/12/12/shutterstock_1757550275.jpg" typeof="foaf:Image" width="5464">
</div>
<figcaption class="nist-image__caption">Wind turbine design requires physics and math. Computer models use the laws of physics to predict how air flowing around the blades of a spinning turbine generate power.<div class="nist-image__credit">
<span class="nist-image__credit-label">Credit:</span>
Nick Brundle Photography/Shutterstock
</div></figcaption>
</figure>
<p>Working alongside the National Renewable Energy Laboratory (NREL), were developing new methods to describe and generate these complicated airfoil shapes to create next-generation designs and augment measurements in the field.&nbsp;</p><p>As a first step, weve tackled the turbine blade design problem. Our goal is to get the most efficient power generation, while satisfying size constraints to meet structural requirements. Ill explain this using a few highlights from the scientific method.&nbsp;</p><p><strong>The hypothesis:</strong> Separating rotation and size of each airfoil from all other changes in the shapes can help improve designs and measurements, with fewer total numbers that modify the shapes representation in the computer, which we refer to as parameters. The parameters are what we modify to change the shapes. The more you have, the more complex the math problem becomes. Traditional approaches need anywhere from 100-200 parameters in total to define a blade!&nbsp;</p><p>The concept is simple. If we want precise control over specific changes, like rotation and size of each airfoil, we then “divide these effects out” mathematically and study whatever is left over as learned from data. Fewer parameters make it significantly easier for us to understand changes in the design.&nbsp;</p><p>Our <a href="/publications/separable-shape-tensors-aerodynamic-design" data-entity-type="node" data-entity-uuid="2bae6cdb-448e-49db-baae-1a5d039dc7db" data-entity-substitution="canonical" title="Separable Shape Tensors for Aerodynamic Design">applied geometric approach</a> provides a new method for defining and exploring this concept with airfoil shapes learned from NREL shape data.</p><p><strong>The experiment:</strong> The design approach taken at NREL involves solving one of the hardest problems in math — an inverse problem. An inverse problem sets the desired outputs by saying we need “XYZ” aerodynamics. We then work backward through the modeled physics to determine a collection of airfoils that satisfy the requested aerodynamics. Inverse problems are something NIST mathematicians consider all the time for measurement, and they can be very challenging problems to solve — if we can solve them at all!</p><p>First, we generate tens of thousands of new shapes from our geometry model trained using NREL shape data. Then, we use physics-based models to predict aerodynamics of each shape. Finally, our colleagues at NREL train the AI to tell the geometry model how to achieve new designs with requested aerodynamics based on the generated data. This effectively “closes the loop” in the analysis.</p><p><strong>The results:</strong> NREL has successfully used the geometric methods in a <a href="https://github.com/NREL/G2Aero">tool called G2Aero</a> and generated new wind turbine designs to <a href="https://doi.org/10.1088/1742-6596/2265/4/042052">reduce the cost of energy</a> — more on this later. Additionally, we trust the results of the AI because we have carefully constructed the description of the shapes, so the AI only makes recommendations about new shapes represented in our way. Most importantly, our geometry method prevents the AI from creating wild wiggling shapes that are not well suited for creating desirable aerodynamics or physics modeling.&nbsp;</p><p>Not only that, but the traditional approach involving hundreds of parameters was reduced to using just<em> four parameters to describe an entire blade</em>! This is due entirely to our data-driven geometry model — not the AI. With such a dramatic reduction in the total number of parameters, we can more easily train the AI. We can also put better checks and balances (constraints) on the AI recommendations and compare with alternative approaches for mapping requirements to parameters.</p><p><strong>Next steps:</strong> This research has a lot of exciting future applications. For example, wind turbines are often monitored remotely and serviced only when a problem is discovered — especially if those turbines are offshore. We hope to augment remotely measuring turbines in operation to make sure they are working efficiently using our geometry and physics-based modeling.</p><p>If we see something has changed with the power generation, we could work backward through the physics to see what has changed in the environment. For example, the blade could be damaged or there could be a buildup of dirt/salt/sediment affecting the turbine blades aerodynamics.&nbsp;</p><p>This geometry research goes well beyond designing and measuring the big spinning blades. We believe we can improve basically every aspect of wind-generated power for lower cost — from designing floating offshore platforms for future wind turbines to measuring microscopic shapes hidden in the materials used to manufacture blades.</p><p>Problems requiring precise definition and measurement of shapes are everywhere. There is a diverse set of applications for geometry-based research beyond designing and measuring wind turbines.</p><h2>Using Math to Make Things Better</h2><p>I grew to love applied math during my undergraduate degree at Embry-Riddle Aeronautical University. After getting my degree, I started working at the Rolls-Royce Corporation, designing jet engines — no, not the cars.&nbsp;</p><p>One of my jobs was teaching designers and analysts how to incorporate statistical considerations into their complex physics-based modeling. These experiences further fueled my love of using applied math to achieve different perspectives on problems and make things more robust.</p><p>What I find most fascinating about studying applied math is that universal principles stay the same, but the technology and applications of those principles are constantly changing. In many ways, for me, mathematics is the art of assigning language to logic. Math offers explanations and interpretations of so many different things in the natural world. If you seek an explanation or interpretation of any physical or artificial process, the answer is almost certainly hidden in the mathematics.</p><p>Applying universal principles of math in different contexts is one of the most enjoyable aspects of my work. For example, the same geometry methods we used for wind turbines can also be used to explain the complex microstructures found in steel and lithium-ion batteries. Other geometric perspectives can <a href="https://doi.org/10.1109/TCOMM.2022.3161516">describe more optimal processes for telecommunications</a>.&nbsp;</p><p>This type of research allows me to use these abstract, unfamiliar concepts and apply them to real-world problems and questions, such as:</p><ul><li>“How do we build the best wind turbine?”&nbsp;</li><li>“Why did that AI model make that decision?”</li><li>“What is statistically different in the measurement of one material from another?”&nbsp;</li></ul><p>This geometry-focused research gives us a rich explanations and interpretations of many different problems to unfold the complicated nature of shape in data.</p><h2>Calculating Our Way Toward a Clean Energy Future</h2><p>In addition to studying challenging math problems, Im excited to be a part of how we can generate clean energy in the future.&nbsp;</p><p>About <a href="https://coast.noaa.gov/states/fast-facts/economics-and-demographics.html#:~:text=Coastal%20counties%20of%20the%20U.S.,land%20mass%20(excluding%20Alaska).">40% of the nations population</a> (128 million people, excluding Alaska) live in coastal counties. One of the biggest challenges facing future energy generation is how we produce the energy but also how we deliver it.&nbsp;</p><p>There are a growing number of wind turbines in the center of the country <a href="https://windexchange.energy.gov/maps-data/325">where the wind blows the most</a> on land, but infrastructure challenges make it hard to get that wind power to the coastal areas. Not only that, but offshore turbines can be much larger, with nearly three times the potential power generation versus land-based turbines. The wind is also expected to blow faster and more often offshore near coastal areas.&nbsp;</p><p>These considerations create an obvious demand for offshore wind power, but they also create more challenging design and measurement problems. We want to create the most efficient wind turbine systems, and we want to make them robust and resilient for future generations of offshore applications — a significantly more volatile environment with lots of severe weather.&nbsp;</p><p>Helping design next-generation turbines is only the first step. We must also measure the hard-to-reach offshore turbines while in operation to make sure they are holding up to the test of time and can still provide power to those who need it.</p><p>If we could redesign existing wind turbines with our geometry model, <a href="https://doi.org/10.1088/1742-6596/2265/4/042052">NREL estimates</a> new designs could achieve about a 1% reduction in cost of energy. That may not seem like much, but if we could go back and redesign all the existing turbines, we could save approximately $288 million in 2021 alone.</p><p>However, wind energy production is expected to <a href="https://www.energy.gov/eere/wind/20-wind-energy-2030-increasing-wind-energys-contribution-us-electricity-supply">quadruple by 2050</a>. In a very rough estimate, scaling these seemingly small 1% savings over the next 30 years of wind energy deployment could accumulate billions in total savings, compared to using existing methods.</p><p>Based on <a href="https://www.whitehouse.gov/briefing-room/statements-releases/2023/03/29/fact-sheet-biden-harris-administration-continues-to-advance-american-offshore-wind-opportunities/">current energy goals</a>, we expect our new methods can save Americans $60 million per year in energy costs, if we assume offshore wind turbines are only generating electricity half the time. Thats a very conservative estimate, so the overall savings could be closer to $120-$180 million per year in potential savings achieved with our next-generation wind turbine designs.&nbsp;</p><p>Solving the problems of design and measurement for wind turbines blades has dramatic implications on improving energy costs. And NIST mathematicians, alongside NREL scientists, are equipped to tackle these issues toward the promise of clean, cost-effective energy.&nbsp;</p><p>It feels great to be part of building a future with clean, reliable energy resources. We face many challenges with a changing global economy and climate.&nbsp;</p><p>And although wind energy is only one piece of a very complicated puzzle, I am proud of the contributions weve made to the wealth of scientific discoveries working toward a safer, more robust and cleaner future for the nation.</p><p><em>Authors note: Special thank you to Andrew Glaws and Ganesh Vijayakumar at NREL for providing estimates summarizing results of applying our geometry methods as well as the rest of the </em><a href="https://www.energy.gov/advanced-research-projects-agency-energy-arpa-e"><em>ARPA-E</em></a><em> DIFFERENTIATE team including: Ryan King, Olga Doronina, James Baeder and Bumseok Lee.</em></p>
</div>
</div>
<div
class="nist-block"
>
<div class="nist-tags">
<a href="/blogs/taking-measure/categories/248531">Energy</a>,
<a href="/blogs/taking-measure/categories/248536">Alternative energy</a>,
<a href="/blogs/taking-measure/categories/2748236">Infrastructure</a>,
<a href="/blogs/taking-measure/categories/249011">Mathematics and statistics</a> and
<a href="/blogs/taking-measure/categories/249031">Modeling and simulation research</a></div>
</div>
<div
class="nist-block"
>
<h2
class="nist-block__title"
>About the author</h2>
<div class="nist-field nist-field--label-hidden entity-reference">
<div class="nist-field__items">
<div class="nist-field__item">
<article
about="/blogs/taking-measure/authors/zach-grey" class="nist-teaser"
>
<div class="nist-teaser__image">
<div class="entity-reference"> <a href="/blogs/taking-measure/authors/zach-grey" hreflang="en"><img loading="lazy" src="/sites/default/files/styles/thumbnail/public/images/2023/08/09/Grey_Z-03_ret.jpg?itok=z3nc9I4i" width="80" height="100" alt="Profile Picture" typeof="foaf:Image" />
</a>
</div>
</div>
<div class="nist-teaser__content-wrapper">
<header>
<h3 class="nist-teaser__title"><a href="/blogs/taking-measure/authors/zach-grey"><span>Zach Grey</span>
</a></h3>
</header>
<div class="nist-teaser__content">
<div class="text-with-summary"><p>Zach Grey is a research scientist in the applied and computational mathematics division at NIST Boulder. Zach's applied math research began in the Applied Mathematics and Statistics Department at Colorado School of Mines, where he qualified for a Ph.D. and transferred to finish the Ph.D. at University of Colorado Boulder (CU) Aerospace Engineering Sciences (following his research adviser, Professor Paul Constantine). Zach received a B.S. in aerospace engineering from Embry-Riddle Aeronautical University in 2010 and an M.S. in aeronautical and astronautical engineering from Purdue in 2015, which he earned while working full time at the Rolls-Royce corporation. His research involves model-based dimension reduction and manifold learning to facilitate novel explanations and interpretations related to artificial intelligence and machine learning. Specifically, he often works with data-driven applications involving image/signal processing, geometry and optimization.</p></div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<div
class="views-element-container nist-block no-print"
>
<h2
class="nist-block__title"
>Related posts</h2>
<div><div class="js-view-dom-id-2cd4f32b20951ccc10da2545b5323e421c7559453c47688b5ccd6f1f998dfbdf">
<div>
<article
about="/blogs/taking-measure/nist-research-setting-standard-help-buildings-withstand-tornadoes" class="nist-teaser"
>
<div class="nist-teaser__image">
<div class="entity-reference"> <a href="/blogs/taking-measure/nist-research-setting-standard-help-buildings-withstand-tornadoes" hreflang="en"><img loading="lazy" src="/sites/default/files/styles/thumbnail/public/images/2024/05/06/Sammies_BlogHeader_960x600.png?itok=OuAonAhC" width="100" height="63" alt="Photos of Marc Levitan and Long Phan are part of a collage of tornado images labeled: Tornado Resiliency Building Code Research" typeof="foaf:Image" />
</a>
</div>
</div>
<div class="nist-teaser__content-wrapper">
<header>
<h3 class="nist-teaser__title"><a href="/blogs/taking-measure/nist-research-setting-standard-help-buildings-withstand-tornadoes"><span>NIST Research Is Setting the Standard to Help Buildings Withstand Tornadoes</span>
</a></h3>
<div class="nist-teaser__date">
<div class="daterange"><time datetime="2024-05-08T12:00:00Z">May 8, 2024</time>
</div>
</div>
</header>
<div class="nist-teaser__content">
<div class="text-with-summary"> Two NIST researchers have been recognized for their work to create new standards for buildings that can better withstand tornadoes.
</div>
</div>
</div>
</article>
</div>
<div>
<article
about="/blogs/taking-measure/listening-data-how-nist-tool-helps-labs-worldwide-harmonize-measurements" class="nist-teaser"
>
<div class="nist-teaser__image">
<div class="entity-reference"> <a href="/blogs/taking-measure/listening-data-how-nist-tool-helps-labs-worldwide-harmonize-measurements" hreflang="en"><img loading="lazy" src="/sites/default/files/styles/thumbnail/public/images/2024/03/21/antonio_with_kibble_balance.png?itok=ptJsn0K1" width="100" height="64" alt="Antonio Possolo stands next to a museum display of a Kibble balance, a complex scientific device." typeof="foaf:Image" />
</a>
</div>
</div>
<div class="nist-teaser__content-wrapper">
<header>
<h3 class="nist-teaser__title"><a href="/blogs/taking-measure/listening-data-how-nist-tool-helps-labs-worldwide-harmonize-measurements"><span>Listening to the Data: How a NIST Tool Helps Labs Worldwide Harmonize Measurements</span>
</a></h3>
<div class="nist-teaser__date">
<div class="daterange"><time datetime="2024-04-03T12:00:00Z">April 3, 2024</time>
</div>
</div>
</header>
<div class="nist-teaser__content">
<div class="text-with-summary"> In a global economy, measurements need to be reliably comparable across the world. But how do we ensure that actually happens?
</div>
</div>
</div>
</article>
</div>
<div>
<article
about="/blogs/taking-measure/pokemon-physics-my-journey-perseverance-research" class="nist-teaser"
>
<div class="nist-teaser__image">
<div class="entity-reference"> <a href="/blogs/taking-measure/pokemon-physics-my-journey-perseverance-research" hreflang="en"><img loading="lazy" src="/sites/default/files/styles/thumbnail/public/images/2024/01/23/Marquez_lab_1.jpg?itok=nf_XNutE" width="67" height="100" alt="Samuel Márquez Gonzalez leans forward to look through a microscope in the lab. " typeof="foaf:Image" />
</a>
</div>
</div>
<div class="nist-teaser__content-wrapper">
<header>
<h3 class="nist-teaser__title"><a href="/blogs/taking-measure/pokemon-physics-my-journey-perseverance-research"><span>From Pokémon to Physics: My Journey of Perseverance Into Research</span>
</a></h3>
<div class="nist-teaser__date">
<div class="daterange"><time datetime="2024-02-14T12:00:00Z">February 14, 2024</time>
</div>
</div>
</header>
<div class="nist-teaser__content">
<div class="text-with-summary"> A childhood love of video games led Samuel Márquez Gonzalez to a career in science and a NIST internship program for early career researchers.
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<div
class="nist-block no-print"
>
<h2
class="nist-block__title"
>Comments</h2>
<section>
<article data-comment-user-id="0" id="comment-118596" class="nist-comment js-comment">
<footer class="nist-comment__info">
<p class="submitted">
<span class="nist-comment__author"><span lang="" typeof="schema:Person" property="schema:name" datatype="">Henrique Nunes </span></span>
on
<span class="nist-comment__date">January 10, 2024 2:22 PM</span>
<mark class="hidden nist-comment__new" data-comment-timestamp="1704914708"></mark>
</p>
<div class="nist-comment__permalink"><a href="#comment-118596">Permalink</a></div>
</footer>
<div class="nist-comment__content">
<div class="text-long"><p>Great work Zach. I have built a small electric motor and a fox-hole radio. I think eolic generation is fundamental for mitigation of climate change ( hope also CCS technology evolves significantly to help out...). As a curious mathematician I have questioned some friends about the closest irrational number to square root of 2 . Replies differ a lot. Can you help? Thanks<br />
Henrique Nunes</p>
</div>
<ul class="links inline nist-comment__links">
<li class="comment-reply nist-comment__link">
<a href="/comment/reply/node/1832876/comment_node_blog/118596">Reply</a></li></ul>
</div>
</article>
<article data-comment-user-id="0" id="comment-153996" class="nist-comment js-comment">
<footer class="nist-comment__info">
<p class="submitted">
<span class="nist-comment__author"><span lang="" typeof="schema:Person" property="schema:name" datatype="">JP Deyst</span></span>
on
<span class="nist-comment__date">April 17, 2024 2:14 PM</span>
<mark class="hidden nist-comment__new" data-comment-timestamp="1713380835"></mark>
</p>
<div class="nist-comment__permalink"><a href="#comment-153996">Permalink</a></div>
</footer>
<div class="nist-comment__content">
<div class="text-long"><p>Were the NIST models compared to actual shapes and actual flows over static or better rotating, pre-coned, pitched, flexing blades of wind turbines operating under loads of wind tunnelactual winds and its vertical shear?<br />
If not, how do we know the use of the models? Can it model effectively noise from passing the tower, and fatigue, or power/torque/axial force? there seems to be a good idea here but no verification versus the real world which is so in need of real turbines that really work efficiently and reliably.<br />
We need real focus on real world turbine issues, and real replacements for the fossil fuels that are cooking use.<br />
Is there any real-world comparison data for this work, and its fit residuals showing this technique really is good and will help anyone, not static but dynamic situations, for design, fatigue, monitoring, anything? Will it help design massive offshore turbines expected in the future, which may be downwind perhaps floating and precessing, and highly flexible blades?<br />
Thanks for consideration. I mean no disrespect, more that the world desperately needs real soluations in huge quantities, to supply the 12-18 Terawatts_electrical, average,(isn&#039;t that about right?) that the planet will need. If just 25% were from wind, at 33% CF, we will need equivalent of 1 Million 10-MW turbines, plus energy storage. So we need real tools and solutions, that really provide cost reduction and reliability. Or billions of innocent people will, suffer, be displaced, be exploited, starve, while our planet cooks, we gets covered in sulfate crystals..</p>
<p>I would NIST work on the crucial enormous inverse problem being worked on by Trancik Lab at MIT, etc.<br />
How do you supply, inexpensively and then returning revenue, fairly wrt land,people, and 100% fossil-free(!), 12-Terawatt_elec and a similar amount more for industry(another 12TWelec swappable to say 36TW_thermal)? It is a huge crucial problem of maximizing cuts in methane and CO2e. </p>
<p>Also it seems a first priority is stopping the huge fossil methane leak, and that of CFCs, right right away. How can this be done as fast and completley as possible?</p>
<p>How do we manage and coordinate huge problem inimize cost, pollution, further, GHG and temperature rise and tipping point cross( eg ice sheet loss) whiledeploying renewables &amp;storage very fast while lowering uncertainties of sun, wind, cost, ROI, BOS, land, water.</p>
<p>Solar, wind, and li-ion batteries are all dropping 7-10%/year and have very low carbon LCA cost, so they are our best solutions for short term. </p>
<p>Bio-methane capture and digester biogas usage represent not only huge public health boon, which should help it be funded, and as well provide dispatchable fuel to back up PV and wind, along with waste heat recovery. </p>
<p>How can they best be deployed, ramped at say 20% or the right value per year to maximize goals. I.e deploymment to provide true energy security to all US and NATO bases and facilities. Deployment of PV in southwest US would seem best way to reach payback and generate capital for next generation and expansion?<br />
Where should R&amp;D money be put and how? How much faster could batteries improve, or wind, or PV, or biogas, or waste heat recovery, with what benefit?<br />
How can joint efforts improve financing, like covering irrigation canal water with PV? Or agrivoltaics that actually improve crop yield/hectare?<br />
How do we measure, improve, update, decide the next deployments, moves technology changes?<br />
How do we avoid delays from grid operators, which are currently endemic?</p>
<p>Electrification of aviation can be done by inflight resupply/recharge/rethrust, and biofuel APU, then future mothership-feeder systems, together can improve domestic air travel from its current hassle, noise, pollution and misery, to quiet clean e-VSTOL with local service.<br />
Electrification of trucks can be done with battery swap and as needed en-route resupply / recharge / re-power units, powered trailers, and biofuel APUs.</p>
<p>Certain concepts seem designed to distract or provide backdoors for fossil fuel, or are money sinks, such as hydrogen fuel, subsidies for corn ethanol, current nuclear and carbon capture are huge sinks of precious government and VC capital and futility, sucking money and focus from actually saving the planet.</p>
</div>
<ul class="links inline nist-comment__links">
<li class="comment-reply nist-comment__link">
<a href="/comment/reply/node/1832876/comment_node_blog/153996">Reply</a></li></ul>
</div>
</article>
<h2>Add new comment</h2>
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_Lx5yvw0vUi4TN7C0L-5Rdrp4Q049mXEKn-dXREWOtBs.css?delta=0&amp;language=en&amp;theme=nist_www&amp;include=eJxLzCvJTMov0U-E0Hpp-UW5OsmJBSXJGYn6SYnFqTppmTklqUX6KUWlBYk5ehAeAD47FNs&amp;exclude=eJx1UAuuwyAMuxAdR0IBsi5bIBWfdb39QrunVZOeRFDsWI7BQ3i4JnoW67-9u1fj_xlRkGxmkZnRQQbeGoVqfwmTqTZ3JeWirJkFomtFbSjPdoZjXKkhpaXIE-0vMSLsXLthQt0s7KG4JNFGquDVmCk_TN1qw6QJK-56O7N44HM_fazsDSFi-YNuXdez-oSHBF9tLLCx9AX48oHmSbhWu98XDdMZTV0gaWUr_tprgKaUBAJ2CSPByEbBMGzSm9PwQZ9XNisZg_Bh6O49LSrP_bCeBp4G_kZLFIqMH3oD_KWsjg" />
<form class="comment-comment-node-blog-form comment-form usa-form antibot" novalidate="novalidate" data-drupal-selector="comment-form" data-action="/comment/reply/node/1832876/comment_node_blog" action="/antibot" method="post" id="comment-form" accept-charset="UTF-8">
<noscript>
<div class="antibot-no-js antibot-message antibot-message-warning">You must have JavaScript enabled to use this form.</div>
</noscript>
<div class="form-item js-form-item form-type-textfield js-form-type-textfield form-item-name js-form-item-name">
<label for="edit-name" class="usa-label">
Your name
</label>
<input data-drupal-default-value="Anonymous" data-drupal-selector="edit-name" type="text" id="edit-name" name="name" value="" size="30" maxlength="60" class="form-text usa-input" />
</div>
<input data-drupal-selector="form-yimqwhrwfeet4wtz457cfccmz1w-kb5r-p6eagf4gm" type="hidden" name="form_build_id" value="form-yiMQWhrWfeeT4wTz457cFccMZ1w_-KB5R-p6eaGF4GM" class="usa-input" /><input data-drupal-selector="edit-comment-comment-node-blog-form" type="hidden" name="form_id" value="comment_comment_node_blog_form" class="usa-input" /><input data-drupal-selector="edit-antibot-key" type="hidden" name="antibot_key" value="" class="usa-input" /><div class="field--type-text-long field--name-comment-body field--widget-text-textarea js-form-wrapper form-wrapper" data-drupal-selector="edit-comment-body-wrapper" id="edit-comment-body-wrapper"> <div class="js-text-format-wrapper js-form-item form-item">
<div class="form-item js-form-item form-type-textarea js-form-type-textarea form-item-comment-body-0-value js-form-item-comment-body-0-value">
<label for="edit-comment-body-0-value" class="usa-label form-required">
Comment
<span class="usa-label--required"> <span class="usa-sr-only">Required</span>*</span></label>
<div class="form-textarea-wrapper">
<textarea class="js-text-full text-full form-textarea required usa-textarea resize-vertical" data-entity_embed-host-entity-langcode="en" data-media-embed-host-entity-langcode="en" data-drupal-selector="edit-comment-body-0-value" id="edit-comment-body-0-value" name="comment_body[0][value]" rows="5" cols="60" placeholder="" required="required" aria-required="true"></textarea>
</div>
</div>
<div class="js-filter-wrapper filter-wrapper hidden js-form-wrapper form-wrapper" data-drupal-selector="edit-comment-body-0-format" id="edit-comment-body-0-format"><div class="js-filter-guidelines filter-guidelines js-form-wrapper form-wrapper" data-drupal-selector="edit-comment-body-0-format-guidelines" id="edit-comment-body-0-format-guidelines"><div data-drupal-format-id="plain_text">
<h4>Plain text</h4>
<ul>
<li>No HTML tags allowed.</li>
<li>Web page addresses and email addresses turn into links automatically.</li>
<li>Lines and paragraphs break automatically.</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<fieldset data-drupal-selector="edit-captcha" class="captcha captcha-type-challenge--image">
<legend class="captcha__title js-form-required form-required">
CAPTCHA
</legend>
<div class="captcha__element">
<input data-drupal-selector="edit-captcha-sid" type="hidden" name="captcha_sid" value="652060531" class="usa-input" /><input data-drupal-selector="edit-captcha-token" type="hidden" name="captcha_token" value="H12t4zIt9aPzlqCqZo6iQMpUjt_IWuXprOde-yd7fSw" class="usa-input" /><div class="captcha__image-wrapper js-form-wrapper form-wrapper" data-drupal-selector="edit-captcha-image-wrapper" id="edit-captcha-image-wrapper"><img data-drupal-selector="edit-captcha-image" src="/image-captcha-generate/652060531/1741067404" width="180" height="60" alt="Image CAPTCHA" title="Image CAPTCHA" loading="lazy" typeof="foaf:Image" />
</div>
<div class="form-item js-form-item form-type-textfield js-form-type-textfield form-item-captcha-response js-form-item-captcha-response">
<label for="edit-captcha-response" class="usa-label form-required">
What code is in the image?
<span class="usa-label--required"> <span class="usa-sr-only">Required</span>*</span></label>
<input autocomplete="off" data-drupal-selector="edit-captcha-response" aria-describedby="edit-captcha-response--description" type="text" id="edit-captcha-response" name="captcha_response" value="" size="15" maxlength="128" class="form-text required usa-input" required="required" aria-required="true" />
<div id="edit-captcha-response--description" class="description help-block">
Enter the characters shown in the image.
</div>
</div>
</div>
<div class="captcha__description description">This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.</div>
</fieldset>
<div data-drupal-selector="edit-actions" class="form-actions js-form-wrapper form-wrapper" id="edit-actions"><input data-drupal-selector="edit-submit" type="submit" id="edit-submit" name="op" value="Save" class="button button--primary js-form-submit form-submit usa-button" /></div>
<div class="comments__disclaimer padding-top-2">
<em>Please be respectful when posting comments. We will post all comments without editing as long as they are appropriate for a public, family friendly website, are on topic and do not contain profanity, personal attacks, misleading or false information/accusations or promote specific commercial products, services or organizations. Comments that violate our comment policy or include links to non-government organizations/web pages will not be posted.</em>
</div>
</form>
</section>
</div>
</div>
<aside class="nist-page__region nist-page__region--sidebar-second tablet-lg:grid-col-4">
<div>
<div
class="nist-block"
>
<div>
<div about="/blogs/taking-measure">
<div
class="nist-block no-print"
>
<h2
class="nist-block__title"
>Our Science in Your Inbox</h2>
<div class="text-long"><p>Subscribe to our weekly emails.</p>
<form action="https://public.govdelivery.com/accounts/USNIST/subscribers/qualify" accept-charset="UTF-8" method="post">
<input name="utf8" type="hidden" value="&#x2713;">
<input type="hidden" name="authenticity_token" value="GleKn0r3EFkuIRsIWsyLN6Mrqim4qc3U7eIUCWGqBFz2ziQ/qv0gnQTJUhVbKHMSlmrsC7UHIm6S8IfK6qk9EQ==">
<input type="hidden" name="topic_id" id="topic_id" value="USNIST_309">
<div class="grid-row grid-gap-1">
<div class="tablet:grid-col-8">
<label class="usa-sr-only" for="email">Enter Email Address</label>
<input class="usa-input" type="text" name="email" id="email" title="email" placeholder="Your Email Address">
</div>
<div class="tablet:grid-col-4">
<input type="submit" name="commit" value="Sign Up" class="usa-button margin-top-1">
</div>
</div>
</form>
</div>
</div>
<div
class="views-exposed-form usa-form filters nist-block" novalidate="novalidate" data-drupal-selector="views-exposed-form-search-blog-taking-measure-search-page"
>
<h2
class="nist-block__title"
>Search</h2>
<form action="/blogs/taking-measure/search" method="get" id="views-exposed-form-search-blog-taking-measure-search-page" accept-charset="UTF-8" class="usa-form">
<div class="form-item js-form-item form-type-textfield js-form-type-textfield form-item-k js-form-item-k form-no-label">
<input placeholder="Search this blog" data-drupal-selector="edit-k" type="text" id="edit-k" name="k" value="" size="30" maxlength="128" class="form-text usa-input" />
<div id="edit-k--description" class="description help-block">
Put exact phrase in quotes (e.g., "artificial intelligence")
</div>
</div>
<div class="grid-col-12 form-actions js-form-wrapper form-wrapper" data-drupal-selector="edit-actions" id="edit-actions"><input data-drupal-selector="edit-submit-search-blog" type="submit" id="edit-submit-search-blog" value="Search" class="button js-form-submit form-submit usa-button" /></div>
</form>
</div>
<div
class="nist-block no-print"
>
<h2
class="nist-block__title"
>Stay connected</h2>
<div><a href="https://www.facebook.com/nist" class="nist-social nist-social--facebook" title="Facebook" ><span>Facebook</span></a><a href="https://www.linkedin.com/company/nist" class="nist-social nist-social--linkedin" title="LinkedIn" ><span>LinkedIn</span></a><a href="https://www.x.com/nist" class="nist-social nist-social--x" title="X (Twitter)" ><span>X (Twitter)</span></a><a href="https://www.youtube.com/nist" class="nist-social nist-social--youtube" title="Youtube" ><span>Youtube</span></a><a href="https://www.instagram.com/nist/" class="nist-social nist-social--instagram" title="Instagram" ><span>Instagram</span></a><a href="https://public.govdelivery.com/accounts/USNIST/subscriber/new?topic_id=USNIST_309" class="nist-social nist-social--envelope" title="GovDelivery" ><span>GovDelivery</span></a></div>
</div>
<div
class="views-element-container nist-block"
>
<h2
class="nist-block__title"
>Categories</h2>
<div><div class="js-view-dom-id-048880662ff01c3657d4041c1a7358fe2b993ff3246752138feb02a8c33c2abe">
<div>
<select class="usa-select ViewsJumpMenu js-viewsJumpMenu" title="-- Choose --" id="blog-categories-takingm-jump-menu">
<option>-- Choose --</option>
<option data-url="/blogs/taking-measure/categories/249466">Advanced communications</option>
<option data-url="/blogs/taking-measure/categories/248321">Bioscience</option>
<option data-url="/blogs/taking-measure/categories/248371">Buildings and Construction</option>
<option data-url="/blogs/taking-measure/categories/248416">Chemistry</option>
<option data-url="/blogs/taking-measure/categories/248486">Electronics</option>
<option data-url="/blogs/taking-measure/categories/248531">Energy</option>
<option data-url="/blogs/taking-measure/categories/248561">Environment</option>
<option data-url="/blogs/taking-measure/categories/248586">Fire</option>
<option data-url="/blogs/taking-measure/categories/248616">Forensic Science</option>
<option data-url="/blogs/taking-measure/categories/248651">Health</option>
<option data-url="/blogs/taking-measure/categories/249421">Information technology</option>
<option data-url="/blogs/taking-measure/categories/2748236">Infrastructure</option>
<option data-url="/blogs/taking-measure/categories/248866">Manufacturing</option>
<option data-url="/blogs/taking-measure/categories/248946">Materials</option>
<option data-url="/blogs/taking-measure/categories/249011">Mathematics and statistics</option>
<option data-url="/blogs/taking-measure/categories/249051">Metrology</option>
<option data-url="/blogs/taking-measure/categories/249126">Nanotechnology</option>
<option data-url="/blogs/taking-measure/categories/249451">Neutron research</option>
<option data-url="/blogs/taking-measure/categories/249426">Performance excellence</option>
<option data-url="/blogs/taking-measure/categories/249241">Physics</option>
<option data-url="/blogs/taking-measure/categories/249461">Public safety</option>
<option data-url="/blogs/taking-measure/categories/249456">Resilience</option>
<option data-url="/blogs/taking-measure/categories/249341">Standards</option>
<option data-url="/blogs/taking-measure/categories/2813456">Technology transfer</option>
<option data-url="/blogs/taking-measure/categories/249396">Transportation</option>
</select>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</aside>
</div>
</div>
<div class="grid-container">
</div>
</section>
</div>
<div data-elastic-exclude>
<!-- nist-index-ignore-start -->
<footer class="nist-footer padding-bottom-4">
<div class="grid-container nist-footer__info">
<div class="grid-row">
<div class="tablet:grid-col-6">
<div class="nist-footer__logo">
<a href="/" title="National Institute of Standards and Technology" rel="home">
<img class="nist-footer__logo-img" src="/libraries/nist-component-library/dist/img/logo/NIST-Logo-Brand-White.svg" alt="National Institute of Standards and Technology logo" width="300px" height="42px" />
</a>
</div>
<div class="nist-footer__contact">
<h3 class="nist-footer__contact-heading">HEADQUARTERS</h3>
<address>
100 Bureau Drive<br>
Gaithersburg, MD 20899<br>
<a href="tel:301-975-2000">301-975-2000</a>
</address>
<p>
<a href="mailto:do-webmaster@nist.gov">Webmaster</a> | <a href="https://www.nist.gov/about-nist/contact-us">Contact Us</a> | <a href="https://www.nist.gov/visit">Our Other Offices</a>
</p>
</div>
</div>
<div class="tablet:grid-col-6">
<div class="nist-footer__social-links">
<a class="nist-social nist-social--x-white" href=" https://x.com/NIST">
<span>X.com</span>
</a>
<a class="nist-social nist-social--facebook-white" href=" https://www.facebook.com/NIST">
<span>Facebook</span>
</a>
<a class="nist-social nist-social--linkedin-white" href=" https://www.linkedin.com/company/nist">
<span>LinkedIn</span>
</a>
<a class="nist-social nist-social--instagram-white" href=" https://www.instagram.com/nist/">
<span>Instagram</span>
</a>
<a class="nist-social nist-social--youtube-white" href=" https://www.youtube.com/NIST">
<span>YouTube</span>
</a>
<a class="nist-social nist-social--giphy-white" href=" https://giphy.com/nist">
<span>Giphy</span>
</a>
<a class="nist-social nist-social--rss-white" href=" https://www.nist.gov/news-events/nist-rss-feeds">
<span>RSS Feed</span>
</a>
<a class="nist-social nist-social--envelope-white" href=" https://public.govdelivery.com/accounts/USNIST/subscriber/new">
<span>Mailing List</span>
</a>
</div>
<div class="nist-footer__feedback">
How are we doing? <a class="usa-button" rel="nofollow" href="/form/nist-gov-feedback?destination=/blogs/taking-measure/riding-wind-how-applied-geometry-and-artificial-intelligence-can-help-us-win" title="Provide feedback">Feedback</a>
</div>
</div>
</div>
</div>
<div class="grid-container">
<div class="nist-footer__nav" role="navigation">
<ul>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/privacy-policy">Site Privacy</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/oism/accessibility">Accessibility</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/privacy">Privacy Program</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/oism/copyrights">Copyrights</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.commerce.gov/vulnerability-disclosure-policy">Vulnerability Disclosure</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/no-fear-act-policy">No Fear Act Policy</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/office-director/freedom-information-act">FOIA</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/environmental-policy-statement">Environmental Policy</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/summary-report-scientific-integrity">Scientific Integrity</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.nist.gov/nist-information-quality-standards">Information Quality Standards</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://www.commerce.gov/">Commerce.gov</a>
</li>
<li class="nist-footer__menu-item">
<a href="http://www.science.gov/">Science.gov</a>
</li>
<li class="nist-footer__menu-item">
<a href="http://www.usa.gov/">USA.gov</a>
</li>
<li class="nist-footer__menu-item">
<a href="https://vote.gov/">Vote.gov</a>
</li>
</ul>
</div>
</div>
</footer>
<!-- nist-index-ignore-end -->
</div>
</div>
<script type="application/json" data-drupal-selector="drupal-settings-json">{"path":{"baseUrl":"\/","pathPrefix":"","currentPath":"node\/1832876","currentPathIsAdmin":false,"isFront":false,"currentLanguage":"en"},"pluralDelimiter":"\u0003","suppressDeprecationErrors":true,"back_to_top":{"back_to_top_button_trigger":100,"back_to_top_speed":1200,"back_to_top_prevent_on_mobile":false,"back_to_top_prevent_in_admin":true,"back_to_top_button_type":"image","back_to_top_button_text":"Back to top"},"google_analytics":{"account":"G-HEQ0YF2VYL","trackOutbound":true,"trackMailto":true,"trackTel":true,"trackDownload":true,"trackDownloadExtensions":"7z|aac|arc|arj|asf|asx|avi|bin|bsh|c|csv|doc(x|m)?|dot(x|m)?|dw(fx|g|gd)|dxf|eps|epub|exe|f(90)|flv|gif|gz|gzip|hqx|jar|jpe?g|js|m1v|mp(2|3|4|e?g)|mobi|mov(ie)?|msi|msp|pdf|phps|pl|png|ppt(x|m)?|pot(x|m)?|pps(x|m)?|ppam|sld(x|m)?|thmx|qtm?|ra(m|r)?|rfa|rtf|rvt|sch|sea|sit|swf|tar|tgz|tif|txt|txz|wav|wma|wmv|wpd|wrl|xls(x|m|b)?|xlt(x|m)|xlam|xml|xsd|z|zip"},"nist_search":{"clickTracking":"search-report-click","isDebug":false,"clickTrackEnabled":true,"message":"NIST Search in debug mode. Check the browsers network inspector for Click Track reporting results..."},"data":{"extlink":{"extTarget":false,"extTargetNoOverride":false,"extNofollow":false,"extNoreferrer":false,"extFollowNoOverride":false,"extClass":"ext","extLabel":"(link is external)","extImgClass":false,"extSubdomains":true,"extExclude":"\\.gov\\\/|\\.mil\\\/|\\manufacturingusa\\.com\\\/","extInclude":"","extCssExclude":".ck-editor, .nist-video-thumbnail__lightbox-trigger, a.nist-icon--mail-blue","extCssExplicit":"","extAlert":true,"extAlertText":"Thank you for visiting NIST. We hope your visit was informative. We have provided a link to this site because it has information that may be of interest to our users. NIST does not necessarily endorse the views expressed or the facts presented on this site. Further, NIST does not endorse any commercial products that may be advertised or available on this site. Click OK to be directed to your link.","mailtoClass":"0","mailtoLabel":"(link sends email)","extUseFontAwesome":false,"extIconPlacement":"after","extFaLinkClasses":"fa fa-external-link","extFaMailtoClasses":"fa fa-envelope-o","whitelistedDomains":[]}},"viewsJumpMenu":{"blog-categories-takingm-jump-menu":{"new_window":false}},"ajaxTrustedUrl":{"\/blogs\/taking-measure\/search":true,"\/comment\/reply\/node\/1832876\/comment_node_blog":true},"user":{"uid":0,"permissionsHash":"bd6a443844dbe99b4e6942f3b1397526e760137efd2b1ee6b2d588fc414dff20"},"antibot":{"forms":{"comment-form":{"id":"comment-form","key":"8s3HerPNUiBWAup-NU0eICdfN5XSJ1VRGAW7gyEytXD"}}}}</script>
<script src="/sites/default/files/js/js_jDaFaXhHm6gPUKstNYX9eIyoQXghVs3g7rbR0QoqpYY.js?scope=footer&amp;delta=0&amp;language=en&amp;theme=nist_www&amp;include=eJxdkAuOwyAMRC8E9ZGQCQ51CzgCp2lvX8hHu6qEBG8Yz0j2OD2dSj8L-L-3ezQTRWIihwXTR3lq8CuYwk3dzF0LspUkGJzWHsIlQsTju7ES56XKi-BXGC27pnfK1HsleawuS4DADX0PTlyeuwdiEo_JniNwJwxUL3Tbtv1z0FvHIIS6LphuJ5pJcqail3yi9R_7YtqoHskZY-GZJzPE5h5rXlz3rbCzHWwHGyzKXhTO-zZLzaavQ6leFQd9AQAFjIc"></script>
<script src="https://siteimproveanalytics.com/js/siteanalyze_6017546.js" async></script>
<script src="/sites/default/files/js/js_phYs2jDctfdGpas0b2o3STtb7Y4B0bPDz-8rro3OgSg.js?scope=footer&amp;delta=2&amp;language=en&amp;theme=nist_www&amp;include=eJxdkAuOwyAMRC8E9ZGQCQ51CzgCp2lvX8hHu6qEBG8Yz0j2OD2dSj8L-L-3ezQTRWIihwXTR3lq8CuYwk3dzF0LspUkGJzWHsIlQsTju7ES56XKi-BXGC27pnfK1HsleawuS4DADX0PTlyeuwdiEo_JniNwJwxUL3Tbtv1z0FvHIIS6LphuJ5pJcqail3yi9R_7YtqoHskZY-GZJzPE5h5rXlz3rbCzHWwHGyzKXhTO-zZLzaavQ6leFQd9AQAFjIc"></script>
<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"37b7ccb661","applicationID":"1089704227","transactionName":"YFxUN0sADEdYVkBaClkWdwBNCA1aFnFGRhVWVWoNVgUHaHpaWkcXWFVaBks9LFtdUGJaAEB6WQ1NEw1YVVBGHltBUFMU","queueTime":4,"applicationTime":611,"atts":"TBtXQQMaH0k=","errorBeacon":"bam.nr-data.net","agent":""}</script></body>
</html>