朝研究の成果- ラジカルかラジカルでないか(分子か)の判定をするためのコード

イケメンになる

みんなおはよう!

うたことだよ!

今日も5時起きからの研究をしている.

研究の中で,化学種がラジカルかラジカルじゃないかの判定をする必要が出てきて

対象の化学種が500種くらいあるけん,手作業じゃ無理だなってことで

急遽コードを作成した.

2時間くらいかかった…

せっかくの朝時間を取られるけん,プログラミング苦手なんよな…

まあそんなこんなでできたラジカル判定プログラムがこれ!

!pip install rdkit

# 分子式を指定
molecular_formula = "C4H6"  
# 各元素の原子価を定義
atomic_valence = {"H": 1, "C": 4}

# 分子内の電子の数を計算
elements = []
count = ""
for char in molecular_formula:
    if char.isalpha():
        if count:
            elements.append((element, int(count)))
            count = ""
        element = char
    else:
        count += char
if count:
    elements.append((element, int(count)))

total_valence = sum(atomic_valence[element] * count for element, count in elements)

# 分子内の未対電子の数を計算
total_electrons = total_valence

# フリーラジカルかどうかを判断
is_radical = total_electrons % 2 != 0

if is_radical:
    print(f"{molecular_formula} はフリーラジカルです。")
else:
    print(f"{molecular_formula} は分子です。")

これをjupiter notebookで実行してもらえればOK!

そもそもラジカルという言葉を知っている時点で相当な猛者だとは思うが

研究の時間短縮に役立ててくれ!!

またな!

コメント

タイトルとURLをコピーしました