Skip to content

Instantly share code, notes, and snippets.

@albop
albop / gist:7525675
Created November 18, 2013 10:26
zero_based_indexing
rewrite(x::Number) = x
rewrite(x::Symbol) = x
rewrite(x::String) = x
function rewrite(expr)
if expr.head == :ref
return Expr(expr.head, expr.args[1], [rewrite(:( 1 + $i)) for i in expr.args[2:end]]...)
else
return Expr(expr.head, [rewrite(i) for i in expr.args]...)
end
@albop
albop / gist:10281951
Created April 9, 2014 15:15
Browser with tabs
#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import print_function
import sys
from PySide.QtCore import *
from PySide.QtGui import *
from PySide import QtGui
from PySide.QtWebKit import *
from PySide import QtWebKit
######################################################################
using PyPlot
using Grid
using Dierckx
using NumericalMath
using splines
#using ApproXD
meshgrid(x::Vector, y::Vector) = (repmat(x, 1, length(y))',
repmat(y, 1, length(x)))
@albop
albop / gist:ab49de476b6bcbdd689c
Last active August 29, 2015 14:12
Functions needed for vfi with dolo
from dolo import yaml_import
model = yaml_import('examples/models/rbc.yaml')
s = model.calibration['states']
x = model.calibration['controls']
y = model.calibration['auxiliaries']
e = model.calibration['shocks']
v = model.calibration['values']
p = model.calibration['parameters']
@albop
albop / watcher.py
Last active January 22, 2016 14:34
"""
Filename: watcher.py
Authors: Pablo Winant
Time long computation and send a message when finished.
"""
import contextlib
@contextlib.contextmanager
def watcher(task_name=None, email=None):
@albop
albop / index.html
Last active August 29, 2015 14:19
mc_sample_path: numba annotate
<html>
<head>
<style>
.annotation_table {
color: #000000;
font-family: monospace;
margin: 5px;
@albop
albop / interpolation_speed.jl
Created January 7, 2016 23:12
splines.jl vs interpolations.jl
d = 3 # number of dimensions
K = 50 # number of points along each dimension
N = 100000 # number of points at which to interpolate
A = rand([K for i = 1:d]...) # filtered coefficients
B = rand(N,d) # points at which to evaluate the splines
max(B, minimum(A)+0.01)
min(B, maximum(A)-0.01)
@albop
albop / eval_cubic_cuda.py
Last active January 19, 2016 15:35
interpolation with numba.cuda
from __future__ import division
from numba import double, int64
from numba import jit, njit
import numpy as np
from numpy import zeros, array
@albop
albop / generated_interp.py
Last active January 21, 2016 14:05
Half working generated interpolation example
from math import floor
from numba import njit
####
#### Working
####
@njit
def native_index_1d(mat, vec):
return mat[vec[0]]
from cffi import FFI
ffi = FFI()
ffi.cdef('double erfc(double x);')
libm = ffi.dlopen("m")
erfc = libm.erfc
from math import erfc as p_erfc
from numba import njit
from numpy import linspace