OpenLLM-France/wikimedia huggingface dataset:
# AP Chemistry/Acids and Bases
## Polyprotic Acids

Can donate more than one hydrogen ion. (Bronsted-Lowry)

## Titration

Titration is the combining of a known concentration solution with an unknown concentration solution. The titration is stopped at the equivalence point, where all of the acid or base has been reacted. Polyprotic acids have more than one equivalence point. This is described by the equilibrium law of volumetric analysis: $MVn={\text{constant}}$ or simply $M_{1}V_{1}n_{1}=M_{2}V_{2}n_{2}$ , where $M$ is the mass, $V$is the volume of titrating acid drained from burette to the conical flask containing titrated base of volume a little more than that untitrated base in pippet, $n$ is the number of moles of that acid.

## Conjugate Acids and Bases

Conjugates differ by one hydrogen ion. Strong acids have weak base conjugates, and vice versa.

## Water Dissociation Constant

$K_{w}=[H^{+}][OH^{-}]=10^{-14}$ at 298K.

## Henderson-Hasselbalch Equation

The Henderson-Hasselbalch Equation finds the pH of a buffer solution by finding the ratio of conjugate base to acid and adding it to the pKa of the acid.
$pH=pK_{a}+\log _{10}({\frac {[A^{-}]}{[HA]}})$
For the chemical reaction:
${\ce {HA -> H+ + A-}}$
The Basics · Periodicity · Solids and Liquids · Gasses · Reactions · Stoichometry · Thermodynamics · Solutions · Acids and Bases · Equilibrium · Electrochemistry · Nuclear Chemistry · Organic Chemistry
Constants and Equations · About the AP Exam
# AP Chemistry/Constants and Equations
## Don't Need to Memorize

    D = density = M/V
    m = mass, molality
    M = Molar mass, molarity
    n = number of moles
    P = pressure
    T = temperature
    t = time
    V = volume

## Need to Memorize

    Avogadro's number = 6.02×10$^{23}$
    R = ideal gas constant = 0.0821 L•atm/K•mol
    PV = nRT (Ideal gas equation)
    1 atm = 760 torr = 760 mm Hg
    STP = 273K and 1 atm (100kPa)
    1 cal = 4.184 J = energy needed to warm 1 g (1 mL) of water by 1K.
The Basics · Periodicity · Solids and Liquids · Gasses · Reactions · Stoichometry · Thermodynamics · Solutions · Acids and Bases · Equilibrium · Electrochemistry · Nuclear Chemistry · Organic Chemistry
Constants and Equations · About the AP Exam
# AP Chemistry

About the AP Chemistry Exam

## About this Book

This book is not meant to be an introduction to chemistry. It is meant as an extra study guide for those who need last-minute preparation for the AP Chemistry exam. If you need a college-level book, try General Chemistry.

## Table of Contents

* The Basics
* Periodicity
* Solids and Liquids
* Gases
* Reactions
* Stoichometry
* Thermodynamics
* Solutions
* Acids and Bases
* Equilibrium
* Electrochemistry
* Kinetics
* Nuclear Chemistry
* Organic Chemistry

### Appendix

* Constants and Equations

## More Resources

* sample open-ended questions
* Subject:Chemistry
# AP Chemistry/About the AP Chemistry Exam

Advanced Placement exams are created and administered by the College Board, The same organization that does SATs. The AP exam tests your knowledge of a specific subject at the college level. It is scored from one to five, with three usually being the minimum to get college credit. The tests are taken in May, and the scores usually arrive by July.
It is not necessary to take an AP class to take that exam, and vice versa. However, it is a good idea to do so.
Unlike the SAT, AP exams contain open-ended questions in conjunction with multiple choice questions. Before the May 2011 AP exams, points were taken off for incorrect multiple choice answers, but this is no longer done.
The AP Chemistry exam contains two sections.
* A 75 question multiple-choice section that is 90 minutes long.
* An open ended section with six questions. This section is 95 minutes long, and is worth 75 points. It includes two parts (A and B). Part A is 55 minutes long and allows a calculator. It includes 3 questions. Part B is 40 minutes long, includes 3 questions, and does not allow a calculator. Students are allowed to work again on part A if they finish part B early, but they are not allowed to regain access to calculators.
In general, this is how the base score is converted into the final score:
    101-150 - 5
    81-100 - 4
    61-80 - 3
    41-60 - 2
    0-40 - 1

## What Should I Bring?

Pencils, pens, erasers, calculator, watch that doesn't beep, snacks, water, and tissues. As is with all AP exams, LEAVE YOUR CELL PHONE AT HOME OR IN CAR.
The Basics · Periodicity · Solids and Liquids · Gasses · Reactions · Stoichometry · Thermodynamics · Solutions · Acids and Bases · Equilibrium · Electrochemistry · Nuclear Chemistry · Organic Chemistry
Constants and Equations · About the AP Exam
# A Guide to the GRE/Percentages
## Percentages

Percentage is a fraction of 100. 11% = .11 =
Percent simply means “per hundred.” However, be careful not to mix up the two key ways in which percentages are used.
Do not mix up changing to a percentage with changing by a percentage.
If a group of 100 members decreases to 20% of its membership, its membership goes down to 20. If the group decreases by 20%, it goes down to 80. Increasing to 110% is the same as increasing by 10%. This also applies to fractions and decimals but is an especially common error with percentages.
# Pie Charts
## Rules

“Pie charts” indicate fractions of a total. The larger the “slice” the greater the fraction.
The chart below, for example, shows the fraction of flights taken to Buffalo as opposed to Syracuse, Albany, and New York City.
Chart-reading is usually fairly easy. Most question trip-ups involve manipulating the data in the chart.

## Practice

1. Approximately what percentage of the flights taken by LJ Air are bound for Albany, Buffalo, and Syracuse, respectively?
2. How many more flights would have to be taken to New York City for such flights to make up 60% of the total flights?

## Answers to Practice Questions

1. Albany, Buffalo, and Syracuse, respectively, make up roughly 27%, 13%, and 11% of flight departures. The numbers above in the chart are not percentages but rather absolute numbers. There are a total of 93 flights, meaning the percentages are the flights to these three cities - 25, 12, and 10 - respectively.
2. There are a total of 93 flights of which 46 are currently bound for New York City. The amount of increase necessary to raise this proportion to 60% can be solved using algebra. Let i equal the necessary increase to raise it to 60%.
= .6 Take the initial equation.
.4i = 9.8 Subtract .6i from both sides.
Approximately 25 flights are needed to increase the percentage to 60%.
# A Guide to the GRE/Positives and Negatives
## Positives & Negatives

Subtracting a negative is the same as adding a positive.
5 - -3 = 5 + 3 = 8
Adding a negative is the same as subtracting a positive.
2 + -5 = 2 – 5 = -3
Multiplying a negative and a positive equals a negative.
5(-3) = -15
Multiplying a negative and a negative equals a positive.
-7(-3) = 7(3) = 21
Thus, multiplying any odd number of negatives together equals a negative, while multiplying any even number of negatives together equals a positive.

### Practice

1. What is the value of 8(-4)?
2. If -2 - y is positive, then is y negative or positive?
3. x^77 is positive. Is x negative or positive?

### Answers to Practice Questions

1. -32
Multiplying a positive by a negative equals a negative.
2. y must be negative (and must be less than -2)
Subtracting a negative is the same as adding a positive. For example, y could equal -3. -2 - -3 = -2 + 3 = 1.
3. x must be positive.
A negative multiplied by a negative equals a positive (e.g., -1 ✕ -1 = 1), while a positive multiplied by a negative equals a negative (e.g., (-1 ✕ -1) ✕ -1 = 1 ✕ -1 = -1). Therefore, -1(-1)(-1) is negative, while -1(-1)(-1)(-1) is positive. Thus, any time an odd number of negatives are multiplied together, they equal a negative - meaning x must be positive, since 77 xs multiplied together are positive.
# A Guide to the GRE/Prime Numbers
## Prime Numbers

A prime number is a number only divisible by itself and 1.
Prime numbers between 1 and 100 are as follows:
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97
Some numbers like 51, 57 or 93 may look like prime numbers but are in fact divisible by an oddball prime number. These three are divisible by 17, 19 and 31, respectively.
Non-prime numbers can be divided into their prime factors.
A “factor” is a number by which a larger number can be divided. Non-prime numbers can be broken down into their prime factors using a factor tree.
24
This expression is known as the “prime factorization” of 24. When factoring numbers, it is typically easiest to divide by 2's and 3's when possible.

### Practice

1. What is the prime factorization of 100?
2. How many prime numbers are greater than 50 but less than 60?
3. Express 372 as a product of prime numbers.

### Answers to Practice Questions

1. 2$^2$(5$^2$) or (2)(2)(5)(5)
Prime factorization can be achieved by drawing a factor tree - picking any two numbers that a number divides into, and dividing downward.
100
The bottoms of the branches are the prime factors. It doesn't matter which two numbers are picked first. All factor trees lead to the same numbers.
100
2 10 / \
2. Two - 53 and 59.
51 is divisible by 17, while 57 is divisible by 19.
3. 2$^2$(3)(31) or 2(2)(3)(31)
As you can see, it is usually easier when factoring to take out 2's or 3's at first.
# Aeroacoustics

Aeroacoustics is a branch of acoustics science which studies the sound and noise generation by the airflow, commonly referred to as aerodynamic noise. Aeroacoustics is an active area of research with major applications in aeronautics and automotive industries.

## Contents

* Introduction
* Wave Equation and Green's function
* Linear Acoustics
* Acoustic Sources
* Nonlinear Effects
# Aeroacoustics/Introduction

Aeroacoustics is a branch of science which deals with aerodynamically generated noise. This is a relatively new branch of science which is known to be born by a celebrated paper of Sir James Lighthill in 1952. This paper, titled "On Sound Generated Aerodynamically. I. General Theory" was later proceeded by another Lighthill's original and ingenious paper , "On Sound Generated Aerodynamically. II. Turbulence as a Source of Sound" in 1954. These papers have been perhaps the most cited and well known papers among the aeroacoustic community.

## References

* M. J. Lighthill, "On Sound Generated Aerodynamically. I. General Theory," Proc. R. Soc. Lond. A 211 (1952) pp. 564–587. This article on JSTOR.
* M. J. Lighthill, "On Sound Generated Aerodynamically. II. Turbulence as a Source of Sound," Proc. R. Soc. Lond. A 222 (1954) pp. 1–32. This article on JSTOR.
# Afaan Oromo
## Preface

The Oromo language (also known as Afaan Oromoo and Oromiffa) is a Cushitic language spoken by about 50 million people in Ethiopia. This Wikibook is intended to provide an introduction to Oromo grammar and lexicon. Nama bifa gurracha Aduunyaati.
In an effort to aid in self-study, audio files have been embedded so that the reader may develop an ear for the spoken language and practice pronunciation.
Few resources are available, either in book form or online, for learning Oromo. It is my hope that this collection of lessons will prove valuable to those exploring the language, especially for Peace Corps volunteers, VSO volunteers, and other English speakers living in Oromia. I have tried to ensure that all Oromo words herein are correctly spelled and translated, all sentences grammatically correct, and all grammar points accurately explained. However, seeing that these lessons were compiled by a student of the language rather than a native speaker, I expect the errors to be many. I am indebted to my tutor, Fekadu Kano, for providing many translations, edits, and the sound bites for the text.

## Contents

* Introduction
* Alphabet and Pronunciation
# A-level Computing/AQA/Paper 1/Fundamentals of programming/Object-oriented programming concepts
## Specification

* Specification coverage
* 4.1.2 Programming paradigms
* 4.1.2.2 Procedural-oriented programming
* 4.1.2.3 Object-oriented programming

## Object-oriented programming

The key difference between procedural and object-oriented programming is that in procedural programming, the lines of code and the data the code operates on are stored separately. An object-oriented program puts all the data and the process that can be carried out on that data together in one place called an object and allows restrictions to be placed on how data can be manipulated by the code.
Object-oriented programming can be described as being organised in a way that reflects the real world. For example, in real life you may have an object, such as a bank. Inside that object there are various other objects such as customers and financial transactions. Inside each of those objects there are a number of data items and behaviours. For example, there are data about customers. These data are handled in a particular way and therefore have to be processed accordingly. For example, one process might be to add new customer data.
Another process might be that money withdrawn needs to be deducted from the balance.
In object-oriented programming, a banking application would be created to mirror these real-life relationships. So there might be one object will then contain customer data and all the processes needed for that data.
In most OOP languages classes are used, this allows the efficiency of programming to be increased.
There are a number of advantages to this approach:
* Programs are written in modules, which means that it is easy to amend programs as only the affected module needs editing
* It is also easier to add new functionality to a program by adding a new module
* Most programs are written by teams of programmers so the modular design approach allows groups of programmers to work independently on self-contained modules
* Objects can inherit attributes and behaviours, making code reusable throughout the program
* Changes carried out to data are made within an object rather than in the program. This makes it less likely that changes made to code will inadvertently affect the results of another routine, which is a common cause of bugs in software programs
* Libraries can be created, enabling code to be reused easily
# A-level Computing/AQA/Paper 1/Fundamentals of programming/Random number generation

An essential part of most games is the ability to use random numbers. These might be used to randomly place gold coins on a map, or to calculate whether you hit a target with a rifle at some distance.
The above code will give you a random number between 1 and 2,147,483,647. You might well require a number that is a little smaller. To get a random number between two set numbers, in this case 5 and 10 you can use the following:
So how exactly can we use this? Take a look at the following game:
Adjust the code above to tell the user how many guesses they took to find the random number. HINT: you'll need a variable
Answer:
# A-level Computing/AQA/Paper 1/Fundamentals of programming/Procedure-oriented programming
## Overview

Ordinary programs execute line after line until they reach the end. This is very simple to read through, but as programs become longer it is difficult to read, difficult to maintain, and bugs become more likely.
Procedure-oriented programming is a way of imposing structure onto a program - specifically: adding procedures - so that it is easier to work with.

### Example

Almost all programs use procedures to some extent. For instance, we need procedures to display output on the screen, or to read input from the user. But in Procedure-oriented programming, we also create new, customised, procedures as much as possible, to simplify the program itself.
Here's a program that is not procedure-oriented. It uses the "input" procedure, but repeats almost identical lines of code three times:
Here's the same example using Procedure-oriented Programming:
When a procedural program encounters a procedural name such as sum on line 1, then the program jumps off, executes the code corresponding to sum and returns to execute line 2.

## Benefits of Procedure-oriented programming

Adding procedures to a program has several benefits:
* Allows us to re-use code without re-typing it (reduces the time to write it)
* Allows us to re-use code that works (each time we re-write code, we have a chance of accidentally adding a bug)
* Makes it clearer what the program does and how (each procedure needs a name; the name explains what those lines of code are for)
* Reduces the length of the program (makes it easier and faster to read and debug)
* Allows compilers to make more optimizations (compilers detect the re-used code and use this to take shortcuts)
In the example above, the new procedure sum asked the user for two numbers, calculated the sum, and returned it. The name of the procedure enabled us to read the code and make intelligent guesses even without reading the contents of the sum procedure.

## Background

If a program only requires a few lines of source code to write down, there is little or no advantage to using this technique.
In particular, if none of your code is repeated, and there are no sections of inter-related code (eg. the three lines of code for summing two numbers above), then adding a procedure can make the program longer and harder to work with. Unnecessary procedures do not generally improve the program.
Procedure-oriented and Object-oriented programming were invented because programs were getting longer and longer, and were difficult to work with. Programmers needed more structure to simplify the programming process.
A program of moderate size and complexity can be simplified using procedures.
# A-level Computing/AQA/Paper 1/Fundamentals of programming/Stack Frames

We've previously discussed the benefits of using functions and subroutines when programming, but since each function is stored independently, the computer needs to be able to store what it has currently been working on (including its variables and parameters) and put it aside, so it can go to the new function and then be able to return to where it was. This is where a stack frame is used.
Consider the following program:
The program tries to open a file (called birthday_picture.png) by calling the subroutine openFile. This subroutine calls a function to make sure the file exists and based on the boolean value it returns (either True or False), the subroutine will continue to open the file or print out an error message. When the file is opened (or in the case the file doesn't exist, an error is printed out) the program writes a message before finishing.
To understand why a stack frame is needed, consider the very first subroutine the program starts in: Main. Once the program starts executing, it will look at the first line of instructions and go to the subroutine openFile. However, the computer needs to remember to come back to Main once done with openFile, otherwise it will never get to printing out the goodbye message! Similarly if we look at openFile, it has a call to fileExists, but the computer also needs to know to go back to openFile, and at the right point within openFile, otherwise it may try to open a file that doesn't exist!
The way the computer keeps track of all this is by creating a stack frame every time it gets called to another subroutine or function. Within this stack frame, it stores:
* the return address; this is the point it should go back to when it is done with the call
* local variables; these are the variables in the current subroutine/function that it should restore
* parameters; the data that is passed to the function/subroutine
A diagram may help you visualise this:
As the computer encounters a function or subroutine call, it stores the local variables, parameters and current address in memory and adds it to the stack. Once it is done with the call, it removes that frame from the stack and looks at the return address of the next frame (which would belong to the function that called it) and resumes executing at that point. This goes on until the stack is empty (i.e., it returns to the first subroutine in the program) and the program finishes.
# A-level Computing/CIE/Theory Fundamentals/Hardware

The physical parts of a computer system that you can see and touch such as the keyboard,mouse and mouse are called hardware.There are four main categories of computer hardware:
* Input devices: used to enter data into the computer
* Processing devices: manipulate the data
* Storage device: store data and programs
* Output devices: show results of the process
An input device is hardware component that allows you to enter the data or instruction into the computer. There are many manual/automatic input devices. Most widelu used input devices are:
* Keyboard
* Point devices
* 2d/3d scanners
keyboard Keyboard is the most commonly used input devices. The basic mechanical keyboard relies on springed keys being pressed down to complete an electrical circuit. This circuit then transmits a binary signal to the computer to represent the key pressed.
scanner Here are the steps that a scanner goes through when it scans a document: The document is placed on the glass plate and the cover is closed. The inside of the cover in most scanners is flat white, although a few are black. The cover provides a uniform background that the scanner software can use as a reference point for determining the size of the document being scanned. Most flatbed scanners allow the cover to be removed for scanning a bulky object, such as a page in a thick book. A lamp is used to illuminate the document. The lamp in newer scanners is either a cold cathode fluorescent lamp (CCFL) or a xenon lamp, while older scanners may have a standard fluorescent lamp. The entire mechanism (mirrors, lens, filter and CCD array) make up the scan head. The scan head is moved slowly across the document by a belt that is attached to a stepper motor. The scan head is attached to a stabilizer bar to ensure that there is no wobble or deviation in the pass. Pass means that the scan head has completed a single complete scan of the document. The image of the document is reflected by an angled mirror to another mirror. In some scanners, there are only two mirrors while others use a three mirror approach. Each mirror is slightly curved to focus the image it reflects onto a smaller surface. The last mirror reflects the image onto a lens. The lens focuses the image through a filter on the CCD array. The filter and lens arrangement vary based on the scanner. Some scanners use a three pass scanning method. Each pass uses a different color filter (red, green or blue) between the lens and CCD array. After the three passes are completed, the scanner software assembles the three filtered images into a single full-color image.
finger print technology
Fingerprint recognition or fingerprint authentication refers to the automated method of verifying a match between two human fingerprints. Fingerprints are one of many forms of biometrics used to identify individuals and verify their identity. Retina scanner Retina scanner is used to record the pattern of blood vessels at the back of someone eyes.
# A-level Computing/CIE/Operating Systems

Basic process flow:
Start - Fetch - Decode - Execute - Check for interrupt - No - Check for more instructions - No - Return to previous instruction? - No - End
Operating system is made out of 4 components:
The Scheduler
# A-level Computing/CIE/Theory Fundamentals

1.1 Number representation 1.2 Communication and Internet technologies 1.3 Hardware 1.4 Processor fundamentals 1.5 System software 1.6 Security, privacy and data integrity 1.7 Ethics and ownership 1.8 Database and data modelling