====== Class plans ======
===== Recurring procedures =====
==== After class: post next week's a self-assessment quiz on the Teams channel ====
When creating the SAQ in Forms...
* in settings, select "anyone in my org" and both options underneath it
* in "Responses" tab:
* Open in excel (to download data, which enables...)
* in "..." just above download button, click "Delete all data"
* answer in the affirmative
In Teams...
* delete the previous week's SAQ from the Teams > General tabs bar
* click "+" on the Teams > General tabs bar
* choose "Forms" > Add an existing form > choose appropriate form
* select "collect responses" in the drop-down
* deselect "post to channel" if not wanted
* click "Save"
Review the aggregate scores in Forms webapp
==== After class: post next week's assignment with attachment ====
In Teams...
* click Assignments
* click Create
* title = week number + topic description
* instructions = what to do
* check assigned to whole class
* set due date 23:30 following Friday
* click "Assign"
==== flip ====
plan
* tools
* strategies
* learning outcomes
* what do students need to do to achieve the outcomes
* student’s learning activities => creating meaning and subsequent understanding
* correct learning environment => students empowered to take ownership of their learning => engaged students =. active, ‘producing’ students
self-prep
* video
* immediate check
* quiz, project, try-it-yourself with additional twists
* low-level learning outcomes
* how to make the parts work
* scenarioS with worked step-by-step solutions
class: problem solving, creating, critiquing, and synthesizing; students are working together and solving problems
* mini-lectures where appropriate
* workshop
* collaborative project
* quiz-swap-check
* student-led activities
* worksheet
* problem solving
* reflective writing
* high-level learning outcomes
* how to combine and/or apply the parts to situations or problems
* mini projects involving multiple tools
* reflective writing or content creation to summarise learning
* scenario using same steps as prep, but no explicit steps provided
* Scenarios asking which tools would be applied but no actual follow through needed
[[https://www.researchgate.net/profile/Barry_Ryan/publication/269584315_Flipping_Over_Student-Centred_Learning_and_Assessment/links/583d994408ae61f75dc468e9/Flipping-Over-Student-Centred-Learning-and-Assessment.pdf?origin=publication_detail]]
===== Week 01 E-mail =====
slides: {{IL-01.pdf}}
presentation of IL
presentation of course web site
course requirement: initiative and autonomy
* use all available resources to research information you need to pass the class
* course web site, encyclopedias (wikipedia), online search engines (blogs, tutorials, etc.)
learning strategy
* get a notebook for writing down useful information, URLs, etc.
* use your laptop if you have to, but you will learn better if you write by hand
* write down anything useful I present using slides, or as verbal comments, in-class
* there is no guarantee that the same information is written down elsewhere
presentation of e-mail
* brief explanation of parts and netiquette
**exercise**
* reply to the {{01-example-email.txt|e-mail}} that Mr. Katsuma sent to you
* follow the {{01-example-email-attachment.txt|instructions}} that were attached to that e-mail
* if you have questions
* discuss with the person sitting next to you
* if both of you are stuck, raise your hand and ask an instructor for help
-15 minutes: presentation of continuation exercise
* ask the person next to you for their ID or e-mail address
* do the "further practice" assignment on the course web site with them
* help your partner to write better e-mails
* keep practicing until your e-mails are perfect
-10 minutes: presentation of next week's class and ongoing model of learning
* read the online material on the course web site
* complete the online proficiency check questionnaire
* perform your own research to fill in any gaps in your knowledge
* make a note of any good sources of information you come across
* do the self-preparation exercise //before// class
* **make sure you understand the material before coming to class**
* there will be very little time for review in the class
* when arriving for class next week, choose a seat according to your comfort with the material
* sit near the //front// if you are //not// comfortable with the material
* sit near the //back// if you are //very// comfortable with the material
* do the in-class exercise in class (duh)
===== Week 02 Word =====
review of self-preparation exercise
* expected result
review of self-assessment questionnaire
* topics to be discussed during class
presentation of class notebook
* perform your own research to fill in any gaps in your knowledge
* make a note of any good sources of information you come across
* **add that information to the class notebook**
* sign your entries with your student ID -- you may receive credit for your contributions at the end of the course
presentation of text and word processing
* brief explanation of text files and processing
* brief explanation of word processing; follow-along intros to
* the menu bar tabs, ribbon, groups, ruler, etc.
* formatting, styles, etc.
* headers, footers
* citations and references
* images and text flow
* **emphasize** that these explanations will be shorter in coming classes
* it is expected and necessary to complete the self-preparation and -assessment before class
* these //are// your entire homework for this class
* spend up to five hours researching, practicing, and trying to make your self-assessment perfect!
**self-preparation** quiz
* complete the self-assessment quiz
* continue to revise your answers as you perform your research for the self-preparation exercises
**self-preparation** exercise
* download the self-guided learning document {{:class:il:02-1_formatting_a_simple_word_document.docx}}
* follow the instructions to format the contents properly
* compare your results with the sample result {{:class:il:02-1_formatting_a_simple_word_document_formatted.pdf}}
* try to make your document as similar to the sample as possible
GRADING
On the main page for Week 02 there is a list of 15 formatting tasks that the students are asked to perform.
Check their submitted work.
They earn 1 point for each of the tasks they have completed, up to a maximum of 10 points.
**in-class** exercise
* download the example documents and choose one of them
* facts and figures about the University
* summary of information literacy, with references
* how to write a good e-mail
* format the content of the document to make it similar to the sample document
* if you have questions
* discuss with the person sitting next to you
* if both of you are stuck, raise your hand and ask an instructor for help
**challenge**
* insert charts, shapes, or smart art into a document.
* create a document with more than one column
* mix different column counts on the same page
[[https://www.kpl.org/sites/default/files/intro-word-practice.pdf]]
[[https://creativebooster.net/products/free-modern-elegant-photo-cv-resume-template-in-microsoft-word-doc-format]]
===== Week 03 PowerPoint =====
From this week onwards the grading system changes slightly:
* Friday after previous class the self-preparation assignment and self-assessment quiz for this class are posted
* Thursday the students should submit their self-assessment questionnaires;
they do not need to submit their self-preparation assignment
* Friday during class they will receive their real assignment which will be graded
* students with no problems can work on it by themselves in-class with help from instructors
* weaker students can join my review of the low average score items in the questionnaire, and ask their own questions
* 23:59 is the deadline for the assignment to be turned in (**should this be Sunday?**)
* they can score up to 10 points for the assignment
[[https://www.inf.ed.ac.uk/teaching/courses/pi/2016_2017/phil/tufte-powerpoint.pdf]]
[[http://web.mit.edu/5.95/readings/doumont-responds-to-tufte.pdf]]
[[https://files.eric.ed.gov/fulltext/EJ1000695.pdf]]
== Create a presentation about yourself or some favorite topic ==
Instructions: {{ :class:il:03-in-class.pptx | 03-in-class.pptx}}
== Funny stuff ==
[[https://www.youtube.com/watch?v=lpvgfmEU2Ck | Don McMillan: Life After Death by PowerPoint]]
===== Week 04 Excel =====
Excel
[[https://contexturesblog.com/archives/2009/07/13/14-basic-skills-for-excel-users/]]
[[https://engineering.sjsu.edu/e10/labs/excel/]]
[[https://engineering.sjsu.edu/e10/wp-content/uploads/E10-Excel-Lab-Exercises-F18.doc]]
https://www.cours-gratuit.com/excel-courses/excel-pdf-training-for-engineers
[[https://www.cours-gratuit.com/excel-courses/excel-data-analysis-training-course]]
[[https://onemat.files.wordpress.com/2012/05/ebooksclub-org__excel_for_scientists_and_engineers__numerical_methods.pdf]]
++++ video scripts |
** 1 ** Basics.
Open a new spreadsheet.
Navigation and data entry.
Autocompletion.
F2 shortcut for entering a cell in edit mode.
Cell formats.
- Excel is an application for working with tables of numbers called spreadsheets, named after the wide paper documents that were once used for accounting.
- Excel calls its spreadsheet documents "Workbooks".
- To create a new spreadsheet in Excel, click "Blank workbook" on the backstage screen.
- A spreadsheet is displayed as an infinite array of cells into which text, numbers, and mathematical formulae can be entered.
- Select a cell and start typing to enter data.
- To move to another cell, press one of the arrow keys.
- You can also use TAB to move right one cell and SHIFT-TAB to move left one cell.
- Press RETURN to move down a row.
* If you are entering data into several adjacent columns, the selection will conveniently move back to the first column.
- After you begin typing Excel will offer to autocomplete the cell contents for you based on data already present in other cells.
- When you start to type on a cell any previous contents are cleared automatically.
* This is great if you actually wanted to overwrite the cell with new data, however
* it is really annoying if you wanted to add to existing data a cell, especially if the cell contained a lot of text.
* If you accidentally start typing in a cell, you can press ESCAPE to get out of editing more and restore the cell to its previous contents.
- To add to the existing text in a cell you can either double click on it, or (better still) avoid the mouse entirely and press F2.
- Excel will guess what kind of data is in a cell by looking at its value.
* If it looks like a number, it is a number; if it looks like text, it is text; if it looks like a date, it is a date.
- Excel sometimes gets this wrong and makes annoying changes to the data you type in.
- To tell Exccel what kind of data in in a cell, right click on the cell and choose "Format cells..." and specify what kind of data is stored there.
- The default is "General" which means Excel will try to guess what is in the cell based on its contents.
** 2 ** Working with rows and columns.
Inserting and deleting rows and columns.
Cut and paste.
Autofill.
Changing row/col formats.
Auto-sizing cells to their content.
- The labels above and to the left of the cells can be clicked to select an entire row or column.
- Any operation you perform will then affect the entire row or column.
- For example, to set the format of an entire row or column, first select it by clicking on its label and then right-click and choose "Format cells...".
- You can also copy a row or column and paste it elsewhere, replacing the original content of the row or column.
- Insert will insert a blank row above, or column to the left of, the one you click on.
- If you first "Copy" a row or column, then click on Insert, the copied data will be inserted into the table.
- To move a row or column, first "Cut" it and then click on Insert, and the cut data will be removed from the table and then re-inserted at the position you chose.
- To clear the contents of row or column click on "Clear Contents"; to completely remove it, click on "Delete".
- To select more than one row or column, hold down the SHIFT key to extend the selection or click on the first label and then drag the selection out.
* "Clear" and "Delete" work as you would expect.
* "Insert" also works, but will insert the same number of blank rows or columns as you have selected.
* If you first cut or copied them, "Insert" will also transfer the data.
- Clicking in the top-left corner, between the row and column labels, selects the entire sheet.
- With everything selected the ''Home > Format...'' menu has several useful options for consistently setting the row or column size, or for auto-sizing them to fit the contents of the spreadsheet.
** 3 ** Autofill. Interpolate or extrapolate missing data.
- Sometimes you want to fill in missing data, interpolating or extrapolating from partial data that is already available.
- One example is extending a data series by providing the first few values and then having Excel extrapolate the rest.
- Insert the first couple of numbers in a series into a row or column.
- Then select the cells containing those numbers by dragging from the top-left cell to the bottom-right cell.
- A small green square will appear in the bottom-right corner of the selection.
- Click on it and then drag the outline to cover the entire range of cells you want to fill with extrapolated data.
- Using the contents of the cells that you first selected, Excel will guess how to fill in the missing data.
- A very useful feature is that this works with data other than numbers, for example, with dates.
- First set the format of a column to "date", then type in a couple of consecutive dates, or maybe even two dates separated by a week as I am doing here
- Select the two dates, then drag the small green handle over a larger range of empty cells and the missing dates will be inserted into them, all separated by a week.
** 4 ** Working with tables of data.
- Dragging over a square array of cells will select them all.
- You can then peform operations on all the selected cells, such as changing their type.
- You can also cut or copy the data and then paste it somewhere else in the worksheet.
- When pasting you have several options for manipulating the data.
- One useful option is to transpose it, which converts rows into columns and columns into rows.
- To easily rearrange or sort data in an array of cells, you can turn a selection of cells into a table.
- Select the cells of interest, then click "Insert > Table".
- Check the selected cells are correct, set or clear "My table has headers" as appropriate, then click "OK".
- The cable can now be sorted by any column.
- To remove the table while leaving the data,
* first use the "Design" tab "Table Styles" group to change the shading on the table to None,
* then the "Tools" group to "Convert to Range".
** 5 ** Formulas.
Using autosum and friends.
How cells are named.
Naming arrays of cells.
Absolute and relative references.
When to use absolute or relative references.
Some easy functions: sum, average, max, min, count.
- The value stored in a cell can be calculated from one or more values stored elsewhere in the workbook.
- Let's square a number stored in a cell, for example, 10.
- To place the square in the adjacent cell, click on the empty cell and instead of a value enter a formula.
- Formulas begin with an equals sign.
- To refer to another cell, click on it, for example on the one containing the number 10.
- Now we can enter an arithmetic operator, such as multiply.
- To square the number, click on it again which will multiply it by itself.
- Press RETURN to confirm the formula, and the cell now contains the square of 10.
- Confirm that it is working by changing the 10 to another number such as 5, or 1.
- To create a table of squares, extend the series starting at 1.
- Then copy the cell with the formula, extend the selection over the empty cells below it, and paste the formula into all of them.
- Let's look at the first formula.
- Inside the two numbers being multiplied together are read from another cell, whose coordinates are specified as the values to multiply.
- The coordinates work just like map coordinates, where there is a letter for the horizontal column and a number for the vertical row.
- Both of our inputs come from A1, in other words, column A and row 1.
- The cell below it refers to a different cell.
- The row number has changed, but the column letter has stayed the same.
- When you paste a formula, Excel automatically updates any cell references that are inside it so that they follow the formula as it moves around in the workbook.
- These are called relative cell references, since they try to remain at a fixed relative distance from anywhere the formula might be pasted.
- This is often convenient, but sometimes the exact opposite of what you want.
- For example, instead of squaring each number, let's multiply each number by the same factor.
- The factor will be stored in another cell.
- The formula is entered as before, by clicking on the cell in the data column and the cell containing the factor.
- Copy it, select the entire column, and paste the formula in.
- This does not work, because Excel automatically updated the factor cell's address, pointing successive formulae at successive cells under the factor, which are all empty and assumed to be zero.
- To fix this we can make the reference to the factor cell be absolute.
- An absolute reference will not change when its formula is moved.
- To make any part of a refernce absolte, just put a dollar sign in front of it.
- In this case we really only need the row to be absolute, but there is no harm in making both the row and column absolute.
- So we put a dollar sign in front of both the column letter and the row number.
- Of course, we leave the reference to the data dell relative so that it goes down our column of numbers.
- Copying and pasting the formula into the cells below it now creates the desired result.
- Modifying the value in the factor cell updates all of the products simultaneously.
** 6 ** Formulas on data ranges. Averages, sums, counts.
- Formula can contain functions that are invoked with a mathematical style notation.
- Excel has many useful built-in functions, for example, we can sum the numbers in a column using the SUM function.
- Select the cell that will receive the result and type and equals sign to begin a formula.
- Type the name of the function, which is SUM, and then a left parenthesis to start the function parameters.
- Drag over the cells that you want to sum, and then close the parenthesis in the formula.
- Press RETURN to enter it into the cell.
- Immediately the value in the cell is updated to reflect the sum of the other cells.
- Changing any of the values in the other cells also causes the sum cell to be updated.
- Next to the sum we can put a count of the data cells, using the COUNT function.
- Just like sum, select the cell, enter the COUNT function, and for its parameter drag over the range of cells to count.
- Press RETURN and the cell updates with the count of how many cells in the selection contain data, which is all of them.
- If we clear any of the cells, the count reduces by one and the sum goes down by the value that we removed.
- To find the average of the numbers in the cells, just divide the sum by the count.
- Of course, this is such a useful operation that Excel has a built-in AVERAGE function that sums the cells and divides by their count, all in one.
- If we look at the parameters in the formulae we see that a range of cells is represented by two cell references separated by a colon.
- The first reference indicates the top-left of the range, and the second indicates the bottom-right of the range.
- These references can be edited and parts of them can be made absolute, just like references to individual cells, whenever required.
- There are many built-in functions in Excel.
- To find the one you need, click on the little function symbol next to the formula field and a dialogue will pop open asking you what you want to do.
- If you are lucky, typing a relevant keyword in the search field will show you some functions related to the mathematical function you need.
** 7 ** Conditional functions. Conditional formatting. Filtering data.
- Many functions can be applied conditionally to their input data.
- These functions usually end with the word "IF".
- For example, to count the numbers higher than 7 in our data you would use the function COUNTIF.
- This function takes two parameters.
- The first is the range of cells that are to be counted and the second is a string that specifies a condition that must be satisfied for the cell to be counted.
- To count just the cells higher than 7, make the condition be ">7".
- Similar versions of SUM and AVERAGE exist, to filter just the cells of interest to us.
- When the value of the cell is used in the calculation, as in the functions SUMIF and AVERAGEIF, an optional third parameter can be given.
- If it is present then it must be a range of cells the same size as the first parameter.
- The values used in the computation of the function will be taken from those in the third range whenever the corresponding cell in the first range satisfies the criterion given in the second parameter.
- Functions also provide a way conditionally format a cell.
- First select the range of cells that should be conditionally formatted.
- Click on "Home" tab, "Styles" group, "Conditional Formatting" tool.
- Select "New Rule..." then "Use a formula to detmerine which cells to format".
- In the box underneath, type a formula that applies to the first cell in the range of interest, for example, to select all cells whose value is odd.
- Then click "Format..." to specify how to format the cell, for example to set the background to orange.
- Then click "OK" and the formatting rule will be applied to the selected cells.
- Updating the value in one of these cells will immediately apply the formatting rule based on the new value.
- To clear the formatting rule, select the cells and click the "Conditional Formatting" tool, then "Clear Rules" and "Clear rules from selected cells".
** 8 ** Data filtering. Advanced filtering.
- Filtering means selecting certain data from a range of cells based on a criterion.
- One way to do this is to conditionally copy cells from one place to another, remove any that are not of interest.
- To do this, first add headings to your data columns if necessary.
- Also, make sure there are no empty rows as this may confuse the filtering formula.
- In an empty array of cells, create a table using the same column headings.
- Under each heading type the criterion, such as a value or string that much match the cell's value, an arithmetic relationship that it must match.
- In the "Home" tab, click on the ''Filter > Advanced'' tool and a dialogue will appear.
- Choose ''Filter in-place'' or ''Copy to a new location'' as appropriate.
- Select ''List range'' and drag a selection box over the data to be filtered, //including the column headings//.
- Select ''Criteria range'' and drag a selection box over the criteria table, //including the column headings//.
- If ''Copy to'' is available, select it and click on a cell where the top-left of the resulting data should be inserted.
- Press "OK" and a new table will appear at the destination containing only those cells that match the criteria.
- If you have more than one row of criteria then they will be combined with an "OR" operation.
** 9 ** Visualising data.
- When a range of cells is selected a small button appears next to the selection.
- It offers ways to visualise the data by adding conditional formatting, generating charts, inserting computed values including sums and averages, or applying tables to the data.
- The first few options are kinds of conditional formatting.
- One of the most useful formats adds a small bar behind each cell indicating the relative size of the value compared to the others.
- Another is a "heat map" where lower valued cells are coloured green, intermediate ones yellow, and higher ones red.
- The chart options let you plot the data in the cells on various different kinds of chart.
- One of the simplest and most useful is a scatter chart, which plots X-Y points taking X values from one column and the Y values from the column next to it.
- Despite its name, which implies a cloud of dots scattered around the chart, this is the one to use if you have data that needs to be connected with lines.
- Let's make a column that contains the integers from 1 to 10.
- Next to it we will make a column that contains the squares of those numbers.
- To plot the resulting quadratic curve, select the entire table and then make a scatter plot from it.
- The three icons that appear to the right of the chart let you control the visibility of optional items such as axes and labels,
* or the style of the table,
* which particular columns will be included, and even
* to change the range of cells that are used to draw the chart.
** 10 ** Freezing parts of the display.
- When working with large tables you might want to freeze row or column headings while working on parts of the table far away from them.
- In the "View" tab, "Window" group, "Freeze Panes" tool, you can instantly freeze the top row or first column, where your headings usually live.
- To unfreeze them, use the same tool which will have an "Unfreeze Panes" whenever any of them are frozen.
- To freeze other parts of the worksheet, choose the first row that should scroll and click "Freeze Panes" and all the rows above the selection will now be frozen.
- Or, choose the first column that should scroll and click "Freeze Panes" and all the columns to the left of the selection will now be frozen.
- To freeze rows and columns, select the top-left cell in the region that you want to allow to scroll.
** 11 ** Importing and exporting data.
- There are many ways to share data direcly between Excel and external programs such as databases; far too many to cover in this short tutorial.
- There is one easy and universal way to do it indirectly, and that is using CSV or comma-seperated-values files.
- A CSV file is a normal text file containing table data where each line of the file is a row of data.
- Within each line of data, the columns are separated by commas -- hence the name "CSV".
- To import data from a CSV file, in the "Data" tab, "Get & Transform Data" group, use the "From Text/CSV" tool.
- Open the CSV file and a dialogue will appear previewing the data.
- If necessary you can change the delimiter (which is the character used to separate columns).
- Press "Load" and the data will appear as a table in a new worksheet.
- To export data, do the exact reverse process.
- Select the data you want to export, then create a new worksheet by pressing the "+" button at the bottom of the screen.
- Paste the data into the new worksheet at the top-left, then from the "File" tab choose "Export", "Change file type", and select "Comma-separated values".
- Once saved, you can delete the empty workbook.
- A slightly more convenient, but less standard, way to export and import data is using tab-separated data.
- To export, select the cells of interest and copy them.
- In a text editor program (such as Notepad) paste the copied data.
- To import tab-separated data directly, open it in a text editor, copy it, and then paste it anywhere in your worksheet.
- Another useful kind of export is to copy a chart from Excel into PowerPoint or Word.
- Copying a chart as an image creates a pixelated result that does not look very good at all.
- To copy a chart witout loss of quality, select the chart, press copy, and then in PowerPoint or Word use "paste special" (CONTROL-ALT-V).
- A dialogue will appear.
- Choose "Microsoft Graphics Object" to paste a copy that you can edit in the same way that you could in Excel to change the axes, labels, and so on.
- If "Microsoft Graphics Object" is not available, choose "Picture (Enghanced Metafile)" instead; you won't be able to change the content, but the quality will be much better than a normal picture.
** 12 ** There is a lot more to discover.
- Excel is a large and complex application that offers hundreds of other ways to manipulate and analyse data.
- These short tutorials are meant to show you enough of the basics so that you will be able to find and understand help online when you need it.
- Some important topics that we did not have time for include pivot tables, making drop-down lists for constrained data entry, locking cells and worksheets, and working with data across multiple worksheets.
- Some of the most powerful formulas make use of indirect cell references, which means using the value stored in a cell as a reference to another cell.
- When you need these features, you will know it.
- And after these tutorials you will also know enough about Excel to understand how to use them based on reference material you find in a book or online.
- Finally, never be afraid to explore: generate some interesting data, using formulae, and then manipute it either to understand the data or just to understand what Excel is capable of doing.
** 13 ** Extended example. Using Excel to simulate an electronic circuit.
- Combining a resistor and a capacitor creates a filter.
- Depending on the order of the components, the filter might be low-pass (rejecting high frequencies) or high-pass (rejecting low frequencies).
- A low-pass filter puts the resistor in series with the input, and the capacitor in parallel with the output.
- To understand the behaviour of the filter, we should look at its frequency response.
- The frequency response relates the gain of the filter to the frequency of the signal passing through it.
- Let's simulate a low-pass filter and plot its frequency response.
- The frequency response is the ratio of output voltage to input voltage measured at a number of different frequencies.
- The ratio of output to input voltage at a particular frequency is given by the gain function of the filter.
- Two critical constants in the gain function are the //time constant// and //cuto-off frequency// of the circuit.
- The time constant is easy to calculate: it is the product of the resistor value and the capacitor value.
- In a blank worksheet, create two cells that will accept the values of the resistor (in Ohms) and the capacitor (in Farads).
- In another cell, enter a formula that calculates the time constant of the filter.
- Check that it is working by entering some values for the resistor and capacitor.
- Let's use 1000 Ohms and 1 nano Farad, which is 0.000001 Farads.
- The time constant should be 0.001.
- The cut-off frequency is the reciprocal of two-pi times the time constant.
- In another cell, enter a formula that calculates the cut-off frequency.
- The value should be approximately 159.
- To plot the frequency response, calculate the value of the gain function for a range of different frequencies and turn it into a chart.
- Start with one cell containing a frequency of 1 Hz.
- In the cell to the right, enter the formula for the gain function of the filter.
- Be careful to use an absolute reference for the cut-off frequency, or it will change as you copy the formula to other cells.
- The gain function of a low-pass filter is: the reciprocal of the square root of one plus the frequency squared divided by the time constant squared.
- If the formula is entered correctly, the gain value should be 0.99998.
- Note that for this kind of passive filter the gain will always be between 0 and 1, in other words, the filter always attenuates the signal.
- Underneath add a cell with frequency 2, and copy the gain formula next to it.
- The gain value should be .99992.
- Do one more just to make sure.
- Create a cell with frequency 5, and copy the gain formula next to it which should give a result of 0.99951.
- Clearly the gain is not changing much, so... how high should the frequencies go?
- A range of 100,000 to 1, or a maximum frequency of about 100 kHz, will give a good overview of the circuit's response.
- We therefore have a lot of ground to cover on the frequency scale, so let's do it exponentially.
- Instead of increasing the frequency linearly, approximately double it at each step -- which, if you are a musician, is increasing it by approximately an octave at each step.
- The frequency column begins 1, 2, 5, which is close enough to doubling at each step.
- The next frequencies will logically be 10, 20, 50, and then 100, 200, 500.
- Add them now, and continue adding frequencies to the column until you reach 100,000.
- (It would be nice if Excel could figure out this series for us, but unfortunately I have not found a simple way to make that happen.)
- Copy the gain formula, select the empty cells next to the frequencies, and paste it in.
- The last couple of values should be 0.00318 and 0.00159.
- If you cannot see enough decimal places, select the entire column and then "Format cells..." and change the format to "Number" with 5 decimal places.
- Now plot the frequency response using a scatter plot.
- It won't look like much at first, because our frequency scale should be logarithmic to compensate for the exponential series we used on the horizontal frequency axis.
- To fix this, select the chart then right-click on one of the labels on the horizontal axis.
- Chose "Format Axis..." and a new pane called "Format Axis" will appear at the right edge of the Excel window.
- In the "Format Axis" pane, select the rightmost tab called "Axis Options".
- Near the bottom of the pane click the little button that enables "Logarithmic scale".
- You should now see a very nice curve showing a 50% gain at approximately 300 Hz, asymptotically approaching 1 below that frequency and 0 above it.
- If you know your electronics (or your technical theory of music and audio) you will be familiar with the idea of a "first-order" filter which "rolls off" "linearly" at 3 decibels per octave.
- Our plot certainly doesn't show that kind of behaviour, but only because decibels are an exponential quantity too and so the vertical axis should be made logarithmic.
- Select the chart again, right-click one of the labels next to the vertical axis, and change it to "Logarithmic scale".
- You should now see the classic low-pass filter curve with a "knee" at about 100 Hz, and a beautiful linear roll-off of 3 decibels per octave above about 400 Hz.
- To test your understanding of what just happened, repeat the simulation for a high-pass filter.
- The formula for the gain of a high-pass filter is: frequency divided by cut-off frequency divided by the square root of one plus frequency squared divided by cut-off frequency squared.
- Use the same values for R and C.
- The correct technical term for the curves we plotted is the //transfer function// of the filters.
- Finally, what do you think happens if you place the low-pass filter in series with the high-pass filter?
- When two linear circuits like these are placed in series, the result is the product of their transfer functions.
- Create another plot showing the frequency against the product of the gains of the two filters.
- What do you think happens if you place them in parallel, which will add their transfer functions?
- Try it and see; the result is maybe rather interesting, if you think about it carefully, although doing the division algebraically using the two gain functions will explain the result.
++++
=== Self-preparation assignment [5 points] ===
- Create an Excel spreadsheet to track your scores in each of your classes.
- The spreadsheet should show your percentage score so far, and the predicted percentage score based on known results.
- Use conditional formatting to shade actual or predicted percentages less than 60 percent in red.
- One way to do this would be to make a column for each week of the semester.
- For each class use two rows.
- The first row contains the scores obtained each week, and the second row contains the maximum score possible each week.
- Calculate the actual percentage grade from the sum of scores already obtained (SUM function) divided by the sum of possible score for all 15 weeks (SUM function).
- Calculate the predicted percentage grade from the sum of scores already obtained (SUM function) divided by the sum of possible scores for those weeks that have a reported score (SUMIF function).
- Find out about the VLOOKUP function.
- Use it to convert the actual and predicted percentage scores into a letter grade.
- A sample of my spreadsheet is attached (showing how much I suck at maths).
{{:class:il:04-self-preparation-sample.png?linkonly|04-self-preparation-sample}}
== Self-preparation challenge ==
- Watch video 13 and reproduce the experiment
++++ Self-assessment questionnaire |
- Can you enter data and copy/move data (including arrays of cells) in an Excel spreadsheet?
- Can you insert and delete multiple rows/columns?
- Can you move several rows or columns of data from one place to another in one operation?
- Can you use autofill to generate a sequence of numbers?
- Can you use autofill to generate a daily or weekly list of dates?
- Can you convert cells to a table to perform sorting on each column?
- Can you convert a table back into a range of normal cells?
- Can you calculate the value in a cell using a formula based on one or more values in other cells?
- Can you calculate the value in a cell using a formula based on combining many values from many cells?
- Can you explain the difference between relative and absolute cell references?
- Can you explain when to use an absolute reference and when to use a relative one?
- Can you use conditional functions to exclude missing or irrelevant data from a calculation?
- Can you use conditional formatting to change the visual appearance of a cell based on its value?
- Can you filter data from a range of cells based on a complex set of criteria?
- Can you very quickly add visualisation to a range of cells, such as colouring them by value or showing relative size bars behind their values?
- Can you create a chart of data from a single series of values?
- Can you create a chart of data from a sequence of X-Y value pairs?
- Can you freeze parts of the display that contain headings or other permanent information?
- Can you import and export data using CSV files?
- Can you copy a chart from Excel to Word or PowerPoint without loss of visual quality?
++++
=== In-class assignment [10 points] ===
- Create a spreadsheet to track and predict your scores and grades. [5 points]
- Import a data set and use Excel to smooth the data and visualise it in different ways. [5 points]
Assignment attachments:
{{04-in-class.xlsx|04-in-class.xlsx}}
{{04-metars.csv|04-METARs.csv}}
== In-class challenge exercise [1 bonus point] ==
- Reproduce the LPF example from video 13, if you have not done so already.
- Implement the HPF example described at the end of video 13.
- An audio amplifier usually has a big capacitor at the output, to protect the loudspeaker from DC voltages that would destroy it.
- The loudspeaker is connected to ground.
- The output capacitor and loudspeaker therefore form a high-pass circuit (capacitor in series, loudspeaker in parallel, with the signal).
* This is logical, if you think about it, because DC voltage has a frequency of 0 Hz and we want to completely attenuate it.
- A typical loudspeaker has an impedance (resistance) of 8 Ohms.
- A very good amplifier will try to reproduce low frequencies faithfully, which means having a very big capacitor on the output to balance the very low resistance of the loudspeaker.
- If we want the amplifier output power to be attenuated by only 3 decibels (an attenuation of approximately 0.709 from the capacitor-resistor high-pass filter combination), what value of output capacitor do we have to use with an 8 Ohm loudspeaker?
===== Week 05 Filesystems =====
Outcomes:
* Know how to describe sizes of storage using SI and IEC prefixes
* Know the purposes of file systems
* storing user documents and data
* storing applications
* storing the OS and system programs
* virtual memory
* How data is stored physically on a disk
* a fixed number of fixed-size blocks usually 512 bytes long
* How the OS organises that data into allocation units
* default on Windows is 4096
* smaller AUs waste less space from unused internal space
* smaller AUs increase fragmentation of files split over many smaller units instead of one larger unit
* larger AUs waste less space in the tables that remember which blocks are free and which belong to which files
* How the OS imposes organisation on blocks of data as files and directories
* a directory is a map from file names to file contents
* when you open a folder in Mac Fider or Windows Explorer, you are looking at a file directory
* every entry in the directory has a unique name
* every entry in the directory associates that name with some storage on the disk where the contents are stored
* the structure describing where the contents are stored is called an index node (inode)
* inodes contain contain all the information relating to a file's //contents//
* file type: regular, directory, symbolic link, "special" (files connected to physical device ''/dev'' or processes ''/proc'' or system information ''/sys'')
* file permissions (security: who can access the file to read, write, execute it)
* file ownership (who created it)
* file size (total number of bytes in the file)
* link count (how many directory entries point to the index node)
* timestamps: creation, modification, access
* a list of AUs where the contents of the file are physically stored on the disk
* if the file is larger than one AU, they will all be listed here
* How files and directories are organised
* tree structured hierarchy
* directories are really just files too, and are themselves named within a "parent" directory
* only one directory has no name: the "root" directory which is at the top of the tree structure
* to specify a file or directory, start at the root and describe the "path" to the file down the tree hierarchy
* each element in the path is separated by a "/"
* the root directory has no name (it is empty)
* e.g: ''/Users/piumarta/Documents/things-to-remember.txt''
* under the root directory look in Users dir then piumarta dir them Documents dir for file things-to-remember.txt
* on Windows each attached volume (disk, more or less) has a drive letter, e.g., "C:"
* each element in the path is separated by a "\"
* e.g. ''C:\Users\piumarta\Documents\things-to-forget.txt''
* on the ''C'' drive, under the root directory look in (... as above ...) for the file things-to-forget.txt
* the list of directory names, followed by a file name, is called the //path name// of the file
* How data is stored logically on the disk.
* your application "opens" a file based on its path name
* after opening the file, the application can read bytes from or write bytes to the file
* the file appears to be a contiguous sequence of bytes,
even if underlying storage is non-contiguous allocation units on the actual disk
* any fragmentation of the file into multiple AUs is completely hidden from the application
how big is a file?
* measured in bytes
what is a byte?
* eight bits of digital information (eight 0s or 1s)
* in other words, a number between 0 and 255
what can you keep in a byte?
* one byte can contain, e.g., one character of a text file in a European language
* two bytes can represent most Japanese characters, or a single sample of CD-quality audio
* four bytes can represent any character on the planet, or a stereo pair of samples for CD audio,
or a pixel colour value with transparency (red, green, blue, alpha)
* bytes are so small that we are used instead to dealing with multiples of them:
* kilobytes, megabytes, gigabytes
note on SI units and orders of magnitude
^ prefix ^ multiplier ^ name ^
| p | 10-12 | pico |
| n | 10-9 | nano |
| μ | 10-6 | micro |
| m | 10-3 | milli |
| | 1 | |
| k | 103 | kilo |
| M | 106 | mega |
| G | 109 | giga |
| T | 1012 | tera |
| P | 1016 | peta |
Memory hierarchy = cpu / ram / hdd ssd / nas / backup
^ level ^ size ^ speed / latency / bandwidth ^^^ cost ^
| cpu | a few kB | fastest | .333 ns | 2 TB/s | very expensive |
| cache | a few MB | very fast | 10 ns | 0.5 TB/s | quite expensive |
| ram | tens of GB | fast | 50 ns | 25 GB/s | expensive (10$/GB) |
| ssd | a couple TB | medium | 1 ms | 500 MB/s | medium (100 GB/$) |
| hdd | tens of TB | slow | 10 ms | 125 MB/s | cheap (300 GB/$) |
| nas | a PB | slow | 10 ms | 100 MB/s | cheap (300 GB/$) |
https://lh3.googleusercontent.com/D1tZNSvoc5MzwnXxmoq3_cqAU1GnNRN5J2Xh9z931OC29ffEY9r8sz5EpD_lZldnw9T9hgiym9phkeW2ao4I4mqU8vbrOD--2m2JVUHBvWtIimahHP4LAcDJMpa3Dphi_p1Jk0jo
Permanent storage of files => hdd ssd
software architecture
| | application |
| OS | virtual file system |
| ::: | file system (NTFS, AFS, EXT4) |
| disk | fixed size blocks |
| ::: | cylinders, heads, sectors |
[[https://www.brainbell.com/tutors/A+/Hardware/_Geometry.htm]]
filesystem requirements
* naming
* organisational principle
* categories, compartments
* mapping onto low-level storage
* cyls heads sectors presented as blocks sequentially numbered
[[https://opensource.com/life/16/10/introduction-linux-filesystems]]
== self-prep ==
install a POSIX environment with terminal (command line) interface
* mac: you already have it (Terminal.app + Darwin, the Unix-based OS underneath the mac UI)
* lin: you already have it (Xterm, Konsole, etc., + the Linux filesystem which is POSIX compatible)
* win: you need to install either
* MobaXterm (a terminal, command line shell, and POSIX compatibility)
* WSL (a port of Linux to Windows that can run Linux applications directly)
* a virtual machine (VMWare Player or VirtualBox) with Linux or BSD guest OS
you must do this before class or you will not be able to complete the in-class assignment
Finder/Explorer vs. the command line: file system layout and navigation
Why using the command line will make you ten times more productive and a more effective engineer
+++ Everyone has to submit a text file for the next week's class.
Content of the file has to be non-trivial but easy to generate.
About a paragraph to a page is OK.
Make it something interesting to read.
===== Week 06 Command line =====
“You do not rise to the level of your goals. You fall to the level of your systems.”
-- James Clear
[[http://web.cs.ucla.edu/~miryung/teaching/EE461L-Spring2012/labs/posix.html]]
[[https://wiki.lib.sun.ac.za/images/c/ca/TLCL-13.07.pdf]]
[[https://swcarpentry.github.io/shell-novice/]]
[[https://flaviocopes.com/bash/]]
[[https://flaviocopes.com/bash-scripting/]]
[[http://www.ee.surrey.ac.uk/Teaching/Unix/]]
Outcomes:
* understand the difference between absolute and relative path names
* understand the need for relative path names and therefore the need for the concept of CWD
* know how to convert to/from absolute path name and path name relative to some CWD
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 07 Command line: command sequencing =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 08 Command line: variables =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 09 Command line: loops and conditionals =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 10 The Internet =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 11 Data mobility =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 12 The WWW =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lines for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 13 Content creation =====
self-prep assignment
* research how to write a simple web page
* suggestions...
* research how simple CSS works
* suggestions...
* ...
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 14 Web applications and cloud services =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)
===== Week 15 Safety and security =====
Commands and arguments versus words in text
Searching, sorting, modifying, analysing data stored in text files using command-line tools
Standard input and output, pipelines: combining simple commands to perform more complex tasks
using CSV and text files (e.g., from "office" tools) as simple databases
Editing plain text files
+++ Extract, analyse and generate a report on the contents of many files,
and e-mail the script and its results to your instructor
+++ Count characters, words, lins for many text files.
Generate a CSV file containing the raw data.
Import the data into a spreadsheet.
Analyse the number of caracters per word, words per line, words per file, lines, per file, etc.
(wc command piped into tr command to change spaces into commas)
+++ Using same data files calculate a histogram of word usage.
Alphabetical list of unique words used with a count of how many times they are used.
(sort command)