ID.nl logo
MathStudio tutorial: Hulp bij technisch rekenen
© Reshift Digital
Huis

MathStudio tutorial: Hulp bij technisch rekenen

Soms heb je aan een rekenmachine gewoon niet genoeg om een rekenkundig probleem op te lossen. Dan is zwaarder geschut nodig, maar dat is vaak moeilijk en/of duur. MathStudio biedt een mooie tussenweg – zelfs voor mensen zonder wiskundeknobbel. We helpen je op weg met deze MathStudio tutorial.

De onbetwiste koning van het technische rekenwerk en de daarbij vaak onmisbare visualisaties, is Mathematica. Helaas kost dat rekenmonster zelfs voor privégebruik al ruim 400 euro en vergt het flink wat studie om er mee aan de slag te kunnen. Gelukkig zijn er tegenwoordig heel wat gratis alternatieven, waaronder MathStudio.

MathStudio is optioneel beschikbaar als vriendelijk geprijsde app voor iOS en macOS, maar het aardige is dat we het product ook online kunnen gebruiken via mathstud.io en dan kost het ons niets.

Voordat we ons storten op de mogelijkheden van dat product, nemen we eerst een kijkje bij het onderdeel Ask (dat overigens ook als app verkrijgbaar is). Ask MathStudio is een probleemoplosser en wiskundehulp die je kunt gebruiken zonder dat je je in de syntax van MathStudio hoeft te verdiepen. Je kunt je vragen en opdrachten er gewoon in het Engels kwijt. Geen idee hoe je de vijfdemachtswortel uit 72 als commando moet formuleren? Geen nood, gewoon vragen om fifth root of 72.

Ask kan ook grafieken maken en die hebben in MathStudio een uitgebreide syntax om de opmaak naar je hand te zetten. Simpelweg vragen om graph x^2-2x+4 levert ook een bruikbare grafiek, ook al is het juiste commando eigenlijk Plot. We kunnen zelfs exacte functiewaarden opvragen via de knop Trace ofinzoomen door middel van het muiswiel en de knop Zoom (een mogelijkheid die in Firefox overigens niet werkt).

©PXimport

Om een idee te krijgen van het grote aantal dingen die je in gewoon Engels kunt vragen, biedt de Ask-pagina aan de rechterzijde een uitgebreide collectie voorbeelden verdeeld over verschillende rubrieken. Hier lees je hoe je Ask kunt gebruiken als eenvoudige rekenmachine (Basic Math), hoe je eenheden kunt converteren (Unit Conversions), hoe je vergelijkingen kunt oplossen (Algebra), hoe je functies kunt differentiëren en integreren (Derivatives en Integration), hoe je allerlei soorten grafieken kunt maken (Graphing) en nog veel meer.

Ask kan zelfs vragen beantwoorden over coördinaten van plaatsen (Location), het weer (Weather), beurskoersen (Stocks) en voedingswaarden (Nutrition).

Onder de antwoorden die Ask op onze vragen heeft gegeven zien we de link View results in MathStudio. Als we daarop klikken dan worden onze vragen automatisch vertaald naar de officiële syntax en verschijnen ze in het venster van MathStudio waar we ze desgewenst kunnen aanpassen.

Gericht rekenen

Nu we zijn aangekomen in het hoofdvenster van het eigenlijke MathStudio volstaan Engelstalige vragen of opdrachten niet langer en moeten we ons keurig aan de syntax van het systeem gaan houden. Gelukkig toont het venster aan de rechterzijde al een selectie met veelgebruikte soorten opdrachten op gebieden zoals rekenen, algebra, analyse, statistiek en het maken van grafieken. Het werkelijke aanbod aan functies is nog veel groter en dat vind je alfabetisch geordend onder Catalog.

Daarnaast vind je in het menu aan de linkerzijde een gedetailleerde handleiding onder Manual en dat is maar goed ook want we kunnen in dit artikel uiteraard slechts een globaal overzicht bieden.

Nu je eenmaal weet waar je terecht kunt voor het complete overzicht van alle mogelijke opdrachten, wordt het tijd om er eens enkele te bekijken om te zien wat voor onderwerpen MathStudio zoal dekt.

Functies manipuleren

Tot het standaardarsenaal van elke rekenmeester behoort het manipuleren van uitdrukkingen. MathStudio biedt daarvoor verschillende functies. Zo kunnen we formules proberen te vereenvoudigen met SimplifyFunction. Daarmee levert SimplifyFunction(sin(x+@pi/2)) bijvoorbeeld cos(x) als antwoord. Voor het manipuleren van goniometrische functies zijn er daarnaast commando’s als TrigExpand en TrigReduce.

Speciaal voor polynomen zijn er functies zoals Expand, Factor en Apart. Met die laatste delen we een breuk bestaande uit polynomen in losse delen. Expand en Factor zijn elkaars tegengestelde en zouden dus na herhaalde toepassing het beginresultaat moeten opleveren. Met een uitdrukking als Expand((x+2)^3) (antwoord 6x^2+12x+x^3+8) gevolgd door Factor(6x^2+12x+x^3+8) gebeurt dat ook keurig.

Vervangen we de 2 echter door een variabele a, dan slaagt het programma niet – iets waar Mathematica geen enkele moeite mee heeft. Daaruit leren we dat manipulatie van symbolische uitdrukkingen zo zijn beperkingen heeft.

©PXimport

Vergelijkingen oplossen

MathStudio kan verschillende soorten vergelijkingen oplossen via het commando Solve. Zo levert het programma keurig de reële en complexe wortels van polynomen en kunnen we ook goniometrische vergelijkingen oplossen, zoals Solve(sin(x)=Sqrt(2)/2).

Daarnaast kunnen we stelsels van vergelijkingen aanpakken, simpel door ze te scheiden met een komma, zoals: Solve(x^2+y^2=25, y=x^2) om de snijpunten van een cirkel en een parabool te vinden.

Een uitgebreidere variant op dit thema vinden we in SolveSystem, waarin we ook op kunnen geven voor welke variabelen we een oplossingen zoeken en in welk domein dat moet liggen.

Hét gereedschap om stelsels lineaire vergelijkingen te lijf te gaan, vinden we in matrices. Om daarmee te werken, is er een scala aan functies, bijvoorbeeld voor het vinden van de determinant(Det), het inverteren(Inverse) en het vinden van eigenwaardeneneigenvectoren(Eigenvalues en Eigenvectors).

Analyse

Op het gebied van analyse kunnen we functies differentiëren (met het commando D of pDiff voor partiële differentiatie) en integreren (Integrate), en is er een commando om limieten te vinden (Limit).

Als het gaat om differentiëren levert MathStudio goede prestaties waarbij we desgewenst in plaats van het D-commando een functie f(x) kunnen definiëren om vervolgens te vragen om f’(x).

Met niet al te ingewikkelde onbepaalde integralen heeft MathStudio ook geen moeite, maar de veelzijdigheid aan oplossingen is zeker niet vergelijkbaar met Mathematica.

Voor bepaalde integralen – ook lastige – draait MathStudio zijn hand echter niet om, zodat we probleemloos een oplossingen vinden voor bijvoorbeeld Integrate(((x^2-1)/(x^2+1)) * (1/(Sqrt(1+x^4))),x,0,1).

Alhoewel MathStudio de nodige functies biedt die middelbare-schoolwiskunde verre te boven gaan (zoals Fourier- en Laplace-transformaties of de Riemann Zeta-functie) helpt het programma ons niet bij een van de meest fundamentele onderdelen van analyse: het symbolisch oplossen van differentiaalvergelijkingen, terwijl die nu juist bepalend zijn voor allerlei technisch en natuurkundig rekenwerk. Wolfram|Alpha kan daarbij overigens wél helpen.

©PXimport

Statistiek

Statistische modellen en berekeningen bepalen in toenemende mate onze wereld. De reden is dat veel processen zo complex zijn dat we er geen exacte kennis van (kunnen) hebben. Om in die situaties toch voorspellingen te doen, is statistiek – ondanks zijn zwaktes – het beste dat we hebben.

MathStudio biedt een groot aantal statistische functies die we los kunnen laten op lijsten met getallen (List). Ook kunnen we deze lijsten op allerlei manieren manipuleren en er elementen aan onttrekken.

Het programma kan data in zo’n lijst analyseren en bijvoorbeeld de mediaan uitrekenen. Ook kun je op lijsten allerlei regressiemodellen loslaten. Bij elk van die modellen behoren meerdere commando’s. Wil je bijvoorbeeld je data zien in een lineaire trend dan heb je de beschikking over LinearFit om een vergelijking te krijgen van de vorm y=ax+b, LinearFitModel om de coëfficiënten a en b en de betrouwbaarheid te zien en LinearFitPlot om de data en de gevonden regressiecurve grafisch weer te geven.

Je kunt in plaats daarvan ook de algemenere familie FindFit, FindFitModel en FindFitPlot gebruiken, omdat je daarin zelf een functie kunt definiëren waarvan je vermoedt dat die het best bij de data in de lijst past.

Grafieken in 2D

Nu het woord ‘plot’ al een paar keer is gevallen, komen we vanzelf bij een van de meer veelzijdige onderdelen van MathStudio: het weergeven van grafieken.

Het programma biedt uiteraard de mogelijkheid om de grafiek van een functie weer te geven (Plot) en daar kunnen we allerlei grafische opties aan toevoegen voor bijvoorbeeld de lijnkleur. Hebben we geen functie maar een lijst met data, dan kunnen we die grafisch weergeven met ListPlot (inclusief een gewenst regressietype) of BarPlot. Daar houdt de weergave van mogelijkheden op basis van losse getallen op.

Voor het weergeven van data op basis van vergelijkingen gaat MathStudio echter verder. Je kunt namelijk ook grafieken maken op basis van parametervergelijkingen (ParametricPlot) en via poolcoördinaten (PolarPlot). Daarnaast maakt het programma afbeeldingen van vectorvelden (VectorPlot).

©PXimport

Uiteraard wil je soms meerdere grafieken in één afbeelding zien en dat kan op één programmaregel met MultiPlot waarin je de verschillende varianten naar hartenlust kunt mixen. Je kunt ook de afzonderlijke plots elk op een eigen regel zetten en die vervolgens gezamenlijk evalueren.

Grafieken worden vrij klein weergeven, maar door erop te dubbelklikken maak je ze schermvullend.

Dat MathStudio een voortdurend evoluerend product is, merk je wanneer je een contourgrafiek probeert te maken. Alhoewel het commando ContourPlot wel in de lijst met commando’s staat, werkt het noch in de app, noch in de webversie!

Grafieken in 3D

Het aanbod aan 3D-grafieken zal ook voldoende zijn voor de meeste gebruikers. Met Plot3D maak je grafieken van functies in x en y. ParametricPlot3D is de ruimtelijke tegenhanger van de 2D-functie ParametricPlot. In plaats van één parameter u waarin je x en y uitdrukt, heb je nu de beschikking over parameters u en v om x, y en z in uit te drukken.

De ruimtelijke tegenhangers van het werken met poolcoördinaten zijn bolcoördinaten en cilindrische coördinaten (SphericalPlot3D en CylindricalPlot3D). Tot slot is er ook een ListPlot3D om x-, y- en z-coördinaten in een lijst grafisch weer te geven.

©PXimport

Ook nu kun je weer dubbelklikken op een grafiek om hem schermvullend te maken en waar de ingedrukte linkermuisknop in 2D dient om grafieken te verslepen, gebruik je hem in 3D om ze te roteren.

Tot slot bieden grafieken zowel in 2D als 3D nog een aanvullend kunstje dat handig is om inzicht te krijgen in het gedrag van variabelen of parameters: de tijdvariabele T. Deze wordt voortdurend automatisch vergroot en zet je grafieken in beweging. Zo kun je bijvoorbeeld achterhalen wat de a, b en c in a*x^2+b*x+c precies bijdragen aan de vorm en positie van de grafiek door elk om beurten te vervangen door T.

Scripts

Een druk op Enter evalueert een uitdrukking, maar Shift+Enter opent een nieuwe regel. Je kunt dus meerdere regels code invoeren en die gezamenlijk evalueren. En aangezien MathStudio ook zaken kent zoals lussen (For en While) en voorwaardelijke uitdrukkingen (If en ElseIf) kun je zo complete programma’s maken.

Als voorbeeld schrijven we een programmaatje dat ons paren priemgetallen toont met een verschil van 2 (of er daar oneindig veel van zijn is een beroemd openstaand vraagstuk in de wiskunde).

Eerst definiëren we een lijst met de eerste 100 (of hoeveel je maar wilt) priemgetallen met a=Prime(100). Dan maken we een lus die de waarden 1 tot en met 100 doorloopt: For i in 1..100. Bij een priemgetal is de som van de delers (DivisorSigma) 1 meer dan het getal zelf en voor een paar met verschil 2 is het verschil van die sommen dus ook 2.

Wanneer we de kleinste van de grootste aftrekken en met 2 verminderen, dan wijst elke waarde 0 dus op het gezochte paar met priemgetallen. Dat alles leidt tot: a(i)=DivisorSigma(a(i)+2)-DivisorSigma(a(i)-2. We sluiten de lus met end en vragen de lijst op met a. Tot slot kunnen we van de lijst een grafiek maken met ListPlot(a).

©PXimport

Gratis alternatieven

We hebben nu enkele van de belangrijkste functies van MathStudio belicht. Wie geen geld over heeft voor een product als Mathematica en onvoldoende mogelijkheden vindt in MathStudio heeft echter nog genoeg andere opties op gratis complexe rekenklussen uit te voeren.

Algemene programmeertalen kun je vaak inzetten voor rekenwerk door middel van programmabibliotheken. Zo zijn er voor Python onder andere de bibliotheken math en cmath (voor rekenen met complexe getallen). Daarnaast zijn er bibliotheken zoals NumPy en SciPy die functies toevoegen voor onder andere lineaire algebra, Fourier-transformaties en symbolische wiskunde.

Een gespecialiseerd technisch reken- en visualisatieplatform vinden we bij Julia en grote broer JuliaPro, die beiden de nodige studie vergen maar die zich vanwege hun snelheid lenen voor zware klussen.

Zeer veelzijdig is SageMath dat speciaal is bedoeld als opensource-alternatief voor een programma als Mathematica. Een deel van die veelzijdigheid komt uit de koppeling met andere producten zoals Maxima (symbolische wiskunde) en Tachyon (een raytracer).Een vergelijkbaar product dat ook gebruikmaakt van Maxima is de Euler Math Toolbox.

Wie zonder veel studie online aan de slag wil met een grote variatie aan wiskundige onderwerpen kan tot slot terecht bij de verschillende modules van Geogebra.

▼ Volgende artikel
Accupaniek: met deze aanpassingen haal je wél het einde van de dag
© Yuliia
Huis

Accupaniek: met deze aanpassingen haal je wél het einde van de dag

Je laptopaccu lijkt altijd leeg te zijn op het moment dat er nergens een stopcontact te bekennen is. Met de juiste software-instellingen pers je echter makkelijk een uur extra uit je apparaat, zonder dat je daarvoor technisch onderlegd hoeft te zijn. Wij leggen uit aan welke knoppen je precies moet draaien voor maximaal resultaat.

Er is weinig irritanter dan een laptop die in de spaarstand schiet of uitvalt terwijl je in de trein net de laatste hand legt aan een belangrijk document. Veel gebruikers denken bij een snel leeglopende batterij direct dat de hardware versleten is en kijken alweer naar een nieuwe laptop. Vaak is de accu zelf echter nog prima in orde, maar gaat het besturingssysteem slordig om met de beschikbare energie. Fabrieksinstellingen zijn namelijk vaak gericht op maximale prestaties en helderheid, niet op uithoudingsvermogen. In dit artikel leer je hoe je de regie terugpakt en de energievreters in toom houdt, zodat je met een gerust hart de dag doorkomt.

Waar die energie eigenlijk naartoe lekt

Om te begrijpen hoe je accucapaciteit bespaart, moet je eerst weten waar de energie aan opgaat. De twee grootste verbruikers in een laptop zijn vrijwel altijd het beeldscherm en de processor. Het scherm vreet stroom om pixels te verlichten; hoe feller het scherm, hoe sneller de teller tikt. Daarnaast speelt de verversingssnelheid een rol. Veel moderne schermen verversen het beeld 120 keer per seconde (120 Hz). Dat kijkt heel rustig, maar kost aanzienlijk meer rekenkracht dan de standaard 60 Hz.

Onder de motorkap is de processor continu bezig met het verwerken van taken. Een veelvoorkomende misvatting is dat je handmatig alle programma's moet afsluiten om stroom te besparen. Dat is maar ten dele waar, want moderne systemen zijn heel goed in het bevriezen van apps die je niet gebruikt. Wat wél energie kost, zijn achtergrondprocessen die actief blijven synchroniseren, zoals cloudopslagdiensten of mailprogramma's die elke minuut checken op nieuwe berichten. Ook randapparatuur die stroom trekt via de usb-poort, zelfs als je deze niet actief gebruikt, snoept procenten van je lading af.

Besparen tijdens eenvoudige taken

De energiebesparende modus is je beste vriend wanneer je taken uitvoert die weinig rekenkracht vereisen. Denk hierbij aan tekstverwerken, e-mailen, webbrowsen of het invullen van spreadsheets. In deze scenario's heb je de volledige kracht van je processor en videokaart simpelweg niet nodig. Door in Windows of macOS te kiezen voor de energiebesparende modus, klokt de processor zichzelf terug. Hij werkt dan letterlijk iets langzamer, maar voor administratieve taken merk je daar in de praktijk niets van. De letters verschijnen nog steeds direct op je scherm zodra je ze typt.

Daarnaast is dit het moment om eens kritisch naar je schermhelderheid te kijken. Binnenshuis is een helderheid van 50 tot 60 procent vaak meer dan voldoende om comfortabel te kunnen werken. Werk je vooral 's avonds? Dan kan het zelfs nog lager. Ook het uitschakelen van toetsenbordverlichting levert in deze context pure winst op. Het zijn kleine percentages per uur, maar op een hele werkdag maakt dit het verschil tussen wel of niet de oplader moeten pakken.

©PXimport

Prestaties boven accuduur

Er zijn momenten waarop je de batterijbesparingsinstellingen beter uit kunt laten, of zelfs agressief moet vermijden. Zodra je aan de slag gaat met zware grafische taken, zoals videobewerking, 3D-rendering of serieuze gaming, werkt een besparingsmodus averechts. De software knijpt de toevoer van stroom naar de componenten af, wat resulteert in een haperend beeld, trage exporttijden en een frustrerende gebruikservaring.

In deze gevallen heeft de hardware ademruimte nodig om te kunnen presteren. Als je probeert te gamen op een besparingsstand, zal het systeem de prestaties van de grafische chip zo ver terugschroeven dat het spel onspeelbaar wordt. Bovendien duurt het renderen van een video in spaarstand veel langer, waardoor het scherm en de schijf langer actief moeten blijven, wat onderaan de streep soms zelfs méér energie kost dan een korte piekbelasting op vol vermogen. Hier geldt: efficiëntie door snelheid is soms zuiniger dan traagheid.

Situaties waarin instellingen het niet meer redden

Hoewel je met software veel kunt optimaliseren, zijn er harde grenzen waarbij geen enkele instelling je meer gaat redden. Je moet realistisch zijn over de fysieke staat van je apparaat.

Ten eerste is er de chemische degradatie. Als de maximale capaciteit van je accu (ook wel battery health geheten) onder de 70 procent is gezakt, kun je instellen wat je wilt, maar de rek is er fysiek uit. De batterijcellen kunnen de lading simpelweg niet meer vasthouden. Ten tweede is oververhitting een doodsteek voor je accuduur. Als de ventilatoren van je laptop continu staan te loeien omdat de koelkanalen vol stof zitten, kost dat enorm veel energie. Warmte is in feite verspilde energie. Tot slot helpt software niet als je zware externe apparaten zonder eigen voeding aansluit. Een externe harde schijf die zijn stroom via de laptop krijgt, trekt de accu leeg alsof het een rietje in een pakje sap is, ongeacht je schermhelderheid.

Creëer je eigen energieprofiel

Om echt grip te krijgen op je verbruik, moet je de instellingen afstemmen op jouw specifieke gedrag. Begin met de slaapstand-instellingen. Veel mensen laten hun laptop openstaan als ze even koffie gaan halen, waarbij het scherm zomaar tien minuten op volle sterkte blijft branden. Stel in dat het scherm al na twee of drie minuten inactiviteit uitgaat. Dat is de makkelijkste winst die je kunt boeken.

Kijk ook naar je randapparatuur. Gebruik je een externe monitor? Zorg dan dat je laptop zo is ingesteld dat het interne scherm volledig uitschakelt, en niet 'zwart maar aan' blijft staan. Gebruik je veel bluetooth-apparaten? Schakel bluetooth uit als je ze niet gebruikt; het constant scannen naar verbindingen kost stroom. Voor gebruikers met een oledscherm is er nog een extra truc: gebruik een donkere modus. Bij oledschermen verbruiken zwarte pixels namelijk helemaal geen energie, in tegenstelling tot traditionele lcd-schermen waar de achtergrondverlichting altijd aan staat.

Balans tussen snelheid en stopcontact

Het verlengen van je accuduur is uiteindelijk een balansspel tussen comfort en noodzaak. De grootste winst behaal je door de schermhelderheid te temperen en de slaapstand agressiever in te stellen, zodat je geen energie verspilt in de pauzes. Wees niet bang om de energiebesparingsmodus standaard aan te zetten voor alledaags werk; de moderne processors zijn krachtig genoeg om dat zonder haperingen op te vangen. Pas als je merkt dat je laptop traag reageert bij zwaardere taken, is het tijd om de teugels weer iets te laten vieren. Zo bepaal jij hoelang de werkdag duurt, en niet je batterij.

▼ Volgende artikel
Super Mario-medley wint een Grammy
Huis

Super Mario-medley wint een Grammy

Een medley gebaseerd op soundtracks uit Super Mario-games van het Jazzorkest 8-Bit Big Band heeft afgelopen zondagnacht een Grammy gewonnen.

De medley ‘Super Mario Praise Break’ won een Grammy Award voor beste arrangement (instrumentaal of a capella). In de medley zijn nummers als Gusty Garden Galaxy uit Super Mario Galaxy en Bomb-Omb Battlefield uit Super Mario 64 te horen.

De 9-Bit Big Band is afkomstig uit New York en heeft al eens eerder een Grammy gewonnen voor gamemuziek. In 2022 won het orkest een Grammy voor het nummer Meta’s Knight’s Revenge uit de SNES-game Kirby Superstar.

View post on X

De Grammy Awards

De Grammy Awards worden al sinds 1959 georganiseerd en worden gezien als een van de belangrijkste prijzen voor muziek ter wereld. Ze worden vaak vergeleken met de Oscars, die worden uitgereikt aan films. Dit jaar won Bad Bunny de prijs van album van het jaar, en ging Billie Eilish er vandoor met een Grammy voor nummer van het jaar. Overigens won Austin Wintory een Grammy in de categorie beste gamesoundtrack voor de soundtrack van Sword of the Sea.

De Super Mario-reeks van Nintendo valt op diverse spelcomputers van het bedrijf te spelen, waaronder de Nintendo Switch 2 en Nintendo Switch. Onder de meest recente grote hoofddelen vallen Super Mario Wonder en Super Mario Odyssey.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.