From f595a36ec58d6d592de012b0278870d69944c837 Mon Sep 17 00:00:00 2001 From: sp Date: Thu, 21 Mar 2024 11:20:20 +0000 Subject: [PATCH] Updates --- assets/index-BTCV9RtG.js | 1 - assets/index-C3eLFIxo.js | 1 + index.html | 2 +- sw.js | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) delete mode 100644 assets/index-BTCV9RtG.js create mode 100644 assets/index-C3eLFIxo.js diff --git a/assets/index-BTCV9RtG.js b/assets/index-BTCV9RtG.js deleted file mode 100644 index 7bcf073..0000000 --- a/assets/index-BTCV9RtG.js +++ /dev/null @@ -1 +0,0 @@ -var ao=Object.defineProperty;var uo=(e,s,o)=>s in e?ao(e,s,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[s]=o;var Tl=(e,s,o)=>(uo(e,typeof s!="symbol"?s+"":s,o),o);(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))a(d);new MutationObserver(d=>{for(const p of d)if(p.type==="childList")for(const m of p.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&a(m)}).observe(document,{childList:!0,subtree:!0});function o(d){const p={};return d.integrity&&(p.integrity=d.integrity),d.referrerPolicy&&(p.referrerPolicy=d.referrerPolicy),d.crossOrigin==="use-credentials"?p.credentials="include":d.crossOrigin==="anonymous"?p.credentials="omit":p.credentials="same-origin",p}function a(d){if(d.ep)return;d.ep=!0;const p=o(d);fetch(d.href,p)}})();function Yt(){}function xn(e){return e()}function Kn(){return Object.create(null)}function ve(e){e.forEach(xn)}function $n(e){return typeof e=="function"}function to(e,s){return e!=e?s==s:e!==s||e&&typeof e=="object"||typeof e=="function"}let Oe;function Vn(e,s){return e===s?!0:(Oe||(Oe=document.createElement("a")),Oe.href=s,e===Oe.href)}function co(e){return Object.keys(e).length===0}function Ue(e){return e??""}function t(e,s){e.appendChild(s)}function eo(e,s,o){e.insertBefore(s,o||null)}function et(e){e.parentNode&&e.parentNode.removeChild(e)}function n(e){return document.createElement(e)}function y(e){return document.createTextNode(e)}function i(){return y(" ")}function C(e,s,o,a){return e.addEventListener(s,o,a),()=>e.removeEventListener(s,o,a)}function l(e,s,o){o==null?e.removeAttribute(s):e.getAttribute(s)!==o&&e.setAttribute(s,o)}function f(e){return e===""?null:+e}function fo(e){return Array.from(e.childNodes)}function M(e,s){s=""+s,e.data!==s&&(e.data=s)}function u(e,s){e.value=s??""}function Xn(e,s,o){for(let a=0;ae.indexOf(a)===-1?s.push(a):o.push(a)),o.forEach(a=>a()),qt=s}const He=new Set;let yo;function no(e,s){e&&e.i&&(He.delete(e),e.i(s))}function wo(e,s,o,a){if(e&&e.o){if(He.has(e))return;He.add(e),yo.c.push(()=>{He.delete(e),a&&(o&&e.d(1),a())}),e.o(s)}else a&&a()}function Co(e){e&&e.c()}function oo(e,s,o){const{fragment:a,after_update:d}=e.$$;a&&a.m(s,o),Fe(()=>{const p=e.$$.on_mount.map(xn).filter($n);e.$$.on_destroy?e.$$.on_destroy.push(...p):ve(p),e.$$.on_mount=[]}),d.forEach(Fe)}function so(e,s){const o=e.$$;o.fragment!==null&&(go(o.after_update),ve(o.on_destroy),o.fragment&&o.fragment.d(s),o.on_destroy=o.fragment=null,o.ctx=[])}function Lo(e,s){e.$$.dirty[0]===-1&&(Wt.push(e),_o(),e.$$.dirty.fill(0)),e.$$.dirty[s/31|0]|=1<{const j=T.length?T[0]:_;return b.ctx&&d(b.ctx[L],b.ctx[L]=j)&&(!b.skip_bound&&b.bound[L]&&b.bound[L](j),w&&Lo(e,L)),_}):[],b.update(),w=!0,ve(b.before_update),b.fragment=a?a(b.ctx):!1,s.target){if(s.hydrate){const L=fo(s.target);b.fragment&&b.fragment.l(L),L.forEach(et)}else b.fragment&&b.fragment.c();s.intro&&no(e.$$.fragment),oo(e,s.target,s.anchor),lo()}me(h)}class ro{constructor(){Tl(this,"$$");Tl(this,"$$set")}$destroy(){so(this,1),this.$destroy=Yt}$on(s,o){if(!$n(o))return Yt;const a=this.$$.callbacks[s]||(this.$$.callbacks[s]=[]);return a.push(o),()=>{const d=a.indexOf(o);d!==-1&&a.splice(d,1)}}$set(s){this.$$set&&!co(s)&&(this.$$.skip_bound=!0,this.$$set(s),this.$$.skip_bound=!1)}}const Bo="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(Bo);function Mo(e){let s,o,a,d,p,m,P,h,b,w,L,_,T,j,q,Y,k,lt,K,nt,A,S,O,B,R,U,H,F,ot,ge,st,Ct,ye,G,we,it,Lt,Ce,I,Le,rt,Bt,Be,D,Me,Kt,Ne,N,z,ke,W,Se,V,Mt,Vt,jl,at,Al,kt,Xt,Ol,ut,Ul,Zt,Hl,Jt,St,Qt,Fl,ct,Gl,xt,Il,X,Et,$t,Dl,dt,zl,Tt,te,Wl,ft,ql,Rt,ee,Yl,Z,Kl,Ge,Vl,Pt,J,Xl,Q,jt,le,Zl,pt,Jl,At,ne,Ql,ht,xl,Ot,oe,$l,bt,tn,Ie,en,E,x,ln,se,nn,Nt,Ut,ie,on,mt,sn,Ht,re,rn,_t,an,ae,un,ue,Ft,ce,cn,vt,dn,de,fn,$,Gt,fe,pn,gt,hn,It,pe,bn,yt,mn,Dt,he,_n,tt,vn,De,gn,Ee,yn,ze,wn,wt,We,Cn,qe,v,Te,Ln,Ye,Ke,Bn,Ve,Xe,Mn,Ze,Je,Nn,Qe,xe,kn,$e,tl,Sn,el,ll,En,nl,ol,Tn,sl,il,Rn,rl,al,Re,Pn,Pe,ul,g,je,jn,cl,dl,An,fl,pl,On,hl,bl,Un,ml,_l,Hn,vl,gl,Fn,yl,wl,Gn,Cl,Ll,In,Bl,Ml,Dn,Nl,kl,Ae,zn,be,Wn,Sl,qn,El,Yn;return{c(){s=n("div"),o=n("div"),a=n("h2"),a.textContent="5G Link Budget",d=i(),p=n("div"),m=n("button"),m.textContent="Radio Configuration",P=i(),h=n("div"),b=n("div"),w=n("label"),w.textContent="Frequency Tx (MHz):",L=i(),_=n("input"),T=i(),j=n("div"),q=n("label"),q.textContent="RB count:",Y=i(),k=n("input"),lt=i(),K=n("div"),nt=i(),A=n("div"),S=n("label"),S.textContent="Select:",O=i(),B=n("select"),R=n("option"),R.textContent="0 - 15kHz",U=n("option"),U.textContent="1 - 30kHz",H=n("option"),H.textContent="2 - 60kHz",F=n("option"),F.textContent="3 - 120kHz",ot=n("option"),ot.textContent="4 - 240kHz",ge=i(),st=n("div"),Ct=n("label"),Ct.textContent="Numerolgy:",ye=i(),G=n("input"),we=i(),it=n("div"),Lt=n("label"),Lt.textContent="Subcarrie Spacing (kHz):",Ce=i(),I=n("input"),Le=i(),rt=n("div"),Bt=n("label"),Bt.textContent="Thermal Noise:",Be=i(),D=n("input"),Me=i(),Kt=n("div"),Ne=i(),N=n("div"),z=n("button"),z.textContent="NodeB",ke=i(),W=n("h6"),W.textContent="Losses & Gains",Se=i(),V=n("div"),Mt=n("div"),Vt=n("label"),Vt.textContent="Tx Cable Loss (dB):",jl=i(),at=n("input"),Al=i(),kt=n("div"),Xt=n("label"),Xt.textContent="Tx Antenna Gain (dB):",Ol=i(),ut=n("input"),Ul=i(),Zt=n("h6"),Zt.textContent="Tx",Hl=i(),Jt=n("div"),St=n("div"),Qt=n("label"),Qt.textContent="Tx Power (dBm):",Fl=i(),ct=n("input"),Gl=i(),xt=n("h6"),xt.textContent="Rx",Il=i(),X=n("div"),Et=n("div"),$t=n("label"),$t.textContent="Noise Figure (dB):",Dl=i(),dt=n("input"),zl=i(),Tt=n("div"),te=n("label"),te.textContent="SINR (dB):",Wl=i(),ft=n("input"),ql=i(),Rt=n("div"),ee=n("label"),ee.textContent="Receiver Sensitivity:",Yl=i(),Z=n("input"),Kl=i(),Ge=n("div"),Vl=i(),Pt=n("div"),J=n("button"),J.textContent="Loss&Margins",Xl=i(),Q=n("div"),jt=n("div"),le=n("label"),le.textContent="Interference Margin (dB):",Zl=i(),pt=n("input"),Jl=i(),At=n("div"),ne=n("label"),ne.textContent="Fading Margin (dB):",Ql=i(),ht=n("input"),xl=i(),Ot=n("div"),oe=n("label"),oe.textContent="Penetration Loss (dB):",$l=i(),bt=n("input"),tn=i(),Ie=n("div"),en=i(),E=n("div"),x=n("button"),x.textContent="UT",ln=i(),se=n("h6"),se.textContent="Losses & Gains",nn=i(),Nt=n("div"),Ut=n("div"),ie=n("label"),ie.textContent="Tx Cable Loss (dB):",on=i(),mt=n("input"),sn=i(),Ht=n("div"),re=n("label"),re.textContent="Tx Antenna Gain (dB):",rn=i(),_t=n("input"),an=i(),ae=n("h6"),ae.textContent="Tx",un=i(),ue=n("div"),Ft=n("div"),ce=n("label"),ce.textContent="Tx Power (dBm):",cn=i(),vt=n("input"),dn=i(),de=n("h6"),de.textContent="Rx",fn=i(),$=n("div"),Gt=n("div"),fe=n("label"),fe.textContent="Noise Figure (dB):",pn=i(),gt=n("input"),hn=i(),It=n("div"),pe=n("label"),pe.textContent="SINR (dB):",bn=i(),yt=n("input"),mn=i(),Dt=n("div"),he=n("label"),he.textContent="Receiver Sensitivity:",_n=i(),tt=n("input"),vn=i(),De=n("div"),gn=i(),Ee=n("div"),Ee.innerHTML='
Models
',yn=i(),ze=n("h4"),ze.textContent="Maximum Allowable Pathloss",wn=i(),wt=n("table"),We=n("thead"),We.innerHTML='Path Tx Power Cable Loss Tx Antenna Gain Tx Fading Margin Interference Margin Cable Loss Rx Antenna Gain Rx Rx Sensitivity MAPL',Cn=i(),qe=n("tbody"),v=n("tr"),Te=n("th"),Te.textContent="DL",Ln=i(),Ye=n("td"),Ke=y(e[0]),Bn=i(),Ve=n("td"),Xe=y(e[1]),Mn=i(),Ze=n("td"),Je=y(e[2]),Nn=i(),Qe=n("td"),xe=y(e[7]),kn=i(),$e=n("td"),tl=y(e[6]),Sn=i(),el=n("td"),ll=y(e[4]),En=i(),nl=n("td"),ol=y(e[5]),Tn=i(),sl=n("td"),il=y(e[10]),Rn=i(),rl=n("td"),al=y(e[20]),Pn=i(),Pe=n("tbody"),ul=n("tr"),ul.innerHTML="",g=n("tr"),je=n("th"),je.textContent="UL",jn=i(),cl=n("td"),dl=y(e[3]),An=i(),fl=n("td"),pl=y(e[4]),On=i(),hl=n("td"),bl=y(e[5]),Un=i(),ml=n("td"),_l=y(e[7]),Hn=i(),vl=n("td"),gl=y(e[6]),Fn=i(),yl=n("td"),wl=y(e[1]),Gn=i(),Cl=n("td"),Ll=y(e[2]),In=i(),Bl=n("td"),Ml=y(e[9]),Dn=i(),Nl=n("td"),kl=y(e[21]),zn=i(),be=n("h4"),Wn=y("Cell Radius: "),Sl=y(e[22]),qn=y(" m"),l(m,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(m,"type","button"),l(m,"data-bs-toggle","collapse"),l(m,"data-bs-target","#channel"),l(m,"aria-expanded","false"),l(m,"aria-controls","collapseExample"),l(w,"for","centerFrequency"),l(w,"class","form-label"),l(_,"type","number"),l(_,"class","form-control"),l(b,"class","col-3"),l(q,"for","noRBs"),l(q,"class","form-label"),l(k,"type","number"),l(k,"class","form-control"),l(j,"class","col-3"),l(K,"class","col-6"),l(S,"for","numerology"),l(S,"class","form-label"),R.__value="0",u(R,R.__value),U.__value="1",u(U,U.__value),H.__value="2",u(H,H.__value),F.__value="3",u(F,F.__value),ot.__value="3",u(ot,ot.__value),l(B,"class","form-select col-3"),l(B,"aria-label","Default select example"),e[18]===void 0&&Fe(()=>e[28].call(B)),l(A,"class","col-3"),l(Ct,"for","numerology"),l(Ct,"class","form-label"),l(G,"type","number"),l(G,"class","form-control"),G.disabled=!0,l(st,"class","col-3"),l(Lt,"for","subCarrierSpacing"),l(Lt,"class","form-label"),l(I,"type","number"),l(I,"class","form-control"),I.disabled=!0,l(it,"class","col-3"),l(Bt,"for","thermalNoise"),l(Bt,"class","form-label"),l(D,"type","number"),l(D,"class","form-control"),D.disabled=!0,l(rt,"class","col-3"),l(h,"class","row collapse"),l(h,"id","channel"),l(p,"class","row"),l(Kt,"class","w-100 mb-3"),l(z,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(z,"type","button"),l(z,"data-bs-toggle","collapse"),l(z,"data-bs-target","#nodeB"),l(z,"aria-expanded","false"),l(z,"aria-controls","collapseExample"),l(W,"class","collapse"),l(W,"id","nodeB"),l(Vt,"for","transmitCableLoss"),l(Vt,"class","form-label"),l(at,"type","number"),l(at,"class","form-control"),l(Mt,"class","col-3"),l(Xt,"for","transmitterGain"),l(Xt,"class","form-label"),l(ut,"type","number"),l(ut,"class","form-control"),l(kt,"class","col-3"),l(V,"class","row collapse"),l(V,"id","nodeB"),l(Zt,"class","collapse"),l(Zt,"id","nodeB"),l(Qt,"for","transmitPower"),l(Qt,"class","form-label"),l(ct,"type","number"),l(ct,"class","form-control"),l(St,"class","col-3"),l(Jt,"class","row collapse"),l(Jt,"id","nodeB"),l(xt,"class","collapse"),l(xt,"id","nodeB"),l($t,"for","noiseFigureNodeB"),l($t,"class","form-label"),l(dt,"type","number"),l(dt,"class","form-control"),l(Et,"class","col-3"),l(te,"for","sinrNodeB"),l(te,"class","form-label"),l(ft,"type","number"),l(ft,"class","form-control"),l(Tt,"class","col-3"),l(ee,"for","rxSensitivityNodeB"),l(ee,"class","form-label"),l(Z,"type","number"),l(Z,"class","form-control"),Z.disabled=!0,l(Rt,"class","col-3"),l(X,"class","row collapse"),l(X,"id","nodeB"),l(N,"class","row"),l(Ge,"class","w-100 mb-3"),l(J,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(J,"type","button"),l(J,"data-bs-toggle","collapse"),l(J,"data-bs-target","#losses"),l(J,"aria-expanded","false"),l(J,"aria-controls","collapseExample"),l(le,"for","interferenceMargin"),l(le,"class","form-label"),l(pt,"type","number"),l(pt,"class","form-control"),l(jt,"class","col-3"),l(ne,"for","fadingMargin"),l(ne,"class","form-label"),l(ht,"type","number"),l(ht,"class","form-control"),l(At,"class","col-3"),l(oe,"for","penetrationLoss"),l(oe,"class","form-label"),l(bt,"type","number"),l(bt,"class","form-control"),l(Ot,"class","col-3"),l(Q,"class","row collapse"),l(Q,"id","losses"),l(Pt,"class","row"),l(Ie,"class","w-100 mb-3"),l(x,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(x,"type","button"),l(x,"data-bs-toggle","collapse"),l(x,"data-bs-target","#ueconf"),l(x,"aria-expanded","false"),l(x,"aria-controls","collapseExample"),l(se,"class","collapse"),l(se,"id","ueconf"),l(ie,"for","transmitCableLoss"),l(ie,"class","form-label"),l(mt,"type","number"),l(mt,"class","form-control"),l(Ut,"class","col-3"),l(re,"for","transmitterGain"),l(re,"class","form-label"),l(_t,"type","number"),l(_t,"class","form-control"),l(Ht,"class","col-3"),l(Nt,"class","row collapse"),l(Nt,"id","ueconf"),l(ae,"class","collapse"),l(ae,"id","ueconf"),l(ce,"for","transmitPowerUT"),l(ce,"class","form-label"),l(vt,"type","number"),l(vt,"class","form-control"),l(Ft,"class","col-3"),l(ue,"class","row collapse"),l(ue,"id","ueconf"),l(de,"class","collapse"),l(de,"id","ueconf"),l(fe,"for","noiseFigureUE"),l(fe,"class","form-label"),l(gt,"type","number"),l(gt,"class","form-control"),l(Gt,"class","col-3"),l(pe,"for","sinrUE"),l(pe,"class","form-label"),l(yt,"type","number"),l(yt,"class","form-control"),l(It,"class","col-3"),l(he,"for","rxSensitivityUE"),l(he,"class","form-label"),l(tt,"type","number"),l(tt,"class","form-control"),tt.disabled=!0,l(Dt,"class","col-3"),l($,"class","row collapse"),l($,"id","ueconf"),l(E,"class","row"),l(De,"class","w-100 mb-3"),l(Ee,"class","row"),l(Te,"scope","row"),l(v,"class",Re=Ue(e[23])+" svelte-l5y9p7"),l(je,"scope","row"),l(g,"class",Ae=Ue(e[24])+" svelte-l5y9p7"),l(wt,"class","table"),l(o,"class","row"),l(s,"class","container")},m(r,c){eo(r,s,c),t(s,o),t(o,a),t(o,d),t(o,p),t(p,m),t(p,P),t(p,h),t(h,b),t(b,w),t(b,L),t(b,_),u(_,e[11]),t(h,T),t(h,j),t(j,q),t(j,Y),t(j,k),u(k,e[12]),t(h,lt),t(h,K),t(h,nt),t(h,A),t(A,S),t(A,O),t(A,B),t(B,R),t(B,U),t(B,H),t(B,F),t(B,ot),Xn(B,e[18],!0),t(h,ge),t(h,st),t(st,Ct),t(st,ye),t(st,G),u(G,e[18]),t(h,we),t(h,it),t(it,Lt),t(it,Ce),t(it,I),u(I,e[19]),t(h,Le),t(h,rt),t(rt,Bt),t(rt,Be),t(rt,D),u(D,e[13]),t(o,Me),t(o,Kt),t(o,Ne),t(o,N),t(N,z),t(N,ke),t(N,W),t(N,Se),t(N,V),t(V,Mt),t(Mt,Vt),t(Mt,jl),t(Mt,at),u(at,e[1]),t(V,Al),t(V,kt),t(kt,Xt),t(kt,Ol),t(kt,ut),u(ut,e[2]),t(N,Ul),t(N,Zt),t(N,Hl),t(N,Jt),t(Jt,St),t(St,Qt),t(St,Fl),t(St,ct),u(ct,e[0]),t(N,Gl),t(N,xt),t(N,Il),t(N,X),t(X,Et),t(Et,$t),t(Et,Dl),t(Et,dt),u(dt,e[16]),t(X,zl),t(X,Tt),t(Tt,te),t(Tt,Wl),t(Tt,ft),u(ft,e[14]),t(X,ql),t(X,Rt),t(Rt,ee),t(Rt,Yl),t(Rt,Z),u(Z,e[9]),t(o,Kl),t(o,Ge),t(o,Vl),t(o,Pt),t(Pt,J),t(Pt,Xl),t(Pt,Q),t(Q,jt),t(jt,le),t(jt,Zl),t(jt,pt),u(pt,e[6]),t(Q,Jl),t(Q,At),t(At,ne),t(At,Ql),t(At,ht),u(ht,e[7]),t(Q,xl),t(Q,Ot),t(Ot,oe),t(Ot,$l),t(Ot,bt),u(bt,e[8]),t(o,tn),t(o,Ie),t(o,en),t(o,E),t(E,x),t(E,ln),t(E,se),t(E,nn),t(E,Nt),t(Nt,Ut),t(Ut,ie),t(Ut,on),t(Ut,mt),u(mt,e[4]),t(Nt,sn),t(Nt,Ht),t(Ht,re),t(Ht,rn),t(Ht,_t),u(_t,e[5]),t(E,an),t(E,ae),t(E,un),t(E,ue),t(ue,Ft),t(Ft,ce),t(Ft,cn),t(Ft,vt),u(vt,e[3]),t(E,dn),t(E,de),t(E,fn),t(E,$),t($,Gt),t(Gt,fe),t(Gt,pn),t(Gt,gt),u(gt,e[17]),t($,hn),t($,It),t(It,pe),t(It,bn),t(It,yt),u(yt,e[15]),t($,mn),t($,Dt),t(Dt,he),t(Dt,_n),t(Dt,tt),u(tt,e[10]),t(o,vn),t(o,De),t(o,gn),t(o,Ee),t(o,yn),t(o,ze),t(o,wn),t(o,wt),t(wt,We),t(wt,Cn),t(wt,qe),t(qe,v),t(v,Te),t(v,Ln),t(v,Ye),t(Ye,Ke),t(v,Bn),t(v,Ve),t(Ve,Xe),t(v,Mn),t(v,Ze),t(Ze,Je),t(v,Nn),t(v,Qe),t(Qe,xe),t(v,kn),t(v,$e),t($e,tl),t(v,Sn),t(v,el),t(el,ll),t(v,En),t(v,nl),t(nl,ol),t(v,Tn),t(v,sl),t(sl,il),t(v,Rn),t(v,rl),t(rl,al),t(wt,Pn),t(wt,Pe),t(Pe,ul),t(Pe,g),t(g,je),t(g,jn),t(g,cl),t(cl,dl),t(g,An),t(g,fl),t(fl,pl),t(g,On),t(g,hl),t(hl,bl),t(g,Un),t(g,ml),t(ml,_l),t(g,Hn),t(g,vl),t(vl,gl),t(g,Fn),t(g,yl),t(yl,wl),t(g,Gn),t(g,Cl),t(Cl,Ll),t(g,In),t(g,Bl),t(Bl,Ml),t(g,Dn),t(g,Nl),t(Nl,kl),t(o,zn),t(o,be),t(be,Wn),t(be,Sl),t(be,qn),El||(Yn=[C(_,"input",e[26]),C(k,"input",e[27]),C(B,"change",e[28]),C(G,"input",e[29]),C(I,"input",e[30]),C(D,"input",e[31]),C(at,"input",e[32]),C(ut,"input",e[33]),C(ct,"input",e[34]),C(dt,"input",e[35]),C(ft,"input",e[36]),C(Z,"input",e[37]),C(pt,"input",e[38]),C(ht,"input",e[39]),C(bt,"input",e[40]),C(mt,"input",e[41]),C(_t,"input",e[42]),C(vt,"input",e[43]),C(gt,"input",e[44]),C(yt,"input",e[45]),C(tt,"input",e[46])],El=!0)},p(r,c){c[0]&2048&&f(_.value)!==r[11]&&u(_,r[11]),c[0]&4096&&f(k.value)!==r[12]&&u(k,r[12]),c[0]&262144&&Xn(B,r[18]),c[0]&262144&&f(G.value)!==r[18]&&u(G,r[18]),c[0]&524288&&f(I.value)!==r[19]&&u(I,r[19]),c[0]&8192&&f(D.value)!==r[13]&&u(D,r[13]),c[0]&2&&f(at.value)!==r[1]&&u(at,r[1]),c[0]&4&&f(ut.value)!==r[2]&&u(ut,r[2]),c[0]&1&&f(ct.value)!==r[0]&&u(ct,r[0]),c[0]&65536&&f(dt.value)!==r[16]&&u(dt,r[16]),c[0]&16384&&f(ft.value)!==r[14]&&u(ft,r[14]),c[0]&512&&f(Z.value)!==r[9]&&u(Z,r[9]),c[0]&64&&f(pt.value)!==r[6]&&u(pt,r[6]),c[0]&128&&f(ht.value)!==r[7]&&u(ht,r[7]),c[0]&256&&f(bt.value)!==r[8]&&u(bt,r[8]),c[0]&16&&f(mt.value)!==r[4]&&u(mt,r[4]),c[0]&32&&f(_t.value)!==r[5]&&u(_t,r[5]),c[0]&8&&f(vt.value)!==r[3]&&u(vt,r[3]),c[0]&131072&&f(gt.value)!==r[17]&&u(gt,r[17]),c[0]&32768&&f(yt.value)!==r[15]&&u(yt,r[15]),c[0]&1024&&f(tt.value)!==r[10]&&u(tt,r[10]),c[0]&1&&M(Ke,r[0]),c[0]&2&&M(Xe,r[1]),c[0]&4&&M(Je,r[2]),c[0]&128&&M(xe,r[7]),c[0]&64&&M(tl,r[6]),c[0]&16&&M(ll,r[4]),c[0]&32&&M(ol,r[5]),c[0]&1024&&M(il,r[10]),c[0]&1048576&&M(al,r[20]),c[0]&8388608&&Re!==(Re=Ue(r[23])+" svelte-l5y9p7")&&l(v,"class",Re),c[0]&8&&M(dl,r[3]),c[0]&16&&M(pl,r[4]),c[0]&32&&M(bl,r[5]),c[0]&128&&M(_l,r[7]),c[0]&64&&M(gl,r[6]),c[0]&2&&M(wl,r[1]),c[0]&4&&M(Ll,r[2]),c[0]&512&&M(Ml,r[9]),c[0]&2097152&&M(kl,r[21]),c[0]&16777216&&Ae!==(Ae=Ue(r[24])+" svelte-l5y9p7")&&l(g,"class",Ae),c[0]&4194304&&M(Sl,r[22])},i:Yt,o:Yt,d(r){r&&et(s),El=!1,ve(Yn)}}}function Qn(e,s){return Math.round(e*Math.pow(10,s))/Math.pow(10,s)}function No(e,s,o){let a=27,d=2,p=15,m=23,P=0,h=0,b=10,w=6,L=15,_=-100,T=-100,j=500,q=3600,Y=1,k=0,lt=-6,K=-6,nt=4,A=10,S="1",O=0,B=0,R=0,U=0,H="",F="";function ot(W,Se,V){return Math.pow(10,(W-13.54-20*Math.log10(Se/1e3)+.6*(V-1.5))/39.08)}bo(()=>{"serviceWorker"in navigator&&navigator.serviceWorker.register("/service-worker.js").then(W=>console.log("Service Worker registered",W)).catch(W=>console.log("Service Worker registration failed:",W))});function ge(){q=f(this.value),o(11,q)}function st(){Y=f(this.value),o(12,Y)}function Ct(){S=po(this),o(18,S)}function ye(){S=f(this.value),o(18,S)}function G(){O=f(this.value),o(19,O),o(18,S)}function we(){k=f(this.value),o(13,k),o(19,O),o(12,Y),o(18,S)}function it(){d=f(this.value),o(1,d)}function Lt(){p=f(this.value),o(2,p)}function Ce(){a=f(this.value),o(0,a)}function I(){nt=f(this.value),o(16,nt)}function Le(){lt=f(this.value),o(14,lt)}function rt(){_=f(this.value),o(9,_),o(13,k),o(14,lt),o(16,nt),o(19,O),o(12,Y),o(18,S)}function Bt(){b=f(this.value),o(6,b)}function Be(){w=f(this.value),o(7,w)}function D(){L=f(this.value),o(8,L)}function Me(){P=f(this.value),o(4,P)}function Kt(){h=f(this.value),o(5,h)}function Ne(){m=f(this.value),o(3,m)}function N(){A=f(this.value),o(17,A)}function z(){K=f(this.value),o(15,K)}function ke(){T=f(this.value),o(10,T),o(13,k),o(15,K),o(17,A),o(19,O),o(12,Y),o(18,S)}return e.$$.update=()=>{e.$$.dirty[0]&262144&&o(19,O=15*Math.pow(2,S)),e.$$.dirty[0]&455,e.$$.dirty[0]&528384&&o(13,k=Qn(-174+10*Math.log10(O*1e3*12*Y),2)),e.$$.dirty[0]&172032&&o(10,T=k+K+A),e.$$.dirty[0]&1223&&o(20,B=a-d+p-w-b-T),e.$$.dirty[0]&90112&&o(9,_=k+lt+nt),e.$$.dirty[0]&766&&o(21,R=m-P+h-w-b+p-d-_),e.$$.dirty[0]&3145728&&(B<=R?o(25,U=B):o(25,U=R)),e.$$.dirty[0]&33556480&&o(22,j=Qn(ot(U,q,1.5),2)),e.$$.dirty[0]&1049799,e.$$.dirty[0]&2097918,e.$$.dirty[0]&3145728&&(BR?(o(23,H="table-danger"),o(24,F="table-success")):(o(23,H="table-success"),o(24,F="table-success")))},[a,d,p,m,P,h,b,w,L,_,T,q,Y,k,lt,K,nt,A,S,O,B,R,j,H,F,U,ge,st,Ct,ye,G,we,it,Lt,Ce,I,Le,rt,Bt,Be,D,Me,Kt,Ne,N,z,ke]}class ko extends ro{constructor(s){super(),io(this,s,No,Mo,to,{},null,[-1,-1])}}function So(e){let s,o,a,d,p,m,P,h,b,w,L;return w=new ko({}),{c(){s=n("script"),s.innerHTML="",a=n("link"),d=n("link"),p=n("link"),m=n("script"),m.innerHTML="",h=n("link"),b=i(),Co(w.$$.fragment),document.title="Link Budget App",Vn(s.src,o="https://cdn.jsdelivr.net/npm/chart.js")||l(s,"src",o),l(a,"rel","stylesheet"),l(a,"href","https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700"),l(d,"rel","stylesheet"),l(d,"href","https://fonts.googleapis.com/css?family=Roboto+Mono"),l(p,"rel","stylesheet"),l(p,"href","https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"),Vn(m.src,P="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js")||l(m,"src",P),l(m,"integrity","sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz"),l(m,"crossorigin","anonymous"),l(h,"href","https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"),l(h,"rel","stylesheet"),l(h,"integrity","sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH"),l(h,"crossorigin","anonymous")},m(_,T){t(document.head,s),t(document.head,a),t(document.head,d),t(document.head,p),t(document.head,m),t(document.head,h),eo(_,b,T),oo(w,_,T),L=!0},p:Yt,i(_){L||(no(w.$$.fragment,_),L=!0)},o(_){wo(w.$$.fragment,_),L=!1},d(_){_&&et(b),et(s),et(a),et(d),et(p),et(m),et(h),so(w,_)}}}class Eo extends ro{constructor(s){super(),io(this,s,null,So,to,{})}}new Eo({target:document.getElementById("app")}); diff --git a/assets/index-C3eLFIxo.js b/assets/index-C3eLFIxo.js new file mode 100644 index 0000000..5f6cbba --- /dev/null +++ b/assets/index-C3eLFIxo.js @@ -0,0 +1 @@ +var ao=Object.defineProperty;var uo=(e,s,o)=>s in e?ao(e,s,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[s]=o;var Tl=(e,s,o)=>(uo(e,typeof s!="symbol"?s+"":s,o),o);(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))a(d);new MutationObserver(d=>{for(const p of d)if(p.type==="childList")for(const m of p.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&a(m)}).observe(document,{childList:!0,subtree:!0});function o(d){const p={};return d.integrity&&(p.integrity=d.integrity),d.referrerPolicy&&(p.referrerPolicy=d.referrerPolicy),d.crossOrigin==="use-credentials"?p.credentials="include":d.crossOrigin==="anonymous"?p.credentials="omit":p.credentials="same-origin",p}function a(d){if(d.ep)return;d.ep=!0;const p=o(d);fetch(d.href,p)}})();function Yt(){}function xn(e){return e()}function Kn(){return Object.create(null)}function ve(e){e.forEach(xn)}function $n(e){return typeof e=="function"}function to(e,s){return e!=e?s==s:e!==s||e&&typeof e=="object"||typeof e=="function"}let Oe;function Vn(e,s){return e===s?!0:(Oe||(Oe=document.createElement("a")),Oe.href=s,e===Oe.href)}function co(e){return Object.keys(e).length===0}function Ue(e){return e??""}function t(e,s){e.appendChild(s)}function eo(e,s,o){e.insertBefore(s,o||null)}function et(e){e.parentNode&&e.parentNode.removeChild(e)}function n(e){return document.createElement(e)}function y(e){return document.createTextNode(e)}function i(){return y(" ")}function C(e,s,o,a){return e.addEventListener(s,o,a),()=>e.removeEventListener(s,o,a)}function l(e,s,o){o==null?e.removeAttribute(s):e.getAttribute(s)!==o&&e.setAttribute(s,o)}function f(e){return e===""?null:+e}function fo(e){return Array.from(e.childNodes)}function M(e,s){s=""+s,e.data!==s&&(e.data=s)}function u(e,s){e.value=s??""}function Xn(e,s,o){for(let a=0;ae.indexOf(a)===-1?s.push(a):o.push(a)),o.forEach(a=>a()),qt=s}const He=new Set;let yo;function no(e,s){e&&e.i&&(He.delete(e),e.i(s))}function wo(e,s,o,a){if(e&&e.o){if(He.has(e))return;He.add(e),yo.c.push(()=>{He.delete(e),a&&(o&&e.d(1),a())}),e.o(s)}else a&&a()}function Co(e){e&&e.c()}function oo(e,s,o){const{fragment:a,after_update:d}=e.$$;a&&a.m(s,o),Fe(()=>{const p=e.$$.on_mount.map(xn).filter($n);e.$$.on_destroy?e.$$.on_destroy.push(...p):ve(p),e.$$.on_mount=[]}),d.forEach(Fe)}function so(e,s){const o=e.$$;o.fragment!==null&&(go(o.after_update),ve(o.on_destroy),o.fragment&&o.fragment.d(s),o.on_destroy=o.fragment=null,o.ctx=[])}function Lo(e,s){e.$$.dirty[0]===-1&&(Wt.push(e),_o(),e.$$.dirty.fill(0)),e.$$.dirty[s/31|0]|=1<{const j=T.length?T[0]:_;return b.ctx&&d(b.ctx[L],b.ctx[L]=j)&&(!b.skip_bound&&b.bound[L]&&b.bound[L](j),w&&Lo(e,L)),_}):[],b.update(),w=!0,ve(b.before_update),b.fragment=a?a(b.ctx):!1,s.target){if(s.hydrate){const L=fo(s.target);b.fragment&&b.fragment.l(L),L.forEach(et)}else b.fragment&&b.fragment.c();s.intro&&no(e.$$.fragment),oo(e,s.target,s.anchor),lo()}me(h)}class ro{constructor(){Tl(this,"$$");Tl(this,"$$set")}$destroy(){so(this,1),this.$destroy=Yt}$on(s,o){if(!$n(o))return Yt;const a=this.$$.callbacks[s]||(this.$$.callbacks[s]=[]);return a.push(o),()=>{const d=a.indexOf(o);d!==-1&&a.splice(d,1)}}$set(s){this.$$set&&!co(s)&&(this.$$.skip_bound=!0,this.$$set(s),this.$$.skip_bound=!1)}}const Bo="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(Bo);function Mo(e){let s,o,a,d,p,m,R,h,b,w,L,_,T,j,q,Y,k,lt,K,nt,A,S,O,B,P,U,H,F,ot,ge,st,Ct,ye,G,we,it,Lt,Ce,I,Le,rt,Bt,Be,D,Me,Kt,Ne,N,z,ke,W,Se,V,Mt,Vt,jl,at,Al,kt,Xt,Ol,ut,Ul,Zt,Hl,Jt,St,Qt,Fl,ct,Gl,xt,Il,X,Et,$t,Dl,dt,zl,Tt,te,Wl,ft,ql,Pt,ee,Yl,Z,Kl,Ge,Vl,E,J,Xl,le,Zl,Nt,Rt,ne,Jl,pt,Ql,jt,oe,xl,ht,$l,se,tn,ie,At,re,en,bt,ln,ae,nn,Q,Ot,ue,on,mt,sn,Ut,ce,rn,_t,an,Ht,de,un,x,cn,Ie,dn,Ee,fn,De,pn,Ft,$,hn,tt,Gt,fe,bn,vt,mn,It,pe,_n,gt,vn,Dt,he,gn,yt,yn,ze,wn,wt,We,Cn,qe,v,Te,Ln,Ye,Ke,Bn,Ve,Xe,Mn,Ze,Je,Nn,Qe,xe,kn,$e,tl,Sn,el,ll,En,nl,ol,Tn,sl,il,Pn,rl,al,Pe,Rn,Re,ul,g,je,jn,cl,dl,An,fl,pl,On,hl,bl,Un,ml,_l,Hn,vl,gl,Fn,yl,wl,Gn,Cl,Ll,In,Bl,Ml,Dn,Nl,kl,Ae,zn,be,Wn,Sl,qn,El,Yn;return{c(){s=n("div"),o=n("div"),a=n("h2"),a.textContent="5G Link Budget",d=i(),p=n("div"),m=n("button"),m.textContent="Radio Configuration",R=i(),h=n("div"),b=n("div"),w=n("label"),w.textContent="Frequency Tx (MHz):",L=i(),_=n("input"),T=i(),j=n("div"),q=n("label"),q.textContent="RB count:",Y=i(),k=n("input"),lt=i(),K=n("div"),nt=i(),A=n("div"),S=n("label"),S.textContent="Select:",O=i(),B=n("select"),P=n("option"),P.textContent="0 - 15kHz",U=n("option"),U.textContent="1 - 30kHz",H=n("option"),H.textContent="2 - 60kHz",F=n("option"),F.textContent="3 - 120kHz",ot=n("option"),ot.textContent="4 - 240kHz",ge=i(),st=n("div"),Ct=n("label"),Ct.textContent="Numerolgy:",ye=i(),G=n("input"),we=i(),it=n("div"),Lt=n("label"),Lt.textContent="Subcarrie Spacing (kHz):",Ce=i(),I=n("input"),Le=i(),rt=n("div"),Bt=n("label"),Bt.textContent="Thermal Noise:",Be=i(),D=n("input"),Me=i(),Kt=n("div"),Ne=i(),N=n("div"),z=n("button"),z.textContent="NodeB",ke=i(),W=n("h6"),W.textContent="Losses & Gains",Se=i(),V=n("div"),Mt=n("div"),Vt=n("label"),Vt.textContent="Cable Loss (dB):",jl=i(),at=n("input"),Al=i(),kt=n("div"),Xt=n("label"),Xt.textContent="Antenna Gain (dB):",Ol=i(),ut=n("input"),Ul=i(),Zt=n("h6"),Zt.textContent="Tx",Hl=i(),Jt=n("div"),St=n("div"),Qt=n("label"),Qt.textContent="Tx Power (dBm):",Fl=i(),ct=n("input"),Gl=i(),xt=n("h6"),xt.textContent="Rx",Il=i(),X=n("div"),Et=n("div"),$t=n("label"),$t.textContent="Noise Figure (dB):",Dl=i(),dt=n("input"),zl=i(),Tt=n("div"),te=n("label"),te.textContent="SINR (dB):",Wl=i(),ft=n("input"),ql=i(),Pt=n("div"),ee=n("label"),ee.textContent="Receiver Sensitivity:",Yl=i(),Z=n("input"),Kl=i(),Ge=n("div"),Vl=i(),E=n("div"),J=n("button"),J.textContent="UT",Xl=i(),le=n("h6"),le.textContent="Losses & Gains",Zl=i(),Nt=n("div"),Rt=n("div"),ne=n("label"),ne.textContent="Cable Loss (dB):",Jl=i(),pt=n("input"),Ql=i(),jt=n("div"),oe=n("label"),oe.textContent="Antenna Gain (dB):",xl=i(),ht=n("input"),$l=i(),se=n("h6"),se.textContent="Tx",tn=i(),ie=n("div"),At=n("div"),re=n("label"),re.textContent="Tx Power (dBm):",en=i(),bt=n("input"),ln=i(),ae=n("h6"),ae.textContent="Rx",nn=i(),Q=n("div"),Ot=n("div"),ue=n("label"),ue.textContent="Noise Figure (dB):",on=i(),mt=n("input"),sn=i(),Ut=n("div"),ce=n("label"),ce.textContent="SINR (dB):",rn=i(),_t=n("input"),an=i(),Ht=n("div"),de=n("label"),de.textContent="Receiver Sensitivity:",un=i(),x=n("input"),cn=i(),Ie=n("div"),dn=i(),Ee=n("div"),Ee.innerHTML='
Models
',fn=i(),De=n("div"),pn=i(),Ft=n("div"),$=n("button"),$.textContent="Propagation Loss & Margin",hn=i(),tt=n("div"),Gt=n("div"),fe=n("label"),fe.textContent="Interference Margin (dB):",bn=i(),vt=n("input"),mn=i(),It=n("div"),pe=n("label"),pe.textContent="Fading Margin (dB):",_n=i(),gt=n("input"),vn=i(),Dt=n("div"),he=n("label"),he.textContent="Penetration Loss (dB):",gn=i(),yt=n("input"),yn=i(),ze=n("h4"),ze.textContent="Maximum Allowable Pathloss",wn=i(),wt=n("table"),We=n("thead"),We.innerHTML='Path Tx Power Cable Loss Tx Antenna Gain Tx Fading Margin Interference Margin Cable Loss Rx Antenna Gain Rx Rx Sensitivity MAPL',Cn=i(),qe=n("tbody"),v=n("tr"),Te=n("th"),Te.textContent="DL",Ln=i(),Ye=n("td"),Ke=y(e[0]),Bn=i(),Ve=n("td"),Xe=y(e[1]),Mn=i(),Ze=n("td"),Je=y(e[2]),Nn=i(),Qe=n("td"),xe=y(e[7]),kn=i(),$e=n("td"),tl=y(e[6]),Sn=i(),el=n("td"),ll=y(e[4]),En=i(),nl=n("td"),ol=y(e[5]),Tn=i(),sl=n("td"),il=y(e[10]),Pn=i(),rl=n("td"),al=y(e[20]),Rn=i(),Re=n("tbody"),ul=n("tr"),ul.innerHTML="",g=n("tr"),je=n("th"),je.textContent="UL",jn=i(),cl=n("td"),dl=y(e[3]),An=i(),fl=n("td"),pl=y(e[4]),On=i(),hl=n("td"),bl=y(e[5]),Un=i(),ml=n("td"),_l=y(e[7]),Hn=i(),vl=n("td"),gl=y(e[6]),Fn=i(),yl=n("td"),wl=y(e[1]),Gn=i(),Cl=n("td"),Ll=y(e[2]),In=i(),Bl=n("td"),Ml=y(e[9]),Dn=i(),Nl=n("td"),kl=y(e[21]),zn=i(),be=n("h4"),Wn=y("Cell Radius: "),Sl=y(e[22]),qn=y(" m"),l(m,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(m,"type","button"),l(m,"data-bs-toggle","collapse"),l(m,"data-bs-target","#channel"),l(m,"aria-expanded","false"),l(m,"aria-controls","collapseExample"),l(w,"for","centerFrequency"),l(w,"class","form-label"),l(_,"type","number"),l(_,"class","form-control"),l(b,"class","col-3"),l(q,"for","noRBs"),l(q,"class","form-label"),l(k,"type","number"),l(k,"class","form-control"),l(j,"class","col-3"),l(K,"class","col-6"),l(S,"for","numerology"),l(S,"class","form-label"),P.__value="0",u(P,P.__value),U.__value="1",u(U,U.__value),H.__value="2",u(H,H.__value),F.__value="3",u(F,F.__value),ot.__value="3",u(ot,ot.__value),l(B,"class","form-select col-3"),l(B,"aria-label","Default select example"),e[18]===void 0&&Fe(()=>e[28].call(B)),l(A,"class","col-3"),l(Ct,"for","numerology"),l(Ct,"class","form-label"),l(G,"type","number"),l(G,"class","form-control"),G.disabled=!0,l(st,"class","col-3"),l(Lt,"for","subCarrierSpacing"),l(Lt,"class","form-label"),l(I,"type","number"),l(I,"class","form-control"),I.disabled=!0,l(it,"class","col-3"),l(Bt,"for","thermalNoise"),l(Bt,"class","form-label"),l(D,"type","number"),l(D,"class","form-control"),D.disabled=!0,l(rt,"class","col-3"),l(h,"class","row collapse"),l(h,"id","channel"),l(p,"class","row"),l(Kt,"class","w-100 mb-3"),l(z,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(z,"type","button"),l(z,"data-bs-toggle","collapse"),l(z,"data-bs-target","#nodeB"),l(z,"aria-expanded","false"),l(z,"aria-controls","collapseExample"),l(W,"class","collapse"),l(W,"id","nodeB"),l(Vt,"for","transmitCableLoss"),l(Vt,"class","form-label"),l(at,"type","number"),l(at,"class","form-control"),l(Mt,"class","col-3"),l(Xt,"for","transmitterGain"),l(Xt,"class","form-label"),l(ut,"type","number"),l(ut,"class","form-control"),l(kt,"class","col-3"),l(V,"class","row collapse"),l(V,"id","nodeB"),l(Zt,"class","collapse"),l(Zt,"id","nodeB"),l(Qt,"for","transmitPower"),l(Qt,"class","form-label"),l(ct,"type","number"),l(ct,"class","form-control"),l(St,"class","col-3"),l(Jt,"class","row collapse"),l(Jt,"id","nodeB"),l(xt,"class","collapse"),l(xt,"id","nodeB"),l($t,"for","noiseFigureNodeB"),l($t,"class","form-label"),l(dt,"type","number"),l(dt,"class","form-control"),l(Et,"class","col-3"),l(te,"for","sinrNodeB"),l(te,"class","form-label"),l(ft,"type","number"),l(ft,"class","form-control"),l(Tt,"class","col-3"),l(ee,"for","rxSensitivityNodeB"),l(ee,"class","form-label"),l(Z,"type","number"),l(Z,"class","form-control"),Z.disabled=!0,l(Pt,"class","col-3"),l(X,"class","row collapse"),l(X,"id","nodeB"),l(N,"class","row"),l(Ge,"class","w-100 mb-3"),l(J,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l(J,"type","button"),l(J,"data-bs-toggle","collapse"),l(J,"data-bs-target","#ueconf"),l(J,"aria-expanded","false"),l(J,"aria-controls","collapseExample"),l(le,"class","collapse"),l(le,"id","ueconf"),l(ne,"for","transmitCableLoss"),l(ne,"class","form-label"),l(pt,"type","number"),l(pt,"class","form-control"),l(Rt,"class","col-3"),l(oe,"for","transmitterGain"),l(oe,"class","form-label"),l(ht,"type","number"),l(ht,"class","form-control"),l(jt,"class","col-3"),l(Nt,"class","row collapse"),l(Nt,"id","ueconf"),l(se,"class","collapse"),l(se,"id","ueconf"),l(re,"for","transmitPowerUT"),l(re,"class","form-label"),l(bt,"type","number"),l(bt,"class","form-control"),l(At,"class","col-3"),l(ie,"class","row collapse"),l(ie,"id","ueconf"),l(ae,"class","collapse"),l(ae,"id","ueconf"),l(ue,"for","noiseFigureUE"),l(ue,"class","form-label"),l(mt,"type","number"),l(mt,"class","form-control"),l(Ot,"class","col-3"),l(ce,"for","sinrUE"),l(ce,"class","form-label"),l(_t,"type","number"),l(_t,"class","form-control"),l(Ut,"class","col-3"),l(de,"for","rxSensitivityUE"),l(de,"class","form-label"),l(x,"type","number"),l(x,"class","form-control"),x.disabled=!0,l(Ht,"class","col-3"),l(Q,"class","row collapse"),l(Q,"id","ueconf"),l(E,"class","row"),l(Ie,"class","w-100 mb-3"),l(Ee,"class","row"),l(De,"class","w-100 mb-3"),l($,"class","btn btn-outline-secondary custom-height col-3 svelte-l5y9p7"),l($,"type","button"),l($,"data-bs-toggle","collapse"),l($,"data-bs-target","#losses"),l($,"aria-expanded","false"),l($,"aria-controls","collapseExample"),l(fe,"for","interferenceMargin"),l(fe,"class","form-label"),l(vt,"type","number"),l(vt,"class","form-control"),l(Gt,"class","col-3"),l(pe,"for","fadingMargin"),l(pe,"class","form-label"),l(gt,"type","number"),l(gt,"class","form-control"),l(It,"class","col-3"),l(he,"for","penetrationLoss"),l(he,"class","form-label"),l(yt,"type","number"),l(yt,"class","form-control"),l(Dt,"class","col-3"),l(tt,"class","row collapse"),l(tt,"id","losses"),l(Ft,"class","row"),l(Te,"scope","row"),l(v,"class",Pe=Ue(e[23])+" svelte-l5y9p7"),l(je,"scope","row"),l(g,"class",Ae=Ue(e[24])+" svelte-l5y9p7"),l(wt,"class","table"),l(o,"class","row"),l(s,"class","container")},m(r,c){eo(r,s,c),t(s,o),t(o,a),t(o,d),t(o,p),t(p,m),t(p,R),t(p,h),t(h,b),t(b,w),t(b,L),t(b,_),u(_,e[11]),t(h,T),t(h,j),t(j,q),t(j,Y),t(j,k),u(k,e[12]),t(h,lt),t(h,K),t(h,nt),t(h,A),t(A,S),t(A,O),t(A,B),t(B,P),t(B,U),t(B,H),t(B,F),t(B,ot),Xn(B,e[18],!0),t(h,ge),t(h,st),t(st,Ct),t(st,ye),t(st,G),u(G,e[18]),t(h,we),t(h,it),t(it,Lt),t(it,Ce),t(it,I),u(I,e[19]),t(h,Le),t(h,rt),t(rt,Bt),t(rt,Be),t(rt,D),u(D,e[13]),t(o,Me),t(o,Kt),t(o,Ne),t(o,N),t(N,z),t(N,ke),t(N,W),t(N,Se),t(N,V),t(V,Mt),t(Mt,Vt),t(Mt,jl),t(Mt,at),u(at,e[1]),t(V,Al),t(V,kt),t(kt,Xt),t(kt,Ol),t(kt,ut),u(ut,e[2]),t(N,Ul),t(N,Zt),t(N,Hl),t(N,Jt),t(Jt,St),t(St,Qt),t(St,Fl),t(St,ct),u(ct,e[0]),t(N,Gl),t(N,xt),t(N,Il),t(N,X),t(X,Et),t(Et,$t),t(Et,Dl),t(Et,dt),u(dt,e[16]),t(X,zl),t(X,Tt),t(Tt,te),t(Tt,Wl),t(Tt,ft),u(ft,e[14]),t(X,ql),t(X,Pt),t(Pt,ee),t(Pt,Yl),t(Pt,Z),u(Z,e[9]),t(o,Kl),t(o,Ge),t(o,Vl),t(o,E),t(E,J),t(E,Xl),t(E,le),t(E,Zl),t(E,Nt),t(Nt,Rt),t(Rt,ne),t(Rt,Jl),t(Rt,pt),u(pt,e[4]),t(Nt,Ql),t(Nt,jt),t(jt,oe),t(jt,xl),t(jt,ht),u(ht,e[5]),t(E,$l),t(E,se),t(E,tn),t(E,ie),t(ie,At),t(At,re),t(At,en),t(At,bt),u(bt,e[3]),t(E,ln),t(E,ae),t(E,nn),t(E,Q),t(Q,Ot),t(Ot,ue),t(Ot,on),t(Ot,mt),u(mt,e[17]),t(Q,sn),t(Q,Ut),t(Ut,ce),t(Ut,rn),t(Ut,_t),u(_t,e[15]),t(Q,an),t(Q,Ht),t(Ht,de),t(Ht,un),t(Ht,x),u(x,e[10]),t(o,cn),t(o,Ie),t(o,dn),t(o,Ee),t(o,fn),t(o,De),t(o,pn),t(o,Ft),t(Ft,$),t(Ft,hn),t(Ft,tt),t(tt,Gt),t(Gt,fe),t(Gt,bn),t(Gt,vt),u(vt,e[6]),t(tt,mn),t(tt,It),t(It,pe),t(It,_n),t(It,gt),u(gt,e[7]),t(tt,vn),t(tt,Dt),t(Dt,he),t(Dt,gn),t(Dt,yt),u(yt,e[8]),t(o,yn),t(o,ze),t(o,wn),t(o,wt),t(wt,We),t(wt,Cn),t(wt,qe),t(qe,v),t(v,Te),t(v,Ln),t(v,Ye),t(Ye,Ke),t(v,Bn),t(v,Ve),t(Ve,Xe),t(v,Mn),t(v,Ze),t(Ze,Je),t(v,Nn),t(v,Qe),t(Qe,xe),t(v,kn),t(v,$e),t($e,tl),t(v,Sn),t(v,el),t(el,ll),t(v,En),t(v,nl),t(nl,ol),t(v,Tn),t(v,sl),t(sl,il),t(v,Pn),t(v,rl),t(rl,al),t(wt,Rn),t(wt,Re),t(Re,ul),t(Re,g),t(g,je),t(g,jn),t(g,cl),t(cl,dl),t(g,An),t(g,fl),t(fl,pl),t(g,On),t(g,hl),t(hl,bl),t(g,Un),t(g,ml),t(ml,_l),t(g,Hn),t(g,vl),t(vl,gl),t(g,Fn),t(g,yl),t(yl,wl),t(g,Gn),t(g,Cl),t(Cl,Ll),t(g,In),t(g,Bl),t(Bl,Ml),t(g,Dn),t(g,Nl),t(Nl,kl),t(o,zn),t(o,be),t(be,Wn),t(be,Sl),t(be,qn),El||(Yn=[C(_,"input",e[26]),C(k,"input",e[27]),C(B,"change",e[28]),C(G,"input",e[29]),C(I,"input",e[30]),C(D,"input",e[31]),C(at,"input",e[32]),C(ut,"input",e[33]),C(ct,"input",e[34]),C(dt,"input",e[35]),C(ft,"input",e[36]),C(Z,"input",e[37]),C(pt,"input",e[38]),C(ht,"input",e[39]),C(bt,"input",e[40]),C(mt,"input",e[41]),C(_t,"input",e[42]),C(x,"input",e[43]),C(vt,"input",e[44]),C(gt,"input",e[45]),C(yt,"input",e[46])],El=!0)},p(r,c){c[0]&2048&&f(_.value)!==r[11]&&u(_,r[11]),c[0]&4096&&f(k.value)!==r[12]&&u(k,r[12]),c[0]&262144&&Xn(B,r[18]),c[0]&262144&&f(G.value)!==r[18]&&u(G,r[18]),c[0]&524288&&f(I.value)!==r[19]&&u(I,r[19]),c[0]&8192&&f(D.value)!==r[13]&&u(D,r[13]),c[0]&2&&f(at.value)!==r[1]&&u(at,r[1]),c[0]&4&&f(ut.value)!==r[2]&&u(ut,r[2]),c[0]&1&&f(ct.value)!==r[0]&&u(ct,r[0]),c[0]&65536&&f(dt.value)!==r[16]&&u(dt,r[16]),c[0]&16384&&f(ft.value)!==r[14]&&u(ft,r[14]),c[0]&512&&f(Z.value)!==r[9]&&u(Z,r[9]),c[0]&16&&f(pt.value)!==r[4]&&u(pt,r[4]),c[0]&32&&f(ht.value)!==r[5]&&u(ht,r[5]),c[0]&8&&f(bt.value)!==r[3]&&u(bt,r[3]),c[0]&131072&&f(mt.value)!==r[17]&&u(mt,r[17]),c[0]&32768&&f(_t.value)!==r[15]&&u(_t,r[15]),c[0]&1024&&f(x.value)!==r[10]&&u(x,r[10]),c[0]&64&&f(vt.value)!==r[6]&&u(vt,r[6]),c[0]&128&&f(gt.value)!==r[7]&&u(gt,r[7]),c[0]&256&&f(yt.value)!==r[8]&&u(yt,r[8]),c[0]&1&&M(Ke,r[0]),c[0]&2&&M(Xe,r[1]),c[0]&4&&M(Je,r[2]),c[0]&128&&M(xe,r[7]),c[0]&64&&M(tl,r[6]),c[0]&16&&M(ll,r[4]),c[0]&32&&M(ol,r[5]),c[0]&1024&&M(il,r[10]),c[0]&1048576&&M(al,r[20]),c[0]&8388608&&Pe!==(Pe=Ue(r[23])+" svelte-l5y9p7")&&l(v,"class",Pe),c[0]&8&&M(dl,r[3]),c[0]&16&&M(pl,r[4]),c[0]&32&&M(bl,r[5]),c[0]&128&&M(_l,r[7]),c[0]&64&&M(gl,r[6]),c[0]&2&&M(wl,r[1]),c[0]&4&&M(Ll,r[2]),c[0]&512&&M(Ml,r[9]),c[0]&2097152&&M(kl,r[21]),c[0]&16777216&&Ae!==(Ae=Ue(r[24])+" svelte-l5y9p7")&&l(g,"class",Ae),c[0]&4194304&&M(Sl,r[22])},i:Yt,o:Yt,d(r){r&&et(s),El=!1,ve(Yn)}}}function Qn(e,s){return Math.round(e*Math.pow(10,s))/Math.pow(10,s)}function No(e,s,o){let a=27,d=2,p=15,m=23,R=0,h=0,b=10,w=6,L=15,_=-100,T=-100,j=500,q=3600,Y=1,k=0,lt=-6,K=-6,nt=4,A=10,S="1",O=0,B=0,P=0,U=0,H="",F="";function ot(W,Se,V){return Math.pow(10,(W-13.54-20*Math.log10(Se/1e3)+.6*(V-1.5))/39.08)}bo(()=>{"serviceWorker"in navigator&&navigator.serviceWorker.register("/service-worker.js").then(W=>console.log("Service Worker registered",W)).catch(W=>console.log("Service Worker registration failed:",W))});function ge(){q=f(this.value),o(11,q)}function st(){Y=f(this.value),o(12,Y)}function Ct(){S=po(this),o(18,S)}function ye(){S=f(this.value),o(18,S)}function G(){O=f(this.value),o(19,O),o(18,S)}function we(){k=f(this.value),o(13,k),o(19,O),o(12,Y),o(18,S)}function it(){d=f(this.value),o(1,d)}function Lt(){p=f(this.value),o(2,p)}function Ce(){a=f(this.value),o(0,a)}function I(){nt=f(this.value),o(16,nt)}function Le(){lt=f(this.value),o(14,lt)}function rt(){_=f(this.value),o(9,_),o(13,k),o(14,lt),o(16,nt),o(19,O),o(12,Y),o(18,S)}function Bt(){R=f(this.value),o(4,R)}function Be(){h=f(this.value),o(5,h)}function D(){m=f(this.value),o(3,m)}function Me(){A=f(this.value),o(17,A)}function Kt(){K=f(this.value),o(15,K)}function Ne(){T=f(this.value),o(10,T),o(13,k),o(15,K),o(17,A),o(19,O),o(12,Y),o(18,S)}function N(){b=f(this.value),o(6,b)}function z(){w=f(this.value),o(7,w)}function ke(){L=f(this.value),o(8,L)}return e.$$.update=()=>{e.$$.dirty[0]&262144&&o(19,O=15*Math.pow(2,S)),e.$$.dirty[0]&455,e.$$.dirty[0]&528384&&o(13,k=Qn(-174+10*Math.log10(O*1e3*12*Y),2)),e.$$.dirty[0]&172032&&o(10,T=k+K+A),e.$$.dirty[0]&1223&&o(20,B=a-d+p-w-b-T),e.$$.dirty[0]&90112&&o(9,_=k+lt+nt),e.$$.dirty[0]&766&&o(21,P=m-R+h-w-b+p-d-_),e.$$.dirty[0]&3145728&&(B<=P?o(25,U=B):o(25,U=P)),e.$$.dirty[0]&33556480&&o(22,j=Qn(ot(U,q,1.5),2)),e.$$.dirty[0]&1049799,e.$$.dirty[0]&2097918,e.$$.dirty[0]&3145728&&(BP?(o(23,H="table-danger"),o(24,F="table-success")):(o(23,H="table-success"),o(24,F="table-success")))},[a,d,p,m,R,h,b,w,L,_,T,q,Y,k,lt,K,nt,A,S,O,B,P,j,H,F,U,ge,st,Ct,ye,G,we,it,Lt,Ce,I,Le,rt,Bt,Be,D,Me,Kt,Ne,N,z,ke]}class ko extends ro{constructor(s){super(),io(this,s,No,Mo,to,{},null,[-1,-1])}}function So(e){let s,o,a,d,p,m,R,h,b,w,L;return w=new ko({}),{c(){s=n("script"),s.innerHTML="",a=n("link"),d=n("link"),p=n("link"),m=n("script"),m.innerHTML="",h=n("link"),b=i(),Co(w.$$.fragment),document.title="Link Budget App",Vn(s.src,o="https://cdn.jsdelivr.net/npm/chart.js")||l(s,"src",o),l(a,"rel","stylesheet"),l(a,"href","https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700"),l(d,"rel","stylesheet"),l(d,"href","https://fonts.googleapis.com/css?family=Roboto+Mono"),l(p,"rel","stylesheet"),l(p,"href","https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"),Vn(m.src,R="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js")||l(m,"src",R),l(m,"integrity","sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz"),l(m,"crossorigin","anonymous"),l(h,"href","https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"),l(h,"rel","stylesheet"),l(h,"integrity","sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH"),l(h,"crossorigin","anonymous")},m(_,T){t(document.head,s),t(document.head,a),t(document.head,d),t(document.head,p),t(document.head,m),t(document.head,h),eo(_,b,T),oo(w,_,T),L=!0},p:Yt,i(_){L||(no(w.$$.fragment,_),L=!0)},o(_){wo(w.$$.fragment,_),L=!1},d(_){_&&et(b),et(s),et(a),et(d),et(p),et(m),et(h),so(w,_)}}}class Eo extends ro{constructor(s){super(),io(this,s,null,So,to,{})}}new Eo({target:document.getElementById("app")}); diff --git a/index.html b/index.html index 39adb6c..edef4bf 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ Vite + Svelte - + diff --git a/sw.js b/sw.js index 013fa71..eddb050 100644 --- a/sw.js +++ b/sw.js @@ -1 +1 @@ -if(!self.define){let e,i={};const s=(s,n)=>(s=new URL(s+".js",n).href,i[s]||new Promise((i=>{if("document"in self){const e=document.createElement("script");e.src=s,e.onload=i,document.head.appendChild(e)}else e=s,importScripts(s),i()})).then((()=>{let e=i[s];if(!e)throw new Error(`Module ${s} didn’t register its module`);return e})));self.define=(n,r)=>{const t=e||("document"in self?document.currentScript.src:"")||location.href;if(i[t])return;let c={};const o=e=>s(e,t),l={module:{uri:t},exports:c,require:o};i[t]=Promise.all(n.map((e=>l[e]||o(e)))).then((e=>(r(...e),c)))}}define(["./workbox-3e911b1d"],(function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"assets/index-Bs3T3l0-.css",revision:null},{url:"assets/index-BTCV9RtG.js",revision:null},{url:"index.html",revision:"74b9c388e41064894ea2d84c93cef4d0"},{url:"registerSW.js",revision:"81c3067ca1c42492cf81dd05c4e6248a"},{url:"pwa-192x192.png",revision:"c4bcf67a56c4f86fe241b0785cc07d47"},{url:"pwa-512x512.png",revision:"60cd82ac7adf05d6f59e12db6ce51187"},{url:"manifest.webmanifest",revision:"e482db92ea0b376b600b2c2b587c35a7"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html")))})); +if(!self.define){let e,i={};const s=(s,n)=>(s=new URL(s+".js",n).href,i[s]||new Promise((i=>{if("document"in self){const e=document.createElement("script");e.src=s,e.onload=i,document.head.appendChild(e)}else e=s,importScripts(s),i()})).then((()=>{let e=i[s];if(!e)throw new Error(`Module ${s} didn’t register its module`);return e})));self.define=(n,r)=>{const t=e||("document"in self?document.currentScript.src:"")||location.href;if(i[t])return;let c={};const o=e=>s(e,t),d={module:{uri:t},exports:c,require:o};i[t]=Promise.all(n.map((e=>d[e]||o(e)))).then((e=>(r(...e),c)))}}define(["./workbox-3e911b1d"],(function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"assets/index-Bs3T3l0-.css",revision:null},{url:"assets/index-C3eLFIxo.js",revision:null},{url:"index.html",revision:"0e03f3cea80dc3e6e81539d7345a6fd5"},{url:"registerSW.js",revision:"81c3067ca1c42492cf81dd05c4e6248a"},{url:"pwa-192x192.png",revision:"c4bcf67a56c4f86fe241b0785cc07d47"},{url:"pwa-512x512.png",revision:"60cd82ac7adf05d6f59e12db6ce51187"},{url:"manifest.webmanifest",revision:"e482db92ea0b376b600b2c2b587c35a7"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html")))}));