Skip to content

Instantly share code, notes, and snippets.

View Hermann-SW's full-sized avatar

Hermann Stamm-Wilbrandt Hermann-SW

View GitHub Profile
@Hermann-SW
Hermann-SW / utility.jscad
Last active January 29, 2025 15:11
K_{3,3} embedded on a torus
/*jslint node*/
"use strict";
const jscad = require("@jscad/modeling");
const {vec2, vec3} = jscad.maths;
const {colorize} = jscad.colors;
const {cylinder, sphere, torus} = jscad.primitives;
const {rotate, scale, translate} = jscad.transforms;
let edgeCylinder = cylinder({height: 1, radius: 0.01}); // cached
@Hermann-SW
Hermann-SW / M500000500001.gp
Created December 23, 2024 14:24
PARI/GP proof that Mersenne exponent 500000500001 does not give Mersenne prime (291.0g resident memory needed)
m=2^500000500001-1;
##
d=2 * 1663403835355 * 500000500001 + 1;
##
m%d
##
#binary(d)
##
@Hermann-SW
Hermann-SW / openowl
Last active December 21, 2024 09:23
Use gpuowl pre_c++20 branch with rocm/dev-ubuntu-18.04 for PRE_VEGA "Radeon RX 480" GPU
#!/bin/bash
set -x
apt-get update 2>&1 > /dev/null
apt-get install -y git 2>&1 > /dev/null
usermod -a -G video root
echo ROC_ENABLE_PRE_VEGA=1 >> /etc/environment
echo HSA_OVERRIDE_GFX_VERSION=8.0.3 >> /etc/environment
@Hermann-SW
Hermann-SW / doit
Last active December 18, 2024 15:02
"Radeon RX 480" rocm demo script to execute with "docker run" for "rocm/dev-ubuntu-18.04"
#!/bin/bash
set -x
apt-get update 2>&1 > /dev/null
apt-get install -y git 2>&1 > /dev/null
usermod -a -G video root
echo ROC_ENABLE_PRE_VEGA=1 >> /etc/environment
echo HSA_OVERRIDE_GFX_VERSION=8.0.3 >> /etc/environment
@Hermann-SW
Hermann-SW / dummy.txt
Created December 16, 2024 11:14
Ryzen series ms/iter comparison for Jean Penné's LLR on Mersenne prime M_52
See comment
@Hermann-SW
Hermann-SW / coi.js
Last active December 15, 2024 09:52
cutlery organizer insert JSCAD file
const jscad = require('@jscad/modeling')
const { translate } = jscad.transforms
const { subtract } = jscad.booleans
const { extrudeLinear } = jscad.extrusions
const { rectangle } = jscad.primitives
const { geom2 } = jscad.geometries
h=43
l1=78
l2=95
\\ a b c d e
\\ l m n f o
\\ k p g u v
\\ j h x r y
\\ i q w t s
\\ps=[3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 61, 71, 73, 79, 83, 101, 103, 107, 109, 113];
ps=[3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 113];
used=Vec(0,25);
@Hermann-SW
Hermann-SW / srch.3x3.mpe.gp
Created November 20, 2024 13:18
Find minimal 3x3 square of distinct primes, with all row/col/diag sums being mersenne prime exponents and total sum prime
readvec("mpe.gp");
srch(P)={
my(M=oo);
my(S=[]);
my(used=Vec(0, 9*P[#P]));
my(ismpe=Vec(0,mpe[#mpe]));
foreach(mpe,p,ismpe[p]=1);
foreach(P,a,used[a]=1;
foreach(P,b,if(!used[b],used[b]=1;
@Hermann-SW
Hermann-SW / M_52.is.x^2_plus_3_times_y^2.gp
Last active January 3, 2025 20:51
Integers x,y such that biggest known (2024) Mersenne prime M_52 == x^2 + 3 * y^2
This file has been truncated, but you can view the full file.
p=2^136279841-1;
##
@Hermann-SW
Hermann-SW / o1_edge_visitor.cpp
Created November 9, 2024 16:38
Demonstration of Boost O(1) remove_edge() in class derived from "edge_index_update_visitor"
//=======================================================================
// Copyright 2024
// Author: Hermann Stamm-Wilbrandt
//
// Distributed under the Boost Software License, Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
//=======================================================================
#include <iostream>
#include <boost/graph/undirected_graph.hpp>