Skip to content

Instantly share code, notes, and snippets.

View FilipDominec's full-sized avatar
🎯
Basically always busy, that's OK

Filip Dominec FilipDominec

🎯
Basically always busy, that's OK
View GitHub Profile
@FilipDominec
FilipDominec / wrong_charset_detection.py
Created June 28, 2022 15:06
Searches for such charset conversion, which would generate a wrong encoded string from a known correct one
#!/usr/bin/python3
#-*- coding: utf-8 -*-
# Searches for such charset conversion, which would generate a wrong encoded string from a known correct one
# Public domain, written by Filip Dominec 2022
# EXAMPLES:
#wrong, correct = "╪ konstrukЯnб ¤eчenб", "ě konstrukční řešení"
#wrong, correct = "sloučeninovĂ˝ch", "sloučeninových"
@FilipDominec
FilipDominec / Abbreviate Journal Names in Bibtex Database.py
Last active October 15, 2023 08:13
Using the translation table from the Jabref program, finds and replaces all scientific journal names to their standardized abbreviated form. First argument is the file to be processed; outputs safely to 'abbreviated.bib'
#!/usr/bin/env python
#-*- coding: utf-8 -*-
# Supporting Python 3
import sys, os, re
try: bibtexdb = open(sys.argv[1]).read()
except: print("Error: specify the file to be processed!")
if not os.path.isfile('journalList.txt'):
@FilipDominec
FilipDominec / owon_wave.py
Last active October 14, 2023 11:25 — forked from aniline/owon_wave.py
Make a wave file from owon oscilloscope wave dump. It just does one channel. Not tested with numerous other combinations. Note that slow "running-wave" records fail to be properly saved due to Owon firmware bug.
#!/usr/bin/env python
#
# Makes a wav file out of owon oscilloscope waveform save file.
# Tested with SDS6062 only.
#
# Used:
# http://bikealive.nl/owon-bin-file-format.html and
# http://bikealive.nl/tl_files/EmbeddedSystems/Test_Measurement/owon/OWON%20Oscilloscope%20PC%20Guidance%20Manual.pdf
#
@FilipDominec
FilipDominec / Horiba_Labspec_Raman_map_analysis.py
Created September 27, 2023 13:37
Visualise 2D maps from the Horiba Evolution confocal Raman microscope/spectrometer
#!/usr/bin/python3
#-*- coding: utf-8 -*-
# Visualise 2D maps from the Horiba Evolution confocal Raman microscope/spectrometer (needs converting .L6M to .TXT)
## Import common moduli
import sys, os, time, collections
from pathlib import Path
import matplotlib.pyplot as plt
import numpy as np
#from scipy.constants import c, hbar, pi
@FilipDominec
FilipDominec / journalList.txt
Created January 24, 2020 17:42
journalList.txt
"Meteor" Forschungsergebnisse = "Meteor" Forschungsergeb.
2D Materials = 2D Mater.
3D Printing and Additive Manufacturing = 3D Print. Addit. Manuf.
AACN Clinical Issues = AACN Clin. Issues
AACN Clinical Issues in Critical Care Nursing = AACN Clin. Issues Crit. Care Nurs.
AADE Editors Journal = AADE Ed. J.
AANA Journal = AANA J.
AANNT Journal = AANNT J.
AAOHN Journal = AAOHN J.
AAPG Bulletin = AAPG Bull.
@FilipDominec
FilipDominec / numpy2tkinter.py
Last active January 26, 2023 12:15
Easy plotting from 2D numpy array, supporting colormaps, embossing, (un)zooming etc. Depends on TkInter + numpy only.
#!/usr/bin/python3
#-*- coding: utf-8 -*-
# License: This code is released as public domain.
import time
import numpy as np
import tkinter as tk
X_SIZE, Y_SIZE = 200, 200
#!/usr/bin/python3
#-*- coding: utf-8 -*-
"""
Invocation:
explore_liborigins_object.py file.opj
Results in recursive printout of all the nested structure of the object provided by liborigin.
Code can be modified and reused for other complex objects.
"""
@FilipDominec
FilipDominec / convert_rwd8_to_txt.py
Created February 25, 2022 17:21
Convert binary .RWD8 format from Avaspec spectrometers into a text file and graphical plots
#!/usr/bin/python3
#-*- coding: utf-8 -*-
## Import common moduli
import sys
import matplotlib.pyplot as plt
import numpy as np
import struct
"""
@FilipDominec
FilipDominec / encoding_detection_for_html.py
Created October 19, 2021 17:35
Helps to fix diacritics mess in legacy websites. Uses the chardet module to detect character encoding; accepts multiple files to print a table
#!/usr/bin/python3
#-*- coding: utf-8 -*-
import chardet, pathlib, sys
known_enc = {'Win':'Windows-1250', 'ISO':'ISO-8859-2', '1250':'Windows-1250', 'utf':'utf8' }
for fn in sys.argv[1:]:
found_enc = chardet.detect(pathlib.Path(fn).read_bytes())['encoding']
if found_enc[:3] in known_enc.keys():
found_enc = known_enc[found_enc[:3]]
print(f'{fn:20s} auto-detected encoding {found_enc:14s}', end='')
@FilipDominec
FilipDominec / hamiltonian1D_eigenstates.py
Last active September 6, 2019 13:25
Playground for visualisation of the Schrödinger equation solutions in one dimension
#!/usr/bin/python3
import matplotlib.pyplot as plt
import numpy as np
import numpy.linalg as la
width, n= 1., 500 ## width of the 1D quantum system, and number of points
nplot = 10 ## number of quantum states to plot
h = 1e-4 ## our definition of "Planck constant" determines the density of states
psiscale = .01 ## for plotting only: approximate matching of probability and potential scales