python里想用multiprocessing用倒向Euler方法跑多个解

问题遇到的现象和发生背景

python里想用multiprocessing用倒向Euler方法跑多个解

用代码块功能插入代码,请勿粘贴截图
import numpy as np
import matplotlib.pyplot as plt
import math
import time
import multiprocessing as mp

def backf(y, k, x):
    return x + 0.4 * dt - y

def x2appro(dt):
    X0 = X
    X1 = X0 + dt
    Y = fsolve(backf,X1,args=(dt,X0), xtol=tol, maxfev=100)
    print(Y)

def x2exact(dt):
    X0 = X
    X1 = X0 + dt
    Y = fsolve(backf,X1,args=(dt,X0), xtol=tol, maxfev=100)
    print(Y)

cores=mp.cpu_count()

if __name__ == '__main__':
    p = mp.Pool(cores-1)
    p.apply_async(x2appro, [1/2])
    p.apply_async(x2exact, [1/4])
    p.close()
    p.join() 
运行结果及报错内容

运行过程中没有成功调用fsolve函数计算反解方程的代码

我想要达到的结果

想在multiprocessing的每个p.apply_async中调用fsolve解方程