;(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

'Bola de fogo': cápsula com amostra de asteroide lançada na Terra é localizada na Austrália

Paul Rincon

Editor de Ciência da BBC News

06/12/2020 09h37

sonda japonesa Hayabusa-2  - DLR - DLR
Seis anos após ser enviada ao espaço, sonda japonesa Hayabusa-2 fez sua primeira 'entrega'
Imagem: DLR

O céu da região centro sul da Austrália foi riscado por uma bola de fogo na madrugada de sábado (5) para domingo.

Uma cápsula lançada pela sonda japonesa Hayabusa-2 contendo material retirado de um asteroide entrou na atmosfera terrestre a uma velocidade de 11km/s, submetendo o escudo térmico que a protegia a uma temperatura em torno de 3000ºC.

Depois de abrir um paraquedas para desacelerar sua trajetória, o artefato de 16 quilos pousou no local previsto — o complexo de Woomera Range, um centro de lançamento de foguetes controlado pela Força Aérea australiana no meio do deserto.

Pouco depois do pouso, uma equipe em solo embarcou em um helicóptero equipado com um sensor que captava o sinal emitido pela cápsula para fazer a coleta.

Todo o processo foi compartilhado quase em tempo real pela conta da missão Hayabusa-2 no Twitter.

O material ará por uma rápida inspeção local e depois será levado ao Japão, a uma instalação da agência espacial japonesa (Jaxa) na cidade de Sagamihara, para que seja analisado.

A sonda, por sua vez, segue viagem para o próximo destino: o asteroide 1998KY26.

É a primeira vez que uma quantidade significativa de material coletado de um asteroide chega à Terra.

A missão Hayabusa-2 foi lançada ao espaço seis anos atrás. A sonda pousou no asteroide Ryugu em junho de 2018 e investigou o objeto por quase um ano antes de voltar para fazer a "entrega".

Alan Fitzsimmons, da Queen's University Belfast, na Irlanda do Norte, afirma que a amostra vai "revelar muito não apenas sobre a história do Sistema Solar", mas também sobre esses corpos rochosos.

Asteroides são uma espécie de "sobra" de material usado na formação do Sistema Solar. São constituídos de elementos também encontrados em planetas como a Terra, sem, no entanto, terem sido incorporados a eles.

"Ter o a amostras de um asteroide como o Ryugu é algo que empolga os profissionais da nossa área. Acreditamos que o Ryugu é formado por rochas muito antigas que vão nos contar um pouco sobre como o Sistema Solar se formou", diz Sara Russell, líder do grupo que pesquisa materiais planetários no Museu de História Natural de Londres.

As análises podem ajudar a esclarecer, por exemplo, como a água e outros ingredientes fundamentais à existência da vida chegaram à Terra.

Por muito tempo, a comunidade científica acreditou que a água havia sido trazida ao planeta por cometas no início do Sistema Solar. Observou-se posteriormente, entretanto, que o perfil químico da água encontrada nesses corpos era frequentemente diferente daquele encontrado na água dos oceanos do planeta, diz Alan Fitzsimmons.

A composição da água em alguns asteroides fora do Sistema Solar, entetanto, mostrou-se muito mais próxima. E Ryugu provavelmente se originou nessa área fria antes de migrar para sua órbita atual, mais próxima da Terra.

"Talvez tenhamos olhado todo esse tempo para os cometas, quando deveríamos ter procurado um pouco mais perto, nesses asteroides primitivos", acrescenta Fitzsimmons.

"Certamente isso é algo que analisaremos cuidadosamente nas amostras do Ryugu."