10
0
mirror of https://github.com/LCPQ/QUESTDB_website.git synced 2024-12-25 05:43:46 +01:00

Fast loading time

This commit is contained in:
Anthony Scemama 2020-11-20 00:23:28 +01:00
parent 62b92912b6
commit feaee8acd1
3 changed files with 11 additions and 8 deletions

View File

@ -101,9 +101,9 @@ draft: false
await loadFiles() await loadFiles()
} }
async function loadFiles() { async function loadFiles() {
const db = await indexDB.loadAsync()
const data = await loadAllData()
processingIndicator.isActive = true processingIndicator.isActive = true
var data = await loadAllData()
let db = await indexDB.loadAsync()
window.defaultDats = [] window.defaultDats = []
for (const sub of Object.values(data)) { for (const sub of Object.values(data)) {

View File

@ -261,17 +261,20 @@ class dataFileBase {
}) })
} }
CopyExcitationsTypeFrom(data) { CopyExcitationsTypeFrom(data) {
var exc_strings = data.excitations.map( e => [e, JSON.stringify(e.initial), JSON.stringify(e.final) ] )
for (const ex of this.excitations) { for (const ex of this.excitations) {
const ex2 = data.excitations.find((e) => { const exi = JSON.stringify(ex.initial)
return (JSON.stringify(e.initial) === JSON.stringify(ex.initial)) && (JSON.stringify(e.final) === JSON.stringify(ex.final)) const exf = JSON.stringify(ex.final)
const ex2 = exc_strings.find((e) => {
return (e[1]=== exi) && (e[2]=== exf)
}) })
if (ex2 !== undefined) { if (ex2 !== undefined) {
if (DebugMode.Enabled) { if (DebugMode.Enabled) {
const restflag=ex.type.Value & ex2.type.Value const restflag=ex.type.Value & ex2[0].type.Value
const result=restflag==ex.type.Value const result=restflag==ex.type.Value
console.assert(result, "Excitation type error", data.molecule, ex, ex2, this.sourceFile) console.assert(result, "Excitation type error", data.molecule, ex, ex2[0], this.sourceFile)
} }
ex.type = ex2.type ex.type = ex2[0].type
} }
} }
} }

View File

@ -1,7 +1,7 @@
function uniq(array) function uniq(array)
{ {
if (array.length == 0) return []; if (array.length == 0) return [];
var sortedArray = array.sort().map( x => [x, JSON.stringify(x)] ); const sortedArray = array.sort().map( x => [x, JSON.stringify(x)] );
var uniqueArray = [ sortedArray[0][0] ]; var uniqueArray = [ sortedArray[0][0] ];
for (let i=1 ; i<sortedArray.length ; i++) { for (let i=1 ; i<sortedArray.length ; i++) {
if ( sortedArray[i][1] != sortedArray[i-1][1]) if ( sortedArray[i][1] != sortedArray[i-1][1])