#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Fri Oct 28 09:15:52 2016
@author: andreaskuk
"""
import numpy as np
import matplotlib.pyplot as plt
"""
function: Y=Y_0(cos(\theta)^(-f)*exp(b(1-1/cos(\theta))))
mit Y_0= 0.11, f=1.9, b=0.19 von 0°-90°
"""
y0, f ,b, = 0.11, 1.9,0.19
x= np.linspace(0,90,10000)
#y = y0*np.power(np.cos(x),-f)*np.exp(b*(1-1/np.cos(x)))
y = y0*np.cos(np.radians(x))**(-f)*np.exp(b*(1-1/np.cos(np.radians(x))))
plt.title('Plot Sputter Yield')
plt.xlabel('0°-90°')
plt.ylabel('y')
plt.grid(True)
plt.plot(x,y, label='$Y=$Y_0*(cos(\Theta))^(-f)*exp(b(1-(1/ cos(\Theta))))')
plt.legend(loc='upper left')
plt.show()
class Kukplot:
def __init__(self,y0,f,b):
#self.x=np.linespace(0,90,101)
self.y0=y0
self.f=f
self.b=b
# self.y=y0*np.cos(np.radians(x))**(-f)*np.exp(b*(1-1/np.cos(np.radians(x))))
def __call__(self,x):
self.x=x
y = self.y0*np.cos(np.radians(self.x))**(-self.f)*np.exp(self.b*(1-1/np.cos(np.radians(self.x))))
return y
x=np.linspace(0,90,101)
sjsj = Kukplot(0.11,1.9,0.19)
y= sjsj(np.linspace(0,90,101))
plt.title('Plot Sputter Yield')
plt.xlabel('0°-90°')
plt.ylabel('y')
plt.grid(True)
plt.plot(x,y, label='$Y=$Y_0*(cos(\Theta))^(-f)*exp(b(1-(1/ cos(\Theta))))')
plt.legend(loc='upper left')
plt.show()