예제 #1
0
    'savefig.dpi': 150,  #*12/16
    'savefig.jpeg_quality': 100,
    'savefig.pad_inches': 0.1,
    'lines.linewidth': 0.75
}
sns.set(context='paper',
        style='white',
        font='sans-serif',
        palette='Set2',
        font_scale=7 / 8,
        rc=rc)
Color = cycle(sns.color_palette('Set2'))

nTF = 18  #,nPF,nCS = 18,6,5
config = {'TF': 'dtt', 'eq': 'SFp'}
config, setup = select(config, nTF=nTF, update=False)  # nPF=nPF,nCS=nCS

sf = SF(setup.filename)
rb = RB(setup, sf)
pf = PF(sf.eqdsk)
tf = TF(
    Profile(config['TF'], family='S', part='TF', nTF=nTF, obj='L', load=True))
rb.firstwall(symetric=True, DN=True, plot=True)
#pf.plot(coils=pf.coil,label=False,plasma=False,current=True)
tf.fill()

#sf.cpasma *= 1.1
eq = EQ(sf, pf, dCoil=1.5, sigma=0, boundary=sf.get_sep(expand=1.1), n=3e3)
eq.gen_bal()
#eq.gen_opp()
예제 #2
0
파일: shape.py 프로젝트: tokasamwin/Nova
                      alpha=0.3,color=sns.color_palette('Set2',5)[3])
        #self.cage.plot_loops(sticks=False)
        if len(ax) > 1:
            pl.sca(ax[1])
            pl.cla()
            plot_oppvar(shp.loop.xo,shp.loop.oppvar)

                
if __name__ is '__main__': 

    nTF = 16
    family='S'
    ripple = False

    config = {'TF':'demo','eq':'SN'}
    config,setup = select(config,nTF=nTF)
    

    demo = DEMO()

    profile = Profile(config['TF'],family=family,part='TF',nTF=nTF)  # ,load=False
    shp = Shape(profile,nTF=nTF,obj='L',eqconf=config['eq'],ny=1)
    shp.add_vessel(demo.parts['Vessel']['out'])
    shp.minimise(ripple=ripple,verbose=False)
    cage = shp.cage
    
    #shp.update()
    #shp.tf.fill()
    #shp.loop.plot({'flat':0.3,'tilt':13})
    #shp.loop.plot()
    #demo.fill_part('TF_Coil',alpha=0.8)
예제 #3
0
from nova.loops import Profile
from nova.inverse import SWING
from nova.firstwall import main_chamber
from nova.shape import Shape

import seaborn as sns
sns.set(context='talk', style='white', font='sans-serif', font_scale=7 / 8)
Color = cycle(sns.color_palette('Set2'))

pkl = PKL('SXdev', directory='../../Movies/')

name = 'SX'

nTF, ripple = 18, True
base = {'TF': 'dtt', 'eq': 'DTT_SN', 'name': name}
config, setup = select(base, nTF=nTF, update=False)

sf = SF(setup.filename)
pf = PF(sf.eqdsk)

for coil in pf.index['CS']['name']:
    pf.coil[coil]['r'] = 2.7
    pf.coil[coil]['dr'] = 0.8

profile = Profile(config['TF'], family='S', part='TF', nTF=nTF, obj='L')
tf = TF(profile=profile, sf=sf)
#tf.adjust_xo('dz',value=-2)
#tf.fill()

eq = EQ(sf,
        pf,
예제 #4
0
    'savefig.jpeg_quality': 100,
    'savefig.pad_inches': 0.1,
    'lines.linewidth': 0.75
}
sns.set(context='paper',
        style='white',
        font='sans-serif',
        palette='Set2',
        font_scale=7 / 8,
        rc=rc)
Color = cycle(sns.color_palette('Set2'))

#base = {'TF':'dtt','eq':'SN'}
base = {'TF': 'dtt', 'eq': 'SN2014_EOF'}
#config,setup = select(base={'TF':'dtt','eq':'SN2014_EOF'},nTF=18)
config, setup = select(base=base, update=False, nTF=18, nPF=5, nCS=3)
sf = SF(setup.filename)
rb = RB(setup, sf)
pf = PF(sf.eqdsk)
tf = TF(
    Profile(config['TF'],
            family='S',
            part='TF',
            nTF=config['nTF'],
            obj='L',
            load=True))
tf.fill()
eq = EQ(sf,
        pf,
        dCoil=1.0,
        sigma=0,
예제 #5
0
파일: OCC_gen.py 프로젝트: tokasamwin/Nova
          nsel,r,node,,wp  ! ensure all nodes from winding pack
          *get,nnd,node,0,count  ! count nodes
          *do,j,1,3  ! Fx,Fy,Fz - all nodes attached to element
              F,all,F%xyz(j)%,Fbody_%xyz(j)%(el_l(i),el_dr(i),el_o(i))*el_v(i)/nnd
          *enddo
        *enddo
        allsel  
        '''
        ans.f.write(apdlstr)
        ans.close()


if __name__ is '__main__':

    nTF, ripple = 13, True
    base = {'TF': 'demo_nTF', 'eq': 'DEMO_SN_SOF'}
    config, setup = select(base, nTF=nTF, update=True)

    occ = OCC(config, setup, nTF=nTF)

    occ.OIS()
    occ.write()
    occ.plot()
    #occ.ansys(plot=True,nl=50,nr=3,ny=1)

    pl.plot(0, -12, 'o', alpha=0)
    pl.plot(17, 10, 'o', alpha=0)
    pl.tight_layout()

    #pl.savefig('../Figs/CoilForces.png')
예제 #6
0
rc = {
    'figure.figsize': [7, 7 * 16 / 12],
    'savefig.dpi': 125,  # 
    'savefig.jpeg_quality': 200,
    'savefig.pad_inches': 0.1,
    'lines.linewidth': 1.5
}
sns.set(context='talk',
        style='white',
        font='sans-serif',
        palette='Set2',
        font_scale=7 / 8,
        rc=rc)
color = sns.color_palette('Set2', 5)

config, setup = select(base={'TF': 'dtt', 'eq': 'DEMO_FW_SOF'}, nTF=18)
sf = SF(setup.filename)
pf = PF(sf.eqdsk)
pf.plot(coils=pf.coil, label=True, plasma=False, current=True)
levels = sf.contour(plot_vac=False)
rb = RB(setup, sf)
rb.firstwall(plot=True, debug=False, color=color[1])
rb.trim_sol()

filename = trim_dir('../../Data/') + 'CATIA_FW.xlsx'
wb = load_workbook(filename=filename, read_only=True, data_only=True)
ws = wb[wb.get_sheet_names()[0]]

FW = {}
for col, var in zip([5, 6], ['r', 'z']):
    row = ws.columns[col]
예제 #7
0
from nova.force import force_feild
import json
from amigo.IO import trim_dir
from nova.shelf import PKL

import seaborn as sns
rc = {'figure.figsize':[5,5*16/12],'savefig.dpi':120, # 
      'savefig.jpeg_quality':200,'savefig.pad_inches':0.1,
      'lines.linewidth':1.5}
sns.set(context='talk',style='white',font='sans-serif',palette='Set2',
        font_scale=7/8,rc=rc)

#config,setup = select(base={'TF':'dtt','eq':'SN'},nTF=18,nPF=5,nCS=3)
#config,setup = select(base={'TF':'dtt','eq':'SX'},nTF=18,nPF=5,nCS=3)
#config,setup = select(base={'TF':'dtt','eq':'DEMO_FW_SOF'},nTF=18)
config,setup = select(base={'TF':'dtt','eq':'SFp'},nTF=18)

sf = SF(setup.filename)  
pf = PF(sf.eqdsk)

'''
eq = EQ(sf,pf,dCoil=1.5,sigma=0,boundary=sf.get_sep(expand=1.05),
        zmin=-8,rmin=5.5,n=1e4) 
eq.gen_opp()
'''

#pf.plot(coils=pf.coil,label=True,plasma=False,current=True) 
sf.contour()


rb = RB(setup,sf)