示例#1
0
#!/bin/python3
import boutcore as bc

bc.init("mesh:n=48")


class Model(bc.PhysicsModel):
    def init(self, restart):
        self.dens = bc.create3D("sin(x)")
        self.solve_for(n=self.dens)

    def rhs(self, time):
        self.dens.ddt(bc.DDX(self.dens))


model = Model()
model.solve()
示例#2
0
# class MyModel(PhysicsModel):
#          def init(self,restart):
#                      self.n=create3D("dens:function")
#                              self.solve_for(dens=self.n)
#                                  def rhs(self,time):
#                                              self.n.ddt(DDX(self.n))

#                                              model=MyModel()
#                                              model.solve()

import boutcore as bc
from numpy import sqrt
from boutcore import bracket, DDZ, Delp2, PhysicsModel
import sys
bc.init("-d blob".split(" ") + sys.argv[1:])


class Blob2D(PhysicsModel):
    def init(self, restart):
        self.mesh = bc.Mesh.getGlobal()
        self.n = bc.Field3D.fromMesh(self.mesh)
        self.omega = bc.Field3D.fromMesh(self.mesh)

        self.phiSolver = bc.Laplacian()

        options = bc.Options("model")
        # Temperature in eV
        Te0 = options.get("Te0", 30)
        e = options.get("e", 1.602e-19)
        m_i = options.get("m_i", 2 * 1.667e-27)
示例#3
0
# -*- coding: utf-8

#!##################################################################
#
#       2D blob simulations
#
#  Copyright:   NR Walkden, B Dudson, D Schwörer;  2012, , 2017
#
###################################################################

import boutcore as bc
from numpy import sqrt
from boutcore import bracket, DDZ, Delp2
import sys

bc.init("-d blob".split(" ") + sys.argv[1:])
mesh = bc.Mesh.getGlobal()
n = bc.Field3D.fromMesh(mesh)
omega = bc.Field3D.fromMesh(mesh)
phi = bc.Field3D.fromMesh(mesh)

phiSolver = bc.Laplacian()

options = bc.Options("model")
# Temperature in eV
Te0 = options.get("Te0", 30)
e = options.get("e", 1.602e-19)
m_i = options.get("m_i", 2 * 1.667e-27)
m_e = options.get("m_e", 9.11e-31)

# Background density in cubic m
示例#4
0
#!/usr/bin/env python3

import boutcore as bc
import numpy as np
bc.init("-d input -f ../data/BOUT.inp".split(" "))

f = bc.Field3D.fromMesh(None)
f.setAll(np.array([[[1.]]]))
f2 = bc.Field3D.fromMesh(None)
f2.setAll(np.array([[[2.]]]))
print(f.getAll())
dump = bc.Datafile()  # get global :(
dump.add(f3d=f, f2d=f2, save_repeat=True)
dump.write()
示例#5
0
#!/usr/bin/python3

import boutcore as bc
import numpy as np
bc.init("-d input -f ../data/BOUT.inp".split(" "))

f=bc.Field3D.fromMesh(None)
f.setAll(np.array([[[1.]]]))
f2=bc.Field3D.fromMesh(None)
f2.setAll(np.array([[[2.]]]))
print(f.getAll())
dump=bc.Datafile() # get global :(
dump.add(f3d=f,f2d=f2,save_repeat=True)
dump.write()

示例#6
0
import boutcore as bc

bc.init("-d test")
bc.print("We can print to the log from python 🎉")
示例#7
0
#!/bin/python3
import boutcore as bc

bc.init("mesh:n=48")

class Model(bc.PhysicsModel):
    def init(self,restart):
        self.dens = bc.create3D("sin(x)")
        self.solve_for(n=self.dens)

    def rhs(self,time):
        self.dens.ddt(bc.DDX(self.dens))


model = Model()
model.solve()