diff --git a/Page_Template.html b/Page_Template.html new file mode 100755 index 0000000..a93139f --- /dev/null +++ b/Page_Template.html @@ -0,0 +1,126 @@ + + + + + + + + Surya Paruchuri + + + + + + +
+ + + + + + + + + + + +
Home
Publications
Projects
Articles
Blog
Gallery
CV
Resume
+
+ + +
+ + + + + + + + + + + + + + + +
 
Surya Paruchuri
+ Contact Details:
+ Email: surya@umd.edu

+ + + +
+ + +

+ Welcome +

+

+ Hi, I am Surya Paruchuri. I am currently working as an Embedded Engineer with Spirent Communications at + Eatontown NJ. This site for about me and my about projects, notes, articles and some other fun + techincal stuff.

+ + +

+

+ My professional and research interests evolve over time. But mostly my work revolves around: +

+

+

+ Currently I am working on OTFS signal respresentation Systems. +

+ + +
+

News

+ +   + Joined Spirent Communications Inc. as Embedded Engineer in May'18 + +
+ +
+ + + + + + \ No newline at end of file diff --git a/css/print.css b/css/print.css deleted file mode 100755 index 1a44e35..0000000 --- a/css/print.css +++ /dev/null @@ -1,7 +0,0 @@ -/* CSS Document for Print */ - -@import url(http://fonts.googleapis.com/css?family=Open+Sans:300italic,700italic,700,300); - - - - diff --git a/css/screen.css b/css/screen.css index 291651e..e14aa5c 100755 --- a/css/screen.css +++ b/css/screen.css @@ -1,21 +1,386 @@ -/* CSS Document for Screens*/ +/* Main CSS file for my webpage + Author: Surya Paruchuri + (c) Surya Paruchuri - Present. + + A suporting documentation for my fture reference (so I don'table + have to refer back to w3schools.com website repeatedly): + + - Basic CSS: + - Syntax: Selector {Declaration1; Declaration2;} + - Exmple: p { color: red; text-align:center; } + - Comment in a CSS file: use 'C' language multi-line style; + - CSS Styling can be done in EXTERNAL (like this one) or INTERNAL + as in copy paste the entire file in head section or INLINE + within the element attributes. + - NOTE: If multiple style rule-sets are defined for the same + selector, then the latest one will be applied. + - Priority of styling for an Element: + - INLINE + - EXTERNAL and INTERNAL css files + - Browser default + + - Selector informs on which elements of website should the declaration + inside this rule-set be applied on. The selector can be + described in CSS using either of the following approaches + - Name: + - Example: p { color: red; } %%% Comment: here "p" is the + - Id: + - Uses id attribute of an element to delineate the element + - Id must be unique to the element in HTML. + - Syntax: # { Declaration; } + - Ex: #para1 { color: red; } %%% Comment will be applied to + + - Class: + - Applies to all elements of a specific class type. + - Generic Syntax: . { Declaration1; } + - Generic Ex: .center { text-align: center; color:red; } + - Specific Syntax (for only Specific + Elements be affected by a class}: + . { Declaration1; } + - Specific Syntax Ex: p.center { color:red; } + - Note: A HTML Element can be styled using multiple + classes too + - Ex:

Example Para

+ + - Child Selectors: + - provides a way to select elements that fall within one + another, which are done wither as: + - Descendent Selectors + - Applies to anything that falls withing parent + tree's structure. + - Syntax: {} + - Direct child Selectors + - Applies to only those that fall immediately within + the parent's element. + - Syntax: ">" {} + %%% Comment: The above syntax has > in + between Parent and Child_Selector. + + + - Attribute: + + - Grouping multiple Element rule-set with same declarations, they + can be grouped to have a single rule-set applicable for all + instead of multiple ones in CSS file. + - Ex: h1 {color:red; text-align: center; } h2 {color:red; text-align: center; } + Can be written as shown below: + h1,h3 {color:red; text-align: center; } + + - Declaration informs both the property name and value assigned, both + separated by a colon. Multiple Declarations in a rule-set are + separated by a semi-colon; + - Example: color: red; text-align: center; + - NOTE: Never add space between property value and property units + as in "20px" is correct format while "20 px" is incorrect. + + - Some notes on properties for declarations: + - Color property values in Declarations can be defined as + rgb(<0-255>,<0-255>,<0-255>) or hexadecimal values + - border-style property can have values: dotted, dashed, solid, double, + groove, ridge, inset, + - Margins property can be set on all sides independently as shown: + - margin-top, margin-bottom, margin-left, margin-right + - Also a short hand for all margins as: + - "margin: + - units: % as width of container, px, pt, cm etc, + - Padding Property is similar to Margin: + padding-top, padding-bottom,padding-left,padding-right. + - Height and Width: + - height and width of a div can be set. + - Ex: + + Document Version: + - v1.1 + - Updated CSS along with all website files while transitioning to + DOM for website and while adding blog to website +*/ + +/* Import resoures */ @import url(https://fonts.googleapis.com/css?family=Lobster); @import url(https://fonts.googleapis.com/css?family=Arvo:700); -/*global parameters*/ - -body { font-family: "Courier New", Monospace; font-size:16px; font-weight:300; color:#000; margin:2; padding:10} -nav { font-family: 'Arvo', serif; align:"top";} - -#page {max-width: 1500px;} +/* Global links rule-sets */ +html,body +{ + height:100%; + width:100%; +} a {color:#007eff; text-decoration:none;} a:visited{color:#65b1ff;} -/* Specific paramteres */ -body div.section-headings {margin: 0 0 1.5em 0; font-family: 'Lobster', cursive; font-size: 1.0em; font-weight:700; } -body div.content-news {margin: 0 0 0 0; font-size:0.8em; font-weight:700;} -body div.publications {font-size:0.8em;} -body div.project {font-size:0.8em; font-weight:bold;} \ No newline at end of file +/* Generic Settings CSS */ +p.sectionHeadings +{ + margin: 0 0 1.5em 0; + font-family: 'Lobster', cursive; + font-size: 1.0em; + font-weight:bold; + text-align:center; +} + +p.content +{ + text-align:left; +} + +p.indexContent +{ + text-align:center; +} + +body button.button +{ + font-size: 12px; + border-radius: 3px; + transition-duration: 0.4s; + background-color: white; + color: grey; + border: 2px solid #E6E6FA; +} + +body button:hover { + background-color: white; + color: black; +} + +footer +{ + height:5%; + width:85%; + float:right; + border:0; + vertical-align:bottom; + text-align:center; + color: grey; + text-shadow: 0px 0px grey; + font-size:16px; + font-weight:300; + z-index:2; + position:relative; +} + + +/* Navigation rule-sets */ +body div.LeftNavBar +{ + position:fixed; + z-index:1; + float:left; + width: 15%; + height:100%; + background-color:#E6E6FA; + font-family: 'Arvo',serif; + text-align:left; + vertical-align: center; + padding: 0% 0% 0% 2%; + border-radius:5px; + font-size:14px; + font-weight:200; + margin: 0% 0% 0% 0%; +} + +body table.leftNavTable +{ + width:100%; + border:0; + vertical-align:center; + text-align:left; + font-size:14px; + font-weight:200; + margin: 0% 0% 0% 0%; + padding: 10% 0% 0% 0%; +} + +body tr.leftNavDataCell +{ + margin: 0% 0% 0% 0%; +} + +/* Right Content DOM CSS */ +body div.ContentDiv +{ + z-index:1; + float:Right; + width: 80%; + height:100%; + background-color:#FFFFFF; + font-family: "Courier New", Monospace; + text-align:center; + vertical-align:center; + font-size:16px; + font-weight:300; + position:relative; + margin: 2% 0% 0% 0%; +} + +/* Home Page CSS */ +body table.homeContactTable +{ + position:relative; + height:20%; + width:40%; + border:0; + vertical-align:bottom; + text-align:left; + font-size:16px; + font-weight:300; + margin: 0% 0% 0% 0%; +} +body table.homeContactTable td +{ + height: 2.5%; + text-align:center; +} + +body div.news +{ + text-align:left; + padding: 2% 0% 0% 0%; +} +body ul.researchIntersts +{ + text-align:left; + font-size:16px; + font-weight:300; +} + +/* pulications Page CSS */ +body ul.publications +{ + text-align:left; + font-size:16px; + font-weight:300; + text-align:left; +} +body div.publicationsContainer +{ + padding: 2% 2% 0% 0%; +} +/* Projects Page CSS */ +body table.projects +{ + padding: 2% 2% 0% 0%; +} +body div.projectsTypeContainer +{ + text-align:left; + font-size:16px; + font-weight:300; + text-align:left; + padding: 2% 2% 0% 0%; +} + +/* Articles Page CSS */ +body div.articlesTypeContainer +{ + text-align:left; + font-size:16px; + font-weight:300; + text-align:left; + padding: 2% 2% 0% 0%; +} +body ul.articlesList +{ + text-align:left; + font-size:16px; + font-weight:300; + text-align:left; +} + +/* Gallery Page CSS */ +body div.galleryContainer +{ + text-align:left; + font-size:16px; + font-weight:300; + text-align:left; + padding: 2% 2% 0% 0%; +} + +/* Blog Specific CSS */ +body div.blogContainer +{ + text-align:left; + font-size:16px; + font-weight:300; + text-align:left; + padding: 2% 2% 0% 0%; +} + +body div.blogNavigation +{ + width:100%; + float:center; +} +body table.blogNavigationTable +{ + width:100%; + float:center; +} +body table.blogNavigationTable td +{ + width:33%; + float:center; + text-align:center; +} + +body p.blogTitle +{ + font-family: "Courier New", Monospace; + text-align:center; + font-size:18px; + font-weight:bold; + text-decoration: underline; +} + +body p.blogSection +{ + font-family: "Courier New", Monospace; + text-align:left; + font-size:18px; + text-decoration: underline; +} + +body p.blogSubsection +{ + font-family: "Courier New", Monospace; + text-align:left; + font-size:14px; + font-weight:bold; + text-decoration: underline; +} + +body p.blogContent +{ + font-size:14px; +} + +body p.blogComment +{ + border:1; + vertical-align:bottom; + text-align:right; + color: grey; + text-shadow: 0px 0px grey; + font-size:14px; + font-weight:300; + position:relative; + font-style: italic; +} + +body p.blogTimestamp +{ + border:1; + vertical-align:bottom; + text-align:right; + color: grey; + text-shadow: 0px 0px grey; + font-size:12px; + font-weight:300; + position:relative; + font-style: italic; +} +/* ------ END of CSS ------ */ \ No newline at end of file diff --git a/index.html b/index.html index cd9bb47..dfa35fd 100755 --- a/index.html +++ b/index.html @@ -1,82 +1,67 @@ - - - - - - - - - - - Surya Paruchuri + + + + + + + + Surya Paruchuri + + - - + + + + - - - - - -
- - -
- - -
+ +
+ + + + + + + + + + + + + + + +
 
Surya Paruchuri
+ Contact Details:
+ Email: surya@umd.edu

+ + + +
-
- -
-   - Joined Spirent Communications Inc. as Embedded Engineer in May'18 - - - - - - - + +

+ Welcome +

+

+ Hi, I am Surya Paruchuri. I am currently working as an Embedded Engineer with Spirent Communications at + Eatontown NJ. This site for about me and my about projects, notes, articles and some other fun + techincal stuff.

-

-
-
- - -
- - - -
  - Surya Teja Paruchuri
- Email: surya@umd.edu
-
-
- Welcome -
- - - Thank you for your interest. I am currently working as an Embedded Engineer at + +

+

+ My professional and research interests evolve over time. But mostly my work revolves around: +

    +
  • Signal Processing Systems
  • +
  • Communications Systems & Information representation
  • +
  • Neuroscience, Cognitive Systems
  • +
  • Applied Mathematics & Engineering
-
- - -
-
-
- - - -

- © SuryaParuchuri,2018 -
+

+

+ Currently I am working on OTFS signal respresentation Systems. +

+ + + +
+ + +
+

+ © SuryaParuchuri, . + Page updated on + + + + +

+
+ - - - - + \ No newline at end of file diff --git a/javascript/BlogMain.js b/javascript/BlogMain.js new file mode 100755 index 0000000..23d3481 --- /dev/null +++ b/javascript/BlogMain.js @@ -0,0 +1,454 @@ +/* ============================================= + Blog Main Page Javascript + + Author: Surya Paruchuri. + Email: surya@umd.edu + Date: Jul 28 2019. + (C) Copyright Surya Paruchuri. 2019 - Present. + ============================================= */ + +// Disable console logs for deployment. +var DEBUG = false; // false: Disable; true: Enable. +if (!DEBUG) +{ + console.log = function() {}; +} + +console.log(" -- This is from Blog Main script -- "); + +// call init function afte page loads; +window.onload = init; +document.onload = renderAgain; + +// ============================================= +// VARIABLES +// ============================================= +// Global Variables; +var m_isDisplayedPostLatest; // Is the current displayed post latest one. +var m_currDisplayedPostIndex; // current displayed post index. +var m_currDisplayedPostURL; // current displayed post's URL. +var m_postList; // Oroganized list of all Posts (after Parsing the JSON File). +var m_rootBlogDir; // Root dir string of the webpage (used to construct URLs). +var m_newerPostURL; // Newer post's URL (If already displaying latest post, then null). +var m_newerPostIndex; // Newer post's index. +var m_isNewerPostAvailable; // Flag to indicate if an newer post is available or not. +var m_olderPostURL; // Older post's URL (If already displaying latest post, then null). +var m_olderPostIndex; // Older post's index (If already displaying latest post, then null). +var m_isOlderPostAvailable; // Flag to indicate if older post than current one is available. +var m_postsListJSONFilePath; // Posts List JSON file (fully descriptive path). +var m_LatestXMLHTTPRequestData; // Latest XML HTTP Request data returned by server; +var m_LatestXMLHTTPRequestJSON; // Latest XML HTTP Request data returned and parsed for JSON data. + +// ============================================== +// COMMUNICATION Functions +// ============================================== +/* GetFileFromServer(): + Description: + This function fetches HTML/JSON fileCreatedDate + from the server when the url represents the path of + the resource relative to Webpage root directory + Parameters: + url: url of the resource requesting wrt webpage root. + Return: + Nothing. +*/ +function GetFileFromServer(url,callback, isResultJSON) +{ + console.log(" -- GetFileFromServer(): -- "); + console.log(" -- File: -- " + url); + var result = null; + var xmlHttp = new XMLHttpRequest(); + + xmlHttp.onreadystatechange = function() { + console.log(" -- onreadystatechange() -- "); + if (xmlHttp.readyState == 4) + console.log(" -- ready Status -- "); + if (xmlHttp.status == 200){ + console.log(" -- status: 200 -- "); + if (isResultJSON == true){ + if (isValidJSON(xmlHttp.responseText) == true){ + m_LatestXMLHTTPRequestData = xmlHttp.responseText; + callback(); + } + } + else{ + m_LatestXMLHTTPRequestData = xmlHttp.responseText; + callback(); + } + } + if (xmlHttp.status == 404){ + console.log(" -- status:404 -- "); + m_LatestXMLHTTPRequestData = "

Page Not found.

"; + } + } + xmlHttp.open("GET", url, true); // true for asynchronous; + xmlHttp.send(); +} + +// ============================================= +// CONTENT REQUEST HANDLERS +// ============================================= +/* DisplayPostByIndex() + Description: + Display Post with the requested index as seen + in the organized posts list. Additionally updates + the prev and next indices accordingly. + Parameters: + index: indx of the Post in the list. + Return: + None: +*/ +function DisplayPostByIndex(index) +{ + console.log(" -- DisplayPostByIndex -- "); + + // error checks + if ((index > (m_postList.length-1)) || (index < 0)) + { + alert("Invalid index requested."); + } + + // callBack function to update DOM with response data. + var cbDisplayCallBack = function(){ + console.log(" -- cbDisplayCallBack -- "); + var postElement = document.getElementById("blogContent"); + postElement.innerHTML = m_LatestXMLHTTPRequestData; + // render Again + renderAgain(); + // update navigation controls. + updateNavgControls(); + } + + var url = m_rootBlogDir + m_postList[index].path + m_postList[index].page; + console.log("url:" + url); + GetFileFromServer(url,cbDisplayCallBack,false); + + // Render the Newer post. + console.log("New Post displayed. renderAgain will be called"); + renderAgain(); + + /* Update m_currDisplayedPostIndex + to reflect that this page is requested. + This, shall be used later on to update controls. + */ + m_currDisplayedPostIndex = index; +} + +// ============================================= +// BLOG NAVIGATION +// ============================================= +/* displayOlderPost(): + Description: + displays first older post wrt. current displayed + post. + Parameters: + None. + Return: + None. +*/ +function displayOlderPost() +{ + console.log(" -- displayOlderPost -- "); + if (m_isOlderPostAvailable != false && m_olderPostIndex != null + && m_olderPostIndex != undefined && m_olderPostIndex >= 0) + { + DisplayPostByIndex(m_olderPostIndex); + } + else + { + alert("Apologies, this is the oldest post on the blog. \ + Looks like there is a bug in the program, as\ + older button should have been disabled when \ + displaying current post."); + } +} + +/* displayNewerPost + Description: + displays the first latest post wrt current displayed + post. + Parameters: + None. + Return: + None. +*/ +function displayNewerPost() +{ + console.log(" -- displayNewerPost -- "); + if (m_isNewerPostAvailable != false && m_newerPostIndex != null + && m_newerPostIndex != undefined && m_isNewerPostAvailable < m_postList.length) + { + DisplayPostByIndex(m_newerPostIndex); + } + else + { + alert("Apologies, this is the latest post on the blog. \ + Looks like there is a bug in the program, as\ + newer button should have been disabled when \ + displaying current post."); + } +} + +/* displayIndex() + Description: + displays a list of all posts as index of the blog. + Parameters: + None. + Return: + None. +*/ +function displayIndex() +{ + console.log("display Index"); + + // Disable the prev and next buttons. + // Newer Buttons. + var PrevNextElements = document.getElementsByClassName('blogNavNewerPost'); + for (i=0; i '; + indexHTMLStr = indexHTMLStr + m_postList[i].PostHeading; + indexHTMLStr = indexHTMLStr + '' + '
'; + } + indexHTMLStr = indexHTMLStr + '

'; + + // Update DOM; + var contentElement = document.getElementById("blogContent"); + contentElement.innerHTML = indexHTMLStr; +} + +/* displaySelectedPost(): + Description: + callback from the button clicks from index page. + Parameters: + index: post index selected by User + Return: + None +*/ +function displaySelectedPost(index) +{ + console.log("displaySelectedPost"); + + // call DisplayPostByIndex to display + // the requested Post and render it. + DisplayPostByIndex(index); + renderAgain(); +} + +/* updateNavgControls() + Description: + Updates the older and newer posts indices accordingly + and either hides/sets the Older and /newer Buttons to + be visible to user to navigate the blog. + Parameters: + None + Return: + None +*/ +function updateNavgControls() +{ + console.log(" -- updateNavgControls -- "); + + // Update the posts state info. + index = m_currDisplayedPostIndex; + if (index == 0){ + m_isDisplayedPostLatest = true; + // Only a single post on Blog case. + if (m_postList.length <= 1){ + m_isOlderPostAvailable = false; + m_olderPostIndex = null; + } + else{ + m_isOlderPostAvailable = true; + m_olderPostIndex = index + 1; + } + // Since it is latest post diable Newer Post Option. + m_isNewerPostAvailable = false; + m_newerPostIndex = null; + } + else + { + m_isNewerPostAvailable = true; + m_newerPostIndex = index - 1; + // Check if at last post. + if (index == (m_postList.length -1)) + { + m_isOlderPostAvailable = false; + m_olderPostIndex = null; + } + else{ + m_isOlderPostAvailable = true; + m_olderPostIndex = index + 1; + } + } + + // Set Newer Buttons visibility. + var ele = document.getElementsByClassName("blogNavNewerPost"); + for (var i = 0; i < ele.length; i++) + { + if (m_isNewerPostAvailable == true) { + ele[i].style.visibility = 'visible'; + } + else { + ele[i].style.visibility = 'hidden'; + } + } + + // Set Older Buttons visibility. + var ele = document.getElementsByClassName("blogNavOlderPost"); + for (var i = 0; i < ele.length; i++) + { + if (m_isOlderPostAvailable == true) { + ele[i].style.visibility = 'visible'; + } + else { + ele[i].style.visibility = 'hidden'; + } + } + + // Set Index Button to visible. + var ele = document.getElementsByClassName("blogNavIndex"); + for (var i = 0; i < ele.length; i++) + { + ele[i].style.visibility = 'visible' + } +} + + +// ============================================= +// BLOG INIT Functions +// ============================================= +/* init(): + Description: + Initialization function called upon + when page loading is complete. + Parameters: + None + Result: + None +*/ +function init() +{ + console.log("-- init() -- "); + + // initialize the global variables + m_isDisplayedPostLatest = false; + m_currDisplayedPostIndex = null; + m_currDisplayedPostURL = null; + m_postList = null; + m_rootBlogDir = "../techBlog/"; + m_newerPostURL = null; + m_newerPostIndex = null; + m_olderPostURL = null; + m_olderPostIndex = null; + m_isOlderPostAvailable = false; + m_isNewerPostAvailable = false; + m_LatestXMLHTTPRequestData = null; + m_LatestXMLHTTPRequestJSON = null; + m_postsListJSONFilePath = m_rootBlogDir + "PostsList.json" + + // construct organized PostsLists + constructPostsList(); +} + +/* constructPostsList(): + Description: + fetches the JSON file data from server and constructs the + an ordered Posts list with the Oldest post one indexed as 0; + Parameters: + None + Return: + None +*/ +function constructPostsList() +{ + console.log(" -- constructPostsList -- "); + + // callBack Function called after fetching JSON file. + var cbConstructPostsList = function() { + console.log(" -- cbConstructPostsList -- "); + m_LatestXMLHTTPRequestJSON = JSON.parse(m_LatestXMLHTTPRequestData); + m_postList = m_LatestXMLHTTPRequestJSON["list"]; + + /* Order posts in chronologically descending order + Meaning: Latest Post indexed as 0 and Oldest as + (m_postList.length-1). */ + var cmpListfunction = function(a,b){ + var a_dir = a.path.split("\/"); + var b_dir = b.path.split("\/"); + var a_int = parseInt(a_dir[0]); + var b_int = parseInt(b_dir[0]); + return b_int - a_int; + } + m_postList.sort(cmpListfunction); + // Display latest Post by default. + DisplayPostByIndex(0); // 0 --> Latest Post, after Descending sort; + } + + // Request JSON File from server. + GetFileFromServer(m_postsListJSONFilePath,cbConstructPostsList,true); +} + +// ============================================= +// UTILITY Functions +// ============================================= +/* isValidJSON(): + Description: + Checks if the string is a vlid JSON + string + Parameters: + str string to verify if in JSON format. + Return: + true for Valid JSON; else false; +*/ +function isValidJSON(str) +{ + try { + JSON.parse(str); + return true; + } + catch (e){ + return false; + } + return false; +} + +/* renderAgain(): + Description: + Function queues Typset request to MathJax queues + to re-render/Typeset the euations again. + Parameters: + None + Return: + None +*/ +function renderAgain() +{ + console.log(" -- renderAgain -- "); + + /* Rerender by calling Typset() on a specific DOM-"blogContent". + To do this in async way - as MathJax might be currently + rendering a page- addEventListener it to MathJax's Job Queue.; + */ + MathJax.Hub.Queue(["Typeset",MathJax.Hub,"blogContent"]); +} \ No newline at end of file diff --git a/pages/Articles.html b/pages/Articles.html index db6f6eb..5608d82 100755 --- a/pages/Articles.html +++ b/pages/Articles.html @@ -1,87 +1,91 @@ - + - + + + + + + Surya Paruchuri + + - - - - - - - Surya Paruchuri - - - + + + + - - - - + +
+ +
+

Articles

+
    +
  • Spectrum Efficiency: Using Full Duplex Techniques and Cognitive Radios can be found + here +
  • +
  • A Brief Note on Bluetooth Technology detailing basic concepts can be found + here +
  • +
  • A brief survey paper on WSN usuage for flood detection and forecasting can be found + here +
  • +
+
-
- - -
- - -
+ -
-
Articles
-
    - -
  • Spectrum Efficiency: Using Full Duplex Techniques and Cognitive Radios can be found - here -
  • -
  • A Brief Note on Bluetooth Technology detailing basic concepts can be found - here -
  • -
  • A brief survey paper on WSN usuage for flood detection and forecasting can be found - here -
  • -
-


Some Useful Notes
-
    -
  • Notes on 802.11: from ENTS689 Lectures at University of Maryland, College Park. - here . -
  • -
  • Notes on Digital Communications from NPTEL lectures. - here . -
  • - -
+ +
+

Misc.

+
    +
  • History of ECE Department, university of Maryland as described a professor. + here . +
  • +
+
-


Misc.(Fun Facts)
-
    -
  • History of ECE Department, university of Maryland as described a professor. - here . -
  • + + + +
    +

    + © SuryaParuchuri, . + Page updated on -

-
- - -
-
-
- © SuryaParuchuri,2018 + + + +

-
+ - - - - + \ No newline at end of file diff --git a/pages/Bio.html b/pages/Bio.html new file mode 100755 index 0000000..8fbba6a --- /dev/null +++ b/pages/Bio.html @@ -0,0 +1,82 @@ + + + + + + + + Surya Paruchuri + + + + + + + + + +
+
+

+ + + + + + + + + +

+ + +
+ +
+
+
+ + +
+

+ © SuryaParuchuri, . + Page updated on + + + + +

+
+ + + \ No newline at end of file diff --git a/pages/Blog.html b/pages/Blog.html new file mode 100755 index 0000000..e4df53d --- /dev/null +++ b/pages/Blog.html @@ -0,0 +1,94 @@ + + + + + + + + + + + Surya Paruchuri + + + + + + + + + +
+ + + + +
+

My Professional Blog

+ + +
+ + + + + + + + +
+
+ + +
+ +
+ + +
+ + + + + + + + +
+
+ +
+
+ + +
+

+ © SuryaParuchuri, . + Page updated on + + + + +

+
+ + + \ No newline at end of file diff --git a/pages/Contact.html b/pages/Contact.html deleted file mode 100755 index a16cde5..0000000 --- a/pages/Contact.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - Surya Paruchuri - - - - - - - - - -
- - -
- - -
- -
-
- Contact:
- Surya Teja Paruchuri
- email:surya at umd dot edu
- - - -
- - -
-
-
- © SuryaParuchuri,2018 -
-
- - - - - diff --git a/pages/Gallery.html b/pages/Gallery.html index 283d3cd..a546860 100755 --- a/pages/Gallery.html +++ b/pages/Gallery.html @@ -1,59 +1,56 @@ - - - - - - - - - - - Surya Paruchuri + + + + + + + + Surya Paruchuri + + - - + + + + - - - - - -
- - -
- - -
- -
-
- coming soon, + +
+
+

Gallery

+

coming soon..,

-
- - -
-
-
- © SuryaParuchuri,2018 -
+ + +
+

+ © SuryaParuchuri, . + Page updated on + + + + +

+
+ - - - - + \ No newline at end of file diff --git a/pages/Projects.html b/pages/Projects.html index ab76085..e6ef7f4 100755 --- a/pages/Projects.html +++ b/pages/Projects.html @@ -1,175 +1,185 @@ - + - + + + + + + Surya Paruchuri + + - - - - - - - Surya Paruchuri - - - + + + + + +
- - - - -
- - -
- - -
- -
- Please contact me for the codes and reports regarding the projects.

- -
Professional Projects
-
- - - - - - - - - - - - - - -
- 6LoWPAN based Cyber Physical System for remote health monitoring, Indian Institute of Science - June,2014 - May, 2015.
- Radar Target Simulator, Defence Research & Development Organization. - January - May,2014.
+ +
+

Professional Projects

+ + + + + + + + + + + + + + + + + + +
+ + 6LoWPAN based Cyber Physical System for remote health monitoring + IISc, Bengaluru June'14 - May'15.
+ + Radar Target Simulator + DRDO, Bengaluru Jan - May'14.
- -


Academic projects
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Extending Texas Instruments RTOS ,University of Maryland - April, 2017.
- RTOS Scheduler Simulations ,University of Maryland - March, 2017.
- CD2DAT Application,University of Maryland - February, 2017.
- Modelled LTE Downlink system with Rayleigh fading channel,University of Maryland - April, 2016.
- UDP based Network Application, University of Maryland - November, 2015.
- AWS/PCS System Deployment, University of Maryland - October - December, 2015.
- A Number Plate Recognition Algorithm, VIT University - March - May, 2013.
- Supression of non-stationary noise in voice signals using kalaman filter, - VIT University - July - October, 2012.
- Designing a DualBand Wilkinson Power Divider, VIT University - March - April, 2013.
- Designing a rectangular Patch Antenna, VIT University - October - November, 2012.
- System-on-Chip Design of Frequency Translation Circuit, VIT University - May - June, 2012.
+ + +
+

Academic Projects

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + Extending Texas Instruments RTOS + UMD April, 2017.
+ + RTOS Scheduler Simulations + UMD March, 2017.
+ + CD2DAT Application + UMD February, 2017.
+ + Modelled LTE Downlink system with Rayleigh fading channel + UMD April, 2016.
+ + UDP based Network Application + UMD November, 2015.
+ + AWS/PCS System Deployment + UMD October - December, 2015.
+ + A Number Plate Recognition Algorithm + VIT March - May, 2013.
+ + Supression of non-stationary noise in voice signals using kalaman filter + VIT July - October, 2012.
+ + Designing a DualBand Wilkinson Power Divider + VIT March - April, 2013.
+ + Designing a rectangular Patch Antenna + VIT October - November, 2012.
+ + System-on-Chip Design of Frequency Translation Circuit + VIT May - June, 2012.
- - -
- - -
-
-
- © SuryaParuchuri,2018 -
+
+ + +
+

+ © SuryaParuchuri, . + Page updated on + + + + +

+
+ - - - - + \ No newline at end of file diff --git a/pages/Publications.html b/pages/Publications.html index f01dfd3..1d8d917 100755 --- a/pages/Publications.html +++ b/pages/Publications.html @@ -1,83 +1,79 @@ - + - + + + + + + Surya Paruchuri + + - - - - - - - Surya Paruchuri - - - + + + + - - - - - -
- - -
- - -
- -
-
Publications
-
-
    + +
    +
    +

    Publications

    +
      + +
    • E. E. Tsiropoulou, A. Thanou, S.T. Paruchuri, and S. Papavassiliou, "Self-Organizing Museum + Visitor Communities: A Participatory Action Research based Approach",The 12th International Workshop + on Semantic and Social Media Adaptation and Personalization (SMAP 2017),Bratislava, Slovakia, July, 2017. + here +

    • -
    • E. E. Tsiropoulou, A. Thanou, S.T. Paruchuri, and S. Papavassiliou, "Self-Organizing Museum - Visitor Communities: A Participatory Action Research based Approach",The 12th International Workshop - on Semantic and Social Media Adaptation and Personalization (SMAP 2017),Bratislava, Slovakia, July, 2017. - here -

    • - - -
    • E. E. Tsiropoulou, S.T. Paruchuri, and J.S. Baras, "Interest, Energy and Physical-Aware - Colaition formation and Resource Allocation in Smrt IoT Applications",51st Conference on Information - Sciences and Systems (CISS 2017),Johns Hopkins University, Baltimore, MD, March, 2017. - here -

    • - -
    • H. Dagale, S. V. R. Anand, M. Hegde, N. Purohit, M. K. Supreeth, G. S. Gill, - V. Ramya, A. Shastry, S. Narasimman, Y. S. Lohith, and P. Surya, " CyPhyS+: A - Reliable and Managed Cyber-Physical System for Old-Age Home Healthcare over a - 6LoWPAN Using Wearable Motes ",2015 IEEE International Conference on Services Computing (SCC), - New York, June, 2015, pp. 309 - 316. - here -
    • -
        -
    -
    +
  • E. E. Tsiropoulou, S.T. Paruchuri, and J.S. Baras, "Interest, Energy and Physical-Aware + Colaition formation and Resource Allocation in Smrt IoT Applications",51st Conference on Information + Sciences and Systems (CISS 2017),Johns Hopkins University, Baltimore, MD, March, 2017. + here +

  • - -
    -
-
- © SuryaParuchuri,2018 -
+
  • H. Dagale, S. V. R. Anand, M. Hegde, N. Purohit, M. K. Supreeth, G. S. Gill, + V. Ramya, A. Shastry, S. Narasimman, Y. S. Lohith, and P. Surya, " CyPhyS+: A + Reliable and Managed Cyber-Physical System for Old-Age Home Healthcare over a + 6LoWPAN Using Wearable Motes ",2015 IEEE International Conference on Services Computing (SCC), + New York, June, 2015, pp. 309 - 316. + here +
  • + + +
    + + +
    +

    + © SuryaParuchuri, . + Page updated on + + + + +

    +
    + - - - - + \ No newline at end of file diff --git a/pages/Research.html b/pages/Research.html deleted file mode 100755 index d8745c8..0000000 --- a/pages/Research.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - - - - - Surya Paruchuri - - - - - - - - - -
    - - -
    - - -
    - -
    -
    -
    Research and Professional Interests:
    -

    My research interests evolve with time and broadly lie at the intersection of three domains: - Signal Processing and Applications, Communication Systems & Networks, and Artificial Intellignece - and learning systems.

    - - I am also picking up on my long held interest in Signal Processing applications for neuroscience - and recently Electric Circuits (Thanks to my experience at Skylark Wireless) to explore the depths - of my brain.

    - - Lastly, I am always interested in sustainable technologies, and applied engineering. -

    -
    - - -
    -
    -
    - © SuryaParuchuri,2018 -
    -
    - - - - - diff --git a/techBlog/1/welcome.html b/techBlog/1/welcome.html new file mode 100755 index 0000000..902d0e3 --- /dev/null +++ b/techBlog/1/welcome.html @@ -0,0 +1,27 @@ +

    Welcome to my Blog!

    +

    Welcome Message

    +

    +Hi! After 3 full weekends of efforts, I am successful in creating +a custom blog for myself that renders LaTEX based mathematical +equations. Primarily on this blog I want to share all interesting +things I come across in my preofessional and research career. In +addition, I shall be able to share my opinions, all thanks to +extra time freed from having to maintain my previous wordpress blog. +

    + +

    MathJax Based Rendering - Love it!

    +

    +Want to chekc out how good Math Rendering works on my blog? Check out +the famous Einstein's equation refer as a reference (see below). In +case if anyone is intersted to know, I am using American Mathematical +Society sponsored MathJax +scripts through content delivery network. + +$$ E=MC^{2}$$ + +Lastly, if some finds my blog tmeplate useful, please feel to use +it. As a FOSS supporter, I lay no restrictions on usage, although a +link pointing back to my website/template would be much appreciated. + +

    +

    Friday August 02 2019

    diff --git a/techBlog/2/phaseOfNSinusoids.html b/techBlog/2/phaseOfNSinusoids.html new file mode 100755 index 0000000..7096787 --- /dev/null +++ b/techBlog/2/phaseOfNSinusoids.html @@ -0,0 +1,34 @@ +

    Phase of N phase shifted sinusoids

    +

    + Last week while working through a problem, I came across + a unique behaviour while working with addition of tones + (these are not harmonics ) with different phase shift.

    + + To give a brief description, I was adding tones + (exponential – so the signal had both in-phase and + quadrature phase components) – each with different phase + offset. The end goal was to find the change in angle/phase + of product of summation of tones and a reference signal + with respect to reference signal.

    + + During the experiment, my observations showed that the net + angle/phase deviation from the original was the average of + the phase deviation of the tones being added. Puzzled by + the observations, I resorted to a quick MATLAB simulation + to confirm this. My MATLAB model’s results matched with my + observations. But I am still puzzled about the outcome. + I need to investigate this at some point as this seems to + be a quite interesting problem.

    + + In this context, I found that in general the following + equation holds true: + + $$ tan^{-1}\lbrace\dfrac{sin \alpha_1 + sin \alpha_2 + \dots } + {cos \alpha_1 + cos \alpha_2 + \dots }\rbrace = \dfrac{\sum_i \alpha_i}{n}$$ +

    +

    Friday August 02 2019

    +

    +Note: this post was originally posted on my wordpress based +blog on September 23 2018. This was later moved to this +custom blog on the above date. +

    \ No newline at end of file diff --git a/techBlog/PostsList.json b/techBlog/PostsList.json new file mode 100755 index 0000000..e066cd7 --- /dev/null +++ b/techBlog/PostsList.json @@ -0,0 +1,7 @@ +{ + "list": + [ + {"PostHeading":"Welcome to my blog!", "page":"welcome.html", "path":"1/"}, + {"PostHeading":"phase Of N Sinusoids", "page":"phaseOfNSinusoids.html", "path":"2/"} + ] +} \ No newline at end of file