仮想計算機構

IT業界と無縁な派遣社員のブログ

ゼータ関数の等高線のプロット

ゼータ関数によって実軸上または虚軸上にマッピングされる複素数について考えます。そのような複素数の集合はどのような形をしているでしょうか。幸いなことに現代人にはコンピュータがあります。今回は、既存の Python ライブラリを活用して以下の図を作成…

TeXworks Editor にダークテーマを導入したい

はじめに Texworks Editor をを白い背景のまま使うのはシンドイので、以下のQAを参考に背景色を変更します。 https://tex.stackexchange.com/questions/383271/how-can-i-set-a-dark-theme-in-texworks 環境 OS : Windows 10 TeXworks : 0.6.9 設定手順 まず…

Maxima を Windows10 にインストールする

1.ファイルのダウンロード 公式サイトの記述にしたがい、インストールを行います。 https://maxima.sourceforge.io/windows-install.html2024年3月3日時点での安定版であるバージョン5.47.0をダウンロードします。 https://sourceforge.net/projects/maxima/…

PARI/GP を Windows10 にインストールする

1.公式サイトからWindowsバイナリ(64ビット)をダウンロードする https://pari.math.u-bordeaux.fr/download.html 2.ダウンロードしたファイルを実行する 下記の警告が表示されるが無視して実行ボタンを押す。 3.セットアップ画面が立ち上がる。Nextボタン…

hiredisをソースからインストールする

前回 Redis をインストールしたので今回は hiredis をインストールします。 環境 インストール サンプルプログラムの実行 コンパイル エラー解決 改めて実行する 共有ライブラリが見つからなかったときの対処 ①環境変数の設定 ②confファイルの作成 ③LDFLAGを…

Redis をソースからインストールする

環境 インストール ダウンロード 解凍 ビルド 起動とシャットダウン バージョン確認 サーバの起動 プロセスの確認 サーバから返答があるか確認する サーバを終了する プロセスの確認 参考 環境 $ cat /etc/issue Ubuntu 22.04.3 LTS \n \l インストール ダウ…

Visual Studio で cpp-httplib のサンプルプログラムを動かす

GitHub - yhirose/cpp-httplib: A C++ header-only HTTP/HTTPS server and client library cpp-httplib はヘッダーファイルのみの HTTP/HTTPS ライブラリです。本記事では本家サイトにあるサンプルを動かすことを目標とします。 0.環境 1.プログラム 2.ビル…

【自分用メモ】vcpkgを使ってcurlをインストールする

下記を参考にcurlをインストールします。あくまで自分用のメモです。 curl/docs/INSTALL.md at master · curl/curl · GitHub 0.環境 1.vcpkg のインストール 2.curl をインストールする 3.curl を使ってみる 参考 0.環境 OS : Windows 10 端末 : Windows Ter…

tracerouteのソースを入手する

tracerouteの仕組みを調べていたら少し興味がわいてきました。下記サイトからオリジナルのプログラムが入手できるとのことです。https://ee.lbl.gov/アクセスすると確かにtracerouteがあります。ところが、筆者が使っているブラウザ(Google Chrome)だとリ…

Windows で tinyrenderer を動かしてみる

はじめに ライブラリに依存しないTiny(小さい)Rendererです。tinyrendererの存在意義としては作者の下記の言葉がすべてかと思います。 In this series of articles, I want to show the way OpenGL works by writing its clone (a much simplified one). S…

【Ubuntu】【C++】Boostをダウンロードして使ってみた

はじめに 下記参考に進めていきます。 Ubuntu は 18.04 を使用しています。 はじめに ダウンロード サンプル サンプル1:lambda プログラム 実行結果 サンプル2:regex プログラム 使用データ:email.txt 実行結果 サンプル3:all_of プログラム 実行結果 ダ…

openFrameworks による Langton's loop

openFrameworks と C++ の勉強として、以前作成した Langton's loop の C++ 版を作成しました。openFrameworks 0.11.2 にて動作を確認しています。 プログラム main.cpp ofApp.cpp ofApp.h bin/data/rule.txt 実行結果 参考 openFrameworks C++ その他 プロ…

openFrameworks で画像を読み込む

1. はじめに インストールから1年弱経ちました。インストール満足野郎にならないよう気をつけます。今回は openFrameworks で画像を読み込んだり、画像の位置を動かしたります。 環境 OS : Windows 10 openFrameworks : 0.11.2 IDE : Visual Studio 2019 pro…

【Python】【Windows】mecab をインストールした

はじめに python から mecab を使いたかったので pip でインストールします。 環境 OS : Windows 10 Python version 3.7.6 インストール $ pip install mecab-python3 (省略) Installing collected packages: mecab-python3 Successfully installed mecab-…

【Sage】Hopf fibration 系の話題でよく見かける図を再現してみる

タイトル通りです。基本となる式はです。これを満たす は下記のように表せます。また、複素数なので下記のように表すこともできます。このとき は以下のとおりです。下記の操作によって三次元空間での様子を可視化します。 検証⓪ が固定 が連続の場合 としま…

【Sage】サイクロイドのアニメーションを作った

サイクロイドのアニメーションを作る。 参考:サイクロイド - Wikipedia 環境 OS:Windows 10 Python 3.7.7 Sage 9.2 用いる式 プログラム 半径1の円が1回転するまでの様子を描画する。 theta=var('theta') r=1 ts = [2*pi*(i+1)/30 for i in range(30)] 時刻…

【Sage】Trefoil knot の可視化

Parametric surface の wikipedia に載っている CG を Sage で再現した。 参考:https://en.wikipedia.org/wiki/Parametric_surface 環境 OS:Windows 10 Python 3.7.7 Sage version 9.2 プログラム u,v=var('u,v') r = 5 parametric_plot3d((r * sin(3 * u) …

manimでドラえもんを描く

はじめに manim の練習としてキャラクターの描画を行います。 環境 OS : Windows 10 Python : 3.7.6 Manim Community : 0.13.0 プログラム from manim import * import math class Manimemon(Scene): def construct(self): # face blue_face = Circle(color=…

「PythonとJavaScriptではじめるデータビジュアライゼーション」3.6.5 の freeze について

発生したエラー datasetというモジュールの利用する際のエラーについて。SQLクエリの結果をCSVに変換・保存する際に freeze を利用します。書籍P66における例でいうと dataset.freeze(winners, format='csv', filename='data/nobel_winners_ds.csv') という…

【パタヘネ】【Python】乗算ハードウェアの第1のバージョンのシミュレーション

乗算ハードウェアのシミュレーション パタヘネ(上)図 3.3 計算のハードウェアで乗算を実行した場合のレジスタの変化を表示するプログラムを作成しました。乗数の対象は6ビット符号なし整数です。例えばという乗算においては2が被乗数、3が乗数、6が積になり…

Windows環境 で openFrameworks をインストールして動かしてみる

C++

0.筆者の環境 OS : Windows 10 CPU : Intel Core i5 2.60GHz IDE : Visual Studio Community 2019 Version 16.8.4 1.インストール 1.1 ダウンロード 以下のサイトからダウンロードします。 筆者の環境はVS2019ですが、Visual Studio 2017 を選択します。ダウ…

【Python】ニュートンフラクタルの可視化

wikiの疑似コードを参考に実装します。 プログラム import numpy as np import cv2 Px,Py = 360,420 img = np.zeros((Px, Py,3), np.uint8) roots = [1+0j,-0.5+np.sqrt(3)/2j, -0.5-np.sqrt(3)/2j] r_hsv = cv2.cvtColor(np.uint8([[[255,0,0]]]),cv2.COLOR…

【Python】Lyapunovフラクタル

wikiの例を再現します。 繰り返し列:AB プログラム import numpy as np import cv2 b_hsv = cv2.cvtColor(np.uint8([[[255,0,0]]]),cv2.COLOR_RGB2HSV)[0][0] Px,Py = 360,360 s = [0,1] # AB S = [] # 周期列 M = int(Px*Py/len(s))+1 for i in range(M): S…

【Python】反復関数系の例

Sierpinskiの三角形 プログラム 実行結果 Barnsleyのシダ プログラム 実行結果 Koch曲線 プログラム 実行結果 Levy C曲線 プログラム 実行結果 参考 Sierpinskiの三角形 シェルピンスキーのギャスケット - Wikipedia プログラム import numpy as np import m…

Twitterでみかけた素数の一般項を計算してみる

「素数に一般項はない!」と主張する人をまれに見かけますが、それは嘘です。画像の式に好きな整数nを代入すると、n番目の素数が得られます。 pic.twitter.com/GF6hCJDVuF— 数学を愛する会 (@mathlava) June 6, 2021 面白そうだったので計算してみました。 …

PythonによるN体シミュレーション

はじめに N体シミュレーションを行いました。 初期値等は以下の情報を参考にしています。 Create Your Own N-body Simulation (With Python) | by Philip Mocz | The Startup | Medium nbody-python/nbody.py at master · pmocz/nbody-python · GitHub 上記…

Evoloop : 自己解消機能をもった増殖ループ

はじめに 準備 準備その1:変換規則 準備その2:Canvasによるアニメーション デモ 参考 実装 動画ツール はじめに いままで作っているもの。 CanvasによるLangton's Loops - 仮想計算機構 Tempesti loop:自己複製しながら文字を描くセルオートマトン - 仮…

電気力線みたいな線を描画する

SageMath を用いて電磁気学などで使われる概念についてプロットしてみます。物理学的な厳密性は投げ出しているので差し引いて読んでください。まず、電荷をA~Dと名付け、位置を xs に、電荷の値を qs に格納しておきます。 A = vector([0,0]) B = vector([5,…

極限としてデルタ関数が得られるもの

原島鮮『初等量子力学』10.2 より 連続関数がデルタ関数へ接近していく様子を可視化します。 ツールは SageShell を使います。 その1 sage: l = [plot(sin(a*x)/pi/x,(x,-15,15))+text("$a={}$".format(a),(15*0.7,a/pi*0.8),fontsize=20, bounding_box={'b…

ラザフォード散乱における粒子の軌道【SageMath】【Python】

小出昭一郎『量子力学(Ⅰ)』の 5.2 を参考にラザフォード散乱における粒子の軌道を可視化します。用いる変数を次のように定義します。 は以下の関係を満たします。 ここで は で定義されます。ほかの記号の意味については、下記のとおりです。真空の誘電率…