<?xml version="1.0" encoding="UTF-8"?>
<CourseUnit xmlns="http://www.manchester.ac.uk/CUICourseUnitDetails" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.manchester.ac.uk/CUICourseUnitDetails.xsd">
  <UnitCode Applicant="Y" Label="Unit code" Student="Y">
    <Code>PHYS20161</Code>
  </UnitCode>
  <UnitTitle Applicant="Y" Label="Unit title" Student="Y">
    <Title>Introduction to Programming for Physicists</Title>
  </UnitTitle>
  <MaxUnits Applicant="Y" Label="Credit rating" Student="Y">
    <Units>10</Units>
  </MaxUnits>
  <TeachingPeriods Applicant="Y" Label="Teaching period(s)" Student="Y">
    <Period>Semester 1</Period>
  </TeachingPeriods>
  <AcademicCareer Applicant="Y" Label="Academic career" Student="Y">
    <Value>Undergraduate</Value>
  </AcademicCareer>
  <UnitLevel Applicant="Y" Label="Unit level" Student="Y">
    <Level>Level 2</Level>
  </UnitLevel>
  <StaffList Applicant="Y" Label="Teaching staff" RoleLabel="Course Unit Role" Student="Y">
    <StaffMember>
      <Name>Clive Dickinson</Name>
      <Role>Unit coordinator</Role>
    </StaffMember>
    <StaffMember>
      <Name>Lloyd Cawthorne</Name>
      <Role>Unit coordinator</Role>
    </StaffMember>
  </StaffList>
  <OfferedBy Applicant="Y" Label="Offered by" Student="Y">
    <OrganisationList>
      <Organisation>
        <OrgName></OrgName>
      </Organisation>
    </OrganisationList>
    <GroupList>
      <Group>
        <GroupName></GroupName>
      </Group>
    </GroupList>
    <FheqLevels>
      <FheqLevel>
        <LevelNumber>1</LevelNumber>
        <LevelName>FHEQ level (Framework for Higher Education Qualifications) ' Middle part of Bachelors ' </LevelName>
      </FheqLevel>
    </FheqLevels>
    <Ects>
      <MaxUnits>European Credit Transfer &amp; Accumulation System Rating :   5.0</MaxUnits>
    </Ects>
  </OfferedBy>
  <MarketingOverview Applicant="Y" Label="Marketing Course unit overview" Student="">
    <Content>&lt;p&gt;Introduction to Programming for Physicists&lt;/p&gt;</Content>
  </MarketingOverview>
  <UnitOverview Applicant="" Label="Course unit overview" Student="Y">
    <Content>&lt;p&gt;Introduction to Programming for Physicists&lt;/p&gt;</Content>
  </UnitOverview>
  <Aims Applicant="Y" Label="Aims" Student="Y">
    <Content>&lt;p&gt;The aim of the course is to give a practical introduction to computer programming for physicists assuming little or no previous programming experience.&lt;/p&gt;</Content>
  </Aims>
  <LearningOutcomes Applicant="Y" Label="Learning outcomes" Student="Y">
    <Content>&lt;p&gt;On completion successful students will:&lt;/p&gt;&lt;ol&gt;	&lt;li&gt;Be able to write programs in Python to aid them in practical situations they will face in their degree course and future work in physics or in other fields.&lt;/li&gt;	&lt;li&gt;Implement basic programming theory to write efficient code.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</Content>
  </LearningOutcomes>
  <Knowledge Applicant="Y" Label="Knowledge and understanding" Student="Y">
    <Content></Content>
  </Knowledge>
  <IntellectualSkills Applicant="Y" Label="Intellectual skills" Student="Y">
    <Content></Content>
  </IntellectualSkills>
  <PracticalSkills Applicant="Y" Label="Practical skills" Student="Y">
    <Content></Content>
  </PracticalSkills>
  <TransferableSkills Applicant="Y" Label="Transferable skills and personal qualities" Student="Y">
    <Content></Content>
  </TransferableSkills>
  <EmployabilitySkillsList Applicant="Y" Label="Employability skills" Student="Y">
    <Skill>
      <SkillId></SkillId>
      <SkillDescription></SkillDescription>
    </Skill>
  </EmployabilitySkillsList>
  <Syllabus Applicant="Y" Label="Syllabus" Student="Y">
    <Content>&lt;p&gt;&lt;strong&gt;Elements of Programming &amp;ndash; (3 weeks)&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;	&lt;li&gt;Introduction to Python&lt;/li&gt;	&lt;li&gt;Variable types and lists&lt;/li&gt;	&lt;li&gt;Operators&lt;/li&gt;	&lt;li&gt;Input / output&lt;/li&gt;	&lt;li&gt;Conditional expressions&lt;/li&gt;	&lt;li&gt;Loops&lt;/li&gt;	&lt;li&gt;Introduction to debugging, testing and errors&lt;/li&gt;	&lt;li&gt;Functions&lt;/li&gt;	&lt;li&gt;Style and PEP8&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;Basic Python libraries and validation &amp;ndash; (2 weeks)&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;	&lt;li&gt;Python Modules&lt;/li&gt;	&lt;li&gt;Introduction to&amp;nbsp;numpy&lt;/li&gt;	&lt;li&gt;Numpy arrays, built-in functions and indexing&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;Introduction to algorithms and visualisation &amp;ndash; (3 weeks)&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;	&lt;li&gt;Algorithms and their uses&lt;/li&gt;	&lt;li&gt;Basic manipulation and visualisation of data&lt;/li&gt;	&lt;li&gt;Read and write files&lt;/li&gt;	&lt;li&gt;Data validation&lt;/li&gt;	&lt;li&gt;Root finding&lt;/li&gt;	&lt;li&gt;Basic optimization algorithms&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Introduction to scientific programming libraries &amp;ndash; (3 weeks)&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;	&lt;li&gt;Advanced uses of numpy and matplotlib&lt;/li&gt;	&lt;li&gt;Introduction to scipy&lt;/li&gt;	&lt;li&gt;Using inbuilt functions&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</Content>
  </Syllabus>
  <TeachingMethods Applicant="Y" Label="Teaching and learning methods" Student="Y">
    <Content></Content>
  </TeachingMethods>
  <AssessmentMethods Applicant="Y" Label="Assessment methods" Student="Y">
    <IntroText> </IntroText>
    <Method>
      <MethodId>0</MethodId>
      <MethodName>Other</MethodName>
      <MethodWeight>100%</MethodWeight>
    </Method>
    <OtherDescription>&lt;p paraeid="{5897c61f-0474-4e5c-88d2-976f4888bac6}{169}" paraid="674542413"&gt;5 BlackBoard quizzes worth 7% each due weeks 1-3,7 and 8.&amp;nbsp;&lt;/p&gt;&lt;p paraeid="{5897c61f-0474-4e5c-88d2-976f4888bac6}{181}" paraid="1949295591"&gt;1st assignment worth 15%&amp;nbsp;&lt;/p&gt;&lt;p paraeid="{5897c61f-0474-4e5c-88d2-976f4888bac6}{191}" paraid="1775106442"&gt;Final assignment worth 50%&amp;nbsp;&lt;/p&gt;&lt;p paraeid="{5897c61f-0474-4e5c-88d2-976f4888bac6}{205}" paraid="690592392"&gt;Standard late penalties apply of 10% deducted per day late for each assessment.&amp;nbsp;&lt;/p&gt;</OtherDescription>
  </AssessmentMethods>
  <FeedbackMethods Applicant="Y" Label="Feedback methods" Student="Y">
    <Content>&lt;p&gt;Feedback is offered orally by demonstrators in the lab, automated responses in the quizzes, and specific written comments for each assignment.&lt;/p&gt;</Content>
  </FeedbackMethods>
  <RequirementsList Applicant="Y" Label="Pre/co-requisites" Student="Y">
    <Requirement>
      <UnitCode></UnitCode>
      <UnitTitle></UnitTitle>
      <RequirementType></RequirementType>
      <Description></Description>
    </Requirement>
    <AdditionalRequirement>&lt;p&gt;Follow-up units:&lt;/p&gt;&lt;p&gt;PHYS20872: Theory Computing Project&lt;/p&gt;&lt;p&gt;PHYS20762: Computational Physics&lt;/p&gt;&lt;p&gt;PHYS30762: OOP in C++&lt;/p&gt;&lt;p&gt;Some experiments in Y3 lab (PHYS30280) require computing.&lt;/p&gt;&lt;p&gt;Many MPhys projects require at least some element of computing (PHYS40181/2)&lt;/p&gt;</AdditionalRequirement>
  </RequirementsList>
  <AcademicPrograms Applicant="Y" Label="Academic programmes" Student="Y">
    <AcademicProgram>
      <Program></Program>
      <Plan></Plan>
      <Level></Level>
      <Requirement></Requirement>
    </AcademicProgram>
  </AcademicPrograms>
  <FreeChoice Applicant="Y" Label="Available as a free choice unit?" Student="Y">
    <Content>N</Content>
  </FreeChoice>
  <Accreditation Applicant="Y" Label="Accreditation" Student="Y">
    <Content></Content>
  </Accreditation>
  <RecommendedReading Applicant="Y" Label="Recommended reading" Student="Y">
    <Content>&lt;p&gt;Hill, C. &lt;em&gt;Learning scientific programming with python &lt;/em&gt;(Cambridge Uni. press)&lt;/p&gt;</Content>
  </RecommendedReading>
  <StudyHours Applicant="Y" Label="Study hours" Student="Y">
    <IntroText> </IntroText>
    <ScheduledHours Applicant="Y" Label="Scheduled activity hours" Student="Y">
      <ActivityHours>
        <ActivityType>Lectures</ActivityType>
        <Hours>10</Hours>
      </ActivityHours>
      <ActivityHours>
        <ActivityType>Practical classes &amp; workshops</ActivityType>
        <Hours>66</Hours>
      </ActivityHours>
    </ScheduledHours>
    <PlacementHours Applicant="Y" Label="Placement hours" Student="Y">
      <ActivityHours>
        <ActivityType></ActivityType>
        <Hours>0</Hours>
      </ActivityHours>
    </PlacementHours>
    <TotalHours Applicant="Y" Label="Independent study hours" Student="Y">
      <Hours>24</Hours>
    </TotalHours>
  </StudyHours>
  <Notes Applicant="Y" Label="Additional notes" Student="Y">
    <Content>&lt;p&gt;Note: Laboratory facilities are not available for resits.&amp;nbsp; A student who has failed may be permitted to submit further assessments, based on laboratory work already carried out, in order to pass the course unit.&lt;/p&gt;</Content>
  </Notes>
</CourseUnit>
