めもらんだむ

個人的な備忘録。Julia言語やPythonに関することが中心になると思われます。

Julia言語のリストやベクトルをカッコなしでファイルに出力したい

何も考えずに example = [1, 2, 3] out = open("hoge.out", "w") println(out, example) とやると、カッコ付きでファイルに出力される。入力ファイルとして使うときには邪魔くさいので、カッコを除いて出力させたい。 同じことをやりたい人がJuliaの掲示板で…

Julia言語でコマンドライン引数を使う

コマンドライン引数を使うとは julia hoge.jl arg1 arg2 という具合に、コマンドラインから(ココデハhoge.jlという)Juliaのコードを走らせるときに、ココデハarg1とarg2という引数を与えた上で走らせることを言う。上記のようにすると、与えた引数はARGSと…

GMT.jlが動かなくてもJulia言語からGMTを使う

GMT (Generic Mapping Tools) では、GMT.jlというJuliaからGMTを呼ぶためのパッケージが用意されていますが、私の環境ではエラーが出てインストールに失敗しました。 そこで、便法としてPyCall.jlをインストールして、PyGMT経由でGMTを使うようにしています…

Julia言語のパッケージ管理

パッケージを追加するところは色々情報があるが、パッケージのメンテナンスに必要な情報があまりないようなのでメモ。 ※もう少しだけ調べると、コロナ社から出ている『1から始めるJuliaプログラミング』の2.11にちゃんと出ていた……。 まずはREPLでパッケージ…

Julia言語のループが独立した変数のscopeを有していることへの対応

Julia言語のループでは変数のscopeが独立していることは合理的な面もあるが、ループ内で生成した変数をループ外で参照したいときには不便を感じる。ループ内で生成した変数をループ外で参照したいときには、ループに入る前にその変数を定義してループ内で加…

Julia言語:複合型(struct)の編集でハマったこと

REPL上でstructを編集し、再度include...としてJuliaのコードを走らせると ERROR: LoadError: invalid redefinition of constant StructFltPrm と出て、コードが走らなくなる。structをいじると(コンパイルを?)一からやり直す必要があるようで、一旦REPL…

任意の数値をとる係数を伴う被積分関数をQuadGKで数値積分する:anonymous functionの利用

1変数の数値積分を行うQuadGKを使った数値積分の紹介記事は色々見つかるが、被積分関数中の係数が定数のものばかりで、被積分関数の係数を引数として与える例がうまいこと見つけられなかったが、anonymous functionを使えばよいらしいことに気付く。今、被積…

Julia言語における浮動小数点型

※断片的な知識の個人的なメモで、体系だった記述ではないと思います。体系だった知識を求める場合には、本家のサイトのドキュメント(https://docs.julialang.org/en/v1/)か成書を読むのがよいと思います。Julia言語での浮動小数点の型は Float16 Float32 F…

Julia言語のループでは変数のscopeが独立している

Julia言語でwhileやforのループ内で定義した変数をループ外で参照しようとしたところ、定義されていないと出て何が何だか……と思っていたところ、それが仕様で、Julia言語のループでは変数のscopeが独立しており、内部で定義した変数は外部からは参照できない…

Julia言語を使ってみた

<追記(2022年11月18日)> コンパイルのオーバーヘッドが大きいと感じたのは、私の使い方が悪かったようです。 julia (Juliaのコード) という具合にコマンドを走らせる形がよろしくなかったようです。以下の記事を参照し、REPLというJulia言語のコマンドラ…

Julia言語でのradian⇔degreeの変換

Pythonだとnumpyを使った記憶があるが、Julia言語では組み込み関数として用意されていて、usingで何らかのライブラリを読み込む必要はない。 radianからdegreeにはrad2deg(hoge)、degreeからradianはdeg2rad(hoge)となる。参考文献: www.geeksforgeeks.org

Julia言語の手習い

Pythonよりも早いと噂されるJuliaを使ってみようと調べものをして見て回り、Juliaを知る上で参考になるサイトのブックマークです。過去の経験や蓄積が人それぞれ違う以上、わかりやすさもまた人それぞれで、Juliaを使ってみたいと思っている皆さんにとってい…

緯度・経度から住所を調べる方法

国土地理院のサイトのWeb APIを使ってとてもお手軽にできる。 具体的なやり方(Pythonスクリプトを使った住所の取得方法)は monzcode.com に記されている。市町村コード一覧でまとめられているところはコードになっており、それより細かいところが文字にな…

LaTeXで外字を使う(Macでの話)

異体字を含めたいわゆる外字(よく考えると、定義をちゃんと理解していない)をTeX LiveでインストールしたLaTeXで使えるようにするのが最終目標。 但し、フォントは埋め込まないと作業環境と違うところでは表示されない可能性があるので、ヒラギノフォント…

FortranからPythonを呼ぶ(その2):Intelコンパイラとforpyを組み合わせる

試した環境 mac OS 12.6 ifort (IFORT) 2021.7.0 20220726 Python 3.9.12 :: Intel Corporationgfortranを使っているQiitaの記事を参考に試してみたところ、いくつか対策が必要になった。 ※Qiitaの記事 qiita.com具体的には、次の3点。 forpyのモジュールを…

FortranからPythonを呼ぶ

普通はf2pyでPythonからFortranを呼ぶことが多いのだろうが、その逆で、FortranからPythonを呼ぶためのFotranモジュールが公開されている。 公開サイトの例ではGNUのコンパイラが使われているがIntelのコンパイラ(ifort)でも動くらしい。 但し、自分では確…

Intel Complier導入メモ

Qiitaの qiita.com がよくまとまっている。 ありがたや。 Windowsでの導入例だが、ダウンロードすべきファイルとかはMacでも変わらない。

python-docxを使う(その3)フォントの指定

文書全体で変えたいとき 意識に上ることはあまりないが、MS Wordは、LaTeXのクラスファイルと同じようなファイルで文書のフォーマットを管理しており、スタイルと呼ばれるらしい。多分、スタイルに関する情報も文書ファイル中に埋め込まれているのだと思う。…

python-docxを使う(その2)紙のサイズとマージンの指定

MS Wordのデフォルトの紙のサイズはいわゆるレターサイズなので、これをA4サイズに変更する方法。 ついでにマージンの指定の仕方も。 from docx.shared import Mm document = Document() section = document.sections[0] section.page_height = Mm(297) sect…

python-docx: PythonからMS Wordファイルを操作する

PythonからMS Wordファイルを操作するためのライブラリの一つにpython-docxがある。 ドキュメント: python-docx — python-docx 0.8.11 documentation GitHubから入手可能: github.com このライブラリから派生したものがいくつもあり、独自の追加機能が施さ…

pipの使い方に関するメモ

pip

pip list インストールしているパッケージリストの表示 pip list -o アップデートが出ているパッケージリストの表示:oはoutdatedのo pip install 【パッケージ名】 パッケージのインストール pip install -U 【パッケージ名】 パッケージのアップデート 参…