Computer Science - Concentration in Scientific Software Development
Bachelor of Science

Home » All Programs » Computer Science – Concentration in Scientific Software Development

Program Overview

Placing the computer at the service of the sciences.

Scientific Software Developers design programs that are instrumental to scientific research and communication, whether capturing, organizing, and displaying data, engaging in complex analysis, or enabling the powerful observational mechanisms that bring the universe closer and make it more comprehensible.

Contact

Department of Math and Computer Science

mcschair@ltu.edu

Why LTU?

  • Experience hands-on learning to develop innovative solutions to real-world problems using advanced technology and software
  • Focus on technical communication skills prepares students for rigors of programming jobs.
  • Participate in course-based research experiences, gaining practical skills and knowledge that prepare you for success in today’s technology-driven world.

Curriculum

» Curriculum Documents

Fall Semester

Course Name

Course #

Credits

College Composition

College Composition develops students’ acquisition of the fundamental principles of academic writing. This course focuses on the development of writing thesis statements and main arguments, topic sentences, transitional words and phrases, supporting paragraphs, use of evidence, essay organization, and research skills. Extensive writing and research practice is required.

COM1103

3

Foundations of CS

An overview of computer science for CS and non-CS majors with the overarching objective to develop a computational mindset. For CS majors, to gain an appreciation of the relevance of the various computing topics and interrelationships for future courses. For non-CS majors, to provide the necessary technological background to appreciate and integrate into today’s technical society.

MCS1243

3

Calculus 1

Topics include, limits and continuity, differentiation of algebraic and transcendental functions, mean value theorem, applications of differentiation, anti-derivatives, indefinite integrals, inverse trigonometric functions, substitutions, definite integrals, the Fundamental Theorem of Calculus, applications of integration. Applications will be emphasized. In addition to regular class meetings, all students are required to participate in calculus lab sessions. The schedule, frequency, and modality of these labs may vary by section. Refer to the class schedule and course syllabus for details.

MCS1414

4

Engaging Ancient Texts

A historical survey that develops students’ abilities to critically engage texts of the ancient global world, placing an emphasis on the way these texts reflect their context and human experience. Readings may draw from philosophy, history, literature, visual art, and more. Class activities include reading of primary sources, seminar discussion, and writing in various genres. May be taken concurrently with COM 1103.

HUM1213

3

Total Credits:

13

Spring Semester

Course Name

Course #

Credits

Engaging Modern Texts

A historical survey that develops students’ abilities to engage texts of the modern global world, placing an emphasis on the way these texts reflect their context and human experience. Readings may draw from philosophy, history, literature, visual art, photography, film, digital media, and more. Class activities include reading of primary sources, seminar discussion, and writing in various genres. May be taken concurrently with COM 1103.

HUM1223

3

Calculus 2

Hyperbolic functions, L’Hospital’s rule, techniques of integration, application to arc length and surface area, polar coordinates, infinite series, Taylor Series. In addition to regular class meetings, all students are required to participate in calculus lab sessions. The schedule, frequency, and modality of these labs may vary by section. Refer to the class schedule and course syllabus for details.

MCS1424

4

Computer Science 1

Introduction to programming with C++. Binary, two’s complement, decimal, hex, and octal representations. Variable types. Simple, iterative, and conditional statements. Procedure and functions with parameters by value and reference with or without a returning value. Arrays and vectors, multidimensional arrays, bubble and selection sorts, linear and binary search. Pointer and dynamic memory allocation, character and C-strings, file input/output (sequential). Classes, friends, array of objects, and operators’ overloading. Inheritance, polymorphism, virtual function, and recursion.

MCS1514

4

SSC ELECTIVE

Course not found.

SSC2xx3

3

Coding Club (1st of 2)

This one credit course will focus on programming languages such as Scratch, Python, Javascript, Ruby, R, PHP, C# or Matlab. Students will be expected to work in groups on coding projects that will focus on syntax and semantics with application to a specific language.

MCS1111

1

Total Credits:

15

Fall Semester

Course Name

Course #

Credits

Technical and Prof. Communication

Course not found.

COM2103

3

Calculus 3

Three-dimensional analytic geometry. Vectors, vector-valued functions, motions in space, functions of several variables, partial differentiation, multiple integration, integration of vector fields, Green’s Theorem and Divergence Theorem.

MCS2414

4

Computer Science 2

Records, advanced file input/output (random access), dynamic memory allocation. Static and dynamic implementation of stacks, linked lists (ordered and unordered), queue (regular and priority), circular queues. Selection and insertion sort, binary search. Lecture 3 hrs., Lab 1hr.

MCS2514

4

Discrete Math

Number Theory, review of induction and recursion, advanced counting, equivalence, partial ordering, graphs, trees.

MCS2523

3

LLT Elective

Course not found.

LLT2XX3

4

Total Credits:

17

Spring Semester

Course Name

Course #

Credits

University Physics 1 Lab

Introductory laboratory experiments to complement University Physics 1. 1 Credit Hours. Lab 2 hrs.

COM2103

1

Data Structures

Analysis of algorithms, Big Oh notation, asymptotic behavior. Advanced sorting (heapsort, quicksort), external sorting. Binary, multiway, and AVL trees. Lecture 4 hrs.

MCS2534

4

University Physics 1

Calculus based kinematics and dynamics of particles, conservation of energy, momentum, rotational dynamics and statics, fluids, temperature and heat, and laws of thermodynamics. 3 Credit hours. Lecture 3 hrs., Studio 1 hr. The following course can be taken concurrently with this course: MCS1424.

PHY2413

3

Intro to Functional Programming

An introduction to functional programming. Induction and recursion, symbolic computation, higher-order functions, polymorphism, data abstraction and modularity, invariants, demand-driven programming, exception handling, and computability. Lecture 3 hrs.

MCS3633

3

Intro to Data Science

The Data Science course delivers the fundamentals of data sets analysis arising in various disciplines, like banking, finance, health care, bioinformatics, security, education, and social services. The content of this course introduces theories and practices of data science concepts based on mathematical and statistical concepts. This course offers a multitude of topics relevant to the analysis of complex data sets accompanying programming and code algorithms in R that underpinning data science. This course is ideal for students and practitioners without a strong background in data science. The students will also learn analyses of foundational theoretical subjects, including the history of data science, matrix algebra, and random vectors, and multivariate analysis; a comprehensive examination of time series forecasting, including the different components of time series and transformations to achieve stationarity; introductions to the R programming languages, including basic data types and sample manipulations; an exploration of algorithms, including how to write one and how to perform an asymptotic analysis; and, a comprehensive discussion of several techniques for analyzing and predicting complex data sets. Towards the end of the class, students will develop a case study by gathering data to apply and practice the learned concepts in a large-scale project.

MCS2403

3

MCS Seminar

Each Spring, the faculty in Mathematics and Computer Science will provide students with an overview of the research they are working on. This will provide students with the opportunity gain critical exposure to research ideas early on in their academic careers. Each week a different faculty member will host the meeting to allow students to ask questions and to learn what is current in the field of math and computer science. Meetings will be hosted virtually, via Zoom.

MCS2111

1

Total Credits:

15

Fall Semester

Course Name

Course #

Credits

Software Engineering 1

This course is a brief overview of software engineering topics including software development models, requirements, software design & implementation, software debugging & testing, software maintenance, software quality & metrics, and software project management. Focused in depth learning goals include system modelling & analysis tools, model-based design, coding standards, IDE tools, version control systems, and the introduction of agile software development methodologies. In addition to theories, students will practice in the development of a long-running software project applying & utilizing software engineering techniques & tools covered in class.

MCS3643

3

Computer Architecture and Assembly

Basic Structure of computer hardware and assembly programming. Internal representation, processing unit arithmetic, memory addressing modes, stack processing, CISC, RISC. Lecture 3 hrs.

MCS3663

3

Intro to Database Systems

Organization of database systems. Data definition, retrieval, manipulation. Relational databases, SQL. Practice using standard databases.

MCS2543

3

University Physics 2

Calculus based simple harmonic motion, waves and sound, geometric optics, interference and diffraction, electric charge and interaction, electric current, DC Circuits, magnetism, electromagnetic induction, and RC circuits. 3 Credit Hours. Lecture 3 hrs., Studio 1 hr. The following course can be taken concurrently with this course: MCS 2414.

PHY2423

3

University Physics 2 Lab

Introductory laboratory experiments complementing University Physics 2. 1 Credit Hours. Lab 2 hrs.

PHY2431

1

Linear Algebra

Systems of linear equations, matrices, determinants, eigenvalues, eigenvectors, Finite-dimensional vector spaces, linear transformations and their matrices, Gram-Schmidt orthogonalization, inner product spaces. Lecture 3 hrs.

MCS3863

3

Coding Club (2nd of 2)

Course not found.

MCS 111

1

Total Credits:

17

Spring Semester

Course Name

Course #

Credits

Operating Systems

This course focuses on the core concepts that underlie contemporary operating systems. It introduces the structure and responsibilities of operating systems, discusses the cutting-edge advances in computing that are redefining operating systems, and addresses design considerations, such as performance, fault tolerance, security, modularity, and cost.
Topics include Operating System Architecture, Process Concepts and Management, Thread Concepts, Asynchronous Concurrent Execution, Concurrent Programming, Deadlock and Indefinite Postponement, Processor Scheduling Algorithms, Real Memory Organization and Management, Virtual Memory Organization and Management, Disk Performance Optimization, RAID, File Systems, and Case Studies.

MCS4663

3

Topics in MCS

Course not found.

MCS4993

3

Computational Physics

Course not found.

PHY 3513

3

Career Pathways Lab

Introductory laboratory experiments complementing University Physics 2. 1 Credit Hours. Lab 2 hrs.

MCS4001

1

General Elective

Course not found.

GENxxx3

3

Natural Sciences Elective

Course not found.

BIO/PHY/CHM/
      GLG/PSC

         xxx3

3

Total Credits:

16

*Select from MCS2423 Differential Equations or MCS3403 Probability & Statistics

Fall Semester

Course Name

Course #

Credits

Computer Networks

Transmission media, local asynchronous communication (RS232) long distance communication, LAN Technologies, network topologies, hardware addressing, LAN wiring, physical topologies, interface hardware, extending LANs, fiber modems repeaters, bridges, and switches, WAN topologies and routing. Lecture 3 hrs.

MCS4613

3

Senior Project

Course not found.

MCS4833

3

MCS Elective*

Course not found.

LLT/PSY 3/4xx3

3

Junior/Senior Natural Sciences Elective

Course not found.

BIO/PHY/CHM/
     GLG/PSC       

       3/4xx3

3

Pathways Capstone Lab

Pathways 4001 is the capstone course for CoAS majors’ Pathways Program. The course meets for 4 half-day Saturday sessions fall term. The course’s work requirements are satisfied throughout students’ final year under the supervision of the Pathways Program Director. Requirements include: a) mentoring first-year CoAS majors in the Pathways 1001 course, b) participation in an extra- or co- curricular activity related to major research field, c) incorporation of leadership / ethics issues in senior thesis / capstone project.

MCS2/3/4xx3*

3

Total Credits:

15

Spring Semester

Course Name

Course #

Credits

Ethics of Computation
Survey ethical theories, and investigate the ethical implications of modern computing technology for professionals, researchers, and society at large. Using case studies drawn from contemporary journalism and the academic literature, we will discuss topics such as intellectual property, safety, security, privacy, and artificial intelligence.

SSC3743

3

Comparative Prog. Languages

This course will cover survey of the four various programming languages in the imperative, multiprogramming, functional and logical domains. An understanding of the fundamental design and language concepts provides the foundation for the critical examination and implementation of programming language paradigms from lexical and syntactical perspective.

MCS4643

3

Theory of Computation

Beginning course on theory of computation. Regular languages, finite automata, context-free language, Turing Machine, Chomsky hierarchy, applications to parsing. Lecture 3 hrs.

MCS4653

3

Senior Project 2

Course not found.

MCS4843

3

Junior/Senior MCS Elective*

Course not found.

MCS3/4xx3*

3

Total Credits:

15

» Computer Science Concentrations

Computer Science – Concentration in Artificial Intelligence
Bachelor of Science
Computer Science – Concentration in Business Software Development
Bachelor of Science
Design and develop the applications that have become the backbone of international business.
Computer Science – Concentration in Cybersecurity
Bachelor of Science
Computer Science – Concentration in Game Software Development
Bachelor of Science
Learn the tools to become experienced and adaptable programmers and leverage your creativity to create magical moments in video games.
Computer Science – Concentration in Scientific Software Development
Bachelor of Science
Computer Science – Concentration in Software Engineering
Bachelor of Science

» Integrated Master’s Bachelor’s Programs

Earn your Master degree and Bachelor degree in five years!

Computer Science – Concentration in Artificial Intelligence
Integrated Bachelor’s-Master’s
Computer Science – Concentration in Cybersecurity
Integrated Bachelor’s-Master’s
Computer Science – Concentration in Scientific Software Development
Integrated Bachelor’s-Master’s

» Document Viewer

Use Your Cell Phone as a Document Camera in Zoom

  • What you will need to have and do
  • Download the mobile Zoom app (either App Store or Google Play)
  • Have your phone plugged in
  • Set up video stand phone holder

From Computer

Log in and start your Zoom session with participants

From Phone

  • Start the Zoom session on your phone app (suggest setting your phone to “Do not disturb” since your phone screen will be seen in Zoom)
  • Type in the Meeting ID and Join
  • Do not use phone audio option to avoid feedback
  • Select “share content” and “screen” to share your cell phone’s screen in your Zoom session
  • Select “start broadcast” from Zoom app. The home screen of your cell phone is now being shared with your participants.

To use your cell phone as a makeshift document camera

  • Open (swipe to switch apps) and select the camera app on your phone
  • Start in photo mode and aim the camera at whatever materials you would like to share
  • This is where you will have to position what you want to share to get the best view – but you will see ‘how you are doing’ in the main Zoom session.