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

Argila de Marte é novo indício de que planeta teve condição de abrigar vida

Divulgação/Nasa
Imagem: Divulgação/Nasa

Aurélio Araújo

Colaboração para Tilt

30/06/2021 14h07

Uma equipe de cientistas encontrou novas evidências que sugerem que Marte já teve condições para ser um planeta habitável: trata-se de uma argila descoberta na superfície marciana, similar à glauconita, um mineral terrestre. O material foi recolhido em 2016 pelo rover Curiosity, da Nasa, a agência espacial norte-americana.

No estudo publicado no periódico científico "Nature Astronomy", pesquisadores da Espanha, da França e dos Estados Unidos descreveram o que encontraram ao analisar minerais de argila extraídos da cratera Gale. As informações são do site especializado em notícias de ciência e tecnologia "Phys".

Em 2016, o Curiosity perfurou a superfície marciana, por dentro da famosa cratera, justamente para recolher amostras de minerais de argila, além de fazer uma análise delas. Esse novo estudo foi além, aprofundando o trabalho iniciado pelo rover da Nasa.

O que isso tem a ver com a vida fora da Terra

De acordo com a nova pesquisa, argila encontrada em Marte que se parece muito com a glauconita da Terra. Esse mineral terrestre é um filossilicato hidratado de potássio e ferro, muito comum em formas ovoides (mais arredondadas) nos leitos de sedimentos, carbonatos e arenitos (rochas sedimentares compostas de material granular com a dimensão das areias).

Tanto leitos de sedimentos como carbonatos e arenitos são formações que requerem condições estáveis durante longos períodos. Por isso, encontrar uma argila semelhante à glauconita em Marte é algo bastante significativo: quer dizer que, aparentemente, essa argila se formou por muito tempo, sob condições estáveis, talvez até milhões de anos.

Isso significa que Marte teve em algum momento condições de abrigar organismos vivos por todo esse tempo também.

A cratera da amostra

Pesquisas anteriores conduzidas sobre a cratera Gale, que tem um diâmetro estimado em 154 quilômetros, dão conta de que ela já foi cheia de água, há cerca de 3,5 bilhões de anos atrás. Hoje, portanto, ela seria um lago seco.

O que os cientistas acreditam é que, durante os milhões de anos em que Gale teve água, Marte tinha uma atmosfera muito mais densa, a qual seria propícia para águas superficiais.

A argila analisada pela equipe também sugere que as temperaturas durante esse período variavam entre -3 e 15ºC, e que o pH da água em Gale seria neutro. Ambas as conclusões também são evidências favoráveis à presença de vida.

Mas eles alertam, é claro, que isso não é a prova definitiva de que houve vida no planeta vizinho, sendo apenas mais indícios de que as condições da superfície marciana naquele momento eram adequadas para isso.