Computional Methods Problem with Fortran programming

  • Context: Comp Sci 
  • Thread starter Thread starter kevek
  • Start date Start date
  • Tags Tags
    Fortran Programming
Click For Summary
SUMMARY

This discussion focuses on implementing a project in Fortran programming that involves creating a data structure for the permutation group of N elements, specifically for N=9 or less. Key functionalities include operator overloading for multiplication and exponentiation of permutations, as well as subroutines for inverting permutations, converting to cycle notation, and determining the parity of permutations. The initial step is to write a simple permutation function that operates correctly on the input "123". A reference link to generating permutations is also provided for further guidance.

PREREQUISITES
  • Fortran programming fundamentals
  • Understanding of data structures, specifically permutation groups
  • Familiarity with operator overloading in programming
  • Basic knowledge of cycle notation in permutations
NEXT STEPS
  • Explore Fortran operator overloading techniques
  • Learn about implementing data structures in Fortran
  • Research cycle notation and its applications in permutations
  • Investigate the use of C++ for similar permutation projects
USEFUL FOR

This discussion is beneficial for Fortran programmers, computer science students, and anyone interested in algorithmic implementations of permutation groups and data structures.

kevek
Messages
12
Reaction score
0
Is there anyone familiar with Fortran programming, who can give me some simple ideas or resources how can I strart this project? Many thanks


Data Structures - The Permutation Group
In this project, the group of permutations on N elements (where N is probably fairly small, perhaps N= 9 or less) is represented as a data structure. The main program employs the USE command to access a module containing the declarations, type definitions, functions and subroutines.
The module should use operator overloading to make * the multiplication operator between permutations, and ** a permutation taken to some ower. The module should also have a function or subroutine that determines the order of the permutation.

Options
1. Create a subroutine that inverts a permutation.
2. Create a subroutine that converts a permutation to cycle notation.
3. Create a subroutine that determines whether a permutation is even or odd.
4. Discuss how other algebraic structures could be represented and calculated.
 
Physics news on Phys.org
hi kevek.
did u figure how to start this ? i need your help with this question.
tq
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
Replies
2
Views
3K
  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 8 ·
Replies
8
Views
4K
  • · Replies 7 ·
Replies
7
Views
4K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 10 ·
Replies
10
Views
2K