CINXE.COM

Welcome to CK-12 Foundation | CK-12 Foundation

<!DOCTYPE html> <!--[if IE 7]> <html class="no-js lt-ie9" lang="en"> <![endif]--> <!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]--> <!--[if IE 9]> <html class="no-js ie9 lt-ie10" lang="en"> <![endif]--> <!--[if gt IE 9]><!--> <html class="no-js" lang="en"> <!--<![endif]--> <head> <title>Welcome to CK-12 Foundation | CK-12 Foundation</title> <meta property="og:site_name" itemprop="name" name="author" content="CK-12 Foundation" /> <meta property="fb:app_id" content="159884644067996" /> <meta itemprop="url" content="https://www.ck12.org" /> <meta itemprop="telephone" content="(650) 494-1302" /> <meta charset="utf-8" /> <!-- DNS Prefetching for domains --> <meta http-equiv="x-dns-prefetch-control" content="on"> <link rel="dns-prefetch" href="//static1.ck12.org"> <link rel="dns-prefetch" href="//static2.ck12.org"> <link rel="dns-prefetch" href="//static3.ck12.org"> <link rel="dns-prefetch" href="//image1.ck12.org"> <link rel="dns-prefetch" href="//image2.ck12.org"> <link rel="dns-prefetch" href="//image3.ck12.org"> <link rel="dns-prefetch" href="//api-prod.ck12.org"> <link rel="canonical" href="https://www.ck12.org/c/physical-science/"/> <meta property="og:url" content="https://www.ck12.org/c/physical-science/" /> <meta name="viewport" content="width=device-width" /> <meta name="google-site-verification" content="wHx0f-Udlfd7ZNYNrIXpJVpjjO8nSH5RE0jIX8V-jIM" /> <meta name="google-translate-customization" content=""/> <meta name="application-name" content="CK-12 Foundation"/> <meta name="msapplication-TileColor" content="#003300"/> <meta name="msapplication-TileImage" content="//image1.ck12.org/media/build-20241120063108/images/ck12-logo-livetile.png"/> <link rel="apple-touch-icon" href="//image1.ck12.org/media/build-20241120063108/images/ck12-logo-livetile-57x57.png" /> <link rel="apple-touch-icon" sizes="72x72" href="//image1.ck12.org/media/build-20241120063108/images/ck12-logo-livetile-72x72.png" /> <link rel="apple-touch-icon" sizes="114x114" href="//image3.ck12.org/media/build-20241120063108/images/ck12-logo-livetile-114x114.png" /> <link rel="shortcut icon" href="/favicon.svg" type="image/x-icon" /> <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="CK-12 Foundation" /> <link rel="stylesheet" type="text/css" media="all" href="//static2.ck12.org/media/build-20241120063108/common/vendor/jquery-ui/css/ui-lightness/jquery-ui-1.10.2.custom.min.css" /> <link rel="stylesheet" type="text/css" media="all" href="//static1.ck12.org/media/build-20241120063108/course-book-app/dist/main.css" /> <link rel="stylesheet" type="text/css" media="all" href="//static2.ck12.org/media/build-20241120063108/common/css/master.css" /> <link rel="stylesheet" type="text/css" media="all" href="//static2.ck12.org/media/build-20241120063108/common/css/tangerine-ui.css" /> <link href='https://fonts.googleapis.com/css?family=Pacifico' rel='stylesheet' type='text/css'> <link rel="stylesheet" type="text/css" media="all" href="//static3.ck12.org/media/build-20241120063108/duplicateUsernames/css/content.css" /> <!-- CDN invalidation script --> <script src="/media/buildnumber.js"> </script> <!-- End CDN invalidation script --> <script src="//static3.ck12.org/media/build-20241120063108/outdatedbrowser/outdatedbrowser.js"></script> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Organization", "name": "CK-12 Foundation", "url": "https://www.ck12.org/", "logo": "https://www.ck12.org/media/common/images/logo_ck12.svg", "sameAs": [ "https://www.facebook.com/CK12Foundation", "https://twitter.com/CK12Foundation", "https://www.linkedin.com/company/ck-12-foundation/", "https://www.pinterest.com/ck12foundation/" ] } </script> <!-- for prerendering --> <script> if (window.navigator.userAgent.toLowerCase().indexOf('prerender') !== -1) { window.SC_DISABLE_SPEEDY = true; } </script> </head> <body class=""> <script type="text/javascript"> /* Check for app-context: * -- set the <html> data-app-context = {app-context} */ var _context = sessionStorage.getItem('app-context'); if (_context && _context === 'lti-app' && window.name !=="lms-context-override"){ try { // Set data-app-context for css document.getElementsByTagName('html')[0].setAttribute('data-app-context','lti_app'); // Set window lmsContext for js window.lmsContext='lti-app'; } catch(e){ console.log("Error setting lms app context:"+ String(e)); } } /* * Check for lms app context from integrations.js * */ if (!_context){ try { var lmsBrowseFrame = parent.document.getElementById("ltiBrowseFrame"); if (lmsBrowseFrame) { // Set data-app-context for css document.getElementsByTagName('html')[0].setAttribute('data-app-context','lti_app'); // There are logic dependencies in 1.x app for window.lmsContext='lti-app' //https://github.com/CK-12/flxweb/search?p=1&q=window.lmsContext window.lmsContext='lti-app'; window._appContext = lmsBrowseFrame.dataset && lmsBrowseFrame.dataset.appContext && JSON.parse(lmsBrowseFrame.dataset.appContext); console.log("### app context has been set in window from lms.html"); } } catch(e){ console.log("Error setting lms app context:"+ String(e)); } } function closeLTIHelpBanner(){ try { document.getElementById('lti_help_banner').remove(); } catch(e){ console.log("Could not close banner:"+ String(e)); } } /* * Need to show a loading icon on some pages. * - browse, library */ function loadingCheck(){ try { var pathname = window.location.pathname; if (/library|browse/.test(pathname)){ // Create loading icon and append to body var loading_div = document.createElement("div"); loading_div.setAttribute('id','lti-loading-icon'); loading_div.setAttribute('class','loading-icon js-loading-icon'); var img_el = document.createElement("img"); img_el.setAttribute('alt','loading'); img_el.setAttribute('src','/media/common/images/icon_loading.gif'); loading_div.appendChild(img_el); document.body.appendChild(loading_div); if (document.readyState === 'complete'){ removeLoadingIcon(); } document.addEventListener('readystatechange', function(evnt){ if (evnt.target.readyState ==='complete'){ removeLoadingIcon(); } }, false); } } catch(e){ console.log("Error in loadingCheck: "+ String(e)); } } // Remove the loading icon after 2 seconds function removeLoadingIcon(){ try { window.setTimeout(function(){ var loading = document.getElementById('lti-loading-icon'); if (loading) { loading.remove(); } console.log("removed loading icon"); }, 1500); } catch(e){ console.log("Error in removeLoadingIcon: "+ String(e)); } } </script> <script type="text/javascript"> // GA global object var _gaq = _gaq || []; // GTM dataLayer for global data push dataLayer = []; var pageType = pageType || ""; var pageSubType = pageSubType || ""; var gtm_pageType = pageType; var gtm_pageSubType = pageSubType; </script> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-NFJ3V2" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-NFJ3V2');</script> <!-- End Google Tag Manager --> <header id='appHeader' class="nofoundation"></header> <!-- <div class="header-space hide-small-important"></div> --> <div id="fb2_banner" class="row"></div> <div id="forumBanner" class="district-banner smooth-text narrow-banner"></div> <div id="schoolBanner" class="district-banner smooth-text"></div> <div id='softRegWrapper' class='grey-back'></div> <div id='content-container' data-version="v2.11.4.20241120063108"> <a name="anchor-content"></a> <div id="breadcrumbWrapper" class="row collapse breadcrumb-container hide"></div> <div id='content-area' class="content-wrap row" > <!-- individual page contents go here --> <div id="app"></div> <div class="tutorial__modal hide"> </div> <div class="tutorial__modal__overlay"></div> <script> window.wpPublicPath = "//static2.ck12.org/media/build-20241120063108/ck12MediaBuild/"; //for webpack build // window.peerhelp_s3_url = ''; window.peerhelp_url = '/peerhelp/ui/build-20241120063108'; </script> <script src="//static3.ck12.org/media/build-20241120063108/ck12MediaBuild/router-bundle.js"></script> <script src="https://accounts.google.com/gsi/client" async defer></script> </div> <div id="sharePlaneWrapper" class="row relative share-plane-container hide"> </div> <!-- own contents go here --> <div class="row collapse" id="profilebuilder-content"></div> <div class="row collapse" id="ck12-license-container"></div> <div class="row collapse hide" id="notification_popup"></div> </div> <footer id='appFooter' class="nofoundation"></footer> <div class="hide"> <!-- All the divs inside this div will be hidden and are used for showing dialogs and messages --> <div id="loading_div"> Please wait... <img src="//image1.ck12.org/media/build-20241120063108/images/icon_loading.gif" width="43" height="11" /> </div> <div id="js_dialog_basic"> <!-- used for simple OK/Cancel or Alert type dialogs. --> <div class="dialog_msg"></div> <div class="dialog_loading hide">Please wait...<img src="//image1.ck12.org/media/build-20241120063108/images/icon_loading.gif" width="43" height="11" /></div> </div> </div> <script src="//static1.ck12.org/media/build-20241120063108/commonHeaderFooterDist/commonHeaderFooter.js"></script> <script type="text/javascript" src="//maps.googleapis.com/maps/api/js?libraries=places&key=AIzaSyDVTA7d25Puy-_W52IfMDdflx93pWYDJB8"></script> <script src="//static2.ck12.org/media/build-20241120063108/dexterjs/dexterjs.min.js"></script> <script src="//static1.ck12.org/media/build-20241120063108/common/js/utils/globals.js"></script> <script language="javascript" type="text/javascript"> function getCookie(c_name){ var i,x,y,ARRcookies=document.cookie.split(";"); for (i=0;i<ARRcookies.length;i++){ x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("=")); y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1); x=x.replace(/^\s+|\s+$/g,""); if (x==c_name) { return unescape(y); } } } function getRandomString(length) { var chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', value = ''; for (var i = length; i > 0; --i) { value += chars[Math.round(Math.random() * (chars.length - 1))]; } return value; } //For google one tap var google_one_tap_login = { isEnabled: 'true', clientID: '824097203574.apps.googleusercontent.com' } // login user role is c.user.role for guest role is in cookies. var flxweb_role; var flxweb_roles = []; var isEditAllowed = false; var webroot_url = 'https://www.ck12.org/'; var editprofile_url = 'https://www.ck12.org/auth/profile?returnTo=https%3A%2F%2Fwww.ck12.org%2Faccount%2Fsettings%2F&appHome=https%3A%2F%2Fwww.ck12.org%2F'; var adaptive_practice_launch_date = ''; flxweb_role = getCookie('flxweb_role'); flxweb_roles.push(flxweb_role); window.ck12_signed_in = false; dexterjs.set("config", { clientID: 24839961, trackPageTime: false }); if (window.lmsContext === 'lti-app'){ // Add in appID and provider for ADS // when in lti context var mixins = null; try { if (window._appContext && window._appContext.appID) { mixins = { appID: window._appContext.appID, lmsProvider: window._appContext.provider, appContext: window._appContext.appName } } else if (window.lmsContext === 'lti-app') { appInfo = JSON.parse(sessionStorage.getItem('ltiAppInfo')); mixins = { appID: appInfo.appID, lmsProvider: appInfo.provider, appContext: appInfo.lms_name } } if (mixins) { dexterjs.set('config', {mixins:mixins}); } } catch(e) { console.error("Error adding ADS mixins for lti: "+ String(e)); } } _ck12 = dexterjs; function startPageTimer() { window.adsPageStartTime = new Date().getTime(); } function adsLogPageTime() { var endTime = new Date().getTime(); var timeOnPage = Math.round((endTime - window.adsPageStartTime)/1000); //pageType, URL, duration (in seconds) var payload = { 'URL' : document.location.href, 'duration': timeOnPage }; if(window.adsPage) { payload['pageType'] = window.adsPage; } else if (window.pageType) { payload['pageType'] = window.pageType; } if (window.adsSubject) { payload['subject'] = window.adsSubject; } if (window.adsBranch) { payload['branch'] = window.adsBranch; } if (window.adsContextEid) { payload['context_eid'] = window.adsContextEid; } if (window.artifactID) { payload['artifactID'] = window.artifactID; } _ck12.logEvent('FBS_TIMESPENT', payload); } function adsOnload() { if (window.ck12_signed_in) { createCookieActiveUser(); } startPageTimer(); } function adsOnBeforeUnload() { adsLogPageTime(); } function createCookieActiveUser(){ var value; var now = new Date(); var time = now.getTime(); var expireTime = time + 1000*3600; now.setTime(expireTime); var activeCookie = getCookie('flxweb_user_active'); if(activeCookie){ value = activeCookie; }else{ value = getRandomString(25); payload = { 'sessionID': value }; _ck12.logEvent('FBS_ACTIVE_USER', payload); } document.cookie = 'flxweb_user_active=' + value + '; expires=' + now.toUTCString() + '; path=/'; } function addEvent(obj, evt,fn,useCapture){ if(obj.addEventListener){ obj.addEventListener(evt,fn,useCapture); return true; }else if(obj.attachEvent){ var r=obj.attachEvent('on'+evt,fn); return r; }else this['on'+evt]=fn; } addEvent(window, "load", adsOnload); var existingOnBeforeUnloadHandler = window.onbeforeunload; function handleExistingBeforeUnload() { var returnValue; if (existingOnBeforeUnloadHandler){ returnValue = existingOnBeforeUnloadHandler(event); } adsOnBeforeUnload(); if (returnValue) { return returnValue; } } addEvent(window, "beforeunload", handleExistingBeforeUnload); <!--Browser Cookie detection start --> var cookieEnabled = (navigator.cookieEnabled) ? true : false; if (typeof navigator.cookieEnabled == "undefined" && !cookieEnabled) { var cookieName = "CK12-Cookie-Test"; document.cookie= cookieName; cookieEnabled = (document.cookie.indexOf(cookieName) != -1) ? true : false; if (cookieEnabled){ document.cookie = cookieName + "=; expires=Thu, 01 Jan 1970 00:00:01 GMT;"; } } if (!cookieEnabled){ cookieBar('block'); } function cookieBar(displayValue){ var cookies_msg_container = document.getElementById("nocookies"); if (cookies_msg_container != null){ cookies_msg_container.style.display = displayValue; } } </script> <!--Browser Cookie detection end --> <!-- Start Licence Dialog --> <script type="text/javascript" async src=https://static.ck12.org/licenceDialog/v1.0.10/main.js></script> <!-- End Licence Dialog --> <!-- Start Google Translate script --> <link rel="stylesheet" type="text/css" media="all" href="//static1.ck12.org/media/build-20241120063108/common/css/gtranslate.overrides.css"/> <script id="ck12-widget" type="text/javascript" src="//static3.ck12.org/media/build-20241120063108/i18nWidget/lib/main.js"></script> <script> typeof i18n_widget === "object" && i18n_widget.LoadGT('flexbook_2') </script> <!-- End Google Translate script --> <script> if(window.lmsContext === 'lti-app'){ loadingCheck(); } </script> <noscript> <div style="position:fixed; top:0;left:0;right:0;margin:auto; z-index:9999;"> <div class="row collapsed" style="text-align:center;background-color:#FFFF99;padding:5px 5px 5px 5px; border:2px solid #999;font-size:16px;text-shadow:none;color:#000000;"> <div>To use this website, please enable javascript in your browser. <a style="text-shadow: none;color:#0000FF;text-decoration:underline;" href="/nojavascript/">Learn more</a></div> </div> </div> </noscript> <!-- START cookie disabled message --> <div id="nocookies" style= "text-align:center; top: 0px; width:100%; position:absolute; z-index:9999; display:none;"> <div id = "nocookies_inner" style= "margin:0 auto; height:16px; width:800px; background-color: #FFFF99; padding:4px 10px 10px 10px; border:3px solid #999; font-size: 16px; text-shadow: none; color: #000000;"> <div class="cookiemsg" style="float:left;" >Oops, looks like cookies are disabled on your browser. Click <a style=" text-shadow: none;color: #0000FF;" href="/nocookies/">here</a> to see how to enable them.</div> <div class="cookies_close" style="float:right;"><a style="text-decoration:none;color: #000000;" href="javascript:void(0);" onclick="cookieBar('none');">X</a></div> </div> </div> <!-- END cookie disabled message --> <!-- ############################### # FLXWEB DEBUG INFORMATION ############################### flxweb_node_name = www-flxweb processing_time = 0.97871 --> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10