Skip to content

Instantly share code, notes, and snippets.

View Thell's full-sized avatar

Thell 'Bo' Fowler Thell

  • Pyrapat Inc.
  • Arkansas, USA
View GitHub Profile
@Thell
Thell / plot_highs_log.py
Last active August 25, 2024 18:50
HiGHS Log Plotter
import re
import matplotlib.pyplot as plt
import numpy as np
def parse_highs_log(log_file_path):
last_full_entry = []
current_entry = []
found_solution = False
@Thell
Thell / enumerated_retain.rs
Last active March 20, 2023 06:40
Impls for retain methods with enumerate and with access to the remaining elements for predicate.
trait EnumeratedRetain<T> {
fn retain_enumerate<F>(&mut self, f: F)
where
F: FnMut(usize, &T) -> bool;
}
impl<T> EnumeratedRetain<T> for Vec<T> {
fn retain_enumerate<F>(&mut self, mut f: F)
where
F: FnMut(usize, &T) -> bool,
@Thell
Thell / main.rs
Last active June 14, 2022 23:10
wip - beginner clap definitions
use clap::{Args, ArgGroup, Parser, Subcommand};
#[derive(Parser)]
#[clap(author, version, about, long_about = None)]
#[clap(propagate_version = true)]
struct Cli {
#[clap(subcommand)]
command: Commands,
}
@Thell
Thell / rcpp_vs_rust_zeros.R
Created December 20, 2021 22:30
Benchmarking returning zero filled rcpp vs rextendr vector and matrix.
# compare rcpp and rust zero matrices performance to test wrap times.
library(microbenchmark)
Rcpp::sourceCpp(
code = '
#include <Rcpp.h>
using namespace Rcpp;
@Thell
Thell / example.pq
Last active February 7, 2021 08:38
An example of unpivoting multiple columns.
let
Source = Table.FromRows(
Json.Document(
Binary.Decompress(
Binary.FromText(
"bcxBCoAgFATQq8hf28L5p+gM4iLJoE1FtLDbl4INhLth/rzvvYzbnLJYOc60rNlc95Gc8cu+u9Br0W3116L7AW0brBf33iZTVsMXwag1Rg5iawsGMYhBDGIQo2IlVmIlVmIlVgnhAQ==",
BinaryEncoding.Base64
),
Compression.Deflate
)
@Thell
Thell / Basic-RStudio-WSL2-Install.md
Last active May 21, 2022 17:19
A very basic, no-frills, setup of RStudio on WSL2.

VERY Basic WSL2 RStudio Install

Begin with a plain Ubuntu distro from the Windows App Store. If one is already installed and you want to start from scratch simply:

wsl -t Ubuntu
wsl --unregister Ubuntu
Ubuntu
// [[Rcpp::plugins(cpp11)]]
#include <Rcpp.h>
using namespace Rcpp;
// Rcpp containers
typedef Rcpp::NumericMatrix nm;
typedef Rcpp::NumericVector nv;
typedef Rcpp::IntegerMatrix im;
typedef Rcpp::IntegerVector iv;
typedef Rcpp::LogicalMatrix lm;
@Thell
Thell / apt-fast-progress.sh
Last active March 19, 2022 19:16
Aria2 rpc based progress monitor for apt-fast in non-interactive shells.
#!/bin/sh
# Aria2 rpc based progress output for apt-fast
# trigger using --on-download-complete callback.
# Provide bytesNeeded in the parent environment...
# apturis=$(apt-get -qq --print-uris "$@")
# export DLLISTBYTES=$( echo "$apturis"| awk -F " " '{bytes+=$3} END{print bytes}' )
aria2_rpc () {
@Thell
Thell / MathjaxVer.Rmd
Created August 7, 2015 18:04
RStudio MathJax Version
---
output: html_document
---
### RStudio MathJax and the preview window/pane
When $MathJax$ is rendered it should be using
```{r}
Sys.getenv(x = "RMARKDOWN_MATHJAX_PATH")
@Thell
Thell / SpanError.md
Created June 22, 2015 20:08
Closing span tag parsing error.

\begin{equation*} 1 \end{equation*}