OpenLLM-France/wikimedia huggingface dataset:
# Physics with Calculus/Introduction/For Chemists

Chemistry as a science has benefited greatly from the development of physics. Physics has provided chemistry with many direct observations of ideas that were only previously theorized. For example, Avogadro's number was directly calculated by the observation of the decay of radioactive elements. The fundamental reasons for the structure of the periodic table were understood with the development of quantum mechanics. Linus Pauling's seminal work The Nature of the Chemical Bond solved complex chemical bonds using quantum mechanics. Many of the powerful tools that chemistry uses to probe the nature of matter rely on the application of physical principles. The richness of chemistry can only be appreciated as one comes to understand the foundations that it inherited from physics and the power these ideas have in pushing chemistry forward as it tries to solve problems in both the physical and biological worlds.
Since chemistry and physics have many things in common, the skills and techniques that are learned in the study of each discipline complement each other.
# Physics with Calculus/Electromagnetism/Field Energy

Taken from: https://en.wikipedia.org/wiki/Electrostatics#Electrostatic_energy
A single test particle's potential energy, $U_{\mathrm {E} }^{\text{single}}$, can be calculated from a line integral of the work, $q_{n}{\vec {E}}\cdot \mathrm {d} {\vec {\ell }}$. We integrate from a point at infinity, and assume a collection of $N$ particles of charge $Q_{n}$, are already situated at the points ${\vec {r}}_{i}$. This potential energy (in Joules) is:
    $U_{\mathrm {E} }^{\text{single}}=q\phi ({\vec {r}})={\frac {q}{4\pi \varepsilon _{0}}}\sum _{i=1}^{N}{\frac {Q_{i}}{\left\|{\mathfrak {\vec {r}}}_{i}\right\|}}$
where ${\vec {\mathfrak {r}}}_{i}={\vec {r}}-{\vec {r}}_{i},$ is the distance of each charge $Q_{i}$ from the test charge $q$, which situated at the point ${\vec {r}}$, and $\phi ({\vec {r}})$ is the electric potential that would be at ${\vec {r}}$ if the test charge were not present. If only two charges are present, the potential energy is $k_{e}Q_{1}Q_{2}/r$. The total electric potential energy due a collection of N charges is calculating by assembling these particles one at a time:
    $U_{\mathrm {E} }^{\text{total}}={\frac {1}{4\pi \varepsilon _{0}}}\sum _{j=1}^{N}Q_{j}\sum _{i=1}^{j-1}{\frac {Q_{i}}{r_{ij}}}={\frac {1}{2}}\sum _{i=1}^{N}Q_{i}\phi _{i},$
where the following sum from, j = 1 to N, excludes i = j:
    $\phi _{i}={\frac {1}{4\pi \varepsilon _{0}}}\sum _{j=1(j\neq i)}^{N}{\frac {Q_{j}}{4\pi \varepsilon _{0}r_{ij}}}.$
This electric potential, $\phi _{i}$ is what would be measured at ${\vec {r}}_{i}$ if the charge $Q_{i}$ were missing. This formula obviously excludes the (infinite) energy that would be required to assemble each point charge from a disperse cloud of charge. The sum over charges can be converted into an integral over charge density using the prescription $\sum (\cdots )\rightarrow \int (\cdots )\rho \mathrm {d} ^{3}r$:
    $U_{\mathrm {E} }^{\text{total}}={\frac {1}{2}}\int \rho ({\vec {r}})\phi ({\vec {r}})\operatorname {d} ^{3}r={\frac {\varepsilon _{0}}{2}}\int \left|{\mathbf {E} }\right|^{2}\operatorname {d} ^{3}r$,
This second expression for electrostatic energy uses the fact that the electric field is the negative gradient of the electric potential, as well as vector calculus identities in a way that resembles integration by parts. These two integrals for electric field energy seem to indicate two mutually exclusive formulas for electrostatic energy density, namely ${\frac {1}{2}}\rho \phi$ and ${\frac {\varepsilon _{0}}{2}}E^{2}$; they yield equal values for the total electrostatic energy only if both are integrated over all space.
# Physics with Calculus/Electromagnetism/Maxwell's Equations

So, to unify everything we have said about electricity and magnetism so far, we will write out Maxwell's equations together. Taken together, Maxwell's equations describe all of classical electrodynamics.
First we have Gauss' law:
$\oint _{S}{\vec {E}}\cdot d{\vec {A}}={\frac {Q_{encl}}{\epsilon _{0}}}$.
Gauss' law for magnetism is
$\oint _{S}{\vec {B}}\cdot d{\vec {A}}=0$.
Ampere's law is
$\oint _{C}{\vec {B}}\cdot d{\vec {s}}=\mu _{0}I_{encl}$.
Finally, Faraday's law is
$\oint _{C}{\vec {E}}=-{\frac {d\Phi _{B}}{dt}}$.
However, imagine a parallel plate capacitor. If we apply Ampere's law around the wire, and take the surface so that the wire cuts through it, we get one answer. But if we take the surface so that it goes in between the parallel plates, we get 0 for the surface integral! We have to revise our laws. Maxwell added in a term which essentially implies that when charge builds up, current has flowed in -- the conservation of charge. This manifests itself as a new term in Ampere's law (you can actually show that in order to have charge conserved, this is the only possible term that is legal and able to be measured):
$\oint _{C}{\vec {B}}\cdot d{\vec {s}}=\mu _{0}I_{encl}+\epsilon _{0}\mu _{0}{\frac {d\Phi _{E}}{dt}}$.
Look at the equations; there are two contour integral equations and two surface integral equations. The Ampere-Maxwell law and the Faraday law both have the derivative of the flux of the opposite field in them. It is not difficult to imagine that if we had a magnetic charge, Maxwell's equations would be completely symmetrical, up to the constants in front of terms.
Also, we can apply Green's Theorem to Maxwell's equations and obtain them in another form:
$\nabla \cdot E={\frac {\rho }{\epsilon _{0}}}$
$\nabla \cdot B=0$
$\nabla \times E+{\frac {\partial B}{\partial t}}=0$
$\nabla \times B-\epsilon _{0}\mu _{0}{\frac {\partial E}{\partial t}}=\mu _{0}J$.
Helmholtz's theorem states that a function is uniquely defined by it's divergence, curl, and suitable boundary conditions. If we play around with that theorem a little bit, we can show that Maxwell's equations completely specify all of electromagnetism.
# Physics with Calculus/Glossary

Closed systems are systems which do not interact with their environment. For example, if we are only considering the exchange of heat energy, the inside of an insulated box would be a closed system, since no heat can get in or out. Compare this with open systems.
Open systems are systems which interact with their environment, so that energy or mass can be added or removed from them. For example, a pot of water on a stove is an open system, because energy (in the form of heat) is added to the water by the stove. Compare this with closed systems.
# JavaScript/TOC OLD

* Welcome
** Introduction
** Relation to other languages
** Your first real program: Hello World
** JavaScript within HTML
** Handling events
** Development tools
** Self test
** Helpful hints
* Core Language Aspects
** Lexical structure
*** Automatic semicolon insertion (ASI)
*** Reserved words
** Variables
** Data types; Initialization
*** Primitive data type
*** Objects
*** Arrays
*** Dates
*** Regular Expressions
** Operators
** Program flow I: if, switch, try
** Program flow II: loops
** Functions
* Extended Language Aspects
** Closures
** Asynchronous behavior
** Object-oriented programming (OOP)
*** Prototype-based syntax
*** Class syntax
** Modules
** Sequence Generators
* Client Side Aspects
** Document Object Model (DOM)
*** Introduction
*** Finding elements
*** Changing element's content
*** Adding elements
*** Removing elements
*** Restructure the DOM tree
*** Changing element styles
** Events
*** Handling DOM events
** Digression: Simple games
*** Apply and deepen your knowledge
** Miscellaneous
    Hint: This chapter is partly outdated.
*** Debugging
*** Optimization
*** Shell
*** Forms
*** Bookmarklets
*** Working with files
*** Handling XML
*** Handling JSON
* Client-Server Communication
** Client-Server Communication
* JavaScript at Server-Side
** JavaScript at Server-side
* Appendices
** Glossary
** Index
** Links
** Useful software tools
** Best practices
# JavaScript/Variables/Exercises

Topic: Declaration and Initialization

## Be creative

* Explain to your colleague why programs need variables.
* Create a code snippet that defines a variable within a block scope. Access this variable within the block scope and outside of the block scope.
* Discuss with your colleague the advantages and disadvantages of using the global context.
# JavaScript/W3C event handlers

| Attribute | Trigger |
| onabort | Loading of image was interrupted |
| onblur | Element loses focus |
| onchange | Element gets modified |
| onclick | Element gets clicked |
| ondblclick | Element gets double clicked |
| onerror | An error occurred loading an element |
| onfocus | An element received focus |
| onkeydown | A key was pressed when an element has focus |
| onkeypress | A keystroke was received by the element |
| onkeyup | A key was released when the element has focus |
| onload | An element was loaded |
| onmousedown | The mouse button was pressed on the element |
| onmousemove | The mouse pointer moves while inside the element |
| onmouseout | The mouse pointer was moved outside the element |
| onmouseover | The mouse pointer was moved onto the element |
| onmouseup | The mouse button was released on the element. |
| onreset | The form's reset button was clicked |
| onresize | The containing window or frame was resized |
| onselect | Text within the element was selected |
| onsubmit | A form is being submitted |
| onunload | The content is being unloaded (e.g. window being closed) |
# JavaScript/Working with files

With pure HTML4 and pure JavaScript, there's really only one thing you can do with the users files:
The server sends a Web page that includes a form something like this:
and then, the browser allows the user to select one file, and the browser uploads it -- without any JavaScript on the client being able to see any of that data or cancel the transmission or even show a progress bar.
If you want JavaScript to know anything about the file before it is transmitted (for example, to immediately cancel the transmission of a large file rather than wait an hour for the file to be transmitted, then tell the user "File too large"; or to show a progress bar), you'll have to use something other than pure JavaScript on pure HTML4.
Some popular options are:
* use a modern Web browser that supports the HTML5 File API.
* use Flash (perhaps a tiny flash utility like Gmail uses to draw a little progress bar)
* use a Java applet
* use an ActiveX control

## References

* ↑ RFC 1867, RFC 2388
* ↑ Getting upload file size before upload
* ↑ Is it possible to use Ajax to do file upload?
* ↑ File API: W3C Last Call Working Draft 12 September 2013
* ↑ Reading files in JavaScript using the File APIs
# JavaScript/Working with the mouse
## Further reading

* JavaScript Events
* offsetX Property
* CSS Object Model: Extensions to the mouseevent Interface
* Creating an HTML5 Canvas Painting Application
* DOM Events Portability: Not that Hard
# Java Akka Streams
## Preamble

For teams that use Java with Akka Streams. Although Akka is written in Scala, there are teams who want to use Akka without writing Scala code. This book will help the Java team by providing a Java focused path to mastering Akka Streams.

## Table of Contents

* Sources
* Sinks
* Flows
* Reactive Streams
* Actors
# MATLAB Programming/Bonus Chapters/History of MATLAB
## History of MATLAB

During the late 1970's and early 1980's, Cleve Moler develop mathematical software package during his tenure as mathematics professor in University New Mexico as supplement teaching tools for his Numerical Analysis course.
His motivation at that time is to let his student to write EISPACK and LINPACK without having to code in FORTRAN programming languages. For this version of MATLAB1.0, there is only 71 mathematics functions at the beginning (which are built out of EISPACK and LINPACK) . Soon enough, the program package found its ways to other applied mathematics department around the USA. During this time, a student introduced MATLAB future co-founder, Jack Little . Jack Little had been in the graduate engineering program at Stanford and he adopted it for his own work.
In 1984, Cleve Moler co-founded MATLAB with Jack Little in California to commercialize and develop MATLAB. Jack Little suggested the creation of a commercial product based on MATLAB. He left his job and bought a Compaq® PC. Jack Little, together with Steve Banger spent 1.5 years to reprogram the MATLAB into C programming languages. Basically, the MATLAB version 1 is functioning like a matrix calculator and it is without any sophisticated features unlike today versions of MATLAB such as plotting, advance maths functions such as ODE , FFT, etc. PC-MATLAB made its debut in December 1984 at the IEEE Conference on Decision and Control in Las Vegas with some of most significant features such as functions, toolboxes, and graphics.

### References

https://dl.acm.org/doi/10.1145/3386331
https://blogs.mathworks.com/cleve/2020/06/13/history-of-matlab-published-by-the-acm/
https://www.youtube.com/watch?v=LDnSsM8bKUE
# MATLAB Programming/Bode Plot
## Introduction

This article is on the topic of creating Bode plots in MATLAB. The quick answer is use the bode command. However, the bode command has several options and the plots generated by the bode command are not easily reformatted. The default formatting of most MATLAB plots is good for analysis but less than ideal for dropping into Word and PowerPoint documents or even this website. As a result this article presents an alternative that requires more lines of code but offers the full formatting flexibility of the generic plot command.

## MATLAB's Bode Command

The basic bode command is as follows
where
   * LTI_SYS is an LTI object - TF, SS, ZPK, or FRD
The bode command will automatically call gcf which will put the bode plot on the current figure. If no figure exists then one is created by gcf.
If you wish to specify the frequency points at which LTI_SYS is plotted then create a frequency vector using logspace or linspace as follows
where
   * freqVec is a vector of 5000 frequencies, in Hz, spaced evenly on a log scale from 10$^{-1}$ to 10$^3$
   * pi is a MATLAB constant equal to the value of $\pi$ and in this case it is used to convert freqVec to rad/sec as it is passed to the bode command
In order to get the magnitude and phase at each frequency point the bode command must be called with output arguments such as
or
where
   * mag is the magnitude (not in dB) at each point in freqVec
   * phase is the phase (in degrees) at each point in freqVec
The mag and phase variables must come out as 3D arrays. Assuming LTI_SYS is SISO then the commands below will convert mag and phase into the vectors you would expect

### Issues with the bode command

The main issue with the bode command is reformatting of the plot. The bode command appears to use a normal semilogx plot and then apply patches ro something similar to the figure. This can lead to odd behavior when attempting to create multi-line titles, reformat line widths or font sizes, etc. The normal relationship of axes to figure is just not quite present.

## External Links

* More on Bode plots at ControlTheoryPro.com
# Oracle and DB2, Comparison and Compatibility/Process Model/Consistency
## Overview

In the section on database operation, great emphasis was placed on database consistency. There are whole suites of processes in the DBMS dedicated to preserving database consistency during its normal course of operation. The objective is that consistency is enforced by never allowing any operation to compromise consistency. Since consistency is so important, and there are things outside ‘normal’ database operations that can affect database consistency (power outages, power spikes, media failures etc.) all databases have additional processes that can be run against the database to check that the database is consistent, and in some cases rectify inconsistencies. Referred to earlier as a ‘Belt and Braces’ strategy, this may also be described more accurately as ‘Trust, but Verify’.
# Oracle and DB2, Comparison and Compatibility/Process Model/Consistency/Oracle
## Oracle

The ANALYZE command, seen earlier in this chapter in the optimizer section, is the command that Oracle uses to verify the integrity of a table, index, cluster, or materialized view. In this instance, you use the ANALYZE statement with the VALIDATE STRUCTURE option. If the structure is corrupt you will get an error message.
Validation of an index, for example confirms that every entry in the index points to the correct row of the associated table. To correct a corrupted index, table or cluster, you can drop and re-create it. If a materialized view is corrupt, you should do a refresh and see if this corrects the problem. If not, you need to drop and re-create it.
You can validate an object and all dependent objects with the CASCADE option. Because CASCADE is resource intensive, you can validate quicker with FAST. FAST checks for corruptions using an optimized check algorithm. FAST does not report details about the corruption, so if you find a corruption, you need to use CASCADE option without FAST to locate it. It is also possible to validate online in your SQL, but there is a performance overhead.
dbverify allows external analysis of database blocks to see if the actual block structure corresponds to the expected block structure. dbverify may report phantom corruptions if it is run against an open database (The DBWR process may interfere with dbverify).
Another means of checking for corruption in your Oracle database is to export it (either the whole database, or selected objects). If you are only interested in corruptions, you can export the database to a dummy file. Errors found in the export will indicate if there are corruptions/consistency problems in the database.
# Project Management/Organization structures

Organization structures can be divided in three ways: functional, matrix and projectized.
They differ basically by allocation, supervision and coordination according to PM authority, PM allocation and budget control.
| Organization structure | Characteristics |
| Functional | Functional manager controls budget PM works as part time in projects |
| Matrix | Varies from weak matrix to strong matrix based on: Higher PM authority If functional manager or PM controls budget PM working as part-time or full-time in projects |
| Projectized | PM as authority PM controls budget PM works as full-time in projects |
# Project Management/PMBOK
## Process Groups, Knowledge Areas, and Inputs and Outputs

PMBOK contents are summarized in a formalized guide, which is published by the Project Management Institute. As stated previously in this book, the PMBOK is a process based approach to managing projects.
The five process Groups covered in the PMBOK are as follows:
* Initiating: defines and authorizes the project (i.e. create project charter).
* Planning: shapes the outcomes/goals for the project by knowledge area.
* Executing: carries out project plans.
* Controlling and Monitoring: assesses actual project outcomes to planned targets and makes corrective actions when necessary.
* Closing: obtains a formal acceptance of the product/service by stakeholders and tapers out project activities in a planned, organized fashion.
How the PMBOK got its name is largely related to how it categorizes key aspects of a project, which are termed as "knowledge areas." There are nine knowledge areas. Knowledge areas are organized by their role in a project. For example, core areas are considered to be the pillars of a project. Changing one aspect of a core area will have direct consequences on other core areas. For example, if a project is modified to include more functionality, then time, cost, and [sometimes] quality factors shift to accommodate changes to scope. This is known as the triple/quadruple constraint. On the other hand, there are knowledge areas that are supportive to project success factors, but are not seen as foundational. These are called facilitating functions. Lastly, what ties all knowledge areas together is integration management, or coordinating all components of a project.

### Core Knowledge Areas

* Scope Management
* Time Management
* Cost Management
* Quality Management

### Facilitating Knowledge Areas

* Communications Management
* Human Resources Management
* Risk Management
* Procurement Management

### Coordination Knowledge Area

* Integration Management
* Stakeholder Management

## References

* Project Management Institute (2017). A Guide to the Project Management Body of Knowledge (PMBOK® Guide). 6th ed. Newtown Square: Project Management Institute.
* Project Management Process Groups 101—PMBOK 6th Edition Update
# Project Management

Project Management is an organized approach to guiding a project from its inception to closure. Managing projects is becoming more and more important as we enter the digital era. To cope with the pace that this transition demands, a method is required to manage projects so they can yield quality work, while incorporating efficient use of time and resources. In this Wikibook, several project management methods/processes are outlined: the Project Management Body of Knowledge (PMBOK) and Projects in Controlled Environments (PRINCE2) approaches can be applied to managing any type of project; whereas methods such as SDM, DSDM, RAD, ISAC, SA/SD, IEM and OO are specific to managing Information Technology (IT) projects. Before some of these project management methods/processes are explored in this Wikibook, we will review some project essentials, such as the definition of a project and the project lifecycle.

## Table of Contents

    Fundamentals
    Portfolios/Programs Management
    Organization structures

### The Project Management Body of Knowledge (PMBOK)
#### Core Knowledge Areas

* Scope Management
* Time Management
* Cost Management
* Quality Management

#### Facilitating Knowledge Areas

* Communications Management
* Human Resources Management
* Risk Management
* Procurement Management

#### Coordination Knowledge Area

* Integration Management

### PRINCE2 (PRojects In Controlled Environments)

* Starting Up a Project
* Directing a Project
* Initiating a Project
* Controlling a Stage
* Managing Stage Boundaries
* Managing Product Delivery
* Closing a Project

### Case Studies

* Northstar

### Appendices

* FAQs

## References

* A Guide to the Project Management Body of Knowledge (third ed.), Project Management Institute, 2004, ISBN 193069945X
* Schwalbe, K. (2005), Introduction to Project Management, Course Technology, ISBN 978-1-4188-3559-0
* Satzinger; Jackson; Burd (2006), Systems Analysis and Design in a Changing World (fourth ed.), Thompson Learning, ISBN 1418836125
* Baars, Wouter (2008), Open Source Project Management Handbook, Edita-KNAW, ISBN ISBN 90 6984 496 6 {{citation}}: Check |isbn= value: invalid character (help)