Discussion Overview
The discussion revolves around the challenge of transposing a 4D array in Fortran, specifically the array zmdsens, which is used to store MT (magnetotelluric) functions related to conductivity measurements across different periods and sites. Participants explore how to transform this 4D array into a 2D array suitable for transposition, as required by Fortran 90.
Discussion Character
- Technical explanation
- Debate/contested
- Mathematical reasoning
Main Points Raised
- One participant describes the structure of the zmdsens array and expresses the need to transpose it, noting that Fortran 90 only allows transposition for 2D arrays.
- Another participant questions the initial description, suggesting that the array may resemble a function call and asks for clarification on what an MT function is.
- A participant attempts to clarify the context by explaining that the 4D array represents MT functions calculated from a 2D mesh of conductivity values, and that the transpose needed is of a matrix representing derivatives of MT with respect to conductivity.
- One participant proposes a method to transpose a 3D array with a fixed index, suggesting that this might help solve the original problem.
- A later reply indicates a shift in approach, with a participant sharing a code snippet that attempts to read a 1D array from a file, allocate it, and then transpose it, but encounters an error related to array allocation.
Areas of Agreement / Disagreement
Participants express differing views on the nature of the array and the process of transposition. There is no consensus on how to effectively transform the 4D array into a 2D array for transposition, and the discussion remains unresolved.
Contextual Notes
There are limitations in the understanding of the MT function and the specifics of the array structure, as well as unresolved issues regarding the correct allocation of arrays in Fortran.