Enhet 10 / 11

Kemiteknik med Python: Dataanalys och modelleringsautomation

Vinster:

  • Möjlighet att skriva ut Python-kod och förstå och acceptera koden rad för rad för datarensning, kontoautomatisering och modellering med artificiell intelligens
  • Förmåga att förstå att oprövad kod är en hypotes, verifiera varje kod med ett känt resultat och testa enhets- och kantfall
  • Förmåga att förstå att säkerhetskritiska kontokoder kräver både testning och auktoriserad ingenjörsverifiering.

Den tysta motorn för modern kemiteknik är nu Python (ett flitigt använt programmeringsspråk som är lätt att lära sig). Rengöra sensordata, automatisera en massbalans, anpassa en kinetisk modell till data, jämföra hundratals simuleringsresultat, producera en graf – allt detta tar timmar för hand, men sekunder med några rader Python. I den här enheten kommer du att lära dig hur du använder AI som ett hjälpmedel för att skriva, förklara och felsöka Python-kod; Men vi kommer att lära oss varför varje kod som produceras inte bör användas utan testning och verifiering.

En kemiingenjör är i allmänhet inte en professionell mjukvaruutvecklare; Det är här AI tillför stor kraft. En ingenjör säger "Jag vill ha ett skript som gör det här" och skriver ett AI-utkast. Men denna princip förblir konstant: koden som AI skriver är inte rätt eftersom den ser rätt ut; Det är en hypotes tills den testats med ett känt resultat. Ett tyst misstag – fel enhet, fel index, en skiftad formel – kan ge farliga resultat i en teknisk beräkning.

Python med AI i kemiteknik: steg för steg

1. Definiera jobbet tydligt. Vad är ingången (CSV, array, ekvation), vad ska utmatningen vara, i vilka enheter? Tvetydig prompt betyder dålig kod.

2. Begär ett kodutkast. AI producerar en skiss med lämpliga bibliotek (pandas för data, numpy för numerisk bearbetning, matplotlib för grafer, scipy för optimering/lösning).

3. Förstå biblioteket och antaganden. Låt AI förklara varje linje och antagande (enhet, dataformat, acceptans). Kör inte kod du inte förstår.

4. Testa med känt resultat. Kör koden på ett enkelt exempel som du redan vet svaret på. En balanskod ska ge rätt resultat i ett exempel som kan dechiffreras för hand.

5. Enhets- och kantstatuskontroll. Vad gör koden i kantfall som noll, negativ, mycket stora värden, saknad data? Inom kemiteknik är enhetsfel en klassisk katastrof.

6. Testa resultatet med fysik. Koden producerade ett nummer — är massan bevarad, är värdet realistiskt? Bara för att koden fungerar bevisar inte att resultatet är korrekt.

Tips: När du begär kod från AI, säg "skriv enheten för varje variabel i kommentarsraden och ange indataenheterna explicit." En betydande del av kemitekniska fel uppstår från enhetsförvirring (bar/Pa, kg/g, °C/K); Inbäddning av enheter i koden gör dessa fel synliga.

Otestad kod är en hypotes

AI producerar smidig, fungerande kod; Men "fungerar" och "rätt" är två olika saker. Koden kan fungera utan fel och producera ett felaktigt tal: ett teckenfel i en formel, en offset (av-för-en) i en array, en felaktig enhetsomvandling. Så den gyllene regeln: varje kod testas i ett testfall där det korrekta svaret är känt oberoende. Ett enkelt analytiskt exempel, en handberäkning eller referensdata bevisar kodens tillförlitlighet. Inga tekniska beslut bör baseras på kod utan att ha godkänt testet.

Varning: Kod som utför en säkerhets-, dimensionerings- eller säkerhetsberäkning kan inte anses tillförlitlig bara för att den "fungerar". Säkerhetskritiska kontokoder bör testas med ett känt resultat och resultaten bör verifieras oberoende av den auktoriserade ingenjören.

tre minifodral

Fall 1 — Datarensningsautomatisering. En ingenjör rensade manuellt 3 månaders data (ungefär 1,1 miljoner rader) från 8 sensorer varje månad. Ett pandasskript skrivet med AI reducerade detta till minuter. Ingenjören testade först koden på en liten, känd exempelfil; märkte att en kolumn analyserades felaktigt, fixade den och använde den sedan på hela data.

Fall 2 — Tyst volymfel. YZ skrev kod för en tryckfallsberäkning men förväxlade inmatningen genom att anta bar och formeln Pa. Koden fungerade utan fel, men resultatet blev fel med en faktor 100 000. Ingenjören fångade orderskillnaden med en manuell kontrollberäkning. Efter att ha lagt till enhetskommentarer klargjordes felet och åtgärdades.

Fall 3 — Testningen sparad. Ett team fick kod från AI för en massbalanslösare. De testade det först i ett tvåkomponents, handupplösbart prov; koden stängde en loopback felaktigt och stämde inte. Felet fångades innan det applicerades på den verkliga, komplexa modellen. Utan testning skulle felet spridas till alla resultat.

Fyra kopierbara mallar

1) Utkast till dataanalyskod:

Din roll: Python-hjälpare för kemiteknik. Uppgift: [beskrivning]. Indata: [CSV/array, kolumner, ENHETER]. Utdata: [vad, i vilken enhet].använd pandas/numpy. I koden: (1) tolka enheten för varje variabel, (2) ange ingångsantagandena i början, (3) hantera kantfall (data saknas, noll). Jag kommer att testa koden med ett känt exempel; använd inte magiska siffror, definiera konstanter explicit.

2) Kodförklaring och verifiering:

Förklara följande Python-kod rad för rad: vad den gör, vilka antaganden den gör, vilka enheter den förväntar sig. Markera möjliga felpunkter (enhetsförvirring, indexförskjutning, division med noll, spill). Föreslå vilket enkelt, känt testfall jag kan använda för att verifiera den här koden. Kod: [klistra in]

3) Konfigurera ett test med känt resultat:

Skriv ett testset för att verifiera denna funktion: minst 3 enkla fall där svaret är känt analytiskt eller manuellt. För varje test, beskriv det förväntade resultatet och varför vi förväntar oss det resultatet. Jag kommer inte att tillämpa koden på riktiga data utan att testa. Funktion: [klistra in]

4) Felsökning:

Denna kod ger följande fel/fel resultat: [felmeddelande eller förväntad vs faktisk utdata]. Lista möjliga orsaker i sannolikhetsordning och berätta hur man testar för varje. Säg inte "Jag fixade det" direkt; Låt oss först tillsammans verifiera grundorsaken. Föreslå också enhet och orderkontroll. Kod och data: [klistra in]

Svag prompt / Stark prompt

Svag uppmaning:

Skriv en kod för beräkning av tryckfall.

Inmatningsformat, enhet, ekvation, villkor är inte tydliga. AI döljer sina antaganden, kan förvirra enheter.

Kraftfull uppmaning:

Din roll: kemiteknik Python-hjälpare. Uppgift: friktionsinducerat tryckfall i ett cirkulärt rör. Ingång: flöde [m3/s], diameter [m], längd[m], densitet [kg/m3], viskositet [Pa·s]. Utgång: tryckfall [Pa]. Använd Darcy-Weisbach; Kontrollera flödesregimen (Re) för friktionsfaktorn. Kommentera varje enhet, ange antaganden (full last, stabilt flöde). Jag kommer att testa koden mot manuell beräkning på ett laminärt exempel.

Skillnaden är tydlig: indataenheter, metod, utdataenhet och testavsikt gör koden tillförlitlig.

Rollfördelning i Python-användning

företag

AI:s roll

mannens beslut

skriva kod

Skapa ett utkast

Arbetsbeskrivning, enheter

Biblioteksval

Förslag

Bekräftelse av överensstämmelse

Beskrivning

rad för rad

Acceptera med förståelse

testa

Testset rekommendation

Validering med känt resultat

Felsök

hypotes, riktning

Bekräftelse av grundorsaken

Slutsats

Nummergenerering

Testa med fysik

Vanliga misstag

  • Använder kod utan att testa den. Arbetskoden är inte korrekt kod; Det går inte att lita på om det inte testas med ett känt resultat.
  • Att lämna enheter obestämda. Enhetsförvirring är det vanligaste och farligaste misstaget inom kemiteknik.
  • Fungerar utan att förstå. Lita inte på resultaten utan att förstå koden som skrivits av AI rad för rad.
  • Förbigående kanttillstånd. Noll, negativ, saknad data kan tyst leda koden till fel slutsats.
  • Baserar säkerhetsberäkningen endast på koden. Säkerhetskritiska koder kräver testning + oberoende auktoritativ verifiering.

Sammanfattningsvis

AI i kemiteknik med Python; Det är en kraftfull assistent som ritar, förklarar och ger felsökningsvägledning för datarensning, bokföringsautomatisering, modellering och grafik. Men AI:s kod är tillförlitlig inte för att den ser rätt ut, utan för att den har testats med ett känt resultat. Det är viktigt att specificera enheterna explicit, förstå koden, testa kantfall och verifiera resultatet med fysik; Säkerhetskritiska beräkningar kräver också auktoriserad ingenjörsverifiering.

Applikationsuppgift

Välj en beräkning (t.ex. ett rörtryckfall eller tvåkomponents massbalans). Få kod från AI med mallen "dataanalys/kontokodutkast", ange tydligt enheterna. Verifiera sedan koden i ett manuellt avkodningsbart exempel med mönstret "set upp test med känt resultat"; Om resultatet inte matchar, hitta grundorsaken med "debug"-mönstret.

checklista

  • [ ] Jag har tydligt angett input/output-enheter och metod.
  • [ ] Jag förstod koden rad för rad och såg dess antaganden.
  • [ ] Jag testade koden på ett känt/manuellt dechiffrerbart exempel.
  • [ ] Jag testade kantfall (noll, negativ, saknade data).
  • [ ] Jag verifierade resultatet med fysik (bevarande av massa, ordning); Jag fick också säkerhetskontot bekräftat av tjänstemannen.