;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Explosões cósmicas são ainda mais poderosas do que se pensava, diz estudo

"As explosões de raios gama são as explosões mais poderosas conhecidas no Universo", explica cientista - Nasa
"As explosões de raios gama são as explosões mais poderosas conhecidas no Universo", explica cientista Imagem: Nasa

20/11/2019 17h59

As maiores explosões desde que o Big Bang colocou o universo em movimento há cerca de 13 bilhões de anos produziram ainda mais energia do que se pensava, disseram cientistas nesta quarta-feira.

Em um estudo publicado na revista Nature, duas equipes internacionais descrevem como eles pesquisaram as Explosões de Raios Gama (GRB) produzidas quando estrelas de nêutrons colidem ou sóis gigantes colapsam em um buraco negro, formando uma supernova.

"As explosões de raios gama são as explosões mais poderosas conhecidas no Universo e normalmente liberam mais energia em apenas alguns segundos do que o nosso Sol durante toda a sua vida", disse David Berge, chefe de astronomia de raios gama da Deutsches Elektronen-Synchrotron (Desy) em Hamburgo, Alemanha.

Os GRBs podem durar de alguns milissegundos a várias horas e, embora sejam enormes em termos de energia, são um fenômeno relativamente raro.

Eles foram descobertos por acaso na década de 1960 por satélites usados para monitorar o cumprimento da proibição de testes nucleares na Terra.

Desde então, os astrônomos os rastrearam de cima da atmosfera da Terra, que absorve os raios gama.

Para este estudo, eles usaram telescópios terrestres para observar eventos a bilhões de anos-luz do nosso planeta.

Em meados de 2018 e janeiro de 2019, as duas equipes - alertadas pelas observações de satélites da Nasa - detectaram raios gama de dois eventos GRB usando o Sistema Estereoscópico de Alta Energia (Hess) na Namíbia e, em seguida, os telescópios Magic em La Palma, Espanha.

"Conseguimos apontar a região de origem tão rapidamente que pudemos começar a observar apenas 57 segundos após a detecção inicial da explosão", disse Cosimo Nigro, do grupo Magic da Desy, em um resumo do artigo.

Os resultados mostraram "de longe os fótons de maior energia já descobertos em uma explosão de raios gama", disse Elisa Bernardini, líder do grupo Magic da Desy.

Mais cientistas deram seguimento rapidamente, visando um evento a mais de quatro bilhões de anos-luz de distância e outro a seis bilhões de anos-luz. Isso permitiu que os cientistas entendessem melhor a mecânica do fenômeno.

Konstancja Satalecka, pesquisadora da Desy, disse que as descobertas ajudaram a endireitar o "orçamento de energia" envolvido.

"Acontece que estávamos perdendo aproximadamente metade do orçamento de energia deles até agora", disse.

"Nossas medidas mostram que a energia liberada em raios gama de energia muito alta é comparável à quantidade irradiada em todas as energias inferiores tomadas em conjunto. Isso é notável!"