OpenLLM-France/wikimedia huggingface dataset:
# Introduction to Mathematical Physics/Statistical physics/Canonical distribution in classical mechanics

Consider a system for which only the energy is fixed. Probability for this system to be in a quantum state $(l)$ of energy $E_{l}$ is given (see previous section) by:
$P_{l}={\frac {1}{Z}}e^{-E_{l}/k_{B}T}$
Consider a classical description of this same system. For instance, consider a system constituted by $N$ particles whose position and momentum are noted $q_{i}$ and $p_{i}$, described by the classical hamiltonian $H(q_{i},p_{i})$. A classical probability density $w^{c}$ is defined by:
eqdensiprobaclas
$w^{c}(q_{i},p_{i})={\frac {1}{A}}e^{-H(q_{i},p_{i})/k_{B}T}$
Quantity $w^{c}(q_{i},p_{i})dq_{i}dr_{i}$ represents the probability for the system to be in the phase space volume between hyperplanes
$q_{i},p_{i}$ and $q_{i}+dq_{i},p_{i}+dp_{i}$. Normalization coefficients $Z$ and $A$ are proportional.
$A=\int dq_{1}...dq_{n}\int dp_{1}...dp_{n}e^{-H(q_{i},p_{i})/k_{B}T}$
One can show [ph:physt:Diu89] that
$Z={\frac {1}{(2\pi \hbar )^{3N}}}A$
$2\pi \hbar ^{N}$ being a sort of quantum state volume.
Remark:
This quantum state volume corresponds to the minimal precision allowed in the phase space from the Heisenberg uncertainty principle:
\index{Heisenberg uncertainty principle}
$\Delta x\Delta p>\hbar$
Partition function provided by a classical approach becomes thus:
$Z={\frac {1}{(2\pi \hbar )^{N}}}\int dq_{1}...dq_{n}\int dp_{1}...dp_{n}e^{-H(q_{i},p_{i})/k_{B}T}$
But this passage technique from quantum description to classical description creates some compatibility problems. For instance, in quantum mechanics, there exist a postulate allowing to treat the case of a set of identical particles. Direct application of formula of equation eqdensiprobaclas leads to wrong results (Gibbs paradox). In a classical treatment of set of identical particles, a postulate has to be artificially added to the other statistical mechanics postulates:
Postulate:
Two states that does not differ by permutations are not considered as different.
This leads to the classical partition function for a system of $N$ identical particles:
$Z={\frac {1}{N!}}{\frac {1}{(2\pi \hbar )^{3N}}}\int \prod dp_{i}^{3}dq_{i}^{3}e^{-H(q_{i},p_{i})/k_{B}T}$
# Introduction to Mathematical Physics/Statistical physics/Entropy maximalization

In general, a system is described by two types of variables. External variables $y^{i}$ whose values are fixed at $y_{j}$ by the exterior and internal variables $X^{i}$ that are free to fluctuate, only their mean being fixed to ${\bar {X^{i}}}$. Problem to solve is thus the following:
Problem:
Find distribution probability $P_{l}$ over the states $(l)$ of the considered system that maximizes the entropy
$S=-k_{B}\sum P_{l}\ln(P_{l})$
and that verifies following constraints:
${\begin{matrix}\sum X_{l}^{i}P_{l}&=&{\bar {X^{i}}}\\\sum P_{l}&=&1\end{matrix}}$
Entropy functional maximization is done using Lagrange multipliers technique. Result is:
$P_{l}={\frac {1}{Z}}e^{-\lambda _{1}X_{l}^{1}-\lambda _{2}X_{l}^{2}-...}$
where function $Z$, called partition function, \index{partition function} is defined by:
$Z=\sum _{(l)}e^{-\lambda _{1}X_{l}^{1}-\lambda _{2}X_{l}^{2}-...}$
Numbers $\lambda _{i}$ are the Lagrange multipliers of the maximization problem considered.
Example:
In the case where energy is free to fluctuate around a fixed average, Lagrange multiplier is:
$\beta ={\frac {1}{k_{B}T}}$
where $T$ is temperature.\index{temperature} We thus have a mathematical definition of temperature.
Example:
In the case where the number of particles is free to fluctuate around a fixed average, associated Lagrange multiplier is noted $\beta \mu$ where $\mu$ is called the chemical potential.
Relations on means that:
$S/k=\sum \lambda _{i}{\bar {X^{i}}}+\ln(Z)$
This relation that binds $L$ to $S$ is called a {\bf Legendre transform}.\index{Legendre transformation} $L$ is function of the $y^{i}$'s and $\lambda _{j}$'s, $S$ is a function of the $y^{i}$'s and ${\bar {X^{j}}}$'s.
# Fundamentals of Human Nutrition/You Are What You Eat

You Are What You Eat
Our bodies contain similar nutrients to the food we eat. Therefore, depending on what kind of food we are consuming and the contents of that food, we are affecting our nutrient levels and over all, our health. On average, the human body is 6% minerals, carbohydrates, and other nutrients, 16% fat, 16% protein, and 62% water. Of course these percentages vary for every individual person depending on diet and lifestyle.
As mentioned above, it is important to eat a wide variety of foods from the five food groups to ensure that you are consuming all the different nutrients that your body needs. Eating one type of food may supply you with excess of a particular nutrient, but your body will be lacking other vital nutrients only obtainable from different foods. The saying, "You are what You Eat," isn't literally true because if you eat a hamburger, that doesn't make you a cow, however, your nutrient levels will equilibrate with that of the hamburger, or cow, that you are eating. Therefore, always make sure that you are putting healthy foods in your body because it doesn't just come in one end and go out the other. The foods you eat alter the nutrients in your body, making it very important to eat foods that will have a positive and beneficial impact on your body and your health. Almost everything is ok, in proportion. If you eat some ice cream or some candy every once in a while, it will not have a significantly detrimental impact on your health. However, if you eat large quantities of high-sugar foods, such as candy, you can continuously tax your system and eventually cause problems that can effect your health forever, such as Type 2 Diabetes. (Whitehead) It is important to make a habit of healthy eating. The more often you eat healthy, the easier it will be and the more you will start to enjoy healthy food over un-healthy food. It can be difficult sometimes to choose an apple over a candy bar and you don't always have to, but in the long run, your body will thank you for eating healthy.
We often don't think about the nutritional content of our food, but do some research and find out what you're really putting in your body when you eat certain foods. Awareness of the contents of our consumption is the first step in moving towards a healthier diet and therefore, a healthier body.
Helpful Sources:
1. Whitehead, Ross D., Daniel Re, Dengke Xiao, Gozde Ozakinci, and David I. Perrett. "You Are What You Eat: Within-Subject Increases in Fruit and Vegetable Consumption Confer Beneficial Skin-Color Changes." PLoS ONE 7.3 (2012): n. pag. Web.
2. Manivannan, R. "You Are What You Eat: Salt Consumption and Hypertension." Public Health 118.1 (2004): 78. Web.
# Fundamentals of Human Nutrition/Water soluble vitamins
## Water Soluble Vitamins

Please use this HELP:EDITING link for information about contributing and editing the book.
# Hempl

The PDF-able and printable collection for this book is at Wikibooks:Collections/Hempl.

## Hempl

Hempl is recursive for Hempl's embedded mini PicoLisp.
It is a software system for natively programming microcontrollers (interactively and incrementally) using PicoLisp.
Hempl can read S-expressions from a micro SD card or from the console (over UART, USB or Telnet).
Hempl is influenced by and is a fork of the eLua project.
This manual currently focuses on running Hempl on the Mizar32.

## Mizar32

Congratulations! You have in your hands the manual for the Mizar32, a 32-bit computer based on the AVR32 processor at 66MHz with 32MB of main memory, mass storage on SD card, a USB connector, a light, two buttons, a JTAG port and six bus connectors. The bus connectors let you add other stackable hardware modules such as serial ports, ethernet, a 16x2 character LCD display and a VGA/keyboard/mouse/audio board based on the 8-core Propeller processor and your own custom boards.

### Quick Start Guide

    Introduction
    Quick start
    Models and Specifications

#### Software architecture

    Overview

#### Hardware subsystems and Hempl modules

    ADC
    CPU
    Ethernet
    I2C
    LCD
    PIO
    PWM
    RTC
    SPI
    Timers
    UART
    USB

#### Advanced topics

    GPIO pin assignment
    Memory map
    Flash memory
    Programming new firmware to the main board's flash memory
    Compiling Hempl
    The emBLOD second-stage boot loader
If you would like to help complete this book, there is a list of stuff to do.

## Further reading

* Mizar32 is a book that focuses on the hardware; this "Hempl" book focuses more on developing software in the Hempl variant of Lisp.
* Alcor6L is a multi-language IDE for natively programming microcontrollers (interactively and incrementally), supporting (among other languages and hardware) PicoLisp on Mizar32. Alcor6L is a fork of the eLua project.
* Lua Programming
* Lisp Programming
# Hempl/Flash memory

Mizar32 comes in three versions with different amounts of flash memory and static RAM:
* Model A: 512KB flash / 64KB SRAM / 32MB SDRAM
* Model B: 256KB flash / 64KB SRAM / 32MB SDRAM
* Model C: 128KB flash / 32KB SRAM / 32MB SDRAM
The flash memory is built into the AT32UC3A0128/256/512 processor chip and responds from address 0x80000000.
The first 8KB (0x80000000-0x80001FFF) contain the "Atmel AT32UC3 USB DFU bootloader", which is able to download and write new contents to the rest of the flash memory over the USB port. When the chip resets or powers up, it starts executing at 0x80000000, which is the USB DFU bootloader. This checks whether the user button is pressed and, if it is, gets ready to download and program the rest of the flash memory. If the button is not pressed, it jumps to address 0x80020000 which contains the first word of the executable code for the Hempl interpreter.
Alternatively, the flash memory from 0x80020000 can be programmed with emBLOD, the embedded boot loader, which loads the executable code from a file "autorun.bin" on the SD card into SDRAM and executes it there. In SDRAM code runs about 6 times slower that a program in flash memory but you can load and run programs up to 32MB in size.
If you have a JTAG programming device, you can program the entire 128/256/512KB by overwriting the USB DFU boot loader.
There is also a second, 512-byte area of flash at 0x80800000 - 0x808001FF, the "Flash user page", which keeps a configuration word for the USB DFU bootloader in the last word, but is otherwise free.

# Further reading

* the AVR32 UC3 USB DFU Bootloader manual.
# Hemp Products/Food Oils & Protein
## Introduction

Hemp is the only plant that contains all of the essential fatty acids required by humans. The body does not generate these EFAs and so must ingest them. EFAs clear cholesterol from arteries, supports the immune system efficiency and a provide necessary brain nourishment. Hempseeds provide the oils for creating food out of Hemp.
* Food Grade Oil
* Raw seeds
* Roasted seeds
* Flour
# Hemp Products/Food Oils & Protein/Food Grade Oil
## Uses

* salad oil
* baking
* drizzled into soups & stews
* drizzled on steamed veggies
* drizzled on pasta
* pesto
* mix with yogourt
* hummus
# Introduction

The Central Processing Unit is the part of the AT32UC3A chip which controls what the rest of the hardware is doing. It does this by following a program that is stored in its RAM or flash memory.

# Hardware view

The Mizar32's CPU is an Atmel AVR32A UC3A RISC processor running at 66MHz with
* 15 general-purpose 32-bit registers
* A 32-bit stack pointer, program counter, link register and status register
* 187 different instructions, most of which take one clock cycle to complete
* Exceptions and interrupts
* User and supervisor modes (not used in eLua)
* Debug mode
The processor implements a load-store architecture, where values are fetched from the memory into registers, worked on there and the results are then stored back into memory. It has 187 different instructions which are:
* MOVE instructions to copy values between the registers or load them with constant values
* Load/store instructions to copy 8-, 16-, 32- or 64-bit data between the registers and the main memory
* Load/store multiple instructions to copy several registers from/to main memory or to the stack at once
* Arithmetic instructions to add, subtract, negate, test and compare values in registers and maximum and minimum to find the highest or the lowest of the values in two registers
* Multiplication: 16x16-bit and 32x32-bit multiply giving 32- or 64-bit results
* DSP instructions: multiply-and-accumulate instructions and saturating or rounding arithmetic
* Logical operations: AND, OR, exclusive OR, one's complement
* Bit operations: Bitfield extraction and assignment, bit set/clear/test, bit reverse, swap bytes/halfwords, count leading zeros
* Shifts and rotates
* Branches and subroutine call and return
* System control instructions
Thanks to its 3-stage pipeline, the processor normally executes one instruction per clock cycle, giving a maximum of 66 million instructions per second.
The CPU is connected to a High Speed Bus Matrix which, in turn communicates with the RAM and Flash memories, the USB and Ethernet hardware and the HSB bridge. The HSB bridge then talks to the rest of the peripheral devices on the chip at a lower speed of 16.5 MHz.

# Software view

The program that the CPU executes is usually the PicoLisp interpreter, which either responds to commands that you type on the Mizar32's console, executes them and prints the results, or reads a PicoLisp program from the SD card and does what the program says.
In Hempl there are some functions to gain access to low-level features of the CPU:
* (cpu-clock) returns the CPU's clock frequency (66,000,000Hz)
* (cpu-r32)/(cpu-w32), (cpu-r16)/(cpu-w16), (cpu-r8)/(cpu-w8) to read/write 32-, 16- and 8-bit data from/to the memory or the registers of peripheral devices.
Please note: There is currently no support for interrupt handling in PicoLisp. See issue #2.

# Further reading

* The Atmel AT32UC3A datasheet Chapter 9: Processor and Architecture
* The AVR32 Architecture Manual for a detailed description of the instructions
# Introduction

The Mizar32 has an add-on hardware module which lets us connect the Mizar32 to the internet.

# Hardware view

The Ethernet add-on module is a half-width board which plugs into the left half of the add-on bus connectors, BUS1, BUS2 and BUS3. The hardware module converts the ethernet signals provided by the AVR32UC3A chip into the voltage levels required on an RJ45 connector to connect it to a hub, switch or router.
The board houses a DP83848 Ethernet transceiver, which generates and receives the raw ethernet signals and communicates their contents to the AVR32UC3 on the main board using the RMII protocol, which reduces the number of bus pins necessary to achieve this.
| RJ45 pin | Name | Signal |
| 1 | TX+ | Transmit data |
| 2 | TX- | Transmit data |
| 3 | RX+ | Receive data |
| 6 | RX- | Receive data |
| Signal name | AVR32 pin | Bus pin | Name |
| ETHERNET | PA24 | BUS2 pin 3 | Ethernet interrupt |
| REF_CLK | PB0 | BUS1 pin 3 | 50MHz reference clock |
| TX_EN | PB1 | BUS1 pin 4 | Transmit enable |
| TX0 | PB2 | BUS1 pin 5 | Transmit data |
| TX1 | PB3 | BUS1 pin 6 | Transmit data |
| RX0 | PB5 | BUS2 pin 5 | Receive data |
| RX1 | PB6 | BUS2 pin 6 | Receive data |
| RX_ER | PB7 | BUS2 pin 7 | Receive error |
| MDC | PB8 | BUS2 pin 4 | MDIO clock |
| MDIO | PB9 | BUS2 pin 8 | MDIO data |
| RX_DV | PB15 | BUS1 pin 7 | Receive data valid |

# Software view

Hempl has a net module which lets you make TCP connections to other computer and receive incoming TCP connections from them, send and receive data and disconnect.
If the Ethernet hardware is not present, its bus pins can be used as as generic PIO pins by calling pio-pin-setdir. For example, to use BUS1 pin 6 as a PIO output, you could use:
Please note: Hempl doesn't have the Ethernet module for PicoLisp yet. We're working on it. It will be supported soon. Please see issue #1

## IP address assignment

The ethernet software included in the standard firmware for models A and B requests an ethernet address using DHCP. If it cannot find a DHCP server on the local network, it gives up after 60 seconds and assigns itself the address 192.168.1.10 with gateway and DNS server of 192.168.1.1.
You can assign a fixed IP address that will be available immediately by using the Mizar32 Web Builder to create your own firmware: click on "Mizar32 Web Builder", then "Build Now", then select BUILD_UIP, clear BUILD_DHCP and set your required IP address in the fields at the bottom of the page. Instructions for programming the resulting firmware file to the board are on the page "Flashing firmware".

# Further reading

* The Atmel AVR32UC3A datasheet, section 29: Ethernet MAC
* The DP84838I transceiver datasheet
# General Engineering Introduction/Brainstorm

BrainStorming is a group communication process. It is a documentation tool that can convince others that everything possible was thought of while making a group decision. Below are intangible comments that inspire and help keep the creative conversation going.

## Multiple Solutions

Brain Storming is not complete until there are multiple solutions. The best way is to not talk about solutions with each other, but silently go off alone and create solutions. Then come back together as a team, see who came up with the same idea. Other's ideas should spark more solutions in your own mind. So this process may be repeated. If done correctly there will be multiple solutions.

## Solution Characteristics
### Positive

Einstein described his special abilities this way: "I have the talent of absorbing positive knowledge." All solutions are positive. Simplicity, Symmetry, Synchronicity are all concepts that engineers leverage.

### Expedient

There are times when duct tape, paper clips, pieces of a comb and wads of chewing gum are necessary. Creative, expedient solutions are necessary in times of a crisis. Tampons stop leaks. Solutions that don't scale, don't meet the scope or specifications, solutions that just get through the demonstration and then break are called "Kludgy."

### KISS

Keep it Simple Stupid. The more complex something is, the less likely it is going to work. There is beauty in a 15 line program that does the same thing as a 2000 line program. A 15 line program can also be more beautiful than a tricky 1 line program doing the same thing because it is easy to understand, modify, and reuse.

### Expected

There is beauty in a case that hasn't been opened for 15 years, yet upon opening it the instructions for making the adjustment are printed in an obvious spot.

### Reduce to the Absurd

This is how engineers use the argument tatic "Reductio_ad_absurdum." Go to the extremes. Make the gaps bigger, make the angles larger or smaller. Change the timing. Follow the trends past normal operating points. List everything. The absurd can inspire.

### Persist

James Eads competed with the Army Core of Engineering to come up with connecting the Mississippi to the Gulf of Mexico. After a storm, the Mississippi was less than 8 feet deep, ships couldn't get to the ocean. Work on the New Orleans docks stopped. Dredging was not an option. The Army wanted to build a canal. Eads proposed building twin jetties that would force the river to dig its own channel by speeding the flow of water. Newspapers carried Eads arguments that his idea was more in "harmony with nature". The Army Core of Engineering argued that it would never work. The project took five years and was completed in 1879. Precisely as Eads had predicted, the current scoured its own bottom, pushing the silt far out into the deep Gulf waters.
# General Engineering Introduction/Authors Editors

For Authors/Editors

## Focus

Focus on engineering science (CDIO), not engineering technology (ISTE). This course is best taught by someone who majored in engineering and worked at least 5 years in the field. Industrial art teachers should stick with Project Lead the Way's (PLTW) Engineering Design and Development (EDD) Capstone Class.

## Content Goals

Provide a framework by which general engineering introductions can be assessed. Minimize content. Transition to open ended projects as soon as possible.

## Self Paced Learning

Put Quizzes with answers in context with in the reading. Link to quizzes at wikiversity if necessary. Update this list of quizzes so that they can be summarized and moved into an LMS.
Link to other wiki pages within this text first, minimize outside links.
Look for content within Wikimedia space that already exists rather than re-create.

## Resources

Books and web sites that informed this course are
* Engineering and the Mind's Eye by Eugene S. Ferguson
* Engineering Design .. a project-based introduction by Clive Dym and Patrick Little
* The Engineer Entrepreneur By Daniel T. Koenig
* Lateral Thinking ... creativity step by step .. by Edward de Bono
* Design engineering: a manual for enhanced creativity, Volume 10 W. Ernst Eder, Wolfgang Ernst Eder, Stanislav Hosnedl
* Engineering design: a systematic approach By Gerhard Pahl
* Fundamentals of Engineering Documentation and Communication by Earl J. Scribner
* Engineering Labour by Peter Meiksins and Chris Smith
* Critical Perspectives on Nonacademic Science and Engineering by Paul T. Durbin
* An Introduction to Engineering and Engineering Design by Edward V. Krick
* Practical Engineering Design By Maja Bystrom, Bruce Eisenstein
* Introduction to Engineering Design by Arvid Eide, Roland Jenison, Lane Mashaw, Larry Northrup
* Strategies for Creative Problem Solving by H. Scott Fogler and Seven E. LeBlanc
* Introductory Engineering Design: A Project Based Approach by Javier Abarca, Al Bedard, Denise Carlson, Larry Carlson, Jean Hertzberg, Bev Louie, Jana Milford, René Reitsma, Trudy Schwartz and Jackie Sullivan
* Adventures from the Technology Underground by William Gurstelle
* How to Fossilize Your Hamster by Mick O'Hare
* CDIO
* TIDEE
ASEE Papers (there are lots of them)
NSF (freshman engineering)
ABET
# General Engineering Introduction/Arduino and Motors

The objective of this tutorial is to connect the arduino to several motors, a fax machine display and a solenoid.
* Arduino Introduction
* Motor Introduction
* Solenoid Connection
# Hiking in the Canadian Rockies/Day Hikes/Kananaskis/Canmore/Chinaman's Peak
## Information

PD
Distance - 1.6km
Elevation Gain - 732m

### Access

The trailhead can be accessed by driving up the Smith-Dorrien--Spray Trail (Hwy. 742), Parking in Whiteman's gap, at the Goat Creek parking lot.

## The Hike

Cross the highway and walk up the road to the canal and across the bridge. The trail starts behind the hut.
An enjoyable stroll turns into a steep climb following a watercourse, with some switchbacks nearing the treeline. as you emerge onto the scree be sure to note the location of the trail exit. You can make your way up the mountain directly, or hook right and follow the easier ridge. The Carin at the top is perched right on the edge, beware.
# Hiking in the Canadian Rockies/Day Hikes/Kananaskis/North Eastern Kananaskis

North eastern Kanaskis counts for the part of Kanaskis north of the Elbow River and the Elbow-Sheep wildland provincial park, and east of Exshaw. It includes Bow Valley Provincial Park, Barrier Lake, and the Sibbald area. It also includes the section of Bow Valley Wildland Provincial Park directly north of Bow Valley Provincial Park.

## Intermediate Hikes

* Barrier Lake and Prairie View Trail

## Mountains
### Advanced

* Black Rock Mountain
# Hiking in the Canadian Rockies/Day Hikes/Kananaskis
## Kananaskis

The Kananaskis Country is a large area, and can be divided into 6 distinct regions
* Bragg Creek and Elbow River
* Canmore
* Elbow Sheep Wildland Provincial Park
* North Eastern Kananaskis
* Peter Lougheed Provincial Park
* South Kananaskis
# Hiking in the Canadian Rockies/Day Hikes/Kananaskis/Bragg Creek and Elbow River

Bragg Creek and South of the elbow river encludes the Sheep River, Mclean Creek off road vehicle area, and the Elbow River Recreational Area.
# Hiking in the Canadian Rockies/Day Hikes/Kananaskis/Canmore
## Beginner Hikes

* Cougar Creek
* Goat Creek
* Stoneworks Canyon

## Intermediate Hikes

* Cougar Creek

## Mountains
### Intermediate

* Chinaman's Peak