0% found this document useful (0 votes)
91 views22 pages

Parameter Enhancement of Single Feed Circularly Polarized Microstrip Patch Antenna Using Near Zero Refractive Index

This document is an internship report submitted by Xxxxx Yyyyy to the National Institute of Science & Technology in partial fulfillment of the Bachelor of Technology degree. The report discusses metamaterials that exhibit negative permittivity and permeability in certain frequency ranges, known as left-handed materials, and investigates the effect of a metamaterial superstrate on the directivity of a hemispherical DRA antenna using CST simulations. Both simulation and experimental results show that the metamaterial effectively enhances the antenna's directivity based on its zero refraction characteristics.

Uploaded by

Harsh Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
91 views22 pages

Parameter Enhancement of Single Feed Circularly Polarized Microstrip Patch Antenna Using Near Zero Refractive Index

This document is an internship report submitted by Xxxxx Yyyyy to the National Institute of Science & Technology in partial fulfillment of the Bachelor of Technology degree. The report discusses metamaterials that exhibit negative permittivity and permeability in certain frequency ranges, known as left-handed materials, and investigates the effect of a metamaterial superstrate on the directivity of a hemispherical DRA antenna using CST simulations. Both simulation and experimental results show that the metamaterial effectively enhances the antenna's directivity based on its zero refraction characteristics.

Uploaded by

Harsh Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

Topic Name/Course Done

A B.Tech. Internship-1 Report


Submitted in partial fulfilment of
the requirements for the
Degree of Bachelor of Technology
Under Biju Pattnaik University of Technology

Submitted by
Xxxxx Yyyyy Roll # ECE2014xxxxx

2018-2019

Under the guidance of / In the organisation


Mr. Xxxxxxxxxxxx / Name of Organisation

NATIONAL INSTITUTE OF SCIENCE & TECHNOLOGY


Palur Hills, Berhampur, Odisha - 761008, India
ABSTRACT

Metamaterial exhibiting negative permittivity and negative permeability in certain


frequency range is known as Left-Handed Material ( LHM) which provides a n alternative
to the existing right-hand rule. The theory offers a new dimension to the antenna as well
as optical applications. The negative refractive index and the convergence of the
Topic Name B.Tech. 2015-2019

electromagnetic waves when passing through the metamaterial are good for antenna and
optical applications. However, this project highlights the effect of metamaterial structure
to the conventional antenna and concentrates on proving the existence of the negative
index material within certain frequency regions. The paper investigates the effect of a
metamaterial superstrate on hemispherical DRA using CST simulations. Simultaneous gain
and directivity enhancement on antenna are observed as well as multi-frequency operations
at 3.625 GHz. Both the simulation and experimental results show that the directivity of the
antenna is effectively enhanced based on the zero refraction characteristics of the
metamaterial.
Topic Name B.Tech. 2015-2019

ACKNOWLEDGEMENT
It is our proud privilege to epitomize our deepest sense of gratitude and indebtedness to our
advisor, Mr XXXXXX for his valuable guidance, keen and sustained interest, intuitive
ideas and persistent endeavour. His inspiring assistance, laconic reciprocation and
affectionate care enabled us to complete our work smoothly and successfully.

We extend our sincere thanks to Mr. Durga Prasad Dash, B. Tech. Seminar
Coordinator, for giving us the opportunity and motivating us to complete the project
within stipulated period of time and providing a helping environment.

We would also like to thank Dr. Sukant K. Mohapatra (Chairman, NIST), Prof.
Sangram Mudali (Director, NIST) and Prof. Geetika Mudali (Placement Director,
NIST) for having been the ultimate source of inspiration and moral support.

We would also like to extend our heartfelt gratitude to our parents and friends for their
unflinching support and help.

Xxxxx Yyyyy
Topic Name B.Tech. 2015-2019

TABLE OF CONTENTS

ABSTRACT ........................................................................................................................1
ACKNOWLEDGEMENT .................................................................................................2
TABLE OF CONTENTS ..................................................................................................3
LIST OF FIGURES ............................................................. Error! Bookmark not defined.
1. INTRODUCTION..........................................................................................................4
1.1 Features to Python ......................................................................................................2
1.2.Python Language advantages and applications…………………………………………………………………3
1.4 Benefit of learning Python .........................................................................................4
2. DATA TYPES ................................................................................................................5
2.1 Numbers .....................................................................................................................5
2.2 List ..............................................................................................................................7
2.3 Tuples..........................................................................................................................7
2.4 String ..........................................................................................................................8
2.5 Dictionary ...................................................................................................................9
2.6.Set ...............................................................................................................................9
2.7 Booleans .....................................................................................................................9
3. LOOP ............................................................................................................................14
3.1 Introduction ..............................................................................................................14
3.2 While ........................................................................................................................15
3.3 For ............................................................................ Error! Bookmark not defined.
4. Function in Python .......................................................................................................28
REFERENCES .................................................................................................................44
Topic Name B.Tech. 2015-2019

1. INTRODUCTION
Python is a widely used general-purpose, high level programming language. It was
initially designed by Guido van Rossum in 1991 and developed by Python Software
Foundation. It was mainly developed for emphasis on code readability, and its syntax
allows programmers to express concepts in fewer lines of code.

Python is a programming language that lets you work quickly and integrate systems more
efficiently.

There are two major Python versions- Python 2 and Python 3. Both are quite different.

Both Python 2 and 3 have continued to be maintained and developed, with periodic
release updates for both. As of this writing, the most recent versions available are 2.7.15
and 3.6.5. However, an official End Of Life date of January 1, 2020 has been established
for Python 2, after which time it will no longer be maintained. If you are a newcomer to
Python, it is recommended that you focus on Python 3, as this tutorial will do.

Python is still maintained by a core development team at the Institute, and Guido is still in
charge, having been given the title of BDFL (Benevolent Dictator For Life) by the Python
community. The name Python, by the way, derives not from the snake, but from the
British comedy troupe Monty Python’s Flying Circus, of which Guido was, and
presumably still is, a fan. It is common to find references to Monty Python sketches and
movies scattered throughout the Python documentation.

1.1 Features of python


2 1. Readable: Python is a very readable language.
3 2. Easy to Learn: Learning python is easy as this is a expressive and high level
programming language, which means it is easy to understand the language and thus
easy to learn.
4 3. Cross platform: Python is available and can run on various operating systems
such as Mac, Windows, Linux, Unix etc. This makes it a cross platform and portable
language.
5 4. Open Source: Python is a open source programming language.
6 5. Large standard library: Python comes with a large standard library that has
some handy codes and functions which we can use while writing code in Python.
7 6. Free: Python is free to download and use. This means you can download it for
free and use it in your application. See: Open Source Python License. Python is an
example of a FLOSS (Free/Libre Open Source Software), which means you can
freely distribute copies of this software, read its source code and modify it.
8 7. Supports exception handling: If you are new, you may wonder what is an
exception? An exception is an event that can occur during program exception and
can disrupt the normal flow of program. Python supports exception handling which
Topic Name B.Tech. 2015-2019

means we can write less error prone code and can test various scenarios that can
cause an exception later on.
9 8. Advanced features: Supports generators and list comprehensions. We will cover
these features later.
10 9. Automatic memory management: Python supports automatic memory
management which means the memory is cleared and freed automatically. You do
not have to bother clearing the memory.

1.2 Python Language advantages and applications

1) Presence of third-party modules


2) Extensive support libraries(NumPy for numerical calculations, Pandas for data
analytics etc)
3) Open source and community development
4) Easy to learn
5) User-friendly data structures
6) High-level language
7) Dynamically typed language(No need to mention data type based on value assigned, it
takes data type)
8) Object-oriented language
9) Portable and Interactive
10) Portable across Operating systems

Applications :
1) GUI based desktop applications(Games, Scientific Applications)
2) Web frameworks and applications
3) Enterprise and Business applications
4) Operating Systems
5) Language Development
6) Prototyping

Organizations using Python :


1) Google(Components of Google spider and Search Engine)
2) Yahoo(Maps)
3) YouTube
4) Mozilla
5) Dropbox
6) Microsoft
7) Cisco
8) Spotify
9) Quora

1.3 Benefits of Learning Python

There are many benefits of learning Python, especially as your first language, which we will
discuss.
Topic Name B.Tech. 2015-2019

It is a language that is remarkably easy to learn, and it can be used as a stepping stone into other
programming languages and frameworks. If you're an absolute beginner and this is your first
time working with any type of coding language, that's something you definitely want.

Python is widely used, including by a number of big companies like Google, Pinterest, Instagram,
Disney, Yahoo!, Nokia, IBM, and many others. The Raspberry Pi - which is a mini computer and
DIY lover's dream - relies on Python as it's main programming language too. You're probably
wondering why either of these things matter, and that's because once you learn Python, you'll
never have a shortage of ways to utilize the skill. Not to mention, since a lot of big companies
rely on the language, you can make good money as a Python developer.

Other benefits include:

1) Python can be used to develop prototypes, and quickly because it is so easy to work with and
read.

2) Most automation, data mining, and big data platforms rely on Python. This is because it is the
ideal language to work with for general purpose tasks.

3) Python allows for a more productive coding environment than massive languages like C# and
Java. Experienced coders tend to stay more organized and productive when working with
Python, as well.

4) Python is easy to read, even if you're not a skilled programmer. Anyone can begin working
with the language, all it takes is a bit of patience and a lot of practice. Plus, this makes it an ideal
candidate for use among multi-programmer and large development teams.

5) Python powers Django, a complete and open source web application framework. Frameworks
- like Ruby on Rails - can be used to simplify the development process.

6) It has a massive support base thanks to the fact that it is open source and community
developed. Millions of like-minded developers work with the language on a daily basis and
continue to improve core functionality. The latest version of Python continues to receive
enhancements and updates as time progresses. This is a great way to network with other
developers.
Topic Name B.Tech. 2015-2019

2. DATA TYPES
Variables can hold values of different data types. Python is a dynamically typed language
hence we need not define the type of the variable while declaring it. The interpreter
implicitly binds the value with its type.

Python Data Types are used to define the type of a variable. Previously we learned about
statement and comment in Python. If you want then you can find it from Python Comment &
Statement.

Python enables us to check the type of the variable used in the program. Python provides
us the type() function which returns the type of the variable passed.

Consider the following example to define the values of different data types and checking
its type.

2.1 NUMBERS
Python numeric data type is used to hold numeric values like;

1. int – holds signed integers of non-limited length.


2. long- holds long integers(exists in Python 2.x, deprecated in Python 3.x).
3. float- holds floating precision numbers and it’s accurate upto 15 decimal places.
4. complex- holds complex numbers.

In Python we need not to declare datatype while declaring a variable like C or C++. We
can simply just assign values in a variable. But if we want to see what type of numerical
value is it holding right now, we can use type(),

Example:

#create a variable with integer value.


a=100
print("The type of variable having value", a, " is ", type(a))

#create a variable with float value.


b=10.2345
print("The type of variable having value", b, " is ", type(b))

#create a variable with complex value.


c=100+3j
print("The type of variable having value", c, " is ", type(c))
Topic Name B.Tech. 2015-2019

2.2 TUPLE
A tuple in Python is similar to a list. The difference between the two is that we cannot change
the elements of a tuple once it is assigned whereas, in a list, elements can be changed.

Creating a Tuple

A tuple is created by placing all the items (elements) inside parentheses (), separated by
commas. The parentheses are optional, however, it is a good practice to use them.

EXAMPLE;

# Empty tuple

my_tuple = ()

print(my_tuple) # Output: ()

# Tuple having integers

my_tuple = (1, 2, 3)

print(my_tuple) # Output: (1, 2, 3)

# tuple with mixed datatypes

my_tuple = (1, "Hello", 3.4)

print(my_tuple) # Output: (1, "Hello", 3.4)

# nested tuple

my_tuple = ("mouse", [8, 4, 6], (1, 2, 3))

# Output: ("mouse", [8, 4, 6], (1, 2, 3))

print(my_tuple)

2.3 STRING
A string is a sequence of characters.

A character is simply a symbol. For example, the English language has 26 characters.

Computers do not deal with characters, they deal with numbers (binary). Even though you
may see characters on your screen, internally it is stored and manipulated as a
combination of 0's and 1's.
Topic Name B.Tech. 2015-2019

This conversion of character to a number is called encoding, and the reverse process is
decoding. ASCII and Unicode are some of the popular encoding used.

In Python, string is a sequence of Unicode character. Unicode was introduced to include


every character in all languages and bring uniformity in encoding. You can learn more
about Unicode from here.

How to create a string in Python?


Strings can be created by enclosing characters inside a single quote or double quotes.
Even triple quotes can be used in Python but generally used to represent multiline strings
and docstrings

Example:

# all of the following are equivalent

my_string = 'Hello'

print(my_string)

my_string = "Hello"

print(my_string)

my_string = '''Hello'''

print(my_string)

# triple quotes string can extend multiple lines

my_string = """Hello, welcome To the world of Python"""

print(my_string)

OUTPUT:

Hello
Hello
Hello
Hello, welcome to the world of Python

2.4 DICTIONARY
Dictionary in Python is an unordered collection of data values, used to store data values
like a map, which unlike other Data Types that hold only single value as an element,
Dictionary holds key:value pair. Key value is provided in the dictionary to make it more
optimized. Each key-value pair in a Dictionary is separated by a colon :, whereas each
key is separated by a ‘comma’.
Topic Name B.Tech. 2015-2019

A Dictionary in Python works similar to the Dictionary in a real world. Keys of a


Dictionary must be unique and of immutable data type such as Strings, Integers and
tuples, but the key-values can be repeated and be of any type.

Note – Keys in a dictionary doesn’t allows Polymorphism.

Creating a Dictionary

In Python, a Dictionary can be created by placing sequence of elements within curly {}


braces, separated by ‘comma’. Dictionary holds a pair of values, one being the Key and
the other corresponding pair element being its Key:value. Values in a dictionary can be
of any datatype and can be duplicated, whereas keys can’t be repeated and must be
immutable.

Dictionary can also be created by the built-in function dict(). An empty dictionary can be
created by just placing to curly braces{}.

Note – Dictionary keys are case sensitive, same name but different cases of Key will be
treated distinctly.

EXAMPLE:

1. # empty dictionary
2. my_dict = {}
3.
4. # dictionary with integer keys
5. my_dict = {1: 'apple', 2: 'ball'}
6.
7. # dictionary with mixed keys
8. my_dict = {'name': 'John', 1: [2, 4, 3]}
9.
10. # using dict()
11. my_dict = dict({1:'apple', 2:'ball'})
12.
13. # from sequence having each item as a pair
14. my_dict = dict([(1,'apple'), (2,'ball')])

2.5 List
Python offers a range of compound datatypes often referred to as sequences. List is one of
the most frequently used and very versatile datatype used in Python.

How to create a list?


In Python programming, a list is created by placing all the items (elements) inside a
square bracket [ ], separated by commas.
Topic Name B.Tech. 2015-2019

It can have any number of items and they may be of different types (integer, float, string
etc.).

1. # empty list
2. my_list = []
3.
4. # list of integers
5. my_list = [1, 2, 3]
6.
7. # list with mixed datatypes
8. my_list = [1, "Hello", 3.4]

Also, a list can even have another list as an item. This is called nested list.

# nested list
my_list = ["mouse", [8, 4, 6], ['a']]

How to access elements from a list?


There are various ways in which we can access the elements of a list.

List Index

We can use the index operator [] to access an item in a list. Index starts from 0. So, a list
having 5 elements will have index from 0 to 4.

Trying to access an element other that this will raise an IndexError. The index must be
an integer. We can't use float or other types, this will result into TypeError.

Nested list are accessed using nested indexing.

1. my_list = ['p','r','o','b','e']
2. # Output: p
3. print(my_list[0])
4.
5. # Output: o
6. print(my_list[2])
7.
8. # Output: e
9. print(my_list[4])
10.
11. # Error! Only integer can be used for indexing
12. # my_list[4.0]
13.
14. # Nested List
15. n_list = ["Happy", [2,0,1,5]]
16.
17. # Nested indexing
18.
19. # Output: a
20. print(n_list[0][1])
21.
22. # Output: 5
23. print(n_list[1][3])
Topic Name B.Tech. 2015-2019

Negative indexing

Python allows negative indexing for its sequences. The index of -1 refers to the last item,
-2 to the second last item and so on.

1. my_list = ['p','r','o','b','e']
2.
3. # Output: e
4. print(my_list[-1])
5.
6. # Output: p
7. print(my_list[-5])

How to slice lists in Python?


We can access a range of items in a list by using the slicing operator (colon).

1. my_list = ['p','r','o','g','r','a','m','i','z']
2. # elements 3rd to 5th
3. print(my_list[2:5])
4.
5. # elements beginning to 4th
6. print(my_list[:-5])
7.
8. # elements 6th to end
9. print(my_list[5:])
10.
11. # elements beginning to end
12. print(my_list[:])

Slicing can be best visualized by considering the index to be between the elements as
shown below. So if we want to access a range, we need two indices that will slice that
portion from the list.

How to change or add elements to a list?


List are mutable, meaning, their elements can be changed unlike string or tuple.

We can use assignment operator (=) to change an item or a range of items.


Topic Name B.Tech. 2015-2019

1. # mistake values
2. odd = [2, 4, 6, 8]
3.
4. # change the 1st item
5. odd[0] = 1
6.
7. # Output: [1, 4, 6, 8]
8. print(odd)
9.
10. # change 2nd to 4th items
11. odd[1:4] = [3, 5, 7]
12.
13. # Output: [1, 3, 5, 7]
14. print(odd)

We can add one item to a list using append() method or add several items using
extend() method.

1. odd = [1, 3, 5]
2.
3. odd.append(7)
4.
5. # Output: [1, 3, 5, 7]
6. print(odd)
7.
8. odd.extend([9, 11, 13])
9.
10. # Output: [1, 3, 5, 7, 9, 11, 13]
11. print(odd)

We can also use + operator to combine two lists. This is also called concatenation

2.6 SET
A set is an unordered collection of items. Every element is unique (no duplicates) and
must be immutable (which cannot be changed).

However, the set itself is mutable. We can add or remove items from it.

Sets can be used to perform mathematical set operations like union, intersection,
symmetric difference etc.

How to create a set?


A set is created by placing all the items (elements) inside curly braces {}, separated by
comma or by using the built-in function set().

It can have any number of items and they may be of different types (integer, float, tuple,
string etc.). But a set cannot have a mutable element, like list, set or dictionary, as its
element.
Topic Name B.Tech. 2015-2019

# set of integers

my_set = {1, 2, 3}

print(my_set)

# set of mixed datatypes

my_set = {1.0, "Hello", (1, 2, 3)}

print(my_set)

Creating an empty set is a bit tricky.

Empty curly braces {} will make an empty dictionary in Python. To make a set without
any elements we use the set() function without any argument.

# initialize a with {}

a = {}

# check data type of a

# Output: <class 'dict'>

print(type(a))

# initialize a with set()

a = set()

# check data type of a

# Output: <class 'set'>

print(type(a))

2.7 BOOLEANS
bool() parameters
It's not mandatory to pass a value to bool(). If you do not pass a value, bool() returns
False.
Topic Name B.Tech. 2015-2019

In general use, bool() takes a single parameter value.

Return Value from bool()


The bool() returns:

 False if the value is omitted or false


 True if the value is true

The following values are considered false in Python:

 None
 False
 Zero of any numeric type. For example, 0, 0.0, 0j
 Empty sequence. For example, (), [], ''.
 Empty mapping. For example, {}
 objects of Classes which has __bool__() or __len()__ method which returns 0 or
False

All other values except these values are considered true.

test = []

print(test,'is',bool(test))

test = [0]

print(test,'is',bool(test))

test = 0.0

print(test,'is',bool(test))

test = None

print(test,'is',bool(test))

test = True

print(test,'is',bool(test))

test = 'Easy string'

print(test,'is',bool(test))
Topic Name B.Tech. 2015-2019

3. LOOPS
3.1 INTRODUCTION
loops in python
Python programming language provides following types of loops to handle looping
requirements. Python provides three ways for executing the loops. While all the ways
provide similar basic functionality, they differ in their syntax and condition checking
time.

A loop statement allows us to execute a statement or group of statements multiple times.


The following diagram illustrates a loop statement −

Python programming language provides following types of loops to handle looping


requirements.

3.2 WHILE LOOP


In python, while loop is used to execute a block of statements repeatedly until a given a
condition is satisfied. And when the condition becomes false, the line immediately after
the loop in program is executed.
Syntax :

while expression:
statement(s)
Topic Name B.Tech. 2015-2019

All the statements indented by the same number of character spaces after a programming
construct are considered to be part of a single block of code. Python uses indentation as
its method of grouping statements.

number = 5
sum = 0
i = 0

while (i<number):
sum = sum + i
i = i+1

print(sum)

Output:

10

3.3 FOR LOOP


A for loop is used for iterating over a sequence (that is either a list, a tuple, a dictionary, a
set, or a string).

This is less like the for keyword in other programming languages, and works more like an
iterator method as found in other object-orientated programming languages.

With the for loop we can execute a set of statements, once for each item in a list, tuple, set
etc.

Syntax of for Loop


for val in sequence:
Body of for

Here, val is the variable that takes the value of the item inside the sequence on each
iteration.

Loop continues until we reach the last item in the sequence. The body of for loop is
separated from the rest of the code using indentation.
Topic Name B.Tech. 2015-2019

Flowchart of for Loop

Example: Python for Loop

# Program to find the sum of all numbers stored in a list

https://www.programiz.com/python-programming/for-loop

# List of numbers

numbers = [6, 5, 3, 8, 4, 2, 5, 4, 11]

# variable to store the sum

sum = 0

# iterate over the list

for val in numbers:

sum = sum+val

print("The sum is", sum)

# Output: The sum is 48


Topic Name B.Tech. 2015-2019

5. FUNCTION IN PYTHON
In Python, function is a group of related statements that perform a specific task.

Functions help break our program into smaller and modular chunks. As our program
grows larger and larger, functions make it more organized and manageable.

Furthermore, it avoids repetition and makes code reusable.

Syntax of Function
def function_name(parameters):
"""docstring"""
statement(s)

Above shown is a function definition which consists of following components.

1. Keyword def marks the start of function header.


2. A function name to uniquely identify it. Function naming follows the same rules of
writing identifiers in Python.
3. Parameters (arguments) through which we pass values to a function. They are optional.
4. A colon (:) to mark the end of function header.
5. Optional documentation string (docstring) to describe what the function does.
6. One or more valid python statements that make up the function body. Statements must
have same indentation level (usually 4 spaces).
7. An optional return statement to return a value from the function.

Example of a function
def greet(name):

"""This function greets to

the person passed in as

parameter"""

print("Hello, " + name + ". Good morning!")

How to call a function in python?

Once we have defined a function, we can call it from another function, program or even
the Python prompt. To call a function we simply type the function name with appropriate
parameters.

>>> greet('Paul')
Hello, Paul. Good morning!

Docstring
The first string after the function header is called the docstring and is short for
documentation string. It is used to explain in brief, what a function does.
Topic Name B.Tech. 2015-2019

Although optional, documentation is a good programming practice. Unless you can


remember what you had for dinner last week, always document your code.

In the above example, we have a docstring immediately below the function header. We
generally use triple quotes so that docstring can extend up to multiple lines. This string is
available to us as __doc__ attribute of the function.

For example:

Try running the following into the Python shell to see the output.

1. >>> print(greet.__doc__)
2. This function greets to
3. the person passed into the
4. name parameter
5.

The return statement

The return statement is used to exit a function and go back to the place from where it
was called.

Syntax of return
return [expression_list]

This statement can contain expression which gets evaluated and the value is returned. If
there is no expression in the statement or the return statement itself is not present inside
a function, then the function will return the None object.

For example:

1. >>> print(greet("May"))
2. Hello, May. Good morning!
3. None
4.

Here, None is the returned value.

REFERENCES
[1] P. Aldo, Dielectric resonator antennas handbook, Artech House, Boston, London,
2007.
[2] S.A.Long, M.W.McAllister, and L.C.Shen, The resonant cylindrical dielectric
cavity antenna, IEEE Trans Antennas Propag , 31 (1983), 406-412.
Topic Name B.Tech. 2015-2019

[3] P.V.Bijumon, S.K.Menon, M.N.Suma, M.T.Sebastian, and P.Mohanan, Broadband


cylindrical dielectric resonator antenna excited by modified microstrip line,
Electron Lett, 41 (2005), 385-387.
[4] X.S.Fang and K.W.Leung, Designs of single-, dual-, wide band rectangular
dielectric resonator antennas, IEEE Trans Antennas Propag, 59 (2011), 2409-2414.
[5] R.A.Karaneburg, S.A.Long, and J.T.Williams, Coplanar waveguide excitation of
dielectric resonator antenna, IEEE Trans Antennas Propag , 39 (1991), 119-122.
[6] R.Chair, A.A.Kishk, K.F.Lee, and C.E.Smith, Wideband flipped staired pyramid
dielectric resonator antennas, Electron Lett, 40 (2004), 581-582.

You might also like