1
Fork 0
mirror of https://github.com/Steffo99/unisteffo.git synced 2024-11-26 01:44:20 +00:00
This commit is contained in:
Steffo 2019-11-10 16:38:54 +01:00
parent 76be5f6b99
commit 0937cfcb8c
30 changed files with 15433 additions and 54 deletions

1
.gitignore vendored
View file

@ -1,3 +1,2 @@
node_modules
/build
/*.log

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 24 KiB

BIN
build/assets/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

2
build/bundle.3a2b2.js Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

BIN
build/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

1
build/index.html Normal file

File diff suppressed because one or more lines are too long

12
build/manifest.json Normal file
View file

@ -0,0 +1,12 @@
{
"name": "preact-cli app",
"start_url": "/",
"display": "standalone",
"background_color": "#fff",
"theme_color": "#673ab8",
"icons": [{
"src": "/assets/icon.png",
"type": "image/png",
"sizes": "512x512"
}]
}

2
build/polyfills.c6a1c.js Normal file
View file

@ -0,0 +1,2 @@
!function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s="g9Sn")}({CxuT:function(e){var t;t=function(){return this}();try{t=t||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(t=window)}e.exports=t},LKQF:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="function"==typeof fetch?fetch.bind():function(e,t){return t=t||{},new Promise(function(n,o){function r(){var e,t=[],n=[],o={};return i.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,function(r,i,u){t.push(i=i.toLowerCase()),n.push([i,u]),e=o[i],o[i]=e?e+","+u:u}),{ok:2==(i.status/100|0),status:i.status,statusText:i.statusText,url:i.responseURL,clone:r,text:function(){return Promise.resolve(i.responseText)},json:function(){return Promise.resolve(i.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([i.response]))},headers:{keys:function(){return t},entries:function(){return n},get:function(e){return o[e.toLowerCase()]},has:function(e){return e.toLowerCase()in o}}}}var i=new XMLHttpRequest;i.open(t.method||"get",e,!0);for(var u in t.headers)i.setRequestHeader(u,t.headers[u]);i.withCredentials="include"==t.credentials,i.onload=function(){n(r())},i.onerror=o,i.send(t.body||null)})}},UNEV:function(e,t,n){e.exports=window.fetch||(window.fetch=n("LKQF").default||n("LKQF"))},g9Sn:function(e,t,n){"use strict";(function(e){e.Promise||(e.Promise=n("uQqn")),e.fetch||(e.fetch=n("UNEV"))}).call(t,n("CxuT"))},uQqn:function(e){!function(t){function n(){}function o(e,t){return function(){e.apply(t,arguments)}}function r(e){if(!(this instanceof r))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],a(e,this)}function i(e,t){for(;3===e._state;)e=e._value;if(0===e._state)return void e._deferreds.push(t);e._handled=!0,r._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null===n)return void(1===e._state?u:c)(t.promise,e._value);var o;try{o=n(e._value)}catch(e){return void c(t.promise,e)}u(t.promise,o)})}function u(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"==typeof t||"function"==typeof t)){var n=t.then;if(t instanceof r)return e._state=3,e._value=t,void s(e);if("function"==typeof n)return void a(o(n,t),e)}e._state=1,e._value=t,s(e)}catch(t){c(e,t)}}function c(e,t){e._state=2,e._value=t,s(e)}function s(e){2===e._state&&0===e._deferreds.length&&r._immediateFn(function(){e._handled||r._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;t<n;t++)i(e,e._deferreds[t]);e._deferreds=null}function f(e,t,n){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=n}function a(e,t){var n=!1;try{e(function(e){n||(n=!0,u(t,e))},function(e){n||(n=!0,c(t,e))})}catch(e){if(n)return;n=!0,c(t,e)}}var l=setTimeout;r.prototype.catch=function(e){return this.then(null,e)},r.prototype.then=function(e,t){var o=new this.constructor(n);return i(this,new f(e,t,o)),o},r.all=function(e){return new r(function(t,n){function o(e,u){try{if(u&&("object"==typeof u||"function"==typeof u)){var c=u.then;if("function"==typeof c)return void c.call(u,function(t){o(e,t)},n)}r[e]=u,0==--i&&t(r)}catch(e){n(e)}}if(!e||void 0===e.length)throw new TypeError("Promise.all accepts an array");var r=Array.prototype.slice.call(e);if(0===r.length)return t([]);for(var i=r.length,u=0;u<r.length;u++)o(u,r[u])})},r.resolve=function(e){return e&&"object"==typeof e&&e.constructor===r?e:new r(function(t){t(e)})},r.reject=function(e){return new r(function(t,n){n(e)})},r.race=function(e){return new r(function(t,n){for(var o=0,r=e.length;o<r;o++)e[o].then(t,n)})},r._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){l(e,0)},r._unhandledRejectionFn=function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)},r._setImmediateFn=function(e){r._immediateFn=e},r._setUnhandledRejectionFn=function(e){r._unhandledRejectionFn=e},void 0!==e&&e.exports?e.exports=r:t.Promise||(t.Promise=r)}(this)}});
//# sourceMappingURL=polyfills.c6a1c.js.map

File diff suppressed because one or more lines are too long

1
build/push-manifest.json Normal file
View file

@ -0,0 +1 @@
{"/":{"style.d5a9c.css":{"type":"style","weight":1},"bundle.3a2b2.js":{"type":"script","weight":1}}}

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,2 @@
*{-webkit-box-sizing:border-box;box-sizing:border-box}body{background-color:#0d193b;color:#a0ccff;font-family:sans-serif}h1,h2,h3,h4,h5,h6{text-align:center;margin-top:4px;margin-bottom:4px;color:#fff;font-weight:400}a{color:#00caca;text-decoration:none}a:hover{color:#4affff}a:active{color:#fff}.latex__34DCT{display:inline-block;vertical-align:middle}.panel__22fOQ{background-color:rgba(62.7%,80%,100%,10%);padding:4px;border-radius:4px;margin:4px;height:calc(100% - 8px);min-width:200px}.split__2Bl8C{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.splitchild__3Ip86{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:0;flex-basis:0}.copyright__TBGn1{margin-top:8px;color:#fff;text-align:center;font-size:x-small}
/*# sourceMappingURL=style.d5a9c.css.map*/

View file

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///./D:/Codice/appuntiweb/src/index.css","webpack:///./components/D:/Codice/appuntiweb/src/components/latex.css","webpack:///./components/D:/Codice/appuntiweb/src/components/panel.css","webpack:///./components/D:/Codice/appuntiweb/src/components/split.css","webpack:///./components/D:/Codice/appuntiweb/src/components/copyright.css"],"names":[],"mappings":"AAAA,EACC,8BAAuB,sBAGxB,KACC,yBACA,cACA,sBAAwB,CAGzB,kBACC,kBACA,eACA,kBACA,WACA,eAAoB,CAGrB,EACI,cACA,oBAAsB,CAG1B,QACC,aAAe,CAGhB,SACC,UAAe,CC5BhB,cACI,qBACA,qBAAuB,CCF3B,cACI,0CACA,YACA,kBACA,WACA,wBACA,eAAiB,CCNrB,cACI,oBAAc,iCACd,mBAAgB,eAGpB,mBACI,mBAAa,gCACb,oBAAe,cACf,0BAAc,aCRlB,kBACI,eACA,WACA,kBACA,iBAAmB","file":"style.d5a9c.css","sourcesContent":["* {\n\tbox-sizing: border-box;\n}\n\nbody {\n\tbackground-color: #0d193b;\n\tcolor: #a0ccff;\n\tfont-family: sans-serif;\n}\n\nh1, h2, h3, h4, h5, h6 {\n\ttext-align: center;\n\tmargin-top: 4px;\n\tmargin-bottom: 4px;\n\tcolor: #ffffff;\n\tfont-weight: normal;\n}\n\na {\n color: #00caca;\n text-decoration: none;\n}\n\na:hover {\n\tcolor: #4affff;\n}\n\na:active {\n\tcolor: #ffffff;\n}\n\n\n// WEBPACK FOOTER //\n// ./D:/Codice/appuntiweb/src/index.css",".latex {\n display: inline-block;\n vertical-align: middle;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/latex.css",".panel {\n background-color: rgba(62.7%, 80%, 100%, 10%);\n padding: 4px;\n border-radius: 4px;\n margin: 4px;\n height: calc(100% - 8px);\n min-width: 200px;\n}\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/panel.css",".split {\n display: flex;\n flex-wrap: wrap;\n}\n\n.splitchild {\n flex-grow: 1;\n flex-shrink: 0;\n flex-basis: 0;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/split.css",".copyright {\r\n margin-top: 8px;\r\n color: white;\r\n text-align: center;\r\n font-size: x-small;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/copyright.css"],"sourceRoot":""}

2
build/style.d5a9c.css Normal file
View file

@ -0,0 +1,2 @@
*{-webkit-box-sizing:border-box;box-sizing:border-box}body{background-color:#0d193b;color:#a0ccff;font-family:sans-serif}h1,h2,h3,h4,h5,h6{text-align:center;margin-top:4px;margin-bottom:4px;color:#fff;font-weight:400}a{color:#00caca;text-decoration:none}a:hover{color:#4affff}a:active{color:#fff}.latex__34DCT{display:inline-block;vertical-align:middle}.panel__22fOQ{background-color:rgba(62.7%,80%,100%,10%);padding:4px;border-radius:4px;margin:4px;height:calc(100% - 8px);min-width:200px}.split__2Bl8C{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.splitchild__3Ip86{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:0;flex-basis:0}.copyright__TBGn1{margin-top:8px;color:#fff;text-align:center;font-size:x-small}
/*# sourceMappingURL=style.d5a9c.css.map*/

View file

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///./D:/Codice/appuntiweb/src/index.css","webpack:///./components/D:/Codice/appuntiweb/src/components/latex.css","webpack:///./components/D:/Codice/appuntiweb/src/components/panel.css","webpack:///./components/D:/Codice/appuntiweb/src/components/split.css","webpack:///./components/D:/Codice/appuntiweb/src/components/copyright.css"],"names":[],"mappings":"AAAA,EACC,8BAAuB,sBAGxB,KACC,yBACA,cACA,sBAAwB,CAGzB,kBACC,kBACA,eACA,kBACA,WACA,eAAoB,CAGrB,EACI,cACA,oBAAsB,CAG1B,QACC,aAAe,CAGhB,SACC,UAAe,CC5BhB,cACI,qBACA,qBAAuB,CCF3B,cACI,0CACA,YACA,kBACA,WACA,wBACA,eAAiB,CCNrB,cACI,oBAAc,iCACd,mBAAgB,eAGpB,mBACI,mBAAa,gCACb,oBAAe,cACf,0BAAc,aCRlB,kBACI,eACA,WACA,kBACA,iBAAmB","file":"style.d5a9c.css","sourcesContent":["* {\n\tbox-sizing: border-box;\n}\n\nbody {\n\tbackground-color: #0d193b;\n\tcolor: #a0ccff;\n\tfont-family: sans-serif;\n}\n\nh1, h2, h3, h4, h5, h6 {\n\ttext-align: center;\n\tmargin-top: 4px;\n\tmargin-bottom: 4px;\n\tcolor: #ffffff;\n\tfont-weight: normal;\n}\n\na {\n color: #00caca;\n text-decoration: none;\n}\n\na:hover {\n\tcolor: #4affff;\n}\n\na:active {\n\tcolor: #ffffff;\n}\n\n\n// WEBPACK FOOTER //\n// ./D:/Codice/appuntiweb/src/index.css",".latex {\n display: inline-block;\n vertical-align: middle;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/latex.css",".panel {\n background-color: rgba(62.7%, 80%, 100%, 10%);\n padding: 4px;\n border-radius: 4px;\n margin: 4px;\n height: calc(100% - 8px);\n min-width: 200px;\n}\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/panel.css",".split {\n display: flex;\n flex-wrap: wrap;\n}\n\n.splitchild {\n flex-grow: 1;\n flex-shrink: 0;\n flex-basis: 0;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/split.css",".copyright {\r\n margin-top: 8px;\r\n color: white;\r\n text-align: center;\r\n font-size: x-small;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./components/D:/Codice/appuntiweb/src/components/copyright.css"],"sourceRoot":""}

1
build/sw.js Normal file
View file

@ -0,0 +1 @@
"use strict";var precacheConfig=[["/assets/icon.png","cf3fdf7af60a294d6d3f48cb7ad82488"],["/bundle.3a2b2.js","0c93fb3a87d802a54668968676ac0e70"],["/favicon.ico","94eae66bebbd6bbfe48a669f245048ac"],["/index.html","be5f87627b4741acd375e33c3502dce3"],["/manifest.json","310a916537fc6f66deb88310b13a2759"],["/style.d5a9c.css","191ab63825677d4b9a2e5665c93bf9fb"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(e,t){var n=new URL(e);return"/"===n.pathname.slice(-1)&&(n.pathname+=t),n.toString()},cleanResponse=function(e){return e.redirected?("body"in e?Promise.resolve(e.body):e.blob()).then(function(t){return new Response(t,{headers:e.headers,status:e.status,statusText:e.statusText})}):Promise.resolve(e)},createCacheKey=function(e,t,n,r){var a=new URL(e);return r&&a.pathname.match(r)||(a.search+=(a.search?"&":"")+encodeURIComponent(t)+"="+encodeURIComponent(n)),a.toString()},isPathWhitelisted=function(e,t){if(0===e.length)return!0;var n=new URL(t).pathname;return e.some(function(e){return n.match(e)})},stripIgnoredUrlParameters=function(e,t){var n=new URL(e);return n.hash="",n.search=n.search.slice(1).split("&").map(function(e){return e.split("=")}).filter(function(e){return t.every(function(t){return!t.test(e[0])})}).map(function(e){return e.join("=")}).join("&"),n.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(e){var t=e[0],n=e[1],r=new URL(t,self.location),a=createCacheKey(r,hashParamName,n,!1);return[r.toString(),a]}));function setOfCachedUrls(e){return e.keys().then(function(e){return e.map(function(e){return e.url})}).then(function(e){return new Set(e)})}self.addEventListener("install",function(e){e.waitUntil(caches.open(cacheName).then(function(e){return setOfCachedUrls(e).then(function(t){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(n){if(!t.has(n)){var r=new Request(n,{credentials:"same-origin"});return fetch(r).then(function(t){if(!t.ok)throw new Error("Request for "+n+" returned a response with status "+t.status);return cleanResponse(t).then(function(t){return e.put(n,t)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(e){var t=new Set(urlsToCacheKeys.values());e.waitUntil(caches.open(cacheName).then(function(e){return e.keys().then(function(n){return Promise.all(n.map(function(n){if(!t.has(n.url))return e.delete(n)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(e){if("GET"===e.request.method){var t,n=stripIgnoredUrlParameters(e.request.url,ignoreUrlParametersMatching);(t=urlsToCacheKeys.has(n))||(n=addDirectoryIndex(n,"index.html"),t=urlsToCacheKeys.has(n));!t&&"navigate"===e.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],e.request.url)&&(n=new URL("index.html",self.location).toString(),t=urlsToCacheKeys.has(n)),t&&e.respondWith(caches.open(cacheName).then(function(e){return e.match(urlsToCacheKeys.get(n)).then(function(e){if(e)return e;throw Error("The cached response that was expected is missing.")})}).catch(function(t){return console.warn('Couldn\'t serve response for "%s" from cache: %O',e.request.url,t),fetch(e.request)}))}});

1
docs Symbolic link
View file

@ -0,0 +1 @@
build

View file

@ -1,16 +1,16 @@
{
"name": "appuntiweb",
"short_name": "appuntiweb",
"name": "Appunti Web",
"short_name": "Appunti Web",
"start_url": "/",
"display": "standalone",
"orientation": "portrait",
"background_color": "#fff",
"theme_color": "#673ab8",
"background_color": "#0d193b",
"theme_color": "#a0ccff",
"icons": [
{
"src": "/assets/icon.png",
"type": "image/png",
"sizes": "512x512"
"sizes": "800x800"
}
]
}

12858
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
{
"private": true,
"name": "appuntiweb",
"version": "0.0.0",
"version": "0.1.0",
"license": "MIT",
"scripts": {
"start": "if-env NODE_ENV=production && npm run -s serve || npm run -s dev",

View file

@ -0,0 +1,6 @@
.copyright {
margin-top: 8px;
color: white;
text-align: center;
font-size: x-small;
}

View file

@ -0,0 +1,8 @@
import style from "./copyright.css";
import { Component } from 'preact';
export default class Copyright extends Component {
render() {
return <div class={style.copyright}>© 2019 - Stefano Pigozzi - <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a></div>;
}
}

View file

@ -4,4 +4,5 @@
border-radius: 4px;
margin: 4px;
height: calc(100% - 8px);
min-width: 200px;
}

View file

@ -4,9 +4,15 @@ import { Component } from 'preact';
export default class Split extends Component {
render() {
let percent = 100 / this.props.children.count;
let children = this.props.children.map(element => {
let children = null;
if(Array.isArray(this.props.children)) {
children = this.props.children.map(element => {
return (<div class={style.splitchild}>{element}</div>);
});
}
else {
children = <div class={style.splitchild}>{this.props.children}</div>;
}
return <div class={style.split}>{children}</div>;
}
}

View file

@ -15,3 +15,16 @@ h1, h2, h3, h4, h5, h6 {
color: #ffffff;
font-weight: normal;
}
a {
color: #00caca;
text-decoration: none;
}
a:hover {
color: #4affff;
}
a:active {
color: #ffffff;
}

View file

@ -1,11 +1,15 @@
import './index.css';
import { Component } from 'preact';
import Fisica from './pages/fisica'
import Fisica from './pages/fisica';
import Copyright from './components/copyright';
export default class App extends Component {
render() {
return (
<div>
<Fisica></Fisica>
<Copyright></Copyright>
</div>
);
}
}

View file

@ -4,6 +4,8 @@ import Latex from '../components/latex';
import Panel from '../components/panel';
import Split from '../components/split';
const r = String.raw;
export default class Fisica extends Component {
render() {
return (
@ -19,13 +21,13 @@ export default class Fisica extends Component {
Usa le regole base della trigonometria:
</p>
<p>
<Latex>{String.raw`\vec{v} = \vec{v}_x + \vec{v}_y`}</Latex>
<Latex>{r`\vec{v} = \vec{v}_x + \vec{v}_y`}</Latex>
</p>
<p>
<Latex>{String.raw`\left | \vec{v}_x \right | = \left | \vec{v} \right | \sin \alpha`}</Latex>
<Latex>{r`\left | \vec{v}_x \right | = \left | \vec{v} \right | \sin \alpha`}</Latex>
</p>
<p>
<Latex>{String.raw`\left | \vec{v}_y \right | = \left | \vec{v} \right | \cos \alpha`}</Latex>
<Latex>{r`\left | \vec{v}_y \right | = \left | \vec{v} \right | \cos \alpha`}</Latex>
</p>
</Panel>
<Panel>
@ -36,7 +38,7 @@ export default class Fisica extends Component {
Scomponi in componenti, poi sommali:
</p>
<p>
<Latex>{String.raw`\vec{v} + \vec{w} = (\vec{v}_x + \vec{w}_x) + (\vec{v}_y + \vec{w}_y)`}</Latex>
<Latex>{r`\vec{v} + \vec{w} = (\vec{v}_x + \vec{w}_x) + (\vec{v}_y + \vec{w}_y)`}</Latex>
</p>
<p>
Produce il vettore risultante dall'applicazione della regola del parallelogramma.
@ -50,7 +52,7 @@ export default class Fisica extends Component {
Alla fine è sempre una somma:
</p>
<p>
<Latex>{String.raw`\vec{v} - \vec{w} = (\vec{v}_x - \vec{w}_x) + (\vec{v}_y - \vec{w}_y)`}</Latex>
<Latex>{r`\vec{v} - \vec{w} = (\vec{v}_x - \vec{w}_x) + (\vec{v}_y - \vec{w}_y)`}</Latex>
</p>
<p>
Produce il vettore che parte da <Latex>w</Latex> e arriva a <Latex>v</Latex>.
@ -64,10 +66,10 @@ export default class Fisica extends Component {
Si chiama scalare perchè il risultato è uno scalare, non un vettore.
</p>
<p>
<Latex>{String.raw`\vec{v} \cdot \vec{w} = \left | \vec{v} \right | \left | \vec{w} \right | \cos \alpha`}</Latex>
<Latex>{r`\vec{v} \cdot \vec{w} = \left | \vec{v} \right | \left | \vec{w} \right | \cos \alpha`}</Latex>
</p>
<p>
Produce il modulo della proiezione di <Latex>{String.raw`\vec{a}`}</Latex> su <Latex>{String.raw`\vec{b}`}</Latex>.
Produce il modulo della proiezione di <Latex>{r`\vec{a}`}</Latex> su <Latex>{r`\vec{b}`}</Latex>.
</p>
</Panel>
</Split>
@ -83,7 +85,7 @@ export default class Fisica extends Component {
Se un corpo puntiforme ha forza risultante nulla, allora la sua velocità non cambia.
</p>
<p>
<Latex>{String.raw`\Sigma \vec{F} = 0 \Longleftrightarrow \Delta v = 0`}</Latex>
<Latex>{r`\Sigma \vec{F} = 0 \Longleftrightarrow \Delta v = 0`}</Latex>
</p>
</Panel>
<Panel>
@ -94,7 +96,7 @@ export default class Fisica extends Component {
La forza risultante di un corpo è direttamente proporzionale alla sua accelerazione, e la costante di proporzionalità è la <i>massa</i>.
</p>
<p>
<Latex>{String.raw`\Sigma \vec{F} = m \vec{a}`}</Latex>
<Latex>{r`\Sigma \vec{F} = m \vec{a}`}</Latex>
</p>
</Panel>
<Panel>
@ -105,7 +107,7 @@ export default class Fisica extends Component {
Due corpi esercitano forze uguali e opposte uno sull'altro.
</p>
<p>
<Latex>{String.raw`\vec{F}_{21} = -\vec{F}_{12}`}</Latex>
<Latex>{r`\vec{F}_{21} = -\vec{F}_{12}`}</Latex>
</p>
</Panel>
</Split>
@ -121,13 +123,13 @@ export default class Fisica extends Component {
Due corpi puntiformi si attirano uno verso l'altro con forza:
</p>
<p>
<Latex>{String.raw`\left | \vec{F} \right | = G \frac{m_1 m_2}{s^2}`}</Latex>
<Latex>{r`\left | \vec{F} \right | = G \frac{m_1 m_2}{s^2}`}</Latex>
</p>
<p>
<Latex>G</Latex> è la <i>costante di gravitazione universale</i> e vale:
</p>
<p>
<Latex>{String.raw`G = 6.67 \cdot 10^{-11} \frac{N m^2}{{kg}^2}`}</Latex>
<Latex>{r`G = 6.67 \cdot 10^{-11} \frac{N m^2}{{kg}^2}`}</Latex>
</p>
</Panel>
<Panel>
@ -138,13 +140,13 @@ export default class Fisica extends Component {
Se nel sistema di riferimento consideriamo la Terra ferma, allora un corpo è attratto verso la Terra con forza <i>peso</i> uguale a:
</p>
<p>
<Latex>{String.raw`\left | \vec{F} \right | = g m`}</Latex>
<Latex>{r`\left | \vec{F} \right | = g m`}</Latex>
</p>
<p>
<Latex>g</Latex> è la <i>costante di gravità</i> della Terra, e vale:
</p>
<p>
<Latex>{String.raw`g = 9.81 \frac{m}{s^2}`}</Latex>
<Latex>{r`g = 9.81 \frac{m}{s^2}`}</Latex>
</p>
</Panel>
<Panel>
@ -155,16 +157,16 @@ export default class Fisica extends Component {
Per pianeti diversi dalla Terra vale la stessa regola:
</p>
<p>
<Latex>{String.raw`\left | \vec{F} \right | = g m`}</Latex>
<Latex>{r`\left | \vec{F} \right | = g m`}</Latex>
</p>
<p>
L'unica differenza è che cambia la <i>costante di gravità</i>:
</p>
<p>
<Latex>{String.raw`g_{luna} = 1.62 \frac{m}{s^2}`}</Latex>
<Latex>{r`g_{luna} = 1.62 \frac{m}{s^2}`}</Latex>
</p>
<p>
<Latex>{String.raw`g_{marte} = 3.71 \frac{m}{s^2}`}</Latex>
<Latex>{r`g_{marte} = 3.71 \frac{m}{s^2}`}</Latex>
</p>
</Panel>
</Split>
@ -191,7 +193,7 @@ export default class Fisica extends Component {
Impedisce a un corpo di muoversi se non viene spinto da una forza che supera una certa soglia:
</p>
<p>
<Latex>{String.raw`\left | \vec{F} \right | \leq \mu_{s} \left | \vec{F}_{normale} \right |`}</Latex>
<Latex>{r`\left | \vec{F} \right | \leq \mu_{s} \left | \vec{F}_{normale} \right |`}</Latex>
</p>
</Panel>
<Panel>
@ -202,7 +204,7 @@ export default class Fisica extends Component {
Rallenta i corpi che si stanno muovendo finchè essi non si fermano:
</p>
<p>
<Latex>{String.raw`\left | \vec{F} \right | \leq \mu_{d} \left | \vec{F}_{normale} \right |`}</Latex>
<Latex>{r`\left | \vec{F} \right | \leq \mu_{d} \left | \vec{F}_{normale} \right |`}</Latex>
</p>
</Panel>
<Panel>
@ -224,7 +226,7 @@ export default class Fisica extends Component {
Una molla cerca sempre di tornare alla sua posizione indeformata con forza:
</p>
<p>
<Latex>{String.raw`F = -k x`}</Latex>
<Latex>{r`F = -k x`}</Latex>
</p>
<p>
(E' negativa perchè la forza è opposta a quella applicata per deformarla.)
@ -243,7 +245,7 @@ export default class Fisica extends Component {
È un vettore che indica la posizione di un corpo rispetto a un'origine.
</p>
<p>
<Latex>{String.raw`\Delta \vec{s} = \vec{s}(fine) - \vec{s}(inizio)`}</Latex>
<Latex>{r`\Delta \vec{s} = \vec{s}(fine) - \vec{s}(inizio)`}</Latex>
</p>
</Panel>
<Panel>
@ -254,13 +256,13 @@ export default class Fisica extends Component {
È un vettore che misura la variazione di posizione nel tempo.
</p>
<p>
<Latex>{String.raw`\vec{v} = \frac{\Delta \vec{s}}{\Delta t}`}</Latex>
<Latex>{r`\vec{v} = \frac{\Delta \vec{s}}{\Delta t}`}</Latex>
</p>
<p>
Se si considera un intervallo di tempo infinitesimale si dice <i>velocità istantanea</i>:
</p>
<p>
<Latex>{String.raw`\vec{v} = \lim_{\Delta t \to 0} \frac{\Delta \vec{s}}{\Delta t} = \frac{d \vec{s}}{dt}`}</Latex>
<Latex>{r`\vec{v} = \lim_{\Delta t \to 0} \frac{\Delta \vec{s}}{\Delta t} = \frac{d \vec{s}}{dt}`}</Latex>
</p>
</Panel>
<Panel>
@ -271,13 +273,13 @@ export default class Fisica extends Component {
È un vettore che misura la variazione di velocità nel tempo.
</p>
<p>
<Latex>{String.raw`\vec{a} = \frac{\Delta \vec{v}}{\Delta t}`}</Latex>
<Latex>{r`\vec{a} = \frac{\Delta \vec{v}}{\Delta t}`}</Latex>
</p>
<p>
Se si considera un intervallo di tempo infinitesimale si dice <i>accelerazione istantanea</i>:
</p>
<p>
<Latex>{String.raw`\vec{a} = \lim_{\Delta v \to 0} \frac{\Delta \vec{v}}{\Delta t} = \frac{d \vec{v}}{d t} = \frac{d^2 \vec{s}}{d t^2}`}</Latex>
<Latex>{r`\vec{a} = \lim_{\Delta v \to 0} \frac{\Delta \vec{v}}{\Delta t} = \frac{d \vec{v}}{d t} = \frac{d^2 \vec{s}}{d t^2}`}</Latex>
</p>
</Panel>
<Panel>
@ -288,13 +290,13 @@ export default class Fisica extends Component {
La quantità di moto è una proprietà vettoriale dei corpi:
</p>
<p>
<Latex>{String.raw`\vec{p} = m \vec{v}`}</Latex>
<Latex>{r`\vec{p} = m \vec{v}`}</Latex>
</p>
<p>
Se la forza risultante è nulla, la quantità di moto non cambia.
</p>
<p>
<Latex>{String.raw`\Sigma \vec{F} = 0 \Longleftrightarrow \Delta \vec{p} = 0`}</Latex>
<Latex>{r`\Sigma \vec{F} = 0 \Longleftrightarrow \Delta \vec{p} = 0`}</Latex>
</p>
</Panel>
</Split>
@ -310,7 +312,7 @@ export default class Fisica extends Component {
La <i>legge oraria</i> è:
</p>
<p>
<Latex>{String.raw`s(t) = v \cdot \Delta t + s(0)`}</Latex>
<Latex>{r`s(t) = v \cdot \Delta t + s(0)`}</Latex>
</p>
</Panel>
<Panel>
@ -321,7 +323,7 @@ export default class Fisica extends Component {
È costante:
</p>
<p>
<Latex>{String.raw`v(t) = k`}</Latex>
<Latex>{r`v(t) = k`}</Latex>
</p>
</Panel>
<Panel>
@ -332,7 +334,7 @@ export default class Fisica extends Component {
La velocità non varia:
</p>
<p>
<Latex>{String.raw`a(t) = 0`}</Latex>
<Latex>{r`a(t) = 0`}</Latex>
</p>
</Panel>
<Panel>
@ -359,7 +361,7 @@ export default class Fisica extends Component {
La <i>legge oraria</i> è:
</p>
<p>
<Latex>{String.raw`s(t) = \frac{1}{2} a \cdot (\Delta t)^2 + v(0) \cdot (\Delta t) + s(0)`}</Latex>
<Latex>{r`s(t) = \frac{1}{2} a \cdot (\Delta t)^2 + v(0) \cdot (\Delta t) + s(0)`}</Latex>
</p>
</Panel>
<Panel>
@ -370,7 +372,7 @@ export default class Fisica extends Component {
È una retta:
</p>
<p>
<Latex>{String.raw`v(t) = a \Delta t + v(0)`}</Latex>
<Latex>{r`v(t) = a \Delta t + v(0)`}</Latex>
</p>
</Panel>
<Panel>
@ -381,7 +383,7 @@ export default class Fisica extends Component {
È costante:
</p>
<p>
<Latex>{String.raw`a(t) = k`}</Latex>
<Latex>{r`a(t) = k`}</Latex>
</p>
</Panel>
<Panel>
@ -422,7 +424,7 @@ export default class Fisica extends Component {
Dipende dal periodo:
</p>
<p>
<Latex>{String.raw`\omega = \frac{2 \pi}{T}`}</Latex>
<Latex>{r`\omega = \frac{2 \pi}{T}`}</Latex>
</p>
</Panel>
<Panel>
@ -433,7 +435,7 @@ export default class Fisica extends Component {
E' una sinusoide:
</p>
<p>
<Latex>{String.raw`s(t) = A \sin (\omega \cdot t + \phi)`}</Latex>
<Latex>{r`s(t) = A \sin (\omega \cdot t + \phi)`}</Latex>
</p>
</Panel>
<Panel>
@ -441,10 +443,10 @@ export default class Fisica extends Component {
Velocità
</h3>
<p>
E' la sinusoide dello spostamento, sfasata di <Latex>{String.raw`\frac{\pi}{2}`}</Latex>:
E' la sinusoide dello spostamento, sfasata di <Latex>{r`\frac{\pi}{2}`}</Latex>:
</p>
<p>
<Latex>{String.raw`s(t) = A \sin (\omega \cdot t + \phi + \frac{\pi}{2})`}</Latex>
<Latex>{r`s(t) = A \sin (\omega \cdot t + \phi + \frac{\pi}{2})`}</Latex>
</p>
</Panel>
<Panel>
@ -452,10 +454,10 @@ export default class Fisica extends Component {
Accelerazione
</h3>
<p>
E' la sinusoide della velocità, sfasata di <Latex>{String.raw`\frac{\pi}{2}`}</Latex>:
E' la sinusoide della velocità, sfasata di <Latex>{r`\frac{\pi}{2}`}</Latex>:
</p>
<p>
<Latex>{String.raw`s(t) = A \sin (\omega \cdot t + \phi + \pi)`}</Latex>
<Latex>{r`s(t) = A \sin (\omega \cdot t + \phi + \pi)`}</Latex>
</p>
</Panel>
<Panel>
@ -487,7 +489,156 @@ export default class Fisica extends Component {
Moto circolare uniforme
</h3>
<p>
Il moto parabolico è dato sommando due moti armonici semplici: uno sull'asse X, e l'altro, sfasato di <Latex>{String.raw`\frac{\pi}{2}`}</Latex>, sull'asse Y.
Il moto parabolico è dato sommando due moti armonici semplici: uno sull'asse X, e l'altro, sfasato di <Latex>{r`\frac{\pi}{2}`}</Latex>, sull'asse Y.
</p>
</Panel>
</Split>
<h2>
Moto circolare uniforme
</h2>
<Split>
<Panel>
<h3>
Velocità angolare
</h3>
<p>
Quanto cambia la fase nel tempo.
</p>
<p>
<Latex>{r`\omega = \frac{2 \pi}{T}`}</Latex>
</p>
</Panel>
<Panel>
<h3>
Fase
</h3>
<p>
E' l'angolo percorso dal corpo rispetto alla posizione iniziale.
</p>
<p>
Si indica con <Latex>{r`\phi`}</Latex>, e generalmente si usa in radianti.
</p>
</Panel>
<Panel>
<h3>
Velocità
</h3>
<p>
Si applicano le formule per la circonferenza:
</p>
<p>
<Latex>{r`v = \frac{\Delta s}{t} = \frac{2 \pi \cdot r}{T}`}</Latex>
</p>
</Panel>
<Panel>
<h3>
Accelerazione
</h3>
<p>
Il corpo ha sempre un accelerazione verso il centro che gli impedisce di abbandonare il moto:
</p>
<p>
<Latex>{r`a = \frac{v^2}{r} = r \cdot \omega^2 = v \cdot \omega`}</Latex>
</p>
</Panel>
<Panel>
<h3>
Forza centripeta
</h3>
<h3>
È verso il centro e si calcola con:
</h3>
<p>
<Latex>{r`F = m \cdot a`}</Latex>
</p>
</Panel>
</Split>
<h2>
Lavoro ed energia
</h2>
<Split>
<Panel>
<h3>
Lavoro
</h3>
<p>
E' compiuto da una forza che sposta un corpo.
</p>
<p>
<Latex>{r`W = \vec{F} \cdot \vec{s} = F \cdot \Delta s \cdot cos(\alpha )`}</Latex>
</p>
<p>
(Se la forza non è parallela allo spostamento, il prodotto scalare ci fa considerare solo la componente parallela.)
</p>
</Panel>
<Panel>
<h3>
Energia cinetica
</h3>
<p>
Un corpo ha energia cinetica in ogni momento uguale a:
</p>
<p>
<Latex>{r`E_c = \frac{1}{2} m v^2`}</Latex>
</p>
<p>
Se una forza effettua lavoro su un corpo, cambia la sua energia cinetica pari al lavoro effettuato:
</p>
<p>
<Latex>{r`\Delta E_c = W`}</Latex>
</p>
</Panel>
<Panel>
<h3>
Energia potenziale gravitazionale
</h3>
<p>
Un corpo ha energia potenziale in ogni momento pari a:
</p>
<p>
<Latex>{r`E_{p_g} = m \cdot g \cdot h`}</Latex>
</p>
<p>
(Con <Latex>h</Latex> uguale a un altezza scelta come punto di riferimento.)
</p>
</Panel>
<Panel>
<h3>
Energia potenziale elastica
</h3>
<p>
Una molla ha sempre energia potenziale elastica pari a:
</p>
<p>
<Latex>{r`E_{p_e} = \frac{1}{2} k x^2`}</Latex>
</p>
</Panel>
<Panel>
<h3>
Forze conservative
</h3>
<p>
Sono conservative le forze per le quali il lavoro compiuto non dipende dal percorso seguito per andare dalla partenza all'arrivo.
</p>
<p>
Ad esempio, è conservativa la <b>forza di gravità</b>, ma non è conservativa la <del>forza di attrito</del>.
</p>
<p>
Se in un sistema ci sono solo forze conservative, allora l'energia meccanica totale si conserva:
</p>
<p>
<Latex>{r`E = E_k + E_p`}</Latex>
</p>
</Panel>
<Panel>
<h3>
Potenza
</h3>
<p>
È la velocità di trasferimento di energia:
</p>
<p>
<Latex>{r`P = \frac{\Delta E}{\Delta t}`}</Latex>
</p>
</Panel>
</Split>