Skip to content

Instantly share code, notes, and snippets.

@turingbirds
turingbirds / Git cheatsheet.markdown
Last active January 10, 2023 22:10
Git cheatsheet

Git cheatsheet

Set up Git

git config --global user.email "john_doe@example.com"
git config --global user.name "John Doe"
@turingbirds
turingbirds / upload.php
Last active May 30, 2019 13:40
a simple php upload script
<?php
header("Content-Type: text/html; charset=utf-8");
function display_filesize($filesize) {
if (is_numeric($filesize)) {
$decr = 1024;
$step = 0;
$prefix = array('Byte','KB','MB','GB','TB','PB');
@turingbirds
turingbirds / usbreset.rst
Created October 31, 2014 20:30
usbreset.c
@turingbirds
turingbirds / invoke.py
Last active August 29, 2015 14:16
Execute a child program in a new process
#!/usr/bin/python
# -*- coding: utf-8 -*-
"""Execute a child program in a new process"""
import os
import subprocess
def exec_binary(cmd_line_list, cwd=None, stdout=None, stderr=None, verbose=False):
"""Invoke an executable file.
@turingbirds
turingbirds / GNUPG Cheatsheet.md
Last active March 6, 2024 16:27
GPG (GNUPG) Cheatsheet

GNUPG CHEATSHEET

Setting up: key generation

This generates a public/private keypair.

$ gpg --gen-key

$ gpg --list-secret-keys

@turingbirds
turingbirds / moore_penrose_pseudoinverse.c
Last active March 24, 2024 10:33
Compute the (Moore-Penrose) pseudo-inverse of a libgsl matrix in plain C.
/**
* Compute the (Moore-Penrose) pseudo-inverse of a libgsl matrix in plain C.
*
* Compile uding:
*
* gcc moore_penrose_pseudoinverse.c -lgsl -lblas
*
* Dependencies:
* - libgsl (GNU Scientific Library)
* - libblas (Basic Linear Algebra Subprograms)
@turingbirds
turingbirds / Agilent 82357B GPIB interface programming on Ubuntu Linux.rst
Last active February 13, 2024 23:31
Agilent 82357B GPIB interface programming on Ubuntu Linux

GPIB interfacing using Agilent 82357B on Ubuntu Linux

I initially had some problems installing on my laptop, so decided to boot Ubuntu 12.04.5 LTS, 3.13.0-32-generic from USB and work from there.

For an automated installation script, see gpib_install.sh (and gpib.conf) below. The rest of this document describes the actions of the installation script step-by-step.

First, get the packages that are necessary to support Python bindings:

:

@turingbirds
turingbirds / ltspice_high_precision.rst
Last active April 13, 2024 13:30
ltspice options for high precision simulation/data export

ltspice options for high precision simulation/data export

Uses backward Euler integration (maxord=1 option), which can be very slow.

Set maximum iteration counts: DC iteration count limit (itl1, default: 100), DC transfer curve iteration count limit (itl2, default: 50), and transient analysis time point iteration count limit (itl4, default: 10) [ltwiki].

.OPTIONS maxord=1
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.